Advisory Database
  • Advisories
  • Dependency Scanning
  1. npm
  2. ›
  3. adm-zip
  4. ›
  5. CVE-2026-102282

CVE-2026-102282: adm-zip extraction preserves SUID/SGID bits from untrusted ZIPs -> local privilege escalation

September 29, 2026

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.

References

  • github.com/advisories/GHSA-j5f4-cc29-5x44
  • github.com/cthackers/adm-zip/commit/6a63c339b83c52915483efacda517660a7a7bf87
  • github.com/cthackers/adm-zip/releases/tag/v0.6.1
  • github.com/cthackers/adm-zip/security/advisories/GHSA-j5f4-cc29-5x44
  • nvd.nist.gov/vuln/detail/CVE-2026-102282

Code Behaviors & Features

Detect and mitigate CVE-2026-102282 with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →

Affected versions

All versions before 0.6.1

Fixed versions

  • 0.6.1

Solution

Upgrade to version 0.6.1 or above.

Impact 7.1 HIGH

CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N

Learn more about CVSS

Weakness

  • CWE-732: Incorrect Permission Assignment for Critical Resource

Source file

npm/adm-zip/CVE-2026-102282.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Wed, 07 Oct 2026 12:18:32 +0000.