Serialize JavaScript serializes JavaScript values to a superset of JSON that includes regular expressions and functions. From 7.1.1 until 7.1.2, function values serialized by serialize-javascript are not fully protected against script-closing tags in attacker-influenced function source because SCRIPT_CLOSE_REGEXP can consume a second closing tag inside one match. When the serialized function is embedded in a script element, the surviving closing tag terminates the element early and causes the remaining output to be parsed as HTML, enabling cross-site scripting in the page origin. Only function values are affected; ordinary data values and options.isJSON output are unaffected. This issue is fixed in version 7.1.2.
{
"cna_assigner": "GitHub_M",
"cwe_ids": [
"CWE-79"
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/97xxx/CVE-2026-97711.json"
}{
"extracted_events": [
{
"range": [
{
"introduced": "7.1.1"
},
{
"fixed": "7.1.2"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"fixed": "2bdbaaff9cb8a4639135eb24cfcd383d3fefb534"
}
],
"source": "REFERENCES_COMMIT"
},
{
"original_tag": "v7.1.2",
"range": [
{
"fixed": "6a73fa1ddcbe4bbee8bfb12fc1ad8c086cb1334b"
}
],
"source": "REFERENCES_TAG"
}
]
}