CVE-2026-39397 @delmaredigital/payload-puc is missing authorization on /api/puck/* CRUD endpoints allows unauthenticated access to Puck-registered collections
Unauthenticated attackers can access and modify Puck-registered collections via API endpoints due to missing authorization checks in the PayloadCMS plugin.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-39397?
CVE-2026-39397 is a critical missing authorization vulnerability in delmaredigital payload-puck, published on 7 Apr 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
@delmaredigital/payload-puck is a PayloadCMS plugin for integrating Puck visual page builder. Prior to 0.6.23, all /api/puck/* CRUD endpoint handlers registered by createPuckPlugin() called Payload's local API with the default overrideAccess: true, bypassing all collection-level access control. The access option passed to createPuckPlugin() and any access rules defined on Puck-registered collections were silently ignored on these endpoints. This vulnerability is fixed in 0.6.23.
Weakness: CWE-862
Which versions are affected by CVE-2026-39397?
2 open source packages ship an affected version, including @delmaredigital/payload-puck. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
@delmaredigital/payload-puck npm | All versions | 0.6.23 |
@delmaredigital/payload-puck npm | All versions | 0.6.23 |
Products include Delmaredigital Payload-Puck.
How do I fix CVE-2026-39397?
Upgrade @delmaredigital/payload-puck to 0.6.23 or later.
Upgrade, and check permissions on every request on the server, not only in the interface. More about Missing authorization.
Is CVE-2026-39397 being exploited?
There is no known exploitation of CVE-2026-39397 in the wild and no public exploit code.
Sources
Also known as GHSA-65w6-pf7x-5g85.