iOS et OS X sont victimes d’un bug où un simple fichier graphique .png bidouillé peut instantanément faire planter diverses applications. Ça, c’est pour la mauvaise nouvelle. La bonne c’est qu’Apple a corrigé le problème dans les versions bêta actuellement en circulation.
Il aura fallu un peu de temps puisque le bug a été signalé mi-décembre. Lander Brandt l’a détaillé ce week-end.
Il se manifeste lorsqu’on insère ou tente d’ouvrir un fichier png contenant un chunk de données de 0 octet. Brandt l’a obtenu en manipulant ce qui était à l’origine une capture d’écran standard. Dans iOS et OS X, le framework ImageIO s’appuie sur la librairie libpng pour gérer les formats PNG. En croisant cet élément inhabituel dans le fichier, libpng passe la main au mécanisme propre à Apple qui n’a pas été prévu pour interpréter correctement ce cas de figure. D’où les plantages à répétition.
Cliquez sur un lien conduisant à un tel fichier et la fenêtre de Safari tournera en rond. En envoyant ce fichier dans Slack, notre correspondant a vu son application planter à chaque tentative de lancement.
Lander Brandt explique que plusieurs logiciels utilisent ImageIO à travers un framework plus global : Application Services. C’est le cas de Tweetbot, Safari, Messages, Mail ou encore Aperçu. Tous sont susceptibles de planter en présence de ce type d’image (dont il donne un lien d’exemple dans son billet).
Vers la fin-mars, Apple lui a assuré qu’un correctif était en cours et c’est en effet le cas. Sur OS X 10.11.5 bêta 2 et iOS 9.3.2 bêta 2 le même png s’affiche sans problème.
Source : Mac Kung Fu