Quelle est la cause de l’énorme faille root de High Sierra mise en lumière hier ? Des experts se sont penchés sur la question et ont d’ores et déjà trouvé des éléments de réponse. À la suite de ses recherches, Yoann Gini, consultant spécialiste des systèmes Apple, livre ces explications à nos confrères de Slice42 :
Le problème vient d’une fonction introduite dans la gestion des identités pour APFS et globalement de la sécurité des identités sous macOS. Il y a donc un process de mise à jour de l’ancien vers le nouveau modèle. Celui-ci intègre aussi un process pour du très ancien (pre OS X 10.4) vers le tout nouveau. Ce process n’a pas été correctement testé et permet de régler un mot de passe sur un certain type de compte.
Les comptes en question sont ceux qui utilisent le modèle pre 10.4 et qui sont désactivés selon ce mode de fonctionnement. C’est le cas de tous les comptes système. Tous les comptes systèmes peuvent donc être attaqués pour avoir un mot de passe de configuré et devenir utilisable. Ceci incluant le root ».
Autrement dit, la faille ne touche pas que le compte administrateur. Yoann Gini met en garde contre une attaque sur des services de macOS Server, notamment. En attendant le correctif promis par Apple, il faut donc mettre un mot de passe sur tous les comptes.
Le chercheur en sécurité Patrick Wardle livre une analyse technique concordante. Il récapitule le bug de la sorte :
- Pour les comptes qui sont désactivés (c’est-à-dire qui n’ont pas de données “shadowhash”), macOS va essayer de réaliser une mise à niveau
- Durant cette mise à niveau, l’instruction
od_verify_crypt_password
retourne une valeur nulle- Le mot de passe fourni par l’utilisateur ou l’attaquant (un malandrin, ndr) est ensuite « mis à niveau » et enregistré pour le compte
Pedro Vilaça, un autre expert en sécurité, estime que ce bug est dû à un manque de test/debug.