CVE-2025-68146
Last modified
CVE-2025-68146 is a medium-severity vulnerability rated 6.5/10 on the CVSS scale. filelock is a platform-independent file lock for Python. In versions prior to 3.20.1, a Time-of-Check-Time-of-Use (TOCTOU) race condition allows local attackers to corrupt or truncate arbitrary user files through symlink attacks. EPSS estimates a 0.18% chance of exploitation in the next 30 days.
Description
filelock is a platform-independent file lock for Python. In versions prior to 3.20.1, a Time-of-Check-Time-of-Use (TOCTOU) race condition allows local attackers to corrupt or truncate arbitrary user files through symlink attacks. The vulnerability exists in both Unix and Windows lock file creation where filelock checks if a file exists before opening it with O_TRUNC. An attacker can create a symlink pointing to a victim file in the time gap between the check and open, causing os.open() to follow the symlink and truncate the target file. All users of filelock on Unix, Linux, macOS, and Windows systems are impacted. The vulnerability cascades to dependent libraries. The attack requires local filesystem access and ability to create symlinks (standard user permissions on Unix; Developer Mode on Windows 10+). Exploitation succeeds within 1-3 attempts when lock file paths are predictable. The issue is fixed in version 3.20.1. If immediate upgrade is not possible, use SoftFileLock instead of UnixFileLock/WindowsFileLock (note: different locking semantics, may not be suitable for all use cases); ensure lock file directories have restrictive permissions (chmod 0700) to prevent untrusted users from creating symlinks; and/or monitor lock file directories for suspicious symlinks before running trusted applications. These workarounds provide only partial mitigation. The race condition remains exploitable. Upgrading to version 3.20.1 is strongly recommended.
Metrics
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:L/I:H/A:H
Weakness Enumeration
Affected Software
| Vendor | Product | Versions |
|---|---|---|
| Tox-Dev | Filelock | < 3.20.1 |
References
- https://github.com/tox-dev/filelock/pull/461Issue Tracking, Patch
- https://github.com/tox-dev/filelock/releases/tag/3.20.1Product, Release Notes
- https://github.com/tox-dev/filelock/security/advisories/GHSA-w853-jp5j-5j7fExploit, Mitigation, Vendor Advisory
Timeline
- Published
- Last Modified
- Status
- Analyzed
Frequently Asked Questions
What is CVE-2025-68146?
How severe is CVE-2025-68146?
How do I fix CVE-2025-68146?
How Strix Helps
- How Strix found a critical auth bypass in etcdStrix autonomously discovered a critical authentication bypass in etcd, later designated CVE-2026-33413.
- Autonomous PentestingAI agents that find and validate exploitable vulnerabilities like this one across your applications.
- PR ReviewsPentest every pull request so vulnerable code is caught before it ships to production.
- AI Penetration TestingHow AI-driven penetration testing continuously covers your attack surface.
Related CVEs from 2025
- CVE-2025-68140EVerest is an EV charging software stack. Prior to version 2…4.3
- CVE-2025-68141EVerest is an EV charging software stack. Prior to version 2…7.4
- CVE-2025-68142PyMdown Extensions is a set of extensions for the `Python-Ma…5.3
- CVE-2025-68143Model Context Protocol Servers is a collection of reference …8.8
- CVE-2025-68144In mcp-server-git versions prior to 2025.12.17, the git_diff…7.1
- CVE-2025-68145In mcp-server-git versions prior to 2025.12.17, when the ser…9.1
- CVE-2025-68147Open Source Point of Sale (opensourcepos) is a web based poi…8.1
- CVE-2025-68148FreshRSS is a free, self-hostable RSS aggregator. From versi…7.5
- CVE-2025-6815The LatePoint – Calendar Booking Plugin for Appointments and…5.5
- CVE-2025-68150Parse Server is an open source backend that can be deployed …6.5
- CVE-2025-68151CoreDNS is a DNS server that chains plugins. Prior to versio…7.5
- CVE-2025-68152Juju is an open source application orchestration engine that…4.9
Are you affected by CVE-2025-68146?
Run a free Strix scan to check your systems for this vulnerability.
Scan your code nowSource: NVD / NIST
