Skip to main content
Mallory
Critical

Prototype Pollution Authorization Bypass in ApostropheCMS

IdentifiersCVE-2026-53609CWE-1321· Improperly Controlled Modification…

CVE-2026-53609 is a prototype pollution vulnerability in ApostropheCMS, an open-source Node.js CMS, affecting versions up to and including 4.30.0. The issue is caused by apos.util.set() traversing attacker-controlled dot-notation paths without sanitizing the special property __proto__. Through the $pullAll patch operator, an authenticated user with editor privileges can write arbitrary properties to Object.prototype. The advisory further identifies a confirmed gadget in publicApiCheck() that consumes polluted prototype properties in a way that bypasses authorization checks. After successful pollution, all subsequent unauthenticated requests to piece-type REST API endpoints can be treated as authorized for the lifetime of the Node.js process.

Share:
For your environment

Are you exposed to this one?

Mallory correlates every CVE against your assets, your vendors, and active adversary campaigns. Know which vulnerabilities matter for you, not just which ones are loud.

ANALYST BRIEF

Impact, mitigation & remediation

What it means. What to do now. Patch path, mitigations, and the assume-compromise checklist.

Impact

What an attacker gets, and what they’ve been doing with it.

Successful exploitation allows an authenticated editor to poison Object.prototype and trigger a process-wide authorization bypass affecting all piece-type REST API endpoints. Because the polluted prototype persists for the lifetime of the Node.js process, every subsequent unauthenticated request can inherit the bypass condition until the process is restarted. This can expose sensitive content and API functionality to unauthenticated attackers and may permit unauthorized reads and other actions permitted by the affected endpoints. The provided CVSS context indicates high confidentiality impact with low integrity and availability impact.

Mitigation

If you can’t patch tonight, do this now.

Until an official patch is available, reduce exposure by restricting or disabling access to the vulnerable patch functionality for editor-level users, especially operations using $pullAll on attacker-controlled paths. Limit creation and use of editor accounts, enforce strong authentication, and monitor for suspicious patch requests containing __proto__ or similar prototype-manipulation keys. If compromise is suspected, restart the Node.js process to clear polluted prototype state, recognizing this is only a temporary recovery step. Where feasible, place affected piece-type REST API endpoints behind additional access controls or temporarily disable public exposure.

Remediation

Patch, then assume compromise.

At the time of publication, no known patched version was available. Remediation should consist of a vendor fix that prevents prototype pollution by rejecting or safely handling dangerous path segments such as __proto__ in apos.util.set() and any equivalent path-setting logic, and by hardening authorization logic in publicApiCheck() so it does not rely on prototype-inherited properties. Once a vendor patch is released, upgrade to the fixed version immediately.
PUBLIC EXPLOITS

Exploits

No public exploits tracked yet. Mallory keeps watching.

VALID 0 / 0 TOTALView more in app

No public exploit code observed for this vulnerability.

What this page doesn’t show

The version that knows your environment.

This page is what’s public. Mallory adds the parts that aren’t: which of your assets are affected, which adversaries are exploiting it right now, which detections to deploy, and what to do tonight.
Exposure mapping

Query your assets running an affected version, and investigate the blast radius.

Threat actor evidence

Every observed campaign linking this CVE to a named adversary.

Associated malware

Malware families riding this exploit, with evidence and IOCs.

Detection signatures

YARA, Sigma, Snort, and vendor rules, auto-deployed to your SIEM.

Vendor-by-vendor mapping

Cross-references every affected SKU, including bundled OEM variants.

Social activity6

Community discussion across Reddit, Mastodon, and other social sources.