Skip to main content

vgmstream EUVDEUVD-2026-92274

| CVE-2026-105248 MEDIUM
Out-of-bounds Write (CWE-787)
2026-10-05 VulDB GHSA-m8wg-6c2r-mrxp
5.3
CVSS 4.0 · Vendor: VulDB
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Host crafted TXTP file on share/download
  2. Delivery
    Deliver to victim as game-audio content
  3. Exploit
    Victim loads file in vgmstream player
  4. Execution
    Unbounded sscanf overflows stack buffer
  5. Impact
    Stack memory corruption or crash

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, write limits
MITRE ATT&CK

2 techniques across 2 tactics: Execution, Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires the victim to open or load a specially crafted TXTP playlist file (or related TXTH/VAB config/name-table file) into a vgmstream-based player or plugin; the trigger is an over-length key/value/command token that overflows a fixed-size stack buffer because the sscanf '%[^...]' scans lacked field-width limits (fixed in the patch by adding TXT_LINE_KEY_STR/TXT_LINE_VAL_STR/TXT_PATH_LIMIT caps). Exploitation is limited by the required user interaction (UI:P - the malicious file must be deliberately loaded), the client-side file-parsing nature of the flaw (no listening service), and applies only to vgmstream builds up to r2117 before the patched commit.

Impact

This is a low-to-moderate priority issue despite a CWE-787 out-of-bounds write classification. The provided CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:L/VA:L) scores 5.3 (Medium) and is internally consistent: network-reachable but requiring passive user interaction (UI:P), with only Low impact on confidentiality, integrity, and availability - appropriate for a memory-corruption bug in a client-side media parser rather than a server. No EPSS score, KEV listing, or public POC was provided; exploitation status is therefore 'no public exploit identified at time of analysis', and there is no evidence of active exploitation. The AV:N rating reflects that a malicious file can be delivered over a network, but exploitation is fundamentally client-side and file-driven (the user must load a crafted TXTP/TXTH file into a vgmstream-based player), which sharply limits scalability versus a true remote-unauthenticated service flaw. The root cause confirmed in the patch is unbounded sscanf '%[...]' format specifiers writing into fixed-size stack buffers; while CWE-787 stack overflows can sometimes escalate to code execution, the vendor/VulDB-assigned Low impact metrics suggest the practical outcome is more likely corruption or crash. Net: a legitimate bug worth patching, but not an emergency - more a defense-in-depth fix than an exposed-service priority.

Exploit ScenarioDerived

An attacker crafts a malicious TXTP (or related TXTH/name-table) file containing an overly long key or value token and distributes it (e.g., bundled with a game-music rip or shared download). When a victim opens the file in a vgmstream-based player or plugin, the unbounded sscanf parse in txtp_parser.c writes past a fixed stack buffer, corrupting memory and potentially crashing or executing attacker-influenced data. No public exploit code was identified in the provided intelligence.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 05, 2026

Out-of-bounds write in vgmstream up to r2117 lets a crafted TXTP playlist (or a related TXTH/VAB config or name-table file) overflow fixed-size stack buffers when parsed, corrupting memory in any vgmstream-based player, plugin, or library build that loads the file. The flaw sits in the parse_params/txtp_parse routines of src/meta/txtp_parser.c, where sscanf conversions used unbounded '%[^...]' scans without field-width limits; the trigger is an over-length key, value, or command token. Exploitation is unauthenticated but requires the victim to deliberately open the malicious file (UI:P per CVSS 4.0, UI:R per the assessed CVSS 3.1 vector), and no public exploit code has been identified at time of analysis; the issue is rated 5.3 (CVSS 4.0) and low-to-moderate priority, consistent with a client-side parsing fault that exposes no network service.

RemediationAI

Apply the upstream fix commit 4669d37a6af94866f6f0628678f9f90d46954e8b (referenced at https://github.com/vgmstream/vgmstream/commit/4669d37a6af94866f6f0628678f9f90d46954e8b); patch status per the vendor is "available from vendor", and this commit is the authoritative change, so rebuild or update to a vgmstream revision that includes it - a tagged release containing the commit is not independently confirmed here, so verify the revision before relying on a packaged build. The commit adds explicit field-width limits to every affected sscanf call (TXT_LINE_STR/TXT_LINE_KEY_STR/TXT_LINE_VAL_STR/TXT_PATH_LIMIT_MAX), which caps the read length into each destination buffer without changing normal parsing behavior; no functional regression is expected from the fix. If an immediate update is not possible, compensating controls are limited: treat all TXTP, TXTH, and VAB/name-table files as untrusted input, avoid opening them in vgmstream-based players or plugins, disable or sandbox automatic playlist/config parsing, and run media players under an OS-level sandbox or low-privilege account so a stack corruption cannot escalate - the trade-off is loss of the functionality those formats provide, and none of these controls fixes the underlying overflow. Additional context is available from VulDB at https://vuldb.com/vuln/413455 and the upstream report at https://github.com/vgmstream/vgmstream/issues/1997.

Affected VersionsENISA

vgmstream r2117

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

vgmstream is an audio decoding library and toolset used for video-game music formats; its TXTP, TXTH, and VAB config/name-table files are plain-text metadata that the library parses with C stdio routines such as sscanf. The affected code in src/meta/txtp_parser.c (parse_params/txtp_parse) and, per the same fix commit, src/meta/txth.c and src/meta/vab.c, performed conversions like sscanf(line, " %[^ \t#=] = %[^\t\r\n] ", key, val) and sscanf(params, "#%n%[^ #0-9\r\n]%n", ...) without a maximum field width. Because '%[^...]' is greedy and, unlike '%s', has no implicit bound, a line containing an over-length key, value, or command token writes past the end of fixed-size stack buffers (for example the 2048-byte line buffer and PATH_LIMIT-sized name buffers), a classic CWE-787 out-of-bounds write. The patch introduces explicit width macros (TXT_LINE_STR "2047", TXT_LINE_KEY_STR "127", TXT_LINE_VAL_STR "1919", TXT_PATH_LIMIT_MAX/"4095") and applies them to every affected sscanf call across txtp_parser.c, txth.c, and vab.c, also tightening a buffer declared one byte larger than needed. The CPE record (cpe:2.3:a:n/a:vgmstream:*:*:*:*:*:*:*:*) confirms the vendor name is not normalized in the feed and that all pre-patch releases are in scope.

Know when Vgmstream 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

Vendor (VulDB) PRIMARY 5.3 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N
vuln.today AI 6.3 MEDIUM

Crafted file is network-deliverable (AV:N) but must be opened by the user (UI:R), needs no authentication (PR:N); out-of-bounds stack write yields limited C/I/A impact absent confirmed code execution.

3.1 AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:L
4.0 AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N

Primary rating from Vendor (VulDB).

CVSS VectorVendor: VulDB

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
Passive
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
Low
Vulnerable system: Availability
Low
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

A security flaw has been discovered in vgmstream up to r2117. This affects the function parse_params/txtp_parse of the file src/meta/txtp_parser.c of the component TXTP File Handler. The manipulation results in out-of-bounds write. The attack may be launched remotely. The patch is identified as 4669d37a6af94866f6f0628678f9f90d46954e8b. It is best practice to apply a patch to resolve this issue.

Threat Intelligence Overview

EPSS Score
0.2%
Top 86% exploitable
Prevalence
Low
niche open-source video-game audio library, no enterprise/server footprint
Data Quality
8 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment CIRCL GitHub VulDB

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.

Memory corruption occurs when a program writes data beyond the boundaries of allocated memory regions or accesses memory in unintended ways, violating the integrity of the process's address space.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy