libpng up to 1.6.56 Chunk Setter API png_set_hIST use after free
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 5.2 | $0-$5k | 0.00 |
Summary
A vulnerability marked as critical has been reported in libpng up to 1.6.56. This affects the function png_set_hIST of the component Chunk Setter API. The manipulation leads to use after free.
This vulnerability is uniquely identified as CVE-2026-34757. The attack is possible to be carried out remotely. No exploit exists.
It is suggested to upgrade the affected component.
Details
A vulnerability was found in libpng up to 1.6.56. It has been rated as critical. This issue affects the function png_set_hIST of the component Chunk Setter API. The manipulation with an unknown input leads to a use after free vulnerability. Using CWE to declare the problem leads to CWE-416. Referencing memory after it has been freed can cause a program to crash, use unexpected values, or execute code. Impacted is confidentiality, integrity, and availability. The summary by CVE is:
LIBPNG is a reference library for use in applications that read, create, and manipulate PNG (Portable Network Graphics) raster image files. From 1.0.9 to before 1.6.57, passing a pointer obtained from png_get_PLTE, png_get_tRNS, or png_get_hIST back into the corresponding setter on the same png_struct/png_info pair causes the setter to read from freed memory and copy its contents into the replacement buffer. The setter frees the internal buffer before copying from the caller-supplied pointer, which now dangles. The freed region may contain stale data (producing silently corrupted chunk metadata) or data from subsequent heap allocations (leaking unrelated heap contents into the chunk struct). This vulnerability is fixed in 1.6.57.
It is possible to read the advisory at github.com. The identification of this vulnerability is CVE-2026-34757. The exploitation is known to be easy. The attack may be initiated remotely. No form of authentication is needed for a successful exploitation. It demands that the victim is doing some kind of user interaction. Technical details of the vulnerability are known, but there is no available exploit.
The vulnerability scanner Nessus provides a plugin with the ID 305709 (Linux Distros Unpatched Vulnerability : CVE-2026-34757), which helps to determine the existence of the flaw in a target environment.
Upgrading to version 1.6.57 eliminates this vulnerability.
The vulnerability is also documented in the databases at Tenable (305709), EUVD (EUVD-2026-20897) and CERT Bund (WID-SEC-2026-1023). Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
Affected
- Amazon Linux 2
- SUSE Linux
- SUSE openSUSE
- Microsoft Azure Linux
- Open Source libpng
Product
Type
Name
Version
- 1.6.0
- 1.6.1
- 1.6.2
- 1.6.3
- 1.6.4
- 1.6.5
- 1.6.6
- 1.6.7
- 1.6.8
- 1.6.9
- 1.6.10
- 1.6.11
- 1.6.12
- 1.6.13
- 1.6.14
- 1.6.15
- 1.6.16
- 1.6.17
- 1.6.18
- 1.6.19
- 1.6.20
- 1.6.21
- 1.6.22
- 1.6.23
- 1.6.24
- 1.6.25
- 1.6.26
- 1.6.27
- 1.6.28
- 1.6.29
- 1.6.30
- 1.6.31
- 1.6.32
- 1.6.33
- 1.6.34
- 1.6.35
- 1.6.36
- 1.6.37
- 1.6.38
- 1.6.39
- 1.6.40
- 1.6.41
- 1.6.42
- 1.6.43
- 1.6.44
- 1.6.45
- 1.6.46
- 1.6.47
- 1.6.48
- 1.6.49
- 1.6.50
- 1.6.51
- 1.6.52
- 1.6.53
- 1.6.54
- 1.6.55
- 1.6.56
License
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 5.3VulDB Meta Temp Score: 5.2
VulDB Base Score: 6.3
VulDB Temp Score: 6.0
VulDB Vector: 🔒
VulDB Reliability: 🔍
NVD Base Score: 4.4
NVD Vector: 🔒
CNA Base Score: 5.1
CNA Vector: 🔒
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Reliability: 🔍
Exploiting
Class: Use after freeCWE: CWE-416 / CWE-119
CAPEC: 🔒
ATT&CK: 🔒
Physical: Partially
Local: Yes
Remote: Yes
Availability: 🔒
Status: Not defined
EPSS Score: 🔒
EPSS Percentile: 🔒
Price Prediction: 🔍
Current Price Estimation: 🔒
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 305709
Nessus Name: Linux Distros Unpatched Vulnerability : CVE-2026-34757
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔒
Upgrade: libpng 1.6.57
Timeline
04/09/2026 Advisory disclosed04/09/2026 VulDB entry created
05/17/2026 VulDB entry last update
Sources
Advisory: github.comStatus: Confirmed
Confirmation: 🔒
CVE: CVE-2026-34757 (🔒)
GCVE (CVE): GCVE-0-2026-34757
GCVE (VulDB): GCVE-100-356507
EUVD: 🔒
CERT Bund: WID-SEC-2026-1023 - libpng: Schwachstelle ermöglicht Offenlegung von Informationen
Entry
Created: 04/09/2026 11:12Updated: 05/17/2026 08:19
Changes: 04/09/2026 11:12 (54), 04/12/2026 23:09 (2), 04/22/2026 02:15 (7), 05/02/2026 03:06 (1), 05/10/2026 03:20 (1), 05/17/2026 08:19 (21)
Complete: 🔍
Cache ID: 216::103
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
No comments yet. Languages: en.
Please log in to comment.