GitHub Advisoryadvisory · PyPI

GHSA-gqgw-jghv-mxwx tablib: Stored XSS in the HTML export via unescaped dataset title

MEDIUM Published 2026-08-12 Modified 2026-08-12 Official page ↗
Aliases
CVE-2026-9318
Ecosystem
PyPI
Packages
tablib
Severity
Moderate
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
Weaknesses
CWE-79
Reviewed
2026-08-12

Affected packages

• PyPI tablib: < 3.10.0 → fixed in 3.10.0

Description

tablib prior to 3.10.0 contains a stored cross-site scripting vulnerability in the HTML export functionality that allows attackers to execute arbitrary JavaScript by embedding malicious payloads in dataset titles, which are interpolated unsanitized into HTML output via the export_book method in the _html.py format handler. Attackers can rename worksheet sheets in imported files such as XLSX, ODS, XLS, or YAML with script payloads that are assigned to the Dataset title attribute and rendered unescaped inside an HTML h3 tag, leading to session hijacking, unauthorized administrative actions, and sensitive data exposure when the output is rendered in a browser.

Related

Alias · CVE (1)

  • CVE-2026-9318 tablib prior to 3.10.0 contains a stored cross-site scripting vulnerability in the HTML export functionality that allows attackers to… vulnerability

Weakness · CWE (1)

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

References