Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

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

Quick assessment

Affected
pypa virtualenv
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

virtualenv 是一个用于创建隔离的虚拟 Python 环境的工具。在 21.14.9 版本之前,其 删除错误处理程序在遇到删除失败时,会调用 读取文件的模式位,随后通过 设置所有者可写权限,而该操作会跟随符号链接。因此,如果在一个只读目录中预先植入了符号链接,且该链接指向一个由受害者拥有、但初始时调用用户不可写的目标文件(位于目标目录之外),那么在重试失败之前,该目标文件的权限可能被放宽为广泛可写(前提是调用用户拥有该目标文件并能修改其模式)。其他账户仅在其能够遍历目标文件的父目录时,才能利用这一被放宽的权

CVSS 4.5 · Medium
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-113724

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
virtualenv: Deletion recovery can change a symlink target's mode
Source: CVE Program / CVE List V5
Vulnerability 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.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:L
Source: CVE Program / CVE List V5
Vulnerability Type
在文件访问前对链接解析不恰当(链接跟随)
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
pypa virtualenv < 21.14.9 -

II. Public POCs for CVE-2026-113724

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-113724

请登录查看更多情报信息。

Vendor Pages for CVE-2026-113724 (1)

Other References for CVE-2026-113724 (3)

Same Patch Batch · pypa · 2026-10-20 · 16 CVEs total

CVE-2026-113722 7.8 HIGH virtualenv: Generated POSIX console launchers interpret destination paths as shell syntax
CVE-2026-113725 7.8 HIGH virtualenv bash activate runs commands from an environment name with a backslash before $
CVE-2026-113726 7.8 HIGH virtualenv activate runs commands from the environment name in zsh with PROMPT_SUBST
CVE-2026-113776 7.8 HIGH virtualenv activation scripts run code from a path that contains a placeholder name
CVE-2026-113732 7.8 HIGH virtualenv activate.fish runs commands from a path or prompt with a backslash before a quo
CVE-2026-113718 7.1 HIGH virtualenv: Xonsh activation literals depend on the script decoding codec
CVE-2026-113723 7.1 HIGH virtualenv: Bash prompt values can change meaning under older compatibility modes
CVE-2026-113716 4.5 MEDIUM virtualenv: Builtin creation follows linked environment directories
CVE-2026-113719 4.5 MEDIUM virtualenv: Seed replacement does not contain metadata deletion paths
CVE-2026-113721 4.5 MEDIUM virtualenv: Generated files can follow existing destination links
CVE-2026-113713 4.4 MEDIUM virtualenv: Temporary app-data can leave dangling seed package links
CVE-2026-113720 4.4 MEDIUM virtualenv: Seeded files retain permissions from an older cache
CVE-2026-113714 2.3 LOW virtualenv: Downloaded wheel selection and caching precede verification
CVE-2026-113717 2.3 LOW virtualenv: Pip seeding with download omits wheel digest verification
CVE-2026-113715 2.0 LOW virtualenv: Venv configuration readback can reinterpret path boundaries

IV. Related Vulnerabilities

V. Comments for CVE-2026-113724

No comments yet


Leave a comment