Vigil@nce - libpng : division par zéro via png_handle_cHRM
septembre 2011 par Vigil@nce
Ce bulletin a été rédigé par Vigil@nce : http://vigilance.fr/offre
SYNTHÈSE DE LA VULNÉRABILITÉ
Un attaquant peut inviter la victime à ouvrir une image PNG
illicite avec une application liée à libpng, afin de provoquer une
division par zéro, qui stoppe l’application.
Gravité : 1/4
Date création : 23/09/2011
PRODUITS CONCERNÉS
– Unix - plateforme
DESCRIPTION DE LA VULNÉRABILITÉ
La bibliothèque libpng gère les images PNG. Elle est utilisée par
de nombreuses applications.
Une image PNG est composée d’une suite de fragments représentés
par quatre lettres :
– IHDR : entête (image header)
– IDAT : données (image data)
– tEXT : texte
– cHRM : chromatique (ajustement des couleurs)
– etc.
La fonction png_handle_cHRM() du fichier src/3rdparty/libpng/pngrutil.c
ajuste les couleurs Rouge, Vert, Bleu en fonction d’un facteur
défini par le fragment cHRM. Cependant, si le facteur est nul, une
division par zéro se produit.
Un attaquant peut donc inviter la victime à ouvrir une image PNG
illicite avec une application liée à libpng, afin de provoquer une
division par zéro, qui stoppe l’application.
ACCÈS AU BULLETIN VIGIL@NCE COMPLET
http://vigilance.fr/vulnerabilite/libpng-division-par-zero-via-png-handle-cHRM-11004