Skip to main content

ApostropheCMS CVE-2026-53609

| EUVD-2026-36590 CRITICAL
Improperly Controlled Modification of Object Prototype Attributes (Prototype Pollution) (CWE-1321)
2026-06-12 GitHub_M
9.1
CVSS 3.1 · Vendor: GitHub_M
Share

Severity by source

Vendor (GitHub_M) PRIMARY
9.1 CRITICAL
AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:L
vuln.today AI
9.1 CRITICAL

Network-reachable editor endpoint (AV:N, PR:L, UI:N); pollution subverts a separate auth component (S:C); resulting anonymous API access yields high confidentiality but only low integrity/availability impact.

3.1 AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:L
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:L/SC:H/SI:L/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:L
Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Changed
Confidentiality
High
Integrity
Low
Availability
Low

Lifecycle Timeline

1
Analysis Generated
Jun 12, 2026 - 22:15 vuln.today

DescriptionCVE.org

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.

AnalysisAI

Prototype pollution in ApostropheCMS versions up to and including 4.30.0 allows an authenticated editor to poison Object.prototype via the $pullAll patch operator, ultimately bypassing authorization on all piece-type REST API endpoints for unauthenticated requests until the Node.js process restarts. The flaw stems from apos.util.set() failing to sanitize __proto__ in dot-notation paths, and no public exploit identified at time of analysis but the advisory describes a confirmed exploitation gadget in publicApiCheck(). …

Unlock full vulnerability intelligence

  • Risk assessment & exploitation conditions
  • Attack chain visualization
  • Remediation with exact patch versions
  • Threat intelligence from 22 sources
  • Personal watchlist & email alerts

Free forever · No credit card required

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata

Access
Obtain editor credentials on target ApostropheCMS
Delivery
Send PATCH with $pullAll and __proto__ dot-path
Exploit
apos.util.set() writes to Object.prototype
Execution
publicApiCheck() gadget reads polluted property
Persist
Unauthenticated REST calls now bypass authorization
Impact
Exfiltrate or modify piece-type content process-wide

Vulnerability AssessmentAI

Exploitation Requires an authenticated account with editor privileges (CVSS PR:L) able to invoke the piece-type PATCH API with the $pullAll operator carrying a dot-notation path containing __proto__; the target must run ApostropheCMS at or below 4.30.0 on Node.js. … Additional conditions and limiting factors are described in the full assessment.
Risk Assessment The CVSS 3.1 score of 9.1 (AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:L) reflects a network-reachable, low-complexity attack from a low-privileged authenticated editor with scope change because the polluted prototype subverts the authentication subsystem and exposes unauthenticated requests to data they should never see. … Full risk analysis with EPSS, KEV, and SSVC signal comparison available after sign-in.
Exploit Scenario An attacker who obtains or is granted an editor account sends a piece-type PATCH request whose body uses the $pullAll operator with a dot-notation key resolving through __proto__ to plant a property on Object.prototype that publicApiCheck() will later read as authorizing public access. From that moment until the Node.js process restarts, the attacker - or any unauthenticated third party - can call piece-type REST endpoints without credentials and exfiltrate or manipulate content. …
Remediation No vendor-released patch identified at time of analysis - the advisory explicitly states no patched versions are available, so monitor https://github.com/apostrophecms/apostrophe/security/advisories/GHSA-6h5j-32cf-4253 and apply the fix immediately once published. … Detailed patch versions, workarounds, and compensating controls in full report.

Recommended ActionAI

Within 24 hours: Audit all ApostropheCMS instances; identify which are internet-facing and restrict editor account access to internal networks only. …

Sign in for detailed remediation steps and compensating controls.

Threat intelligence, references, and detailed analysis are available after sign-in.

Share

CVE-2026-53609 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy