Out-of-bounds Read Affecting libpng16-compat-devel package, versions <1.6.40-150600.3.17.1


Severity

Recommended
0.0
high
0
10

Based on SUSE Linux Enterprise Server security rating.

Threat Intelligence

EPSS
0.05% (17th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications

Snyk Learn

Learn about Out-of-bounds Read vulnerabilities in an interactive lesson.

Start learning
  • Snyk IDSNYK-SLES156-LIBPNG16COMPATDEVEL-16090160
  • published16 Apr 2026
  • disclosed15 Apr 2026

Introduced: 15 Apr 2026

NewCVE-2026-33636  (opens in a new tab)
CWE-125  (opens in a new tab)
CWE-787  (opens in a new tab)

How to fix?

Upgrade SLES:15.6 libpng16-compat-devel to version 1.6.40-150600.3.17.1 or higher.

NVD Description

Note: Versions mentioned in the description apply only to the upstream libpng16-compat-devel package and not the libpng16-compat-devel package as distributed by SLES. See How to fix? for SLES:15.6 relevant fixed versions and status.

LIBPNG is a reference library for use in applications that read, create, and manipulate PNG (Portable Network Graphics) raster image files. In versions 1.6.36 through 1.6.55, an out-of-bounds read and write exists in libpng's ARM/AArch64 Neon-optimized palette expansion path. When expanding 8-bit paletted rows to RGB or RGBA, the Neon loop processes a final partial chunk without verifying that enough input pixels remain. Because the implementation works backward from the end of the row, the final iteration dereferences pointers before the start of the row buffer (OOB read) and writes expanded pixel data to the same underflowed positions (OOB write). This is reachable via normal decoding of attacker-controlled PNG input if Neon is enabled. Version 1.6.56 fixes the issue.

CVSS Base Scores

version 3.1