CVE-2026-22701

filelock Time-of-Check-Time-of-Use (TOCTOU) Symlink Vulnerability in SoftFileLock

MEDIUM 5.3

At a glance

Source
NVD
EPSS
EPSS 0.13 % · percentile 2 ()
State
PUBLISHED
Published
Updated
Assigner
GitHub_M
NVD status
Analyzed

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.

Weaknesses (CWE)

  • CWE-59 — Improper Link Resolution Before File Access
  • CWE-362 — Concurrent Execution using Shared Resource with Improper Synchronization
  • CWE-367 — Time-of-check Time-of-use (TOCTOU) Race Condition

References

Scores

VersionScoreVectorScored by
CVSS 3.1MEDIUM 5.3CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:HGitHub_M
CVSS 3.1MEDIUM 5.3CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:HNVD · security-advisories@github.com (Secondary)

Advisories

European references

CERT-FR advisories

Affected configurations (NVD CPE)

Affected products

ProductVersions
tox-dev · filelockaffected < 3.20.3

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD