Skip to content
OpenAdvisories
High · 8.8 Public exploit CVE-2014-9495 EUVD-2014-9312GHSA-wpr3-pfv2-chjq

Heap-based buffer overflow in the png_combine_row function in libpng before 1.5.21 and 1.6.x before 1.6.16, when running on 64-bit systems,…

Published Jan 10, 2015 · Updated Jun 9, 2025 · Assigned by mitre

Description

Heap-based buffer overflow in the png_combine_row function in libpng before 1.5.21 and 1.6.x before 1.6.16, when running on 64-bit systems, might allow context-dependent attackers to execute arbitrary code via a "very wide interlaced" PNG image.

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 libpng1.6 1.6.16-1 —
Debian 14 texlive-bin 2014.20140926.35254-4 —
Debian 13 libpng1.6 1.6.16-1 —
Debian 13 texlive-bin 2014.20140926.35254-4 —
Debian 12 libpng1.6 1.6.16-1 —
Debian 12 texlive-bin 2014.20140926.35254-4 —

Public exploits

Exploit or proof-of-concept code for this vulnerability is publicly available, which lowers the bar for attackers. Treat it as a reason to patch sooner.

Third-party code, not reviewed by us. Public PoCs are sometimes fake or contain malware. Read the code first and run it only in an isolated lab, against systems you are authorised to test.

GitHub 1 repository

  • Enessar/LibPNG_OSS-Fuzz ★ 1 · Oct 25, 2025

    Security research project on fuzzing libpng with OSS-Fuzz. Includes seed corpus analysis, custom read/write fuzzers, and a proof-of-concept exploit for CVE-2014-9495.

Sources: PoC-in-GitHub, Metasploit Framework, Exploit-DB — updated daily. Only links are listed; no exploit code is hosted here.

References