`Image.merge()` ne valide pas le premier canal et peut déréférencer un pointeur nul lorsque celui-ci est une image de mode `I` ou `F`. Un fichier IPTC forgé peut conduire à ce chemin et provoquer l’arrêt brutal du processus; Pillow de 12.0.0 à avant 13.0.0 est indiqué comme affecté.
Source : GHSA-cp9v-662q-vvx9 — Pillow: NULL pointer dereference in Image.merge via an unvalidated band 0
Analyse technique
La validation examine les bandes à partir de la seconde, laissant la première non contrôlée. Pour les modes `I` ou `F`, le plan 8 bits attendu peut être NULL et être déréférencé dans le code natif.
Impact, versions et correctif
Détection / vérification
Vérifier la version de Pillow et les chemins de traitement des images IPTC ou l’usage direct de `Image.merge()`.
Action recommandée
Mettre à niveau Pillow vers 13.0.0 ou ultérieur; isoler le traitement des images non fiables et éviter de transmettre des bandes non validées à `Image.merge()`.
Sources
Priorisation DFS : P3 · 1 source(s).