CVE-2026-106114
ImageSharp: ICC CLUT parsing allocates from unvalidated channel and grid dimensions
Impact
ImageSharp is a 2D graphics library. From 1.0.0-beta0001 until 4.1.2, ICC CLUT parsing calculates allocation sizes from attacker-declared channel and grid dimensions before confirming that the profile contains the declared values. IccDataReader.ReadClutF32 can request a large float array, and earlier public IccProfile.Entries parsing paths can allocate a large jagged representation, from a short truncated profile. In version 4, automatic image conversion reaches the parser when DecoderOptions.ColorProfileHandling is Convert; the default Preserve mode avoids that conversion path. The demonstrated impact is memory pressure and input-validation failure, not unhandled process termination. This issue is fixed in version 4.1.2.
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| nuget | SixLabors.ImageSharp | >= 4.0.0, < 4.1.2 | 4.1.2 |
Affected products
| Vendor | Product | Affected versions |
|---|---|---|
| Sixlabors | Imagesharp | from 1.0.0 before 3.2.0 from 4.0.0 before 4.1.2 |
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://github.com/advisories/GHSA-gwg2-r3hj-4w44
- https://github.com/SixLabors/ImageSharp/security/advisories/GHSA-gwg2-r3hj-4w44
- https://nvd.nist.gov/vuln/detail/CVE-2026-106114
- https://github.com/SixLabors/ImageSharp/pull/3187
- https://github.com/SixLabors/ImageSharp/commit/8de892a7623aa8a09ba2333b624c8d2eb98325df
- https://github.com/SixLabors/ImageSharp/releases/tag/v4.1.2
- https://github.com/SixLabors/ImageSharp/pull/3208
- https://github.com/SixLabors/ImageSharp/commit/baa37cd19077b2a2a0c5667535111cf31d48c019
- https://github.com/SixLabors/ImageSharp/releases/tag/v3.2.0