Description
ApostropheCMS is an open-source Node.js content management system. In versions up to and including 4.30.0, `apos.util.set()` traverses dot-notation paths without sanitizing `__proto__`, allowing an authenticated editor to write arbitrary values to `Object.prototype` via the `$pullAll` patch operator. A confirmed gadget in `publicApiCheck()` causes this to bypass authorization on all piece-type REST API endpoints for every subsequent unauthenticated request, for the lifetime of the Node.js process. As of time of publication, no known patched versions are available.
Published: 2026-06-12
Score: 9.1 Critical
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

ApostropheCMS, an open‑source Node.js content management system, contains a flaw in the data‑patching helper that allows an authenticated editor to inject a __proto__ key through a $pullAll patch operator. The helper does not sanitize dot‑notation paths, so the patch can modify Object.prototype on the running Node.js process. Once altered, the internal publicApiCheck routine incorrectly authorizes all subsequent REST API requests for every piece‑type, effectively removing authorization controls for every API endpoint interpreted by that process. The effect persists for the lifetime of the Node.js instance, exposing all content to unauthenticated access until the process is restarted.

Affected Systems

All ApostropheCMS releases up to and including version 4.30.0 are vulnerable. No patched version is currently available, so the vulnerability remains in every deployment that has not been upgraded or otherwise hardened. The problem is confined to the ApostropheCMS product provided by the apostrophecms:apostrophe vendor.

Risk and Exploitability

The CVSS score of 9.1 indicates a critical severity. The EPSS is not provided, and the issue is not listed in the CISA KEV catalog. Exploitation requires users with elevated editor permissions; however, the resulting impact is a complete loss of authorization for all REST API endpoints throughout the process. Once the prototype is polluted, the flaw remains until the Node.js process is restarted or the code is corrected. Because the attack vector utilizes legitimate privileged credentials, the risk escalates if those credentials are compromised or redistributed.

Generated by OpenCVE AI on June 12, 2026 at 22:51 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Immediately stop the affected ApostropheCMS application to halt further unauthorized requests
  • Apply an available patched version of ApostropheCMS once an update is released by the vendor or, if not yet released, contact the vendor for a remediating plan
  • If a patch is unavailable, modify the apos.util.set implementation to sanitize __proto__ keys or otherwise prevent prototype pollution
  • Restrict editor role permissions to exclude the use of patch operators, limiting future privilege escalation paths
  • Monitor application logs for any attempts to write to Object.prototype and enforce tighter access controls

Generated by OpenCVE AI on June 12, 2026 at 22:51 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 12 Jun 2026 21:45:00 +0000

Type Values Removed Values Added
Description ApostropheCMS is an open-source Node.js content management system. In versions up to and including 4.30.0, `apos.util.set()` traverses dot-notation paths without sanitizing `__proto__`, allowing an authenticated editor to write arbitrary values to `Object.prototype` via the `$pullAll` patch operator. A confirmed gadget in `publicApiCheck()` causes this to bypass authorization on all piece-type REST API endpoints for every subsequent unauthenticated request, for the lifetime of the Node.js process. As of time of publication, no known patched versions are available.
Title Apostrophe has Server-Side Prototype Pollution in apos.util.set via patch operators that leads to process-wide authorization bypass
Weaknesses CWE-1321
References
Metrics cvssV3_1

{'score': 9.1, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:L'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-06-12T20:59:25.486Z

Reserved: 2026-06-09T19:39:52.404Z

Link: CVE-2026-53609

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-06-12T22:16:52.803

Modified: 2026-06-12T22:16:52.803

Link: CVE-2026-53609

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-06-12T23:00:08Z

Weaknesses
  • CWE-1321

    Improperly Controlled Modification of Object Prototype Attributes ('Prototype Pollution')