Skip to main content

VLC Media Player CVE-2026-56711

| EUVDEUVD-2026-74906 HIGH
Integer Overflow or Wraparound (CWE-190)
2026-09-09 VulnCheck GHSA-35jx-w2j3-h2m2
7.3
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Recon
    Craft PNG with overflow-inducing IHDR dimensions
  2. Delivery
    Deliver file to victim via email, web, or chat
  3. Exploit
    Victim opens file in VLC
  4. Install
    Image demuxer bypasses byte-count guard
  5. C2
    AllocatePicture wraps 32-bit product, allocates undersized buffer
  6. Execute
    PNG decoder writes attacker-controlled scanlines past buffer end
  7. Impact
    Heap corruption enabling crash or code execution

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Integer overflow checks
MITRE ATT&CK

1 technique across 1 tactic: Execution

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

Exploitation Conditions

The only prerequisite is that the victim opens a crafted PNG file in VLC 3.0.0-3.0.23 - either directly or via a playlist entry containing the PNG. No non-default settings, no authentication, and no special server-side configuration are required; the image demuxer is active by default and the PNG codec is included in standard builds. What limits exploitation: (1) user interaction - the victim must open the file (UI:P/UI:R); (2) the attacker must calculate IHDR dimensions whose pitch*lines product wraps to a small value usable as an allocation size, requiring offline arithmetic but not environment-specific memory knowledge; (3) successful code execution beyond a crash requires defeating heap mitigations (ASLR, guard allocations) on the target platform. The vulnerability is not reachable via network streaming without user-initiated file open.

Impact

Real-world exploitation risk is moderate-low despite the severity of the primitive. The CVSS 4.0 vector (AV:L/AC:H/PR:N/UI:P) reflects that a user must actively open a crafted file, and the AC:H rating acknowledges the need to engineer specific IHDR dimensions that produce a useful wrapped allocation size. EPSS at 0.30% (22nd percentile) corroborates low near-term exploitation likelihood. No active exploitation is recorded in CISA KEV, and no public proof-of-concept has been identified at time of analysis. The impact ceiling is high - heap OOB write with attacker-influenced content and length is a classic RCE primitive on a user-privilege process - but achieving a reliable exploit requires bypassing modern heap mitigations (ASLR, guard pages, heap randomization). The discrepancy between the provided AC:H rating and the deterministic nature of the overflow (attacker fully controls IHDR dimensions) is worth noting: engineering the wrapped size to a small useful value requires calculation but is not probabilistically dependent on environment state, suggesting AC:L may be more accurate. Overall: genuine risk for VLC desktop users who open untrusted media files, but not an immediately automatable mass-exploitation scenario.

Exploit ScenarioDerived

An attacker crafts a PNG file whose IHDR declares width and height values chosen so that i_pitch * i_lines overflows 32-bit signed arithmetic to a small positive value (e.g., 4 or 8 bytes), passes the wrapped value through both allocation guards, and triggers a large heap write when libpng decodes the image. The victim receives the file via email, chat, or a web download and opens it directly in VLC or via a playlist - no non-default settings are required. The PNG decoder writes attacker-controlled scanline data well past the end of the tiny allocation, enabling potential code execution in the VLC process context.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.3% exploitation probability (EPSS)

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

Alert me

AnalysisAIv2 – Sep 14, 2026

Heap out-of-bounds write in VLC Media Player 3.0.0 through 3.0.23 allows a local attacker to corrupt memory by tricking a user into opening a crafted PNG file with attacker-controlled dimensions. The root cause is a 32-bit integer overflow in AllocatePicture() where plane pitch-times-lines multiplication wraps before widening to the size_t accumulator, causing both overflow guards to pass on the already-corrupted value; aligned_alloc then reserves a small wrapped buffer while the PNG decoder writes full-dimension scanlines past its end. No public exploit has been identified at time of analysis, and EPSS indicates 0.30% exploitation probability over the next 30 days.

Earlier versions of this analysis (1)
v1 Sep 09, 2026 - 14:38 CVSS 8.6

Heap out-of-bounds write in VLC Media Player 3.0.0 through 3.0.23 enables remote code execution when a user opens a crafted PNG file. The vulnerability stems from a 32-bit integer overflow in AllocatePicture() that causes aligned_alloc to reserve a fatally undersized buffer while the PNG decoder writes scanlines sized from the original declared dimensions, producing attacker-controlled heap corruption. No special configuration or elevated privileges are required - opening a malicious PNG file directly or via a playlist entry is the complete attack path. No public exploit or CISA KEV listing has been identified at time of analysis.

RemediationAI

No vendor-released patched version has been independently confirmed from the available references at time of analysis. The upstream fix, if available, should be sought in VLC releases beyond 3.0.23 or in VLC 4.x. Monitor the VideoLAN security advisory page and the VLC GitHub repository for a patched release. As a compensating control, avoid opening PNG files (or media playlists containing PNG entries) from untrusted sources in VLC until a patch is released. Configuring the OS or desktop environment to associate PNG files with an alternative viewer (e.g., a browser or image viewer that does not share VLC's picture allocation path) removes the attack surface without impacting VLC's core audio/video functionality. Sandbox deployment of VLC (e.g., via Flatpak or AppArmor/seccomp profiles) limits the blast radius of successful exploitation to the sandboxed process. The VulnCheck advisory is at https://www.vulncheck.com/advisories/vlc-media-player-3.0.0-through-3.0.23-heap-out-of-bounds-write-via-integer-overflow-in-picture-allocation.

Affected VersionsENISA

VLC media player 3.0.0 ≤3.0.23

Affected Packages

euvd vlc_media_player 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

The vulnerability resides in VLC's picture allocation path (src/misc/picture.c, AllocatePicture), where the running byte total is computed as i_bytes += p->i_pitch * p->i_lines. Both i_pitch and i_lines are declared as int in include/vlc_picture.h (CWE-190), so the multiplication is evaluated at 32-bit signed precision and wraps before the result is added to the size_t accumulator. Because the pre-allocation overflow guard performs its division in 64-bit arithmetic against the widened accumulator - not the per-plane product - and the PICTURE_SW_SIZE_MAX comparison evaluates the already-wrapped value, neither guard catches the condition. The image demuxer (modules/demux/image.c) enforces only an input file byte-count limit, not a limit on IHDR-declared dimensions, so a PNG with large width and height fields reaches the codec (modules/codec/png.c) which writes scanlines sized from the real dimensions into the undersized allocation. CPE: cpe:2.3:a:videolan:vlc_media_player:*:*:*:*:*:*:*:* covering the 3.0.x branch.

Know when Vlc Media Player 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 7.3 HIGH
CVSS:4.0/AV:L/AC:H/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
vuln.today AI 7.8 HIGH

AV:L and UI:R because the user must open a local or downloaded file; AC:L because the overflow is deterministic given attacker-chosen IHDR dimensions; full C/I/A:H for heap OOB write with attacker-controlled content enabling potential RCE.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

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

Lifecycle Timeline

3
Analysis Updated
Sep 14, 2026 - 11:28 vuln.today
v2 - CVSS changed
CVSS changed
Sep 14, 2026 - 11:22 NVD
8.6 (HIGH) 7.3 (HIGH)
CVE Published
Sep 09, 2026 - 13:31 cve.org
HIGH 8.6

DescriptionCVE.org

VLC media player computes the size of a picture buffer with 32-bit arithmetic and allocates from the wrapped result. In AllocatePicture in src/misc/picture.c the running total is accumulated as i_bytes += p->i_pitch * p->i_lines, and both plane_t fields are declared int in include/vlc_picture.h, so the multiplication is evaluated at 32 bits and wraps before it is widened to the size_t accumulator. The overflow check that precedes it divides in 64-bit arithmetic and therefore does not constrain the product, and the subsequent comparison against PICTURE_SW_SIZE_MAX examines the already wrapped value, so both guards pass. aligned_alloc then reserves the small wrapped size while the decoder writes scanlines sized from the original dimensions. A crafted PNG whose IHDR declares large width and height reaches this path through the image demuxer, whose only size guard is on the input file's byte count rather than the declared dimensions, and the decoder in modules/codec/png.c writes past the end of the allocation with attacker-influenced length and content. Opening the file directly or through a playlist entry is sufficient, with no non-default settings.

Executive ViewAI

Why It Matters

VLC Media Player versions 3.0.0 through 3.0.23 contain a heap memory vulnerability enabling remote code execution when users open specially crafted PNG files. The attack is unauthenticated and requires no special configuration-any employee, customer, or partner using affected versions faces immediate risk. With no vendor patch currently available, organizational exposure is elevated until remediation through version upgrades or mitigation controls can be deployed.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: restrict PNG file opening to trusted sources only; disable PNG rendering in VLC settings if operationally acceptable; run VLC in sandboxed or low-privilege environments; substitute alternative media players for processing files from untrusted origins until a patch is available.

Threat Intelligence Overview

EPSS Score
0.3%
Top 78% exploitable
Prevalence
High
VLC is among the most installed desktop media players globally
Data Quality
6 sources
Confidence: High

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 HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact
High

Priority Score

36
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +36
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.

Integer overflow occurs when an arithmetic operation produces a result that exceeds the maximum value a given integer type can store.

CVE-2012-1775 CRITICAL POC
9.3 Mar 19

Stack-based buffer overflow in VideoLAN VLC media player before 2.0.1 allows remote attackers to execute arbitrary code

CVE-2013-1868 CRITICAL POC
9.3 Jul 10

Multiple buffer overflows in VideoLAN VLC media player 2.0.4 and earlier allow remote attackers to cause a denial of ser

CVE-2016-5108 CRITICAL POC
9.8 Jun 08

Buffer overflow in the DecodeAdpcmImaQT function in modules/codec/adpcm.c in VideoLAN VLC media player before 2.2.4 allo

CVE-2023-47359 CRITICAL POC
9.8 Nov 07

Videolan VLC prior to version 3.0.20 contains an incorrect offset read that leads to a Heap-Based Buffer Overflow in fun

CVE-2017-8311 HIGH POC
7.8 May 23

Potential heap based buffer overflow in ParseJSS in VideoLAN VLC before 2.2.5 due to skipping NULL terminator in an inpu

CVE-2017-17670 HIGH POC
8.8 Dec 15

In VideoLAN VLC media player through 2.2.8, there is a type conversion vulnerability in modules/demux/mp4/libmp4.c in th

CVE-2018-11529 HIGH POC
8.0 Jul 11

VideoLAN VLC media player 2.2.x is prone to a use after free vulnerability which an attacker can leverage to execute arb

CVE-2014-9598 MEDIUM POC
6.8 Jan 21

The picture_Release function in misc/picture.c in VideoLAN VLC media player 2.1.5 allows remote attackers to execute arb

CVE-2019-13962 CRITICAL POC
9.8 Jul 18

lavc_CopyPicture in modules/codec/avcodec/video.c in VideoLAN VLC media player through 3.0.7 has a heap-based buffer ove

CVE-2017-9301 HIGH POC
7.8 May 29

plugins\audio_filter\libmpgatofixed32_plugin.dll in VideoLAN VLC media player 2.2.4 allows remote attackers to cause a d

CVE-2018-19857 CRITICAL POC
9.1 Dec 05

The CAF demuxer in modules/demux/caf.c in VideoLAN VLC media player 3.0.4 may read memory from an uninitialized pointer

CVE-2017-9300 HIGH POC
7.8 May 29

plugins\codec\libflac_plugin.dll in VideoLAN VLC media player 2.2.4 allows remote attackers to cause a denial of service

Vendor StatusVendor

SUSE

Severity: Important

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