Vulnerabilities

Security fix · CVE-2026-113787

odf-kit allows users to generate, fill, read, and convert OpenDocument Format files (.odt, .ods) in TypeScript and JavaScript.

Published Oct 21, 2026 · catalog updated Nov 4, 2026 · odf-kit allows users to

Last checked Nov 5, 2026. A connected source was read within the last 7 days.

Check if you run it

No confirmed exploitation is on record for CVE-2026-113787. EPSS is 0.25%. Act only if a listed version of odf-kit allows users to is installed.

Gaps on this record

  • The stored product name is a package slug. The name on this page is taken from the title (odf-kit allows users to).
  • No vendor fix or required action is stored. Compare the linked advisory before you change production.
Severity
Medium6.1
Known exploitation
Not in CISA/VulnCheck KEV
EPSS
0.25%
Remediation
Version ranges on file
Affected products
npm odf-kit

### Summary ODF style attribute values are interpolated into attributes without HTML-escaping in **both** of odf-kit's to-HTML renderers ( and ). A double-quote character inside an attacker-controlled style value breaks out of the attribute, allowing arbitrary HTML/attribute injection — and therefore script execution (XSS) — from a crafted or file wherever the rendered output is inserted as HTML, which is the documented purpose of both functions. ### Details #### ODT renderer ( ) The renderer has an helper and applies it consistently to text content and to attribute values — , , , , , , citation text all go through it. The inline CSS strings do not. In (dist/odt/to-html/html-renderer.js:195): The value of e.g. is copied from the document into verbatim by the parser ( , read/parser.js:348), then concatenated raw into the attribute. A in the value terminates the attribute early. The same unescaped pattern appears at roughly ten other emission sites: paragraph and heading ( ), table cells and rows ( , ), , and the image style attribute. The affected source attributes include , , , , (via both direct and font-face resolution), , , , , and . #### ODS renderer ( ) — same bug assembles the CSS string from cell formatting properties — , , , , , etc. — with zero calls, and emits it raw (line 65): Additionally, (from ) goes raw into the row element (line 95): The same injection is reachable through the public export ( ), so both to-HTML directions are affected. #### Version scope The and modules first shipped in **0.14.0**; the current latest release is **0.14.1**. The PoCs were re-ran against the unreleased branch (commit ) — both injections still fire, so no fix has landed past the release. ### PoC Each PoC is a minimal ODF package ( + + ) whose contains exactly one poisoned automatic style. The files are generated by this short Python script (stdlib only, no dependencies) — save as and run : This produces , and . The only attacker-controlled input is the value on the style

Are you affected?

Enter the version you run. The result uses only the ranges stored on this record.

The check returns affected, not affected, or incomplete. It does not guess a version that is missing from the record.

  • npm odf-kit>= 0.6.0, < 0.14.2

How to fix CVE-2026-113787

What to do

Three questions, each answered from this record only. Confirm the vendor advisory before you patch.

Should you patch?

No confirmed exploitation is on record for CVE-2026-113787. EPSS is 0.25%. Act only if a listed version of odf-kit allows users to is installed.

Which versions are affected?

Compare what you have installed with >= 0.6.0, < 0.14.2. Compare the installed version with the linked vendor advisory before you change production.

What should an analyst verify?

CWE-79: Cross-site Scripting (XSS). EPSS 0.25%. There is no CISA KEV listing. No Exploit-DB or Metasploit reference is linked. Use the source links for the original advisory.

Code

The project this record applies to. Exploit listings stay in References.

Timeline

Detection, updates, and resolution for this record.

  1. Oct 21, 2026 · NIST NVD

    Detected

    odf-kit allows users to generate, fill, read, and convert OpenDocument Format files (.odt, .ods) in TypeScript and JavaScript. Starting in version 0.6.0 and prior to version 0.14.2, he renderer has an helper and applies it consistently to text content and to attribute values — , , , , , , citation text all go through it. The inline CSS strings do not. In ( ), the value of e.g. is copied from the d

  2. Oct 21, 2026 · NIST NVD

    Updated

    odf-kit allows users to generate, fill, read, and convert OpenDocument Format files (.odt, .ods) in TypeScript and JavaScript. Starting in version 0.6.0 and prior to version 0.14.2, he renderer has an helper and applies it consistently to text content and to attribute values — , , , , , , citation text all go through it. The inline CSS strings do not. In ( ), the value of e.g. is copied from the d

  3. Nov 4, 2026 · GitHub Advisory Database

    Updated

    ### Summary ODF style attribute values are interpolated into attributes without HTML-escaping in **both** of odf-kit's to-HTML renderers ( and ). A double-quote character inside an attacker-controlled style value breaks out of the attribute, allowing arbitrary HTML/attribute injection — and therefore script execution (XSS) — from a crafted or file wherever the rendered output is inserted as HTML,

Sources

  • CVE.orgVulnerability recordCVE-2026-113787

    Official CVE identifier

    cve.org
  • FIRST EPSSExploitation probabilityCVE-2026-113787

    30-day exploitation probability 0.25%

    first.org
  • GitHub Advisory DatabasePackage advisoryGHSA-3cgg-c5pp-57h6

    odf-kit: HTML injection leading to XSS in odtToHtml() and odsToHtml() via unescaped style attribute values

    github.com
  • GitLab Advisory DatabasePackage advisoryCVE-2026-113787

    ODF style attribute values are interpolated into style="&hellip;" attributes without HTML-escaping in both of odf-kit's to-HTML renderers (odtToHtml and odsToHtml). A double-quote character inside an attacker-controlled style value breaks out of the attribute, allowing arbitrary HTML/attribute injection — and therefore script execution (XSS) — from a crafted .odt or .ods file wherever the rendered

    advisories.gitlab.com
  • NIST NVDVulnerability recordCVE-2026-113787

    odf-kit allows users to generate, fill, read, and convert OpenDocument Format files (.odt, .ods) in TypeScript and JavaScript. Starting in version 0.6.0 and prior to version 0.14.2, he renderer has an helper and applies it consistently to text content and to attrib

    nvd.nist.gov

References

Freshness

Last verified in this catalog Nov 3, 2026. Significant claims (KEV, EPSS, CVSS, affected ranges) come from the source rows above — open the original publisher for the authoritative advisory.

  • GitLab Advisory DatabaseNov 5, 2026
  • GitHub Advisory DatabaseNov 4, 2026
  • FIRST EPSSNov 3, 2026
  • CVE.orgOct 22, 2026
  • NIST NVDOct 22, 2026