Suite aux explications données par Apple sur le bug des images qui auraient dû être supprimées et qui sont réapparues avec iOS 17.5, une analyse plus technique donne une idée du correctif appliqué avec iOS 17.5.1. Puisque le système d’Apple est propriétaire et son code source est fermé, il n’est pas évident de savoir ce qui se passe exactement sous le capot. Faute de mieux, il faut jouer aux détectives pour tenter de comprendre ce qui a été modifié, comme l’ont effectué les Français de Synacktiv dans un article publié en fin de semaine dernière.
Ces chercheurs en sécurité ont récupéré une copie d’iOS 17.5 et une autre d’iOS 17.5.1 et ils ont comparé ce qu’il y a à l’intérieur. S’ils n’ont pas accès au code source, ils peuvent ainsi facilement voir la liste des libraries (bibliothèques) pour voir celles qui ont été modifiées. En se concentrant sur celles qui concernent l’app Photos, ils peuvent même avoir une idée de ce qui a été modifié grâce aux symbols qui décrivent des fonctions en Objective-C, le langage de développement historique d’Apple qui reste exploité en majorité dans les profondeurs du système.
Ils utilisent pour cela un outil nommé BinDiff et développé par Google, ce qui leur a permis d’avoir une idée des fonctions ajoutées, supprimées ou tout simplement modifiées entre les deux versions. Une idée assez vague seulement, car c’est un travail d’estimations qui se base sur les rares noms lisibles pour tenter de deviner la fonction de chaque élément. Quoi qu’il en soit, cette analyse leur permet d’estimer ce qui s’est passé précisément avec iOS 17.5.1, à défaut d’avoir la certitude que seule une lecture du code source apporterait.
D’après ces recherches, la mise à jour a fait au plus simple, en retirant une fonction ajoutée à iOS 17.5 et qui avait pour but de vérifier si des images étaient présentes dans l’espace de stockage d’un iPhone ou iPad, mais pas dans la photothèque de l’app Photos. Le cas échéant, cette fonction semblait les ajouter dans l’app, ce qui explique assez bien le bug. Si, par le passé, des images avaient été supprimées de la photothèque sans être supprimées de l’espace de stockage, les fichiers étaient toujours là et ont pu être importés avec iOS 17.5.
Sous réserve que l’analyse soit exhaustive et correcte, cela veut aussi dire qu’iOS 17.5.1 ne supprime pas les images de l’espace de stockage. Cette mise à jour diffusée peu de temps après la précédente version a sans doute paré au plus pressé en retirant la source du bug, c’est-à-dire l’import dans Photos. Le nettoyage lui-même devrait attendre une autre version, sans doute le temps que les développeurs de Cupertino élaborent un système pour supprimer les anciennes images pour de bon, sans risquer de supprimer par erreur des photos et vidéos qui ne devaient pas l’être.