Skip to main content

smpeg EUVDEUVD-2026-103462

| CVE-2026-112009 MEDIUM
Out-of-bounds Read (CWE-125)
2026-10-18 VulnCheck GHSA-hhc9-vxgx-6xvc
6.8
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Deliver crafted MPEG file to victim
  2. Delivery
    Victim opens file via SMPEG_new
  3. Exploit
    Stream table high-bit bytes parsed in FillBuffer()
  4. Execution
    Read past 16384-byte heap buffer
  5. Impact
    Application crash (denial of service)

Vulnerability Assessment

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

1 technique across 1 tactic: Collection

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

Exploitation Conditions

Exploitation requires a victim to open an attacker-controlled MPEG file through smpeg's SMPEG_new, SMPEG_new_rwops, or SMPEG_new_data entry points; the malicious file must contain a system-header stream table whose bytes all set the high bit, triggering the over-read in MPEGsystem::FillBuffer() past the 16384-byte buffer. Limiting factors: no network vector (AV:L - the file must reach and be opened locally), mandatory user interaction (UI:P - the application must be invoked on the crafted file), and no authentication is required by the attacker but also no remote reachability; the impact is confined to a crash of the hosting application, so exposure is limited to systems that actually use smpeg to parse untrusted MPEG input.

Impact

This is a moderate-severity denial-of-service issue, not a high-priority emergency. The authoritative CVSS 4.0 vector (CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H) tells a consistent story: local attack vector (AV:L) with passive user interaction (UI:P) means the victim must open an attacker-supplied MPEG file, and the only impact is availability (VA:H) via an application crash - confidentiality and integrity are explicitly rated N despite this being an out-of-bounds READ. That is notable: an OOB read (CWE-125) is often an information-disclosure primitive, yet the vendor/NVD vector and the description both characterize the outcome strictly as a crash, so treat this as DoS rather than data leakage unless proven otherwise. Public exploit/POC code exists (VulnCheck advisory plus a hackmd write-up), which raises practical likelihood, but there is NO CISA KEV listing and no EPSS score provided, so there is no evidence of active or widespread exploitation - the POC signal and the absence of in-the-wild exploitation are distinct and should not be conflated. SSVC-style reasoning: exploitation is POC-only, not automatable (requires a human to open a malicious file), and technical impact is partial (crash only). Net: a real but low-urgency bug whose risk is bounded by local vector, required user interaction, the crash-only impact, and the niche footprint of the affected library.

Exploit ScenarioDerived

An attacker crafts a malicious MPEG file whose system-header stream table bytes all have the high bit set, then delivers it to a victim (e.g., via download or email) who opens it in an application built on smpeg via SMPEG_new, SMPEG_new_rwops, or SMPEG_new_data. When MPEGsystem::FillBuffer() parses the header it reads past the 16384-byte heap buffer, crashing the application. Publicly available POC/exploit code demonstrates the crash, but exploitation requires the victim to actively open the file (local vector, user interaction).

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet

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

Alert me

AnalysisAIv1 – Oct 18, 2026

Opening a crafted MPEG file with smpeg through 2.0.0 can crash the hosting application through a heap out-of-bounds read in MPEGsystem::FillBuffer(). The issue is reachable only when a local user opens an attacker-controlled file via SMPEG_new, SMPEG_new_rwops, or SMPEG_new_data, and the assessed impact is availability-only denial of service. Publicly available exploit code exists, but there is no CISA KEV confirmation of active exploitation.

RemediationAI

No vendor-released patch identified at time of analysis; monitor the upstream smpeg repository and the VulnCheck advisory for a fixed release. Until a patch is available, avoid opening untrusted MPEG files with applications that call SMPEG_new, SMPEG_new_rwops, or SMPEG_new_data, and add pre-parse validation that rejects or repairs system-header stream tables whose bytes all set the high bit. Run smpeg parsing in a sandboxed or low-privilege process to contain crashes, recognizing that this adds overhead and may disrupt legitimate playback. Restrict file ingestion to trusted sources where possible, with the trade-off that this may block malformed but legitimate MPEG streams. The public PoC is at https://hackmd.io/@haindpwn/smpeg-system-header-stream-table-oob-read and the advisory is at https://www.vulncheck.com/advisories/smpeg-through-2.0.0-heap-out-of-bounds-read-via-mpegsystem-fillbuffer.

Affected VersionsENISA

smpeg 0 ≤2.0.0

Affected Packages

euvd smpeg no fix

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

smpeg is an MPEG decoding library, and the affected code parses system-header stream tables in MPEGsystem::FillBuffer() near the referenced MPEGsystem.cpp lines 803-823. The root cause is CWE-125: a stream table whose bytes all set the high bit drives the parser past a 16384-byte buffer, producing a heap out-of-bounds read. The CPE wildcard for icculus:smpeg places all versions through 2.0.0 in scope. Exploitation requires local delivery of the crafted MPEG file and user interaction to invoke one of the smpeg entry points, which is consistent with the assessed AV:L/UI:R vector and availability-only impact; the over-read is assessed to result in a crash rather than confirmed information disclosure.

Know when Smpeg 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 (VulnCheck) PRIMARY 6.8 MEDIUM
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
vuln.today AI 5.5 MEDIUM

Victim must open a local crafted file so AV:L and UI:R; no privileges needed (PR:N); impact is a crash only, so C:N/I:N and A:H.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

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

DescriptionCVE.org

smpeg through 2.0.0 contains a heap out-of-bounds read vulnerability in MPEGsystem::FillBuffer() that allows attackers to read past the 16384-byte buffer by supplying a crafted system header stream table. Attackers can provide an MPEG file whose stream table bytes all set the high bit, which crashes applications opening it through SMPEG_new, SMPEG_new_rwops, or SMPEG_new_data.

Threat Intelligence Overview

Prevalence
Rare
retired legacy SDL MPEG decoder library, minimal current deployment
Exploit
POC
Public exploit code exists
Data Quality
5 sources
Confidence: Medium
EUVD NVD CVE.org Vulnrichment GitHub

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 Yes
EPSS N/A
Patch available No
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
Poc
System Exposure· derived
Small
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

54
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +34
PoC: +20
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.

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

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