CVE Explorer
CVE-2026-40186
ApostropheCMS is an open-source Node.js content management system. A regression introduced in commit 49d0bb7, included in versions 2.17.1 of the ApostropheCMS-maintained sanitize-html package bypasses allowedTags enforcement for text inside nonTextTagsArray elements (textarea and option). ApostropheCMS version 4.28.0 is affected through its dependency on the vulnerable sanitize-html version. The code at packages/sanitize-html/index.js:569-573 incorrectly assumes that htmlparser2 does not decode
Known exploited
Not asserted
Disputed
No
Stale source
No
Conflicts
1
Preserved source conflicts
No provider value was silently selected as the winner.
affected · 2 assertions
{"product":"sanitize-html","vendor":"apostrophecms","versions":[{"status":"affected","version":">= 2.17.1, < 2.17.2"}]}
- cve_program_cvelist_v5affectedurn:baitaphish:normalized-source-record:v2:4a81ab888e6688f26e3572e1dd0e23c626de80a1751a6be21ff5349b0beaa376 · sha256:288a87b00d32230c… · /containers/cna/affected/1
{"product":"apostrophe","vendor":"apostrophecms","versions":[{"status":"affected","version":">= 4.28.0, < 4.29.0"}]}
- cve_program_cvelist_v5affectedurn:baitaphish:normalized-source-record:v2:4a81ab888e6688f26e3572e1dd0e23c626de80a1751a6be21ff5349b0beaa376 · sha256:288a87b00d32230c… · /containers/cna/affected/0
Affected products and versions
2 source assertions{"product":"sanitize-html","vendor":"apostrophecms","versions":[{"status":"affected","version":">= 2.17.1, < 2.17.2"}]}
- cve_program_cvelist_v5affectedurn:baitaphish:normalized-source-record:v2:4a81ab888e6688f26e3572e1dd0e23c626de80a1751a6be21ff5349b0beaa376 · sha256:288a87b00d32230c… · /containers/cna/affected/1
{"product":"apostrophe","vendor":"apostrophecms","versions":[{"status":"affected","version":">= 4.28.0, < 4.29.0"}]}
- cve_program_cvelist_v5affectedurn:baitaphish:normalized-source-record:v2:4a81ab888e6688f26e3572e1dd0e23c626de80a1751a6be21ff5349b0beaa376 · sha256:288a87b00d32230c… · /containers/cna/affected/0
Provider-owned CVSS observations
1 source assertion{"metric":{"attackComplexity":"LOW","attackVector":"NETWORK","availabilityImpact":"NONE","baseScore":6.1,"baseSeverity":"MEDIUM","confidentialityImpact":"LOW","integrityImpact":"LOW","privilegesRequired":"NONE","scope":"CHANGED","userInteraction":"REQUIRED","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","version":"3.1"},"metric_type":"cvssV3_1"}
- cve_program_cvelist_v5cvssurn:baitaphish:normalized-source-record:v2:4a81ab888e6688f26e3572e1dd0e23c626de80a1751a6be21ff5349b0beaa376 · sha256:288a87b00d32230c… · /containers/cna/metrics/0/cvssV3_1
CWE assertions
1 source assertion{"cweId":"CWE-79","description":"CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')","lang":"en","type":"CWE"}
- cve_program_cvelist_v5cweurn:baitaphish:normalized-source-record:v2:4a81ab888e6688f26e3572e1dd0e23c626de80a1751a6be21ff5349b0beaa376 · sha256:288a87b00d32230c… · /containers/cna/problemTypes/0/descriptions/0
Source references
2 source assertions{"name":"https://github.com/apostrophecms/apostrophe/commit/7ca2d16237c72718ef7e5c7ae0458e6027ac4f64","tags":["x_refsource_MISC"],"url":"https://github.com/apostrophecms/apostrophe/commit/7ca2d16237c72718ef7e5c7ae0458e6027ac4f64"}
- cve_program_cvelist_v5referenceurn:baitaphish:normalized-source-record:v2:4a81ab888e6688f26e3572e1dd0e23c626de80a1751a6be21ff5349b0beaa376 · sha256:288a87b00d32230c… · /containers/cna/references/1
{"name":"https://github.com/apostrophecms/apostrophe/security/advisories/GHSA-9mrh-v2v3-xpfm","tags":["x_refsource_CONFIRM"],"url":"https://github.com/apostrophecms/apostrophe/security/advisories/GHSA-9mrh-v2v3-xpfm"}
- cve_program_cvelist_v5referenceurn:baitaphish:normalized-source-record:v2:4a81ab888e6688f26e3572e1dd0e23c626de80a1751a6be21ff5349b0beaa376 · sha256:288a87b00d32230c… · /containers/cna/references/0
Attribution and limitations
- CVE Program CVEList V5: Reproduce the MITRE copyright designation and CVE license in copies. Source →
Provider severity values are preserved separately. Baitaphish does not convert them into a risk rating, infer affected products, or treat EPSS as observed exploitation.