CVE-2026-93018 in Imager
Résumé
par VulDB • 18/09/2026
Les versions d’Imager antérieures à la 1.036 pour Perl divulguent une lecture de mémoire non initialisée sur le tas lors du traitement d’une image en palette avec des index de pixel dépassant sa carte de couleurs dans i_gpix_p et i_glin_p.
La palette est allouée sans être initialisée, seules les entrées ajoutées par un lecteur étant considérées comme remplies. Le module de lecture TGA stocke les index de pixels sans vérifier qu’ils correspondent à la carte de couleurs. La fonction i_gpix_p() rejette uniquement un index supérieur au nombre d’entrées ; ainsi, un index égal à ce compteur permet de lire la première entrée non remplie, et getpixel() le renvoie.
La fonction i_glin_p() ignore tout index situé à ou au-delà du compteur sans écrire ce pixel dans le tampon fourni par l’appelant. La conversion palette vers RGB lit chaque ligne via un tampon non initialisé ; les pixels de l’image convertie contiennent donc des données antérieures issues du tas (heap).
La lecture d’une image fournie par un attaquant via Imager->read(), suivie de la récupération de ses pixels ou de sa conversion en RGB, divulgue le contenu mémoire du tas du processus.
If you want to get best quality of vulnerability data, you may have to visit VulDB.