CVE-2026-22701
filelock Time-of-Check-Time-of-Use (TOCTOU) Symlink Vulnerability in SoftFileLock
- Published
- Updated
- Reserved
- Assigned by
- GitHub_M
Description
filelock is a platform-independent file lock for Python. Prior to version 3.20.3, a TOCTOU race condition vulnerability exists in the SoftFileLock implementation of the filelock package. An attacker with local filesystem access and permission to create symlinks can exploit a race condition between the permission validation and file creation to cause lock operations to fail or behave unexpectedly. The vulnerability occurs in the _acquire() method between raise_on_not_writable_file() (permission check) and os.open() (file creation). During this race window, an attacker can create a symlink at the lock file path, potentially causing the lock to operate on an unintended target file or leading to denial of service. This issue has been patched in version 3.20.3.
Scores
| Scored by | CVSS | Score | Vector |
|---|---|---|---|
| GitHub_MCNA (assigner) | 3.1 | Medium5.3 | CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:H |
| NVDNVD · Analyzed | 3.1 | Medium5.3 | CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:H |
- EPSS (exploitation in 30 days)
- 0.13% · top 98% of all CVEs (6 Nov 2026)
- CISA SSVC
- Exploitation: none · Automatable: no · Technical impact: partial
The list uses the assigner's score when there is one, then CISA's, then NVD's: Medium 5.3.
Weakness
- CWE-59: Improper Link Resolution Before File Access ('Link Following') (opens in a new tab)All about CWE-59 and its CVEs
- CWE-362: Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition') (opens in a new tab)All about CWE-362 and its CVEs
- CWE-367: Time-of-check Time-of-use (TOCTOU) Race Condition (opens in a new tab)All about CWE-367 and its CVEs
Affected products
Affected packages
From reviewed advisories of the GitHub Advisory Database.
- PyPIfilelockGHSA-qmgc-5h2g-mvrw (opens in a new tab)
References (3)
- https://github.com/tox-dev/filelock/security/advisories/GHSA-qmgc-5h2g-mvrw (opens in a new tab)x_refsource_CONFIRM
- https://github.com/tox-dev/filelock/commit/255ed068bc85d1ef406e50a135e1459170dd1bf0 (opens in a new tab)x_refsource_MISC
- https://github.com/tox-dev/filelock/commit/41b42dd2c72aecf7da83dbda5903b8087dddc4d5 (opens in a new tab)x_refsource_MISC
Sources
The same CVE in the primary databases and aggregators, to check against.
- CVE.org record (opens in a new tab)
- CVE List JSON (GitHub) (opens in a new tab)
- NVD (opens in a new tab)
- FIRST EPSS (opens in a new tab)
- OSV.dev (opens in a new tab)
- GitHub Advisory GHSA-qmgc-5h2g-mvrw (opens in a new tab)
- CIRCL Vulnerability-Lookup (opens in a new tab)
Badge for a README or a ticket
[](https://trackcve.app/cve/CVE-2026-22701)Record last updated .