CVE-2026-106111

ImageSharp: EXR ZIP decoder can expose stale allocator data after a short inflate

Published Oct 6, 2026 CVSS 3.1 · 5.9 Medium EPSS < 1% KEV · Not listed
Description
ImageSharp is a 2D graphics library. From 4.0.0 until 4.1.2, ExrBaseDecompressor.UndoZipCompression accepts a nonempty ZIP or ZIPS inflate result that is shorter than the EXR block's required size. ZipExrCompression.Decompress reconstructs the returned prefix while ExrDecoderCore processes the full expected block from a buffer obtained through Configuration.Default, allowing bytes retained from a completed prior ImageSharp operation to appear in decoded pixels. Applications that expose pixels or output from the later attacker-controlled EXR decode can disclose process-local image data. This issue is fixed in version 4.1.2.

Analysis

AI-generated

Technical impact

The flaw lies in the EXR ZIP decoder of ImageSharp. When the UndoZipCompression routine processes a ZIP or ZIPS inflate result that is smaller than the EXR block requires, it assembles only a prefix while the decoder still reads the full expected block from a buffer supplied through Configuration.Default. This mismatch allows bytes retained from a previous ImageSharp operation to appear in the decoded pixels, exposing stale allocator data and creating a channel for information disclosure.

Affected Systems

SixLabors ImageSharp versions 4.0.0 through 4.1.2 inclusive are affected. Version 4.1.2 and later contain a patch that eliminates the bug. Earlier releases are not listed as fixed, so they are presumed vulnerable until the security fix is applied.

Risk and Exploitability

The CVSS score of 5.9 indicates medium severity. EPSS data is not available and the flaw is not listed in CISA KEV, suggesting limited known exploitation. An attacker who can deliver a crafted EXR file to an application that uses ImageSharp can trigger the bug, causing the application to leak process‑local image data. The risk is confined to environments where ImageSharp processes external or untrusted EXR images.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade to ImageSharp 4.1.2 or later to apply the security fix.
  • If an upgrade is not possible immediately, restrict EXR decoding to trusted inputs and validate that the inflate output size matches the expected EXR block length.
  • Ensure that any exported or displayed pixel data is sanitized and that raw pixel buffers containing stale data are not exposed to users.

Generated by OpenCVE AI on October 6, 2026 at 19:50 UTC.

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Github GHSA Github GHSA GHSA-4q3p-rj5x-xv7p ImageSharp: EXR ZIP decoder can expose stale allocator data after a short inflate
History
Type Values Removed Values Added
CPEs cpe:2.3:a:sixlabors:imagesharp:*:*:*:*:*:*:*:*
Type Values Removed Values Added
First Time appeared Sixlabors
Sixlabors imagesharp
Vendors & Products Sixlabors
Sixlabors imagesharp
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
Description ImageSharp is a 2D graphics library. From 4.0.0 until 4.1.2, ExrBaseDecompressor.UndoZipCompression accepts a nonempty ZIP or ZIPS inflate result that is shorter than the EXR block's required size. ZipExrCompression.Decompress reconstructs the returned prefix while ExrDecoderCore processes the full expected block from a buffer obtained through Configuration.Default, allowing bytes retained from a completed prior ImageSharp operation to appear in decoded pixels. Applications that expose pixels or output from the later attacker-controlled EXR decode can disclose process-local image data. This issue is fixed in version 4.1.2.
Title ImageSharp: EXR ZIP decoder can expose stale allocator data after a short inflate
Weaknesses CWE-226
References
Metrics cvssV3_1

{'score': 5.9, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N'}

Weaknesses
  • CWE-226

    Sensitive Information in Resource Not Removed Before Reuse

Sources

Status
PUBLISHED
Assigner
GitHub_M
Published
Updated
Oct 6, 2026, 6:18 PM
Reserved
Oct 6, 2026, 3:33 PM
Status
Analyzed
Published
Oct 6, 2026, 6:16 PM
Modified
Oct 24, 2026, 1:40 AM