GHSA-qpg4-j99f-8xcg
ImageMagick has heap buffer overflow in WriteXWDImage due to CARD32 arithmetic overflow in bytes_per_line calculation
Packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| NuGet | Magick.NET-Q16-AnyCPU | < 14.10.4 | 14.10.4 |
| NuGet | Magick.NET-Q16-HDRI-AnyCPU | < 14.10.4 | 14.10.4 |
| NuGet | Magick.NET-Q16-HDRI-OpenMP-arm64 | < 14.10.4 | 14.10.4 |
| NuGet | Magick.NET-Q16-HDRI-arm64 | < 14.10.4 | 14.10.4 |
| NuGet | Magick.NET-Q16-HDRI-x64 | < 14.10.4 | 14.10.4 |
| NuGet | Magick.NET-Q16-HDRI-x86 | < 14.10.4 | 14.10.4 |
| NuGet | Magick.NET-Q16-OpenMP-arm64 | < 14.10.4 | 14.10.4 |
| NuGet | Magick.NET-Q16-OpenMP-x64 | < 14.10.4 | 14.10.4 |
| NuGet | Magick.NET-Q16-OpenMP-x86 | < 14.10.4 | 14.10.4 |
| NuGet | Magick.NET-Q16-arm64 | < 14.10.4 | 14.10.4 |
| NuGet | Magick.NET-Q16-x64 | < 14.10.4 | 14.10.4 |
| NuGet | Magick.NET-Q16-x86 | < 14.10.4 | 14.10.4 |
| NuGet | Magick.NET-Q16-HDRI-OpenMP-x64 | < 14.10.4 | 14.10.4 |
| NuGet | Magick.NET-Q8-AnyCPU | < 14.10.4 | 14.10.4 |
| NuGet | Magick.NET-Q8-OpenMP-arm64 | < 14.10.4 | 14.10.4 |
| NuGet | Magick.NET-Q8-OpenMP-x64 | < 14.10.4 | 14.10.4 |
| NuGet | Magick.NET-Q8-arm64 | < 14.10.4 | 14.10.4 |
| NuGet | Magick.NET-Q8-x64 | < 14.10.4 | 14.10.4 |
| NuGet | Magick.NET-Q8-x86 | < 14.10.4 | 14.10.4 |
Details
As written in the advisory (Markdown source, shown as plain text).
A 32-bit unsigned integer overflow in the XWD (X Windows) encoder can cause an undersized heap buffer allocation. When writing a extremely large image an out of bounds heap write can occur.
```
=================================================================
==741961==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x5020000083dc at pc 0x56553b4c4245 bp 0x7ffd9d20fef0 sp 0x7ffd9d20fee0
WRITE of size 1 at 0x5020000083dc thread T0
```
References
External links from the advisory. They lead to third-party sites.