Un mauvais appel de l'API de vérification des signatures numériques pourrait permettre à un code malveillant d'être signé par Apple

Le mécanisme de vérification de la signature numérique des logiciels est facilement contournable sur les appareils Apple. Un attaquant pourrait exploiter cette vulnérabilité pour qu'un logiciel malveillant semble être signé par Apple.

Ce bogue provient de la manière dont les outils de sécurité tiers utilisent l'API d'Apple pour vérifier la légitimité du code d'un logiciel sur les appareils Apple.

Pour exploiter cette faille :

  • Le code malveillant doit être signé par une autre autorité de certification que celle d'Apple.
  • Le code doit être compilé i386 pour un macOS x86_64 bits.
  • Le paramètre CPU_TYPE dans l’entête Fat (format binaire universel contenant des fichiers Mach-O comme des exécutables…) du binaire d’Apple doit être défini sur un type non valide.
  • Le développeur doit utilise de mauvais paramètres dans l'appel de l'API de vérification du code binaire d'Apple.

Si ces conditions sont réunies, lors de l'appel incorrect de l'API de vérification, le loader Mach-O chargera le binaire Mach-O signé par Apple et exécutera le code malveillant (celui non signé par Apple).

La liste des vendeurs affectés est comme suit, il est recommandé de mettre à jour les versions affectées :