Imager versions through 1.030 for Perl allow a heap out of bounds (OOB) write on crafted multi-frame GIF files.
Imager::File::GIF's i_readgif_multi_low allocates a single per-row buffer GifRow sized for the GIF's global screen width 'SWidth' and reuses it across every image in the file.
The page-match branch validates Image.Width + Image.Left > SWidth before each DGifGetLine write, but the parallel skip-image branch at imgif.c:790-805 calls DGifGetLine(GifFile, GifRow, Width) with no such check.
Metrics
Affected Vendors & Products
References
History
Fri, 15 May 2026 16:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
cvssV3_1
|
Fri, 15 May 2026 15:45:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Tonyc
Tonyc imager |
|
| Vendors & Products |
Tonyc
Tonyc imager |
Fri, 15 May 2026 14:30:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Description | Imager versions through 1.030 for Perl allow a heap out of bounds (OOB) write on crafted multi-frame GIF files. Imager::File::GIF's i_readgif_multi_low allocates a single per-row buffer GifRow sized for the GIF's global screen width 'SWidth' and reuses it across every image in the file. The page-match branch validates Image.Width + Image.Left > SWidth before each DGifGetLine write, but the parallel skip-image branch at imgif.c:790-805 calls DGifGetLine(GifFile, GifRow, Width) with no such check. | |
| Title | Imager versions through 1.030 for Perl allow a heap out of bounds (OOB) write on crafted multi-frame GIF files | |
| Weaknesses | CWE-787 | |
| References |
|
Status: PUBLISHED
Assigner: CPANSec
Published: 2026-05-15T13:31:14.449Z
Updated: 2026-05-15T15:40:04.360Z
Reserved: 2026-05-15T11:19:04.001Z
Link: CVE-2026-8669
Updated: 2026-05-15T15:39:59.229Z
Status : Received
Published: 2026-05-15T15:16:57.043
Modified: 2026-05-15T16:16:16.163
Link: CVE-2026-8669
No data.