CVE Catalog

CVE-2026-106112

HighCVSS 7.5
Published: Updated: Translated: NVD NIST

Summary

In ImageSharp versions 4.0.0 through 4.1.2, ICC LUT16 conversion accepts more than four output channels even though ClutCalculator.Calculate and LutEntryCalculator.CalculateLut store intermediate and output values in Vector4. When DecoderOptions.ColorProfileHandling is set to Convert, a malformed embedded profile can direct interpolation and output-LUT operations to write one float per declared channel beyond the four-float destination. This can corrupt memory and terminate the process; the default Preserve mode does not run ICC conversion. The issue is fixed in version 4.1.2.

Risk Assessment

An attacker can supply an image with a malicious ICC profile to corrupt memory and crash the process. In environments processing untrusted images with ICC conversion enabled, this poses a risk of remote denial of service or potential code execution.

Recommendation

Upgrade ImageSharp to version 4.1.2 or later. Until then, avoid setting ColorProfileHandling to Convert when processing untrusted images.

Other vulnerabilities in ImageSharp

See all
Original NVD description (English source)

ImageSharp is a 2D graphics library. From 4.0.0 until 4.1.2, ICC LUT16 conversion accepts more than four output channels even though ClutCalculator.Calculate and LutEntryCalculator.CalculateLut store intermediate and output values in Vector4. When DecoderOptions.ColorProfileHandling is set to Convert, a malformed embedded profile can direct interpolation and output-LUT operations to write one float per declared channel beyond the four-float destination. This can corrupt memory and terminate the process; the default Preserve mode does not run ICC conversion. This issue is fixed in version 4.1.2.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS