modern-tar: Memory exhaustion via malformed octal size field
Summary
modern-tar, a zero-dependency streaming tar parser and writer for JavaScript, contains a memory exhaustion flaw in versions 0.3.5 through 0.8.5. A crafted, optionally gzip-compressed archive passed to unpackTar() can produce negative entry sizes through non-octal bytes, causing data to be buffered indefinitely. This can exhaust process memory and suppress later entries. The attack requires no authentication if the application accepts untrusted archives, and the impact is limited to denial of service.
Affected
- modern-tar 0.3.5 through 0.8.5 (npm package)
- Transitive copies in applications and build tooling are also affected.
Fixed in
- 0.8.6 (likely fix, based on downstream dependency updates; not yet confirmed by the vendor advisory)
Workaround
- Unknown.
- Do not pass untrusted archives to unpackTar() until the library has been upgraded.
Exploitation
- No exploitation in the wild known.
- No public proof of concept found.
- CISA SSVC: exploitation none, automatable yes, technical impact partial.
Our recommendation
- Search lockfiles and SBOMs for modern-tar versions 0.3.5 to 0.8.5, including transitive dependencies.
- Upgrade to 0.8.6 or later and verify the fix against the vendor repository.
- Check whether internet-facing services extract uploaded tar or tar.gz files with this library and prioritise them.
- Monitor the vendor repository for advisories.
Public exploits
PoC-in-GitHub, Metasploit and Exploit-DB list nothing for this CVE.
Research sources
- modern-tar GitHub repository github.com
- VulnCheck advisory www.vulncheck.com
- OSV record CVE-2026-109380 osv.dev
- modern-tar encoding.ts at v0.8.5 github.com
- modern-tar fix commit 181c8cb7 github.com
- modern-tar pull request 195 github.com
- OpenSearch Dashboards pull request 13032 (update to 0.8.6) github.com
- slicc-bios pull request 960 (update to 0.8.6) github.com
Researched and written up in English and German by an AI (Claude by Anthropic) based on NVD, CISA, EPSS and the sources listed. The vendor information is authoritative. Researched on 1 Nov 2026, 04:44.
Original description (NVD)
modern-tar 0.3.5 through 0.8.5 contains a memory exhaustion vulnerability that allows attackers to produce negative entry sizes via non-octal bytes parsed by readOctal(). Attackers can supply a crafted, optionally gzip-compressed, archive to unpackTar() that buffers chunks indefinitely, exhausting process memory and suppressing later entries.
NVD references (5)
- https://github.com/ayuhito/modern-tar
- https://github.com/ayuhito/modern-tar/blob/v0.8.5/src/tar/encoding.ts
- https://github.com/ayuhito/modern-tar/commit/181c8cb75351867535057817ada4802a90fe416e
- https://github.com/ayuhito/modern-tar/pull/195
- https://www.vulncheck.com/advisories/modern-tar-0.3.5-through-0.8.5-memory-exhaustion-via-malformed-octal-siz…
Sources
The tracker combines official, freely usable data sources – updated continuously:
- NVD (NIST) – CVEs, rating (CVSS), affected products
- CISA KEV – vulnerabilities confirmed by CISA as actively exploited
- CISA Vulnrichment – CISA assessment (SSVC) in the official CVE record
- FIRST EPSS – probability of exploitation
- Microsoft MSRC – Patch Tuesday: vulnerabilities, severity, updates
- PoC-in-GitHub – public proof-of-concept repositories
- Metasploit (Rapid7) – modules of the Metasploit Framework
- Exploit-DB (OffSec) – archive of public exploits (links only)
- Patch days: official vendor pages (linked per vendor) (Vendor patch days)
This product uses data from the NVD API but is not endorsed or certified by the NVD. EPSS data © FIRST.org.
Affected? We can help.
We check whether your systems are affected, install updates and close the gap – continuously with the System Health Checker if you wish.
