blacklanternsecurity/bbot · Security
BBOT's Symlink guard bypass in unarchive module allows planting symlinks during extraction
- GHSA ID
- GHSA-xpf3-p7gm-7756
- CVE ID
- CVE-2026-14966
- Severity
- low
- Published
- Updated
- CVSS
- 3.1 · CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N
- CVSS v3
- 3.1 · CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N
Description
BBOT's unarchive module rejects archives containing symlink entries before extraction, but for zip and 7z archives it failed to detect symlinks whose listing carries a DOS-attribute prefix before the unix mode, as produced by legacy versions of p7zip. Such an archive, downloaded and extracted during a scan (for example via filedownload), bypassed the guard and caused an attacker-controlled symlink to be written into the extraction directory. The effect is limited to planting the symlink (its target is not written through), and only hosts using such a legacy p7zip build are affected; current mainline 7-Zip is not.
CWEs
- CWE-22 · Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
- CWE-59 · Improper Link Resolution Before File Access ('Link Following')
References
- https://github.com/blacklanternsecurity/bbot/security/advisories/GHSA-xpf3-p7gm-7756 ↗
- https://nvd.nist.gov/vuln/detail/CVE-2026-14966 ↗
- https://github.com/blacklanternsecurity/bbot/commit/3bc8d3a96f34f312853c9fcf8decee2a4e905f26 ↗
- https://github.com/blacklanternsecurity/bbot/commit/a3f1a2292e2b0a553827c6175b761abe28807735 ↗
- https://github.com/pypa/advisory-database/tree/main/vulns/bbot/PYSEC-2026-3719.yaml ↗
- https://github.com/advisories/GHSA-xpf3-p7gm-7756 ↗