Whatsapp-Chat-Exporter has Cross-Site Scripting vulnerability in HTML output of chatsGHSA-8c6x-g4fw-8rf4
MEDIUMFix: KnugiHK/WhatsApp-Chat-Exporter@bfdc68cGHSA-8c6x-g4fw-8rf4 is a medium-severity (CVSS 5.4) vulnerability in whatsapp-chat-exporter. A fix is available for whatsapp-chat-exporter — see the affected versions and patch details below.
Real-World Exposure
whatsapp-chat-exporterReal-time download stats are indexed for npm and PyPI packages. This vulnerability affects PyPI packages — download data is not available via public APIs for these ecosystems.
Description
Impact
A Cross-Site Scripting (XSS) vulnerability was found in the HTML output of chats. XSS is intended to be mitigated by Jinja's escape function. However, autoescape=True was missing when setting the environment. Although the actual impact is low, considering the HTML file is being viewed offline, an adversary may still be able to inject malicious payloads into the chat through WhatsApp. All users are affected.
Patches
The vulnerability is patched in 0.9.5. All users are strongly advised to update the exporter to the latest version.
Workarounds
No workaround is available. Please update the exporter to the latest version.
References
https://github.com/KnugiHK/WhatsApp-Chat-Exporter/commit/bfdc68cd6ad53ceecf132773f9aaba50dd80fe79 https://owasp.org/www-community/attacks/xss/
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| 🐍PyPI | whatsapp-chat-exporter | all versions | 0.9.5pip install --upgrade 'whatsapp-chat-exporter==0.9.5' |
Detection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for whatsapp-chat-exporter, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
Fix
Update whatsapp-chat-exporter to 0.9.5 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms GHSA-8c6x-g4fw-8rf4 is resolved across your whole dependency graph.
Workarounds
Escape or sanitise the affected output on the server side rather than relying on client-side filtering, and add a Content-Security-Policy that blocks inline script execution so injected markup cannot run even if it reaches the page.
Frequently Asked Questions
Is GHSA-8c6x-g4fw-8rf4 in your dependencies?
Find it across PyPI, including transitive dependencies.