CVE-2026-91186: CWE-125 Out-of-bounds Read in Eclipse Foundation Eclipse ThreadX - GUIX
Description
The PNG chunk reader has no notion of chunk ordering. It records whether an IDAT has been seen and whether a tRNS has already supplied transparency, but nothing prevents an IHDR being read a second time. A PNG carries exactly one IHDR and it is the first chunk. A file that places a second one after IDAT rewrites the image width, height, bit depth and pixel depth *after* the decoded-data buffer has already been allocated and filled from the original values. The pass that reverses the PNG row filters then derives its own extent from the new dimensions and walks the old allocation, moving image bytes past the end of it. The buffer is allocated by GUIX rather than supplied by the caller, so the application has no way to size it defensively. The decoder is compiled in by default.
CVSS v4.0
Score 8.4high
Affected software
Eclipse Foundation
Eclipse ThreadX - GUIX
pkg:github/eclipse-threadx/guixRun on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The vulnerability in Eclipse ThreadX - GUIX's PNG chunk reader stems from improper handling of PNG chunk ordering. Specifically, the reader allows a second IHDR chunk to be read after the IDAT chunk, which is against the PNG specification that mandates a single IHDR chunk at the start. When this occurs, the image width, height, bit depth, and pixel depth are overwritten after the decoded data buffer has been allocated and filled based on the original IHDR values. Consequently, the filter reversal pass calculates extents based on the new dimensions but operates on the old buffer allocation, causing out-of-bounds reads. Since GUIX allocates the buffer internally, applications cannot preemptively allocate larger buffers to prevent this issue. The vulnerability is present in versions >=0 and <=6.5.1.202602a.
Potential Impact
An attacker can craft a malicious PNG file with a second IHDR chunk placed after the IDAT chunk, causing the PNG decoder to perform out-of-bounds reads during image processing. This can lead to memory corruption, potentially resulting in application crashes or information disclosure. The vulnerability requires local access (AV:L) and user interaction (UI:A) but does not require privileges or authentication. The CVSS 4.0 score is 8.4 (high), reflecting the significant impact on confidentiality, integrity, and availability.
Mitigation Recommendations
No official patch or fix is currently confirmed for this vulnerability. Since the buffer allocation is internal to GUIX and the decoder is compiled in by default, applications cannot mitigate this by defensive buffer sizing. Users should monitor the Eclipse Foundation's advisories for an official fix. Until then, avoid processing untrusted PNG files with affected versions of Eclipse ThreadX - GUIX.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- eclipse
- Date Reserved
- 2026-09-23T13:43:04.337Z
- Cvss Version
- 4.0
- State
- PUBLISHED
Threat ID: 6ad782e92cdf04f65638a997
Added to database: 10/20/2026, 15:04:09 UTC
Last enriched: 10/20/2026, 15:18:27 UTC
Last updated: 10/20/2026, 19:06:08 UTC
Views: 12
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
External Links
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.