Katalog CVE

CVE-2026-113787

ŚrednieCVSS 6.1
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.25%

Percentyl 16 - wyżej niż 16% wszystkich znanych CVE

Streszczenie

Biblioteka odf-kit w wersjach od 0.6.0 do 0.14.2 ma funkcję escapeHtml() stosowaną do treści tekstowej i atrybutów, ale nie do wbudowanych ciągów CSS. W renderTextSpan i około dziesięciu innych miejscach wartości takie jak fo:color są kopiowane bezpośrednio z dokumentu i wstawiane bez escapowania do atrybutu style, co pozwala na wstrzyknięcie kodu przez cudzysłów w wartości.

Ocena ryzyka

Osoba atakująca może dostarczyć złośliwy dokument ODF, który po wyrenderowaniu do HTML wykona niebezpieczny kod w przeglądarce ofiary. Może to prowadzić do kradzieży danych sesji lub innych ataków typu cross-site scripting.

Rekomendacja

Zaktualizuj odf-kit do wersji 0.14.2 lub nowszej, która zawiera poprawkę. Unikaj renderowania niezaufanych dokumentów ODF do HTML do czasu aktualizacji.

Powiązane podatności

Oryginalny opis (angielski, źródło NVD)

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 `escapeHtml()` helper and applies it consistently to text content and to attribute values — `href`, `src`, `alt`, `id`, `data-author`, `data-date`, citation text all go through it. The inline CSS strings do not. In `renderTextSpan` (`dist/odt/to-html/html-renderer.js:195`), the value of e.g. `fo:color` is copied from the document into `style.fontColor` verbatim by the parser (`extractSpanStyle`, read/parser.js:348), then concatenated raw into the attribute. A `"` in the value terminates the attribute early. The same unescaped `style="${...}"` pattern appears at roughly ten other emission sites: paragraph and heading (`paragraphStyleToCss`), table cells and rows (`cellStyleToCss`, `rowStyleToCss`), `<col>`, and the image style attribute. The affected source attributes include `fo:color`, `fo:background-color`, `fo:text-shadow`, `fo:letter-spacing`, `fo:font-family` (via both direct and font-face resolution), `fo:margin-*`, `fo:padding-*`, `fo:line-height`, `fo:border*`, and `style:vertical-align`. Version 0.14.2 contains a patch.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS