CVE-2026-112937 json
filelock: ReadWriteLock on the hard-link route deletes any directory another user renames onto its .filelock-* link directory name
published 20d ago modified 17d ago also GHSA-jqc4-5cvw-7w85 , EUVD-2026-105028
- cvss
- 6.1
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.2%
- EPSS 0.2% chance of exploitation in 30 days, percentile 5%
- public exploits
- 0
- none known
Summary
filelock is a platform-independent file lock for Python. From 4.1.0 until 4.2.1, ReadWriteLock can remove a randomized .filelock-* private-hard-link directory during cleanup, allowing another local user with rename access in a non-sticky parent to observe a live name or forge a dead-owner sweep name and rename a sibling directory onto it for deletion. This issue is fixed in version 4.2.1.
Patch / fix
- pypi filelock 4.2.1
- tox-dev filelock 4.2.1
Is CVE-2026-112937 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerVendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-112937 updated cvss 6.1
filelock: filelock: Arbitrary directory deletion via insecure cleanup in ReadWriteLock
-
Red Hat All currently supported Red Hat productsnot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- 19d ago
Exploit prediction
0.16% chance of exploitation in the next 30 days, higher than 5% of all scored CVEs (FIRST EPSS, 2026-11-09).
Exploits and checks
- github.com https://github.com/tox-dev/filelock/security/advisories/GHSA-jqc4-5cvw-7w85 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 6.1 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L |
| GitHub | 3.1 | 6.1 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | filelock | >=4.1.0, <4.2.1 |
4.2.1 |
Affected products
- tox-dev filelock
Classification
- Weakness
-
- CWE-367 Time-of-check Time-of-use (TOCTOU) Race Condition
References
-
github.com
/tox-dev/filelock/pull/834
web, patch
-
github.com
/tox-dev/filelock/commit/5e3f2ec0c5fb17cb2635b60b2b68bc63ab81ca2d
web, patch
-
github.com
/tox-dev/filelock/security/advisories/GHSA-jqc4-5cvw-7w85
web, exploit, mitigation, patch, vendor-advisory
-
github.com
/tox-dev/filelock/releases/tag/4.2.1
web, release-notes
-
nvd.nist.gov
/vuln/detail/CVE-2026-112937
advisory
-
github.com
/tox-dev/filelock
package
Sources
- CVE List CVE-2026-112937
- GitHub Advisory GHSA-jqc4-5cvw-7w85
- NVD CVE-2026-112937
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.