{"id":"GHSA-x7m8-jrm8-hpvx","title":"@eigenpal/docx-editor-react: CSS injection and print-time XSS via unescaped embedded font-family name","summary":"@eigenpal/docx-editor-react: CSS injection and print-time XSS via unescaped embedded font-family name","severity":"high","cvss":8.1,"cwe":["CWE-79"],"vendor":"eigenpal","product":"@eigenpal/docx-editor-core","ecosystem":"npm","affected":["@eigenpal/docx-editor-core <= 1.8.2","@eigenpal/docx-editor-react <= 1.8.2"],"patched":["@eigenpal/docx-editor-core 1.8.3","@eigenpal/docx-editor-react 1.8.3"],"published":"2026-09-10","updated":"2026-09-10","sourceUpdated":"2026-09-10T15:06:17Z","source":"GHSA","sourceUrl":"https://github.com/advisories/GHSA-x7m8-jrm8-hpvx","references":[{"url":"https://github.com/eigenpal/docx-editor/security/advisories/GHSA-x7m8-jrm8-hpvx"},{"url":"https://github.com/advisories/GHSA-x7m8-jrm8-hpvx"}],"tags":["ghsa","npm"],"ingestedAt":"2026-09-10T15:53:17.072Z","slug":"GHSA-x7m8-jrm8-hpvx","body":"## Overview\n\n## Summary\nEmbedded font-family names (`word/fontTable.xml`) were interpolated unescaped into an injected `@font-face` `<style>` and into the print window's `document.write()`. A crafted name injects page-wide CSS on open, and breaks out of `<style>`\n  into executable HTML on Print.\n\n## Impact\nOpening a crafted `.docx` applies attacker-controlled CSS page-wide with zero clicks (overlay/phishing, attribute-selector exfiltration of input values, tracking beacons). Clicking Print escalates to script execution in the embedder's origin.\n\n## Remediation\nUpgrade to 1.8.3. Font names are CSS-escaped before interpolation (quotes, backslash, `< >`, and CSS newlines), and the print window is assembled with DOM APIs instead of `document.write`.\n\n## Affected packages\n\n- `@eigenpal/docx-editor-core <= 1.8.2`\n- `@eigenpal/docx-editor-react <= 1.8.2`\n\n## Remediation\n\nUpgrade to a patched release:\n\n- `@eigenpal/docx-editor-core 1.8.3`\n- `@eigenpal/docx-editor-react 1.8.3`","depth":"twilight","depthScore":45,"depthScoreParts":{"impact":44.6,"likelihood":0,"exploitation":0,"ransomware":0},"changes":[]}