Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Network-reachable extraction endpoint requires no auth; impact is partial DoS (process crash) only, with no confidentiality or integrity effect.
Primary rating from Vendor (GitHub_M).
CVSS VectorNVD
Lifecycle Timeline
5Blast Radius
ecosystem impact- 10 npm packages depend on tar (6 direct, 4 indirect)
Ecosystem-wide dependent count for version 7.5.18.
DescriptionNVD
node-tar is a tar archive manipulation library for Node.js. Prior to 7.5.18, node-tar coerces all-digit PAX path and linkpath values in src/pax.ts to JavaScript numbers, causing downstream path handling such as normalizeWindowsPath(entry.path).split('/') to throw an uncaught TypeError. This issue is fixed in version 7.5.18.
AnalysisAI
Denial of service in node-tar prior to 7.5.18 allows unauthenticated network-reachable attackers to crash Node.js processes by submitting crafted tar archives containing all-digit PAX header path or linkpath values. The library incorrectly coerces these string values to JavaScript numbers in src/pax.ts, causing downstream path handling (normalizeWindowsPath(entry.path).split('/')) to throw an uncaught TypeError when it attempts to call a string method on a numeric value. No public exploit code has been identified at time of analysis, and this vulnerability is not listed in the CISA KEV catalog.
Technical ContextAI
node-tar (cpe:2.3:a:isaacs:node-tar:*:*:*:*:*:*:*:*) is the reference tar archive manipulation library for Node.js, widely consumed as a transitive dependency of npm tooling and countless npm packages. The defect is rooted in CWE-704 (Incorrect Type Conversion or Cast): in src/pax.ts, PAX extended header values that consist entirely of digits are coerced from strings to JavaScript numbers rather than being preserved as strings. PAX headers are a POSIX.1-2001 extension to the tar format that carry arbitrary key-value metadata, including override values for path and linkpath. When a downstream function such as normalizeWindowsPath() receives an entry.path that is a Number rather than a String, the subsequent .split('/') call throws a TypeError because Number objects do not have a split() method. This uncaught exception propagates and terminates the extraction operation, potentially crashing the hosting process depending on error-handling posture.
RemediationAI
Upgrade node-tar to version 7.5.18 or later; this is the vendor-released patch that addresses the type coercion defect in src/pax.ts. The fix commit is available at https://github.com/isaacs/node-tar/commit/e02a4e9e013c4be95302e2eb2047a942b883c27b and the release is at https://github.com/isaacs/node-tar/releases/tag/v7.5.18. For applications that cannot immediately upgrade, a compensating control is to validate or sanitize tar archive inputs before passing them to node-tar - specifically, reject or strip PAX headers with all-digit path or linkpath values at the application boundary before extraction. Additionally, wrapping extraction calls in try/catch blocks and implementing process-level crash recovery (e.g., via a process manager such as pm2 or cluster) will limit the denial-of-service radius, though this does not eliminate the underlying defect. Restricting file upload endpoints to non-tar MIME types is a more aggressive but effective workaround where tar support is not required.
A vulnerability in the NuPoint Unified Messaging (NPM) component of Mitel MiCollab through 9.8 SP1 FP2 (9.8.1.201) could
FortiOS and FortiProxy contain an authentication bypass via the Node.js websocket module allowing unauthenticated remote
Denial of service against HTTP/2 server implementations allows remote unauthenticated attackers to exhaust server resour
Eval injection vulnerability in the internals.batch function in lib/batch.js in the bassmaster plugin before 1.5.2 for t
Flowise version 3.0.5 contains a remote code execution vulnerability in the CustomMCP node. The mcpServerConfig paramete
Node.js 8.5.0 before 8.6.0 allows remote attackers to access unintended files, because a change to ".." handling was inc
An issue was discovered in the node-serialize package 0.0.4 for Node.js. Rated critical severity (CVSS 9.8), this vulner
OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0.1h does not properly restrict processing of ChangeCiph
Directory traversal vulnerability in the st module before 0.2.5 for Node.js allows remote attackers to read arbitrary fi
Multiple SQL injection vulnerabilities in the Manage Accounts page in the AccountManagement.asmx service in the Solarwin
The JS-YAML module before 2.0.5 for Node.js parses input without properly considering the unsafe !!js/function tag, whic
The AES-NI implementation in OpenSSL before 1.0.1t and 1.0.2 before 1.0.2h does not consider memory allocation during a
Same weakness CWE-704 – Incorrect Type Conversion or Cast
View allSame technique Information Disclosure
View allVendor StatusVendor
Share
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-42308
GHSA-w8wr-v893-vjvp