CVE-2014-1624 — pyxdg
Fix: takluyver/pyxdg@bd999c1CVE-2014-1624 is a CWE-59 vulnerability in pyxdg. A fix is available for pyxdg — see the affected versions and patch details below.
pyxdg Arbitrary File Overwrite via Race Condition
EPSS Exploitation Probability
Probability of exploitation in the next 30 days, from FIRST.org EPSS.
Real-World Exposure
pyxdgReal-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
Race condition in the xdg.BaseDirectory.get_runtime_dir function in python-xdg 0.25 allows local users to overwrite arbitrary files by pre-creating /tmp/pyxdg-runtime-dir-fallback-victim to point to a victim-owned location, then replacing it with a symlink to an attacker-controlled location once the get_runtime_dir function is called.
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| 🐍PyPI | pyxdg | all versions | 0.26pip install --upgrade 'pyxdg==0.26' |
Affected Products
pyxdgpythonDetection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for pyxdg, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
Fix
Update pyxdg to 0.26 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms CVE-2014-1624 is resolved across your whole dependency graph.
Workarounds
If you can't upgrade right away: gate or disable the affected feature, validate untrusted input at the boundary, and avoid passing attacker-controlled data into the vulnerable path. O3's runtime protection blocks exploitation in production as an interim safeguard until the upgrade lands.
Frequently Asked Questions
Is CVE-2014-1624 in your dependencies?
Find it across PyPI, including transitive dependencies.