Description
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 products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| SixLabors | ImageSharp | >= 1.0.0-beta0001, < 4.1.2 | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| NuGet | SixLabors.ImageSharp | >= 4.0.0, < 4.1.2 | 4.1.2 | GHSA-gwg2-r3hj-4w44 |
| NuGet | SixLabors.ImageSharp | >= 1.0.0-beta0001, < 3.2.0 | 3.2.0 | GHSA-gwg2-r3hj-4w44 |