Cyber Resilience

CVE-2025-68146

Race Condition in Tox-Dev Filelock ≤ 3.20.1

Public PoCRace Condition
Published
16 December 2025
Modified
05 March 2026
Patch / advisory
CVSS Score v3.1 6.3
Click a component to see what it means
Raw vectorCVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:H
EPSS Score 0.0019 9th percentile
Risk Priority 45 floored blend · peak EPSS

Summary

CVE-2025-68146 is a medium-severity Link Following (CWE-59) vulnerability in Tox-Dev Filelock. Its CVSS base score is 6.3 (Medium).

Operationally, exploitation aligns with the MITRE ATT&CK technique Path Interception (T1034); ranked at the 9th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.

The strongest mitigations our analysis identified map to AC-25 (Reference Monitor) and AC-3 (Access Enforcement) — see the control section below for these in your framework.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

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…

more

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.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise Techniques

T1034 Path Interception Persistence
**This technique has been deprecated.
T1068 Exploitation for Privilege Escalation Privilege Escalation
Adversaries may exploit software vulnerabilities in an attempt to elevate privileges.
T1547.009 Shortcut Modification Persistence
Adversaries may create or modify shortcuts that can execute a program during system boot or user login.
T1548 Abuse Elevation Control Mechanism Privilege Escalation
Adversaries may circumvent mechanisms designed to control privilege elevation to gain higher-level permissions.
T1574 Hijack Execution Flow Stealth
Adversaries may execute their own malicious payloads by hijacking the way operating systems run programs.
Derived from this CVE’s CWE(s) via the direct CWE→ATT&CK cross-walk.

CVEs Like This One

CVE-2026-22701Same product: Tox-Dev Filelock
CVE-2026-43619Shared CWE-367, CWE-59
CVE-2026-52991Shared CWE-362, CWE-367
CVE-2026-35359Shared CWE-367, CWE-59
CVE-2025-64118Shared CWE-362, CWE-367
CVE-2024-13960Shared CWE-367, CWE-59
CVE-2023-24861Shared CWE-362, CWE-367
CVE-2026-31824Shared CWE-362, CWE-367
CVE-2025-67124Shared CWE-367, CWE-59
CVE-2026-28689Shared CWE-367, CWE-59

Affected Assets

tox-dev
filelock
≤ 3.20.1

Mitigating Controls

Control response

Prevent
Stop it (NIST 800-53)

Detect
Catch it (NIST detect / respond)

Harden
Shrink the surface (DISA STIG)

Validate
Prove the fix (OWASP ASVS)
  • V10.4.2
  • V10.4.5
  • V15.1.3
  • V15.4.1

Mitigating Controls (NIST 800-53 r5) AI

A reference monitor that is always invoked and analyzable structurally eliminates the non-atomic check-then-use pattern underlying TOCTOU.

Proper enforcement of access authorizations on the resolved target resource stops a link from reaching an unintended object.

Least-privilege limits the damage an attacker can cause after following an unintended link.

Maintaining separate execution domains for each process structurally eliminates unintended concurrent access to the same shared resources.

Preventing unintended information transfer through shared system resources directly addresses the improper concurrent modification that defines a race condition.

Validating file-name inputs can reject or canonicalize names that resolve to links before access occurs.

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.PS-06 mostly match
prevents

Secure SDLC practices directly require code to validate paths and avoid unsafe link following.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

finds

Security testing can detect link-following flaws before release.

prevents

Secure SDLC practices can mandate link-resolution checks and canonicalization before file access.

prevents

Application security requirements can explicitly require safe handling of symbolic links and path traversal.

prevents

Secure architecture principles include input validation and safe file-access design patterns.

prevents

Secure coding standards directly address canonicalization and symlink attacks during implementation.

none

Reliable, synchronized time across systems narrows the exploitable window in which a resource state can change between a security check and its use.

References