filelock on Windows follows SQLite side files planted by other users
Key facts
- Attack vector
- Local
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- None · None · Low
- Fix status
- Partial Red Hat: 1 without a fix
Attack profile from CVSS 3.1 · CNA. Fix status from CNA, GitHub and Red Hat.
Summary
filelock, a Python file lock library, is affected from 3.20.4 before 4.2.1. On Windows, ReadWriteLock and AsyncReadWriteLock attach SQLite to the lock database by pathname, letting a local account that can create adjacent files plant a WAL or journal side file, and an undeletable WAL file makes each read or write acquisition fail with sqlite3.OperationalError, whatever the timeout. A hot journal with modify rights for the lock account can also make SQLite recovery delete a file it names if the lock account can delete the target. Exploitation needs a directory writable by another account, such as a shared temporary directory, and private directories are not affected.
Written with Claude Haiku 5.5 from the sources below · 2026-11-07
Description from the CNA
filelock is a platform-independent file lock for Python. From 3.20.4 until 4.2.1, ReadWriteLock and AsyncReadWriteLock on Windows use _connect to attach SQLite to the lock database by pathname, allowing another local account that can create adjacent names to place a database-wal or database-journal side file before acquisition. An undeletable WAL file makes each read or write acquisition fail immediately with sqlite3.OperationalError regardless of timeout. Separately, when the database contains at least one table, a hot journal that grants the lock account modify rights can cause SQLite recovery to delete a file named by that journal only when the lock account has permission to delete the target. The issue requires a directory writable by another account, such as a shared Windows temporary directory, and does not affect private directories. This issue is fixed in version 4.2.1.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| tox-dev | filelock | 3.20.4 to before 4.2.1 | 4.2.1 | Patch available | CNA |
| — | filelock (PyPI) | 3.20.4 to before 4.2.1 | 4.2.1 | Patch available | GHSA-9vhv-jxww-xfm5 |
- filelock Vendortox-dev Affected 3.20.4 to before 4.2.1 Fixed in 4.2.1 Patch available CNA
- filelock (PyPI) Vendor— Affected 3.20.4 to before 4.2.1 Fixed in 4.2.1 Patch available GHSA-9vhv-jxww-xfm5
Remediation
Upgrade filelock to version 4.2.1 or later, which fixes the issue in the PyPI and tox-dev filelock packages. Red Hat OpenShift AI (RHOAI) is affected without a fix, and the sources list no fixed version for it.
Written with Claude Haiku 5.5 from the sources below · 2026-11-07
- Fix · CNA filelock (tox-dev) Fixed in 4.2.1
- Fix · GHSA-9vhv-jxww-xfm5 filelock (PyPI) Fixed in 4.2.1 Advisory →
Vendor assessments
Red Hat
Red Hat rating: Low. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat OpenShift AI (RHOAI) | Affected | No fix yet: Fix deferred |
Timeline
- 2026-11-05 Threatist record created from CVE-2026-112913
- 2026-11-06 CISA SSVC decision points changed
- 2026-11-06 Priority changed: LOW → MEDIUM
- 2026-11-07 Affected versions changed · Red Hat
- 2026-11-07 CVSS score added · Red Hat
References
Other 7
- https://github.com/tox-dev/filelock/security/advisories/GHSA-9vhv-jxww-xfm5
- https://github.com/tox-dev/filelock/pull/834
- https://github.com/tox-dev/filelock/pull/854
- https://github.com/tox-dev/filelock/commit/1f582d02c7e5cb4aa7e41ddae211d32d31778f3b
- https://github.com/tox-dev/filelock/commit/5e3f2ec0c5fb17cb2635b60b2b68bc63ab81ca2d
- https://github.com/tox-dev/filelock
- https://github.com/tox-dev/filelock/releases/tag/4.2.1
More tox-dev vulnerabilities
- TI-2026-76862 Symlink race in filelock ReadWriteLock lets attackers overwrite files CVSS 3.1HIGH 7.1
- TI-2026-76853 filelock soft locks adopt directories created by other local users CVSS 3.1MEDIUM 6.3
- TI-2026-76859 Symlink following in filelock ReadWriteLock redirects SQLite database CVSS 3.1MEDIUM 6.1
- TI-2026-76857 Unsafe holder record refresh in filelock SoftReadWriteLock CVSS 3.1MEDIUM 6.1
- TI-2026-76852 filelock UnixFileLock truncates files placed on the lock path CVSS 3.1MEDIUM 6.1
- TI-2026-76856 Crafted lock database makes filelock ReadWriteLock acquisitions hang CVSS 3.1MEDIUM 5.5
Sources
- CVE-2026-112913 · CVE Program
- CVE-2026-112913 · NVD
- FIRST EPSS
- CVE-2026-112913 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences