@xhmikosr/decompress: Path traversal via symlink chain
Critical severity
GitHub Reviewed
Published
Sep 15, 2026
in
XhmikosR/decompress
•
Updated Sep 29, 2026
Description
Published by the National Vulnerability Database
Sep 28, 2026
Published to the GitHub Advisory Database
Sep 29, 2026
Reviewed
Sep 29, 2026
Last updated
Sep 29, 2026
Impact
When extracting an untrusted archive with the default
decompress(input, output)API, a crafted archive containing a chain of symlink entries can make a later entry resolve outside the output directory. The lexical containment checks pass, but the kernel follows the planted symlinks to a path outsideoutput, letting an attacker write (and read) files outside the intended extraction directory. Overwriting startup scripts or configuration can lead to remote code execution.This is a bypass of the hardening in GHSA-mp2f-45pm-3cg9. Any application that extracts attacker-controlled archives is affected.
Patches
Fixed in 11.1.4 (
latest) and backported to 10.2.2 (release-v10dist-tag). Upgrade to one of these.The unmaintained upstream
decompresspackage shares this flaw and will not be patched. Migrate to@xhmikosr/decompress@11.1.4(or@10.2.2).Workarounds
None. Do not extract untrusted archives on affected versions. If you cannot upgrade, validate entries out of band and reject any whose resolved path escapes the target directory.
References