Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSubmit crafted MP4-family file to app
-
DeliveryParser reads 64-bit extended atom size
-
ExploitOversized length drives payload allocation
-
ExecutionLarge allocation or process failure
-
ImpactDenial of service
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Memory allocation limits
|
| Exploitation Conditions | Requires an application to pass an attacker-supplied MP4-family file (MP4/M4A and related ISO-BMFF formats) to music-metadata < 11.16.0 for parsing. The malicious file must set a 64-bit extended atom size (the extended-size header path) that exceeds the actual file, in an atom whose payload is read via readToken - specifically mvhd, stsd, stsz, or date. No authentication and no user interaction beyond supplying the file are needed (PR:N/UI:N). Limiting factors: exploitation is only possible where the deployment actually ingests untrusted media (e.g., upload/processing pipelines); the impact is confined to denial of service (large allocation or process failure) with no data exposure or code execution, and the trigger is non-default in the sense that it requires the app to parse attacker-controlled files. |
| Impact | This is a genuine but bounded-severity issue. The signals are internally consistent and point to a denial-of-service, not a compromise: the CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H, base 7.5) scores availability-only impact with no confidentiality or integrity loss, which matches CWE-789 (memory allocation with excessive size value) and the description of an oversized allocation/process failure. SSVC agrees it is a lower-urgency item: Exploitation=poc (not active), Automatable=no, Technical Impact=partial. EPSS is very low at 0.13% (2nd percentile) and the CVE is NOT on CISA KEV, so there is no evidence of real-world exploitation - only publicly available exploit code (the fix PR/commit demonstrate the triggering condition). The 7.5 'HIGH' rating is driven entirely by network reachability plus no-auth/no-interaction, not by impact breadth; this is a classic high-CVSS-but-moderate-real-risk case where the worst outcome is a crash or memory exhaustion of a process that parses untrusted media. Note one nuance to verify: AV:N presumes the malicious file reaches the parser over a network path; for a library, actual exposure depends on whether the embedding application ingests untrusted MP4-family files (e.g., user uploads) - true AV:N requires that deployment pattern. |
| Exploit ScenarioDerived | An attacker uploads or supplies a tiny, malformed MP4/M4A file to an application that uses music-metadata < 11.16.0 to extract media metadata. The file declares a 64-bit extended atom size far larger than the real file in an atom such as mvhd, stsd, stsz, or date; the parser converts this to a JavaScript Number and attempts a readToken/allocation of that size before validating end-of-input, causing a large allocation attempt or process crash and denying service. Exploit code demonstrating the trigger is publicly available via the vendor fix PR and commit (SSVC exploitation=poc). |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv2 – Oct 14, 2026
Denial of service in music-metadata versions prior to 11.16.0 lets remote attackers crash or exhaust memory in any application that parses an attacker-supplied MP4-family file. The MP4 atom parser trusts an attacker-controlled 64-bit extended atom size, converts it to a JavaScript Number, and passes the oversized length into atom-specific readToken payload parsing (mvhd, stsd, stsz, or date) before confirming the atom fits within its parent or the remaining input, so a tiny crafted file can force a large allocation attempt or process failure. The flaw is remotely triggerable without authentication and without user interaction beyond the file being processed (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H, 7.5); publicly available exploit code exists, but there is no evidence of active exploitation, no KEV listing, and EPSS is low at 0.13% (2nd percentile), with impact confined to availability.
Earlier versions of this analysis (1)
Parsing a crafted MP4-family file with music-metadata before 11.16.0 can drive the parser into an oversized memory allocation or process failure, denying service to applications that accept untrusted media. The parser trusts an attacker-supplied 64-bit extended atom size and routes the resulting payload length into atom-specific readToken calls for mvhd, stsd, stsz and date before confirming the atom actually fits within its parent or the remaining input, so a tiny file is enough to trigger the condition. Exploitation is unauthenticated and requires no user interaction (AV:N/PR:N/UI:N), the impact is availability-only with no code execution, data disclosure or modification, and the flaw is resolved in 11.16.0; no public exploit code was identified at time of analysis.
RemediationAI
Upgrade music-metadata to 11.16.0 or later, which is the vendor-released patch; the change adds bounds validation of declared atom sizes and a hard 64 MiB cap on buffered atom payloads, so it also raises the cost of any future allocation-abuse attempts (see the advisory at https://github.com/Borewit/music-metadata/security/advisories/GHSA-qc8q-pw95-mq6c and release notes at https://github.com/Borewit/music-metadata/releases/tag/v11.16.0). If an immediate upgrade is not possible, mitigate by never parsing attacker-supplied media with the vulnerable versions: enforce a strict maximum upload/file size at the application boundary and reject anything anomalous (this constrains but does not eliminate the bug, since the crafted file can be tiny while declaring a huge atom), and isolate parsing in a separate worker, child process, or sandbox with a bounded heap and a parse timeout so an oversized allocation or process abort is contained rather than taking down the main service - this adds latency and operational complexity but converts a full outage into a contained failure. Pre-validating ISO-BMFF box headers before handing bytes to the library is another option, but it duplicates parser logic and risks divergence unless carefully maintained. Note that mdat handling and general parsing of untrusted media remain the primary exposure, so restricting the parser to trusted or pre-validated inputs is the strongest compensating control short of the upgrade.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
music-metadata is an npm package that parses metadata from audio and video containers, and the affected code path is its ISO Base Media File Format (ISO-BMFF / MP4-family) atom parser, tracked as CPE cpe:2.3:a:borewit:music-metadata. MP4 files are built from atoms (boxes), each starting with a size field; when the 32-bit size is set to 1, a subsequent 64-bit extended size is used. In the vulnerable versions this 64-bit BigInt length was coerced to a JavaScript Number and turned into a payload length via getPayloadLength() and used for readToken calls without first proving the declared atom fit inside its parent atom or the remaining input. A declared length far larger than the actual file therefore reached payload parsing for atoms such as mvhd, stsd, stsz, and date, where the parser attempted a correspondingly large allocation or aborted the process - the classic CWE-789 (Memory Allocation with Excessive Size Value) pattern. The fix in PR #2746 (commit 0f19ad66d71889b1c5f3ba84d4824f079ac4c005) restructures Atom.ts to validate the remaining byte count against the declared atom size, rejects lengths below the header length or above Number.MAX_SAFE_INTEGER, and adds Mp4ContentError guards for truncated headers; MP4Parser.ts additionally introduces validatePayloadLength(), which caps buffered atom payloads at 64 MiB and makes readToken go through that check, while mdat is excluded because media data is skipped rather than buffered.
Know when npm gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
A single crafted file processed without auth or interaction yields reliable DoS, so AV:N/AC:L/PR:N/UI:N; impact is availability-only (C:N/I:N/A:H) with no scope change.
Primary rating from Vendor (GitHub_M).
CVSS VectorNVD
Lifecycle Timeline
3DescriptionNVD
music-metadata is a metadata parser for audio and video media files. Prior to 11.16.0, the MP4 parser accepts an attacker-controlled 64-bit extended atom size, converts it to a JavaScript Number, and uses the resulting payload length for atom-specific readToken calls before proving that the atom fits within its parent or the available input. A tiny MP4-family file can route an oversized length into payload parsing for atoms including mvhd, stsd, stsz, and date, causing a large allocation attempt or process failure before end-of-input validation. Applications that parse untrusted MP4-family media can therefore be denied service. This issue is fixed in version 11.16.0.
Executive ViewAI
The music-metadata library, used for parsing MP4-family files, is vulnerable to a denial-of-service flaw in versions prior to 11.16.0. Unauthenticated remote attackers can craft a small MP4 file that triggers excessive memory allocation or process crashes in any application that processes such files, disrupting availability. While publicly available exploit code exists, there is no evidence of active exploitation, and a vendor patch (11.16.0) is available, so leadership should prioritize patching to prevent service disruptions.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
The npm ci command in npm 7.x and 8.x through 8.1.3 proceeds with an installation even if dependency information in pack
DNS rebinding against the local Streamable HTTP MCP listener in @zereight/mcp-gitlab before 2.1.30 lets a malicious web
Archive extraction in the Node.js decompress package allows a crafted archive containing chained symlink entries to reso
The legacy DOC renderer in File Viewer emits document-controlled hyperlink targets into generated HTML after character e
Untrusted git configuration includes reachable through simple-git before 4.0.0 let an attacker execute arbitrary command
A remote, unauthenticated denial-of-service condition in the NestJS (Nest) microservices framework lets an attacker cras
Deeply nested brace patterns cause unbounded recursion in the npm brace-expansion library, exhausting the native stack a
Stack exhaustion in the npm library brace-expansion (all versions prior to 1.1.19, 2.1.5, 3.0.7, and 5.0.10) lets a craf
The JavaScript library ip-address (npm) fails to treat the NAT64 local-use prefix 64:ff9b:1::/48 as private, so applicat
Cross-family subnet comparisons in the ip-address npm library (all versions before 10.7.1) can cause isInSubnet and isHo
Denial of service in the ip-address JavaScript/npm library (all versions prior to 10.7.1) lets remote attackers stall or
A credential-isolation flaw in geelen mcp-remote 0.1.16 through 0.1.38 allows a remote attacker who controls or can pred
EUVD-2026-95244
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB