lexicon · filelock ReadWriteLock: a crafted lock database makes every acquire stall or hang regardless of timeout
Affects lexiconSource GCVE Database
Not known to be exploited · CVSS 5.5 Medium : upgrade to 3.25.2_5 when convenient.
Data as of 30 Oct 2026, 07:32 UTC
- Patch
- Available – fixed in 3.25.2_5
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:HExploitation evidence
Disclosed: evidence found.
CVE published 20 Oct 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponized: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 29 Oct 2026.
What to do
Upgrade lexicon to 3.25.2_5.
Affected software
| Product | Affected | Fixed in |
|---|---|---|
Homebrewlexiconpkg:brew/lexiconOther threats | Affected
| Fixed in
|
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
AI-suggested
A patch is available in filelock version 3.25.2_5 that fixes this issue. Users should upgrade to this fixed version or later. Additionally, ensure that lock directories are not writable by untrusted users or are configured with the sticky bit to prevent unauthorized file replacement. On Linux, enabling the kernel setting fs.protected_regular=2 can help prevent opening files owned by other users in world-writable sticky directories. On Windows, the project already requires lock directories to be protected from untrusted users. No other mitigation is necessary once patched.
Description
A vulnerability in the filelock Python package's ReadWriteLock and AsyncReadWriteLock components allows a local user with write access to the lock database file path to cause every acquire operation to stall or hang indefinitely, ignoring timeout and blocking flags. This happens because the SQLite-backed lock runs a PRAGMA statement that loads the entire schema of the database file, and a crafted database file can cause the acquire to consume excessive CPU and memory or never return. The impact is denial of service (availability) only, with no confidentiality or integrity compromise. Versions 3.20.4 through 4.2.0 are affected.
References
- github.com/tox-dev/filelock/security/advisories/GHSA-cwqr-hh33-gh44 (opens in a new tab)
- nvd.nist.gov/vuln/detail/CVE-2026-112915 (opens in a new tab)
- github.com/tox-dev/filelock/pull/834 (opens in a new tab)
- github.com/tox-dev/filelock/commit/5e3f2ec0c5fb17cb2635b60b2b68bc63ab81ca2d (opens in a new tab)
- github.com/tox-dev/filelock (opens in a new tab)
- github.com/tox-dev/filelock/releases/tag/4.2.1 (opens in a new tab)