# CVE-2026-112952: ApostropheCMS unauthorized slug enumeration

Source: https://junglewise.ai/threats/cve-2026-112952-apostrophecms-is-an-open-source-node-js-content-management  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-10-20. Updated: 2026-10-20  
License: CC BY 4.0 with a link back

CVE-2026-112952 · Severity: medium · CVSS 4.3 · Published 2026-10-20

ApostropheCMS is an open-source Node.js content management system that allows organizations to build and publish websites. Prior to version 4.34.0, any logged-in user can enumerate all document slugs across the system, including private pages, drafts, and archived content, through an unauthenticated API endpoint that performs no permission filtering. This allows attackers with basic editor access to discover sensitive content they should not have visibility into.

Technologies: [ApostropheCMS](https://junglewise.ai/threats/technologies/apostrophecms), [apostrophe (npm)](https://junglewise.ai/threats/technologies/apostrophe). Vendors: [ApostropheCMS](https://junglewise.ai/threats/vendors/apostrophecms), [npm](https://junglewise.ai/threats/vendors/npm).

## Quick answers

**Is CVE-2026-112952 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-112952 being exploited in the wild.

**How severe is CVE-2026-112952?** Medium severity, with a CVSS score of 4.3, published 20 October 2026.

**Which products and versions are affected?** ApostropheCMS before 4.34.0; apostrophe (npm) < 4.34.0, SEMVER:introduced=0,fixed=4.34.0.

**Is there a fix for CVE-2026-112952?** Yes. apostrophe (npm): upgrade to 4.34.0 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-112952 attacked?** It is attacked over the network, in a software library.

**Am I affected by CVE-2026-112952?** Check whether you run ApostropheCMS or apostrophe (npm) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- apostrophe (npm): upgrade to 4.34.0 or later

  ```sh
  npm install apostrophe@4.34.0
  ```


## Technical details

The POST /api/v1/@apostrophecms/doc/slugTaken endpoint returns a boolean indicating slug availability without applying any permission or type filters, allowing enumeration across all document visibility levels. Any authenticated user, including those with basic editor privileges, can query this endpoint to discover the slug namespace of restricted content. The vulnerability is fixed in version 4.34.0 through permission-aware filtering of the API response.

## Affected products

- ApostropheCMS ApostropheCMS before 4.34.0

## Identifiers

- CVE-2026-112952
- GHSA-f66c-mpj2-3r8h

## Timeline

- 2026-10-20: disclosed

## References

- [https://github.com/apostrophecms/apostrophe/commit/06e4b377f3c360f9e89c32dccd7e505ad5ddf498](https://github.com/apostrophecms/apostrophe/commit/06e4b377f3c360f9e89c32dccd7e505ad5ddf498)
- [https://github.com/apostrophecms/apostrophe/commit/40b989b1a9dd23d30029b8ce7668634265cfe5ea](https://github.com/apostrophecms/apostrophe/commit/40b989b1a9dd23d30029b8ce7668634265cfe5ea)

## Related threats

- [ApostropheCMS unauthenticated file upload in import routes](https://junglewise.ai/threats/cve-2026-113711-apostrophecms-is-an-open-source-node-js-content-management)
- [ApostropheCMS password-change endpoint lacks attempt throttling](https://junglewise.ai/threats/cve-2026-113710-apostrophecms-no-attempt-throttling-on-authenticated-password)
- [ApostropheCMS page REST API authorization bypass](https://junglewise.ai/threats/cve-2026-113670-apostrophecms-page-rest-api-authorization-bypass)
- [ApostropheCMS cross-domain session token in URL confers session takeover](https://junglewise.ai/threats/cve-2026-113669-apostrophecms-cross-domain-session-token-in-url-confers-session)
- [ApostropheCMS REST route authorization bypass in locales endpoint](https://junglewise.ai/threats/cve-2026-113668-apostrophecms-id-locales-rest-route-omits-the-public-api)
