adm-zip extraction preserves SUID/SGID bits from untrusted ZIPs -> local privilege escalation
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| cthackers | adm-zip | affected |
|
No data.
No data.
| Vendor | Product | Versions | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Cthackers | Adm-zip |
|
| Source | ID | Title |
|---|---|---|
Github GHSA |
GHSA-j5f4-cc29-5x44 | adm-zip extraction preserves SUID/SGID bits from untrusted ZIPs -> local privilege escalation |
No CVSS v4.0
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.199% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| Weaknesses | CWE-278 | |
| References |
| |
| Metrics |
threat_severity
|
threat_severity
|
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Cthackers
Cthackers adm-zip |
|
| Vendors & Products |
Cthackers
Cthackers adm-zip |
| Type | Values Removed | Values Added |
|---|---|---|
| Description | 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. | |
| Title | adm-zip extraction preserves SUID/SGID bits from untrusted ZIPs -> local privilege escalation | |
| Weaknesses | CWE-732 | |
| References |
| |
| Metrics |
cvssV3_1
|