CVE-2026-112906 · GHSA-2g95-wg33-c5x2
filelock: SoftFileLock evicts a fresh lock file whose watched age another local user's pre-dated file passed on through inode reuse
- Risk score
- 40/100
- CVSS
- 4.7 v3.1
- Exploit chance (30 days)
- 0.2%
- Published
- 20 Oct 2026
Open in the live forecast Today's forecast
What to know
- What it is
- filelock is a platform-independent file lock for Python. From 4.1.0 until 4.2.1, SoftFileLock versions from 4.1.0 can reuse a stale observation when an attacker pre-dates and removes its own marker, at least two lock-user processes are waiting, coarse or matching modification times preserve the observation, and an hon…
- Affected
- filelock (pip) >= 4.1.0, <= 4.2.0
- Fix
- Upgrade filelock to 4.2.1 or later.
- Exploitation
- Public proof of concept
Story map
At a glance
Tox-dev Filelock: Yellow, plan it in. filelock is a platform-independent file lock for Python. From 4.0.0 until 4.2.1, SoftReadWriteLock refreshes holder records by name, allowing another local user with rename access to the lock directory to replace a record with a named pipe and stall the lock, or under a permissive hard-link policy to link a reachable …
The flaws
- CVE-2026-112906: SoftFileLock evicts a fresh lock file whose watched age another local user's pre-dated file passed on through inode reuse (CVSS 4.7 · EPSS 0%)
- CVE-2026-112934: Filelock is a platform-independent file lock for Python (CVSS 6.1 · EPSS 0%)
- CVE-2026-112936: Filelock is a platform-independent file lock for Python (CVSS 6.1 · EPSS 0%)
- CVE-2026-112940: Filelock ReadWriteLock: SQLite reopens the lock database by name, so a planted symlink or journal file makes the lock user's process overwrite or unlink its own files (CVSS 7.1 · EPSS 0%)
The fix
Upgrade Tox-dev Filelock: 4.2.1 · 4.0.9 or later on your release line
Who is exposed: Tox-dev Filelock before 4.2.1
Where it stands
- Public proof of concept
Connects to
- Same weakness: CWE-694 (CWE-694). 1 other warning in 30 days
- Same product: Earlier filelock warnings. 9 in the last 90 days
Why it is Yellow
- CVSS 4.7 medium
- Public exploit or proof of concept referenced
- On your watchlist: PyPI
Affected packages
| Package | Ecosystem | Vulnerable | Fixed in |
|---|---|---|---|
| filelock | pip | >= 4.1.0, <= 4.2.0 | 4.2.1 |
References
- https://github.com/tox-dev/filelock/commit/740ff666b62a88496c8d7394e4e6230605e4d62b
- https://github.com/tox-dev/filelock/releases/tag/4.2.1
- https://github.com/tox-dev/filelock/security/advisories/GHSA-2g95-wg33-c5x2
- https://github.com/tox-dev/filelock/security/advisories/GHSA-2g95-wg33-c5x2
- https://github.com/advisories/GHSA-2g95-wg33-c5x2
- https://nvd.nist.gov/vuln/detail/CVE-2026-112906
- https://github.com/tox-dev/filelock/pull/843
- https://github.com/advisories/GHSA-2g95-wg33-c5x2
Original description
filelock is a platform-independent file lock for Python. From 4.1.0 until 4.2.1, SoftFileLock versions from 4.1.0 can reuse a stale observation when an attacker pre-dates and removes its own marker, at least two lock-user processes are waiting, coarse or matching modification times preserve the observation, and an honest contender creates a fresh marker on the reused inode, causing that live marker to be removed as stale. This issue is fixed in version 4.2.1.
Last activity 23 Oct 2026. Patch Forecast updates every hour.