GHSA-jwp9-9v96-94mx

decompress allows arbitrary hardlink creation during archive extraction

En bref

Publiée
Mise à jour
CVE
CVE-2026-39243
CVSS_V3
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N

Description

decompress before 4.2.2 allows arbitrary hardlink creation during archive extraction, enabling file read disclosure and file corruption. When processing hardlink entries (type === 'link'), the x.linkname field from the archive is passed directly to fs.link() without validation (index.js line 113). An attacker can craft an archive with a hardlink entry whose linkname is an absolute path to any file on the same filesystem. This creates a hardlink inside the extraction directory that shares the same inode as the target file, enabling both reading and overwriting the original file's content. Hardlinks are limited to files on the same filesystem and cannot target directories.

Paquets affectés

PaquetVersions
npm · decompressintroduced 0, last affected 4.2.1

Références

Sources

SourceLicence
OSV.devCC-BY 4.0 — GitHub Advisory Database