GHSA-gqgw-jghv-mxwx: XSS
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 exportbook 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.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
pip/tablibto a version that resolves this vulnerability.Fixed in 3.10.0
Event History
Frequently Asked Questions
What is the severity of GHSA-gqgw-jghv-mxwx?
The severity of GHSA-gqgw-jghv-mxwx is rated medium with a score of 5.4.
How do I fix GHSA-gqgw-jghv-mxwx?
To fix GHSA-gqgw-jghv-mxwx, update to tablib version 3.10.0 or later where the vulnerability is addressed.
What type of vulnerability is GHSA-gqgw-jghv-mxwx?
GHSA-gqgw-jghv-mxwx is a stored cross-site scripting (XSS) vulnerability.
What can attackers do with GHSA-gqgw-jghv-mxwx?
Attackers can execute arbitrary JavaScript by embedding malicious payloads in dataset titles due to the unsanitized HTML output.
Which software is affected by GHSA-gqgw-jghv-mxwx?
The vulnerability GHSA-gqgw-jghv-mxwx affects the tablib library prior to version 3.10.0.