{"schema_version":1,"title":"apostrophe (npm) vulnerabilities","summary":"Junglewise Threat Intelligence has tracked 17 vulnerabilities in apostrophe (npm): 0 in the last 7 days and 2 in the last 90 days, 1 of them critical and 0 exploited in the wild. The most recent, CVE-2026-71553, was published on 17 August 2026.","url":"https://junglewise.ai/threats/technologies/apostrophe","json_url":"https://junglewise.ai/threats/technologies/apostrophe.json","publisher":"Junglewise Threat Intelligence","license":"CC-BY-4.0","license_url":"https://creativecommons.org/licenses/by/4.0/","attribution":"Junglewise Threat Intelligence, https://junglewise.ai/threats/technologies/apostrophe","sources":"NVD, GitHub Security Advisories, OSV, the CISA Known Exploited Vulnerabilities catalog, FIRST EPSS and vendor advisories","kind":"technology","counts":{"high":4,"all_time":17,"critical":1,"exploited":0,"last_7_days":0,"last_30_days":0,"last_90_days":2,"last_365_days":13},"latest":[{"cve":"CVE-2026-71553","cvss":4,"epss":0.0043,"slug":"cve-2026-71553-apostrophecms-prototype-pollution-in-patch-endpoint","title":"ApostropheCMS is an open-source Node.js content management system. In 4.32.0 and earlier, PATCH /api/v1/article/:id accepts the inherited pa","severity":"high","exploited":false,"published_at":"2026-08-17T20:16:46.073+00:00","url":"https://junglewise.ai/threats/cve-2026-71553-apostrophecms-prototype-pollution-in-patch-endpoint"},{"cve":"CVE-2026-63669","cvss":6.5,"epss":0.0031,"slug":"cve-2026-63669-apostrophecms-page-move-authorization-bypass","title":"ApostropheCMS is an open-source Node.js content management system. Prior to 4.32.0, the page module's move() operation fails to enforce the","severity":"medium","exploited":false,"published_at":"2026-08-17T20:16:44.87+00:00","url":"https://junglewise.ai/threats/cve-2026-63669-apostrophecms-page-move-authorization-bypass"},{"cve":"CVE-2026-53609","cvss":9.1,"epss":0.0038,"slug":"cve-2026-53609-apostrophecms-prototype-pollution-in-apos-util-set-leads-to-auth","title":"ApostropheCMS prototype pollution in apos.util.set leads to auth bypass","severity":"critical","exploited":false,"published_at":"2026-06-12T22:16:52.803+00:00","url":"https://junglewise.ai/threats/cve-2026-53609-apostrophecms-prototype-pollution-in-apos-util-set-leads-to-auth"},{"cve":"CVE-2026-53607","cvss":3.7,"epss":0.0032,"slug":"cve-2026-53607-apostrophecms-ssrf-in-apostrophecms-file-via-host-header","title":"ApostropheCMS SSRF in @apostrophecms/file via Host header","severity":"low","exploited":false,"published_at":"2026-06-12T21:16:24.247+00:00","url":"https://junglewise.ai/threats/cve-2026-53607-apostrophecms-ssrf-in-apostrophecms-file-via-host-header"},{"cve":"CVE-2026-45013","cvss":8.1,"epss":0.0038,"slug":"cve-2026-45013-apostrophecms-account-takeover-via-host-header-injection-in","title":"ApostropheCMS account takeover via Host header injection in password reset","severity":"high","exploited":false,"published_at":"2026-06-12T21:16:22.85+00:00","url":"https://junglewise.ai/threats/cve-2026-45013-apostrophecms-account-takeover-via-host-header-injection-in"},{"cve":"CVE-2026-45012","cvss":7.6,"epss":0.0031,"slug":"cve-2026-45012-apostrophecms-authenticated-ssrf-in-rich-text-widget-import","title":"ApostropheCMS authenticated SSRF in rich-text widget import","severity":"high","exploited":false,"published_at":"2026-06-12T21:16:22.72+00:00","url":"https://junglewise.ai/threats/cve-2026-45012-apostrophecms-authenticated-ssrf-in-rich-text-widget-import"},{"cve":"CVE-2026-45011","cvss":7.3,"epss":0.0037,"slug":"cve-2026-45011-apostrophecms-stored-xss-in-image-widget-link","title":"ApostropheCMS stored XSS in image widget link","severity":"high","exploited":false,"published_at":"2026-06-12T21:16:22.58+00:00","url":"https://junglewise.ai/threats/cve-2026-45011-apostrophecms-stored-xss-in-image-widget-link"},{"cve":"CVE-2026-39857","cvss":5.3,"epss":0.0038,"slug":"cve-2026-39857-apostrophecms-information-disclosure-via-choices-and-counts-query","title":"ApostropheCMS information disclosure via choices and counts query parameters","severity":"medium","exploited":false,"published_at":"2026-04-16T20:45:15+00:00","url":"https://junglewise.ai/threats/cve-2026-39857-apostrophecms-information-disclosure-via-choices-and-counts-query"},{"cve":"CVE-2026-35569","cvss":3.1,"epss":0.0044,"slug":"cve-2026-35569-apostrophecms-stored-xss-in-seo-fields","title":"ApostropheCMS stored XSS in SEO fields","severity":"low","exploited":false,"published_at":"2026-04-16T20:44:18+00:00","url":"https://junglewise.ai/threats/cve-2026-35569-apostrophecms-stored-xss-in-seo-fields"},{"cve":"CVE-2026-33889","cvss":5.4,"epss":0.0026,"slug":"cve-2026-33889-apostrophecms-stored-xss-in-color-field-css-custom-properties","title":"ApostropheCMS stored XSS in color-field CSS custom properties","severity":"medium","exploited":false,"published_at":"2026-04-16T20:42:37+00:00","url":"https://junglewise.ai/threats/cve-2026-33889-apostrophecms-stored-xss-in-color-field-css-custom-properties"},{"cve":"CVE-2026-33888","cvss":5.3,"epss":0.0052,"slug":"cve-2026-33888-apostrophecms-publicapiprojection-bypass-in-piece-type-rest-api","title":"ApostropheCMS publicApiProjection bypass in Piece-Type REST API","severity":"medium","exploited":false,"published_at":"2026-04-16T20:42:21+00:00","url":"https://junglewise.ai/threats/cve-2026-33888-apostrophecms-publicapiprojection-bypass-in-piece-type-rest-api"},{"cve":"CVE-2026-33877","cvss":3.7,"epss":0.0032,"slug":"cve-2026-33877-apostrophecms-user-enumeration-via-timing-side-channel-in","title":"ApostropheCMS user enumeration via timing side channel in password reset","severity":"low","exploited":false,"published_at":"2026-04-16T20:42:11+00:00","url":"https://junglewise.ai/threats/cve-2026-33877-apostrophecms-user-enumeration-via-timing-side-channel-in"},{"cve":"CVE-2026-32730","cvss":3.1,"epss":0.0049,"slug":"cve-2026-32730-apostrophecms-mfa-totp-bypass-in-bearer-token-middleware","title":"ApostropheCMS MFA/TOTP bypass in bearer token middleware","severity":"low","exploited":false,"published_at":"2026-03-18T19:48:51+00:00","url":"https://junglewise.ai/threats/cve-2026-32730-apostrophecms-mfa-totp-bypass-in-bearer-token-middleware"},{"cve":"CVE-2021-25979","cvss":3.1,"epss":0.0114,"slug":"cve-2021-25979-apostrophe-cms-insufficient-session-expiration","title":"Apostrophe CMS insufficient session expiration","severity":"low","exploited":false,"published_at":"2021-11-10T17:02:44+00:00","url":"https://junglewise.ai/threats/cve-2021-25979-apostrophe-cms-insufficient-session-expiration"},{"cve":"CVE-2021-25978","cvss":3.1,"epss":0.005,"slug":"cve-2021-25978-apostrophe-cms-stored-xss-in-svg-uploads","title":"Apostrophe CMS stored XSS in SVG uploads","severity":"low","exploited":false,"published_at":"2021-11-10T16:45:34+00:00","url":"https://junglewise.ai/threats/cve-2021-25978-apostrophe-cms-stored-xss-in-svg-uploads"},{"slug":"apostrophe-denial-of-service-via-job-callback-accumulation-b4c6e445","title":"Apostrophe denial of service via job callback accumulation","severity":"info","exploited":false,"published_at":"2020-09-03T20:42:09+00:00","url":"https://junglewise.ai/threats/apostrophe-denial-of-service-via-job-callback-accumulation-b4c6e445"},{"slug":"apostrophe-open-redirect-via-escaped-url-3e350509","title":"Apostrophe open redirect via escaped URL","severity":"info","exploited":false,"published_at":"2020-09-03T17:11:36+00:00","url":"https://junglewise.ai/threats/apostrophe-open-redirect-via-escaped-url-3e350509"}],"weekly":[{"week":"2026-06-29","critical":0,"exploited":0,"vulnerabilities":0},{"week":"2026-07-06","critical":0,"exploited":0,"vulnerabilities":0},{"week":"2026-07-13","critical":0,"exploited":0,"vulnerabilities":0},{"week":"2026-07-20","critical":0,"exploited":0,"vulnerabilities":0},{"week":"2026-07-27","critical":0,"exploited":0,"vulnerabilities":0},{"week":"2026-08-03","critical":0,"exploited":0,"vulnerabilities":0},{"week":"2026-08-10","critical":0,"exploited":0,"vulnerabilities":0},{"week":"2026-08-17","critical":0,"exploited":0,"vulnerabilities":2},{"week":"2026-08-24","critical":0,"exploited":0,"vulnerabilities":0},{"week":"2026-08-31","critical":0,"exploited":0,"vulnerabilities":0},{"week":"2026-09-07","critical":0,"exploited":0,"vulnerabilities":0},{"week":"2026-09-14","critical":0,"exploited":0,"vulnerabilities":0},{"week":"2026-09-21","critical":0,"exploited":0,"vulnerabilities":0}],"related":[{"name":"flowise (npm)","slug":"flowise","vulnerabilities":156,"url":"https://junglewise.ai/threats/technologies/flowise"},{"name":"vm2 (npm)","slug":"vm2","vulnerabilities":82,"url":"https://junglewise.ai/threats/technologies/vm2"},{"name":"@budibase/server (npm)","slug":"budibase-server","vulnerabilities":61,"url":"https://junglewise.ai/threats/technologies/budibase-server"},{"name":"directus (npm)","slug":"directus","vulnerabilities":60,"url":"https://junglewise.ai/threats/technologies/directus"},{"name":"nocodb (npm)","slug":"nocodb","vulnerabilities":55,"url":"https://junglewise.ai/threats/technologies/nocodb"},{"name":"hono (npm)","slug":"hono","vulnerabilities":54,"url":"https://junglewise.ai/threats/technologies/hono"},{"name":"parse-server (npm)","slug":"parse-server","vulnerabilities":42,"url":"https://junglewise.ai/threats/technologies/parse-server"},{"name":"dompurify (npm)","slug":"dompurify","vulnerabilities":39,"url":"https://junglewise.ai/threats/technologies/dompurify"},{"name":"ghost (npm)","slug":"ghost","vulnerabilities":39,"url":"https://junglewise.ai/threats/technologies/ghost"},{"name":"flowise-components (npm)","slug":"flowise-components","vulnerabilities":35,"url":"https://junglewise.ai/threats/technologies/flowise-components"},{"name":"astro (npm)","slug":"astro","vulnerabilities":30,"url":"https://junglewise.ai/threats/technologies/astro"},{"name":"@anthropic-ai/claude-code (npm)","slug":"anthropic-ai-claude-code","vulnerabilities":28,"url":"https://junglewise.ai/threats/technologies/anthropic-ai-claude-code"}],"technology":{"hub":true,"name":"apostrophe (npm)","slug":"apostrophe","vendor":{"name":"npm","slug":"npm","url":"https://junglewise.ai/threats/vendors/npm"},"aliases":[],"homepage":"https://apostrophecms.com/","repo_url":"https://github.com/apostrophecms/apostrophe","description":"A content management system for Node.js focused on in-context editing and a modular architecture.","url":"https://junglewise.ai/threats/technologies/apostrophe"},"most_severe":[{"cve":"CVE-2026-53609","cvss":9.1,"epss":0.0038,"slug":"cve-2026-53609-apostrophecms-prototype-pollution-in-apos-util-set-leads-to-auth","title":"ApostropheCMS prototype pollution in apos.util.set leads to auth bypass","severity":"critical","exploited":false,"published_at":"2026-06-12T22:16:52.803+00:00","url":"https://junglewise.ai/threats/cve-2026-53609-apostrophecms-prototype-pollution-in-apos-util-set-leads-to-auth"},{"cve":"CVE-2026-45013","cvss":8.1,"epss":0.0038,"slug":"cve-2026-45013-apostrophecms-account-takeover-via-host-header-injection-in","title":"ApostropheCMS account takeover via Host header injection in password reset","severity":"high","exploited":false,"published_at":"2026-06-12T21:16:22.85+00:00","url":"https://junglewise.ai/threats/cve-2026-45013-apostrophecms-account-takeover-via-host-header-injection-in"},{"cve":"CVE-2026-45012","cvss":7.6,"epss":0.0031,"slug":"cve-2026-45012-apostrophecms-authenticated-ssrf-in-rich-text-widget-import","title":"ApostropheCMS authenticated SSRF in rich-text widget import","severity":"high","exploited":false,"published_at":"2026-06-12T21:16:22.72+00:00","url":"https://junglewise.ai/threats/cve-2026-45012-apostrophecms-authenticated-ssrf-in-rich-text-widget-import"},{"cve":"CVE-2026-45011","cvss":7.3,"epss":0.0037,"slug":"cve-2026-45011-apostrophecms-stored-xss-in-image-widget-link","title":"ApostropheCMS stored XSS in image widget link","severity":"high","exploited":false,"published_at":"2026-06-12T21:16:22.58+00:00","url":"https://junglewise.ai/threats/cve-2026-45011-apostrophecms-stored-xss-in-image-widget-link"},{"cve":"CVE-2026-71553","cvss":4,"epss":0.0043,"slug":"cve-2026-71553-apostrophecms-prototype-pollution-in-patch-endpoint","title":"ApostropheCMS is an open-source Node.js content management system. In 4.32.0 and earlier, PATCH /api/v1/article/:id accepts the inherited pa","severity":"high","exploited":false,"published_at":"2026-08-17T20:16:46.073+00:00","url":"https://junglewise.ai/threats/cve-2026-71553-apostrophecms-prototype-pollution-in-patch-endpoint"},{"cve":"CVE-2026-63669","cvss":6.5,"epss":0.0031,"slug":"cve-2026-63669-apostrophecms-page-move-authorization-bypass","title":"ApostropheCMS is an open-source Node.js content management system. Prior to 4.32.0, the page module's move() operation fails to enforce the","severity":"medium","exploited":false,"published_at":"2026-08-17T20:16:44.87+00:00","url":"https://junglewise.ai/threats/cve-2026-63669-apostrophecms-page-move-authorization-bypass"},{"cve":"CVE-2026-33889","cvss":5.4,"epss":0.0026,"slug":"cve-2026-33889-apostrophecms-stored-xss-in-color-field-css-custom-properties","title":"ApostropheCMS stored XSS in color-field CSS custom properties","severity":"medium","exploited":false,"published_at":"2026-04-16T20:42:37+00:00","url":"https://junglewise.ai/threats/cve-2026-33889-apostrophecms-stored-xss-in-color-field-css-custom-properties"},{"cve":"CVE-2026-33888","cvss":5.3,"epss":0.0052,"slug":"cve-2026-33888-apostrophecms-publicapiprojection-bypass-in-piece-type-rest-api","title":"ApostropheCMS publicApiProjection bypass in Piece-Type REST API","severity":"medium","exploited":false,"published_at":"2026-04-16T20:42:21+00:00","url":"https://junglewise.ai/threats/cve-2026-33888-apostrophecms-publicapiprojection-bypass-in-piece-type-rest-api"},{"cve":"CVE-2026-39857","cvss":5.3,"epss":0.0038,"slug":"cve-2026-39857-apostrophecms-information-disclosure-via-choices-and-counts-query","title":"ApostropheCMS information disclosure via choices and counts query parameters","severity":"medium","exploited":false,"published_at":"2026-04-16T20:45:15+00:00","url":"https://junglewise.ai/threats/cve-2026-39857-apostrophecms-information-disclosure-via-choices-and-counts-query"},{"cve":"CVE-2026-53607","cvss":3.7,"epss":0.0032,"slug":"cve-2026-53607-apostrophecms-ssrf-in-apostrophecms-file-via-host-header","title":"ApostropheCMS SSRF in @apostrophecms/file via Host header","severity":"low","exploited":false,"published_at":"2026-06-12T21:16:24.247+00:00","url":"https://junglewise.ai/threats/cve-2026-53607-apostrophecms-ssrf-in-apostrophecms-file-via-host-header"}],"generated_at":"2026-09-26T10:14:00.201383+00:00"}