CVE Explorer
CVE-2026-41591
Marko is a declarative, HTML-based language for building web apps. Prior to marko version 5.38.36 and prior to @marko/runtime-tags 6.0.164, when dynamic text is interpolated into a <script> or <style> tag the Marko runtime failed to prevent tag breakout when the closing tag used non-lowercase casing. An attacker able to place input inside a <script> or <style> block could break out of the tag with </SCRIPT>, </Style>, etc. and inject arbitrary HTML/JavaScript, resulting in cross-site scripting.
Known exploited
Not asserted
Disputed
No
Stale source
No
Conflicts
0
Affected products and versions
1 source assertion{"product":"marko","vendor":"marko-js","versions":[{"status":"affected","version":"marko < 5.38.36"},{"status":"affected","version":"@marko/runtime-tags < 6.0.164"}]}
- cve_program_cvelist_v5affectedurn:baitaphish:normalized-source-record:v2:1e5dae58a8320dcdf8376f6cddb1fa875d4fe74b9da480d99ec1437b7b1472ac · sha256:25a582c7fd6dd218… · /containers/cna/affected/0
Provider-owned CVSS observations
1 source assertion{"metric":{"attackComplexity":"LOW","attackVector":"NETWORK","availabilityImpact":"NONE","baseScore":6.4,"baseSeverity":"MEDIUM","confidentialityImpact":"LOW","integrityImpact":"LOW","privilegesRequired":"LOW","scope":"CHANGED","userInteraction":"NONE","vectorString":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N","version":"3.1"},"metric_type":"cvssV3_1"}
- cve_program_cvelist_v5cvssurn:baitaphish:normalized-source-record:v2:1e5dae58a8320dcdf8376f6cddb1fa875d4fe74b9da480d99ec1437b7b1472ac · sha256:25a582c7fd6dd218… · /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:1e5dae58a8320dcdf8376f6cddb1fa875d4fe74b9da480d99ec1437b7b1472ac · sha256:25a582c7fd6dd218… · /containers/cna/problemTypes/0/descriptions/0
Source references
2 source assertions{"name":"https://github.com/marko-js/marko/security/advisories/GHSA-x9fj-57fh-c8wq","tags":["x_refsource_CONFIRM"],"url":"https://github.com/marko-js/marko/security/advisories/GHSA-x9fj-57fh-c8wq"}
- cve_program_cvelist_v5referenceurn:baitaphish:normalized-source-record:v2:1e5dae58a8320dcdf8376f6cddb1fa875d4fe74b9da480d99ec1437b7b1472ac · sha256:25a582c7fd6dd218… · /containers/cna/references/0
{"tags":["exploit"],"url":"https://github.com/marko-js/marko/security/advisories/GHSA-x9fj-57fh-c8wq"}
- cve_program_cvelist_v5referenceurn:baitaphish:normalized-source-record:v2:1e5dae58a8320dcdf8376f6cddb1fa875d4fe74b9da480d99ec1437b7b1472ac · sha256:25a582c7fd6dd218… · /containers/adp/0/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.