Vulnerability · Published Oct 20, 2026 · Assigned by GitHub_M

CVE-2026-113724virtualenv: Deletion recovery can change a symlink target's mode

Medium 4.5

In plain English

A medium-severity security flaw in virtualenv from pypa. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.2% (higher than 10% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.1)4.5Medium
Exploit odds (30 days)0.2%top 89.6% of all CVEs
Exploited in the wildNo reportsCISA SSVC: poc
Attack toolingNoneno public tooling known

Official description

virtualenv is a tool for creating isolated virtual python environments. Prior to 21.14.9, the safe_delete() deletion error handler responds to a failed removal by reading mode bits with os.lstat(path) and applying owner-write permission with os.chmod(path, ...), which follows a symlink. A planted link inside a read-only directory can therefore cause a victim-owned target outside the destination that is initially not writable by the invoking user to become broadly writable before the retry fails, provided that user owns the target and can change its mode. Another account can use the widened mode only if it can traverse the target's parent directories; root does not reach the demonstrated failure path, and the operation does not itself read the target. This issue is fixed in version 21.14.9.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Debian:12python-virtualenvno fix listedDEBIAN-CVE-2026-113724
Debian:13python-virtualenvno fix listedDEBIAN-CVE-2026-113724
Debian:14python-virtualenvno fix listedDEBIAN-CVE-2026-113724
PyPIvirtualenv21.14.9GHSA-43mp-35q3-x3fq
Ubuntu:26.04:LTSpython-virtualenvno fix listedUBUNTU-CVE-2026-113724
Ubuntu:26.10python-virtualenvno fix listedUBUNTU-CVE-2026-113724

Affected products (as reported)

VendorProductVersions
pypa virtualenv < 21.14.9

Weakness: CWE-59 · Vector: CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:L

References