Security Advisories (6)
CVE-2016-1238 (2016-08-02)

Imager would search the default current directory entry in @INC when searching for file format support modules.

CVE-2007-2459 (2007-05-02)

Heap-based buffer overflow in the BMP reader (bmp.c) in Imager perl module (libimager-perl) 0.45 through 0.56 allows remote attackers to cause a denial of service (application crash) and possibly execute arbitrary code via crafted 8-bit/pixel compressed BMP files.

CPANSA-Imager-2014-01 (2014-01-03)

When drawing on an image with an alpha channel where the source minimum is greater than zero, Imager would read from beyond the end of a malloc() allocated buffer. In rare circumstances this could lead to some of the source image not being written to the target image, or possibly to a segmentation fault.

CVE-2024-53901 (2024-11-17)

"invalid next size" backtrace on use of trim on certain images

CVE-2006-0053 (2006-04-10)

Imager (libimager-perl) before 0.50 allows user-assisted attackers to cause a denial of service (segmentation fault) by writing a 2- or 4-channel JPEG image (or a 2-channel TGA image) to a scalar, which triggers a NULL pointer dereference.

CVE-2026-8669 (2026-05-15)

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.

Changes for version 0.31 - 2000-01-15

  • Fixed a bug pointed out by Leolo where loading gifs
  • skips the first line of the imageload() has been by read() - for now load is an alias for read. It will be removed in the future. Also, fixes dynamic loading on systems that prepend an underscore to symbols. At the present the only system that I know of that needs this is OpenBSD. BUT YOU MUST RECOMPILE ALL OF YOUR OLD MODULES AGAINST THIS BUILD. Added getchannels() method ( How did I manage to delay this untill now ). Some document changes but nothing substantial. Also fixed the png read/write routines to handle all colorspaces and images with alpha information. Also now it's possible to have Imager guess the format of the files to load or save when passing files to read or save from the filename. Also all of the tests except dynamic loading now pass on OS/2.

Modules

Perl extension for Generating 24 bit Images