CVE-2026-102282: high-severity vulnerability in cthackers adm-zip
adm-zip extraction preserves SUID/SGID bits from untrusted ZIPs -> local privilege escalation
Published · Updated
41Vexday Risk Score
No sign of exploitation. It has a public proof of concept.
ssvc Attendcvss 7.1epss 0.1%
from disclosure to weapon0 days
Published on NVDOct 5
1st PoCSep 23
exploitation probability
0.1%top 96% of all CVEs
observed exploitation
nono source reports it
2 public exploit(s)
adm-zip is a JavaScript library for creating and extracting ZIP archives in Node.js. Prior to 0.6.1, adm-zip applies the Unix permission bits stored in a zip entry directly to the extracted file via `fs.chmodSync()` when `keepOriginalPermission=true` is passed to `extractAllTo()`/`extractEntryTo()` — and it never filters the setuid/setgid/sticky bits out of those bits. A zip crafted by an attacker can therefore produce an extracted binary with mode `04755`. When extraction runs as root (the default posture in Docker builds, CI runners, and privileged install steps — the exact environments where this flag is used), the resulting root-owned setuid file is executed later by a lesser-privileged user, turning the attacker's code into a root execution. Version 0.6.1 fixes the issue.
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Affected products
cthackers · adm-zippublic PoCs found — 2
githubgithub.com/x86byte/adm-zip_LPE-PoC★ 10githubgithub.com/Ahmed-Elmahgob/POC-CVE-2026-102282★ 0⚠ Public resources, to assess the exposure of systems you control or are authorized to test. Test only with authorization.
Related CVEs — cthackers adm-zip
In the same product, most dangerous first.
CVE-2026-92000HIGHadm-zip 0.5.14 through 0.6.0 Denial of Service via Zero Declared Uncompressed SizeEPSS 0.7%CVE-2026-77301HIGHadm-zip: Uncontrolled memory allocation via the declared uncompressed size (DoS)EPSS 0.6%CVE-2026-76845MEDIUMadm-zip 0.5.9 through 0.6.0 Arbitrary File Overwrite via Symlink Following on ExtractionEPSS 0.2%