GitHub Advisoryadvisory · npm

GHSA-x7m8-jrm8-hpvx @eigenpal/docx-editor-react: CSS injection and print-time XSS via unescaped embedded font-family name

HIGH Published 2026-09-10 Modified 2026-09-10 Official page ↗
Ecosystem
npm
Packages
@eigenpal/docx-editor-core, @eigenpal/docx-editor-react
Severity
High
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N
Weaknesses
CWE-79
Reviewed
2026-09-10

Affected packages

• npm @eigenpal/docx-editor-core: < 1.8.3 → fixed in 1.8.3 • npm @eigenpal/docx-editor-react: < 1.8.3 → fixed in 1.8.3

Description

Summary Embedded font-family names (`word/fontTable.xml`) were interpolated unescaped into an injected `@font-face` `` and into the print window's `document.write()`. A crafted name injects page-wide CSS on open, and breaks out of `` into executable HTML on Print. Impact Opening 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. Remediation Upgrade 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`.

Related

Weakness · CWE (1)

  • CWE-79 Improper Neutralization of Input During Web Page Generation weakness

References