Skip to content

← Public intelligence

npm package

apostrophe

Open actionable advisories and recorded vendor fixes. This public package view has no inventory attached and cannot establish whether your deployment is affected. A vendor fix never resolves your finding; verify your installed version and the source guidance.

Open advisories

32 actionable advisories, newest first. Withdrawn advisories and news are excluded. Coverage is partial.

  1. Medium, CVSS 5.3npmAmendedPublished

    ApostropheCMS: publicApiProjection Bypass via project Query Builder in Piece-Type REST API

    CVE-2026-33888 · GHSA-xhq9-58fw-859p

    Affected
    • npm apostrophe < 4.29.0
    Fixed in
    4.29.0· Vendor fix available
    Issue
    The getRestQuery method in the @apostrophecms/piece-type module checks whether a MongoDB projection has already been set before applying the admin-configured publicApiProjection. An unauthenticated attacker can supply a project query parameter in the REST API request to pre-populate the projection state, causing the security-enforced publicApiProjection to be skipped entirely. This allows disclosure of fields that the site administrator explicitly restricted from public access. Details When an unauthenticated user queries the piece-type REST API, the getRestQuery method processes the request at modules/@apostrophecms/piece-type/index.js:1120: At [1], applyBuildersSafely iterates over all query string parameters and invokes their corresponding builder methods. The project builder exists in @apostrophecms/doc-type with a launder method (doc-type/index.js:1876) that sanitizes values to booleans: When a request includes ?project[someField]=1, the builder sets query.state.project…

    Recommended action: Upgrade to 4.29.0 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  2. Low, CVSS 3.7npmAmendedPublished

    ApostropheCMS: User Enumeration via Timing Side Channel in Password Reset Endpoint

    CVE-2026-33877 · GHSA-mj7r-x3h3-7rmr

    Affected
    • npm apostrophe < 4.29.0
    Fixed in
    4.29.0· Vendor fix available
    Issue
    The password reset endpoint (/api/v1/@apostrophecms/login/reset-request) exhibits a measurable timing side channel that allows unauthenticated attackers to enumerate valid usernames and email addresses. When a user is not found, the handler returns after a fixed 2-second artificial delay, but when a valid user is found, it performs database writes and SMTP operations with no equivalent delay normalization, producing a distinguishable timing profile. Details The resetRequest handler in modules/@apostrophecms/login/index.js attempts to obscure the user-not-found path with an artificial delay, but fails to normalize the timing of the user-found path: User not found — fixed 2000ms delay (index.js:309-314): User found — variable-duration DB + SMTP operations, no artificial delay (index.js:323-355): The user-found path includes a MongoDB update() call and an SMTP email() send, which together produce response times that differ measurably from the fixed 2000ms delay. Depending on…

    Recommended action: Upgrade to 4.29.0 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  3. High, CVSS 8.1npmAmendedPublished

    ApostropheCMS MFA/TOTP Bypass via Incorrect MongoDB Query in Bearer Token Middleware

    CVE-2026-32730 · GHSA-v9xm-ffx2-7h35

    Affected
    • npm apostrophe <= 4.27.1
    Fixed in
    4.28.0· Vendor fix available
    Issue
    MFA/TOTP Bypass via Incorrect MongoDB Query in Bearer Token Middleware Summary The bearer token authentication middleware in @apostrophecms/express/index.js (lines 386-389) contains an incorrect MongoDB query that allows incomplete login tokens — where the password was verified but TOTP/MFA requirements were NOT — to be used as fully authenticated bearer tokens. This completely bypasses multi-factor authentication for any ApostropheCMS deployment using @apostrophecms/login-totp or any custom afterPasswordVerified login requirement. Severity The AC is High because the attacker must first obtain the victim's password. However, the entire purpose of MFA is to protect accounts when passwords are compromised (credential stuffing, phishing, database breaches), so this bypass negates the security control entirely. Affected Versions All versions of ApostropheCMS from 3.0.0 to 4.27.1, when used with @apostrophecms/login-totp or any custom afterPasswordVerified requirement. Root Cause In…

    Recommended action: Upgrade to 4.28.0 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  4. Critical, CVSS 9.8npmAmendedPublished

    Apostrophe CMS Insufficient Session Expiration vulnerability

    CVE-2021-25979 · GHSA-9j9m-8wjc-ff96

    Affected
    • npm apostrophe >= 2.63.0, < 3.4.0
    Fixed in
    3.4.0· Vendor fix available
    Issue
    Apostrophe CMS versions between 2.63.0 to 3.3.1 affected by an insufficient session expiration vulnerability, which allows unauthenticated remote attackers to hijack recently logged-in users' sessions. As a mitigation for older releases the user account in question can be archived (3.x) or moved to the trash (2.x and earlier) which does disable the existing session.

    Recommended action: Upgrade to 3.4.0 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  5. Medium, CVSS 5.4npmAmendedPublished

    Cross-site Scripting in apostrophe

    CVE-2021-25978 · GHSA-4r9c-jghc-cx5m

    Affected
    • npm apostrophe >= 2.63.0, < 3.4.0
    Fixed in
    3.4.0· Vendor fix available
    Issue
    Apostrophe CMS versions between 2.63.0 to 3.3.1 are vulnerable to Stored XSS where an editor uploads an SVG file that contains malicious JavaScript onto the Images module, which triggers XSS once viewed.

    Recommended action: Upgrade to 3.4.0 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  6. UnratednpmAmendedPublished

    Denial of Service in apostrophe

    GHSA-pv6r-vchh-cxg9

    Affected
    • npm apostrophe < 2.97.1
    Fixed in
    2.97.1· Vendor fix available
    Issue
    Versions of apostrophe prior to 2.97.1 are vulnerable to Denial of Service. The apostrophe-jobs module sets a callback for incoming jobs and doesn't clear it regardless of its status. This causes the server to accumulate callbacks, allowing an attacker to start a large number of jobs and exhaust system memory. Recommendation Upgrade to version 2.97.1 or later.

    Recommended action: Upgrade to 2.97.1 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  7. UnratednpmAmendedPublished

    Open Redirect in apostrophe

    GHSA-h97g-4mx7-5p2p

    Affected
    • npm apostrophe < 2.92.0
    Fixed in
    2.92.0· Vendor fix available
    Issue
    Versions of apostrophe prior to 2.92.0 are vulnerable to Open Redirect. The package redirected requests to third-party websites if escaped URLs followed by a trailing / were appended at the end. Recommendation Update to version 2.92.0 or later.

    Recommended action: Upgrade to 2.92.0 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →