Les chercheurs en sécurité ont découvert une vulnérabilité vient de by-pass de signature de code qui permet le code malveillant de se faire passer comme un fonctionnaire Appliquer fichier système. En d'autres termes, quelques-unes des implémentations de l'API de signature de code officiel d'Apple peut être exploitée par des pirates.
Apple a fait une API disponible pour les développeurs qui souhaitent créer une fonction de sécurité qui a vérifié les fichiers Apple comme légitime. La question découle de la façon dont certains développeurs ont mis en œuvre l'API, introduisant ainsi une vulnérabilité dans le produit de sécurité.
La faille permet de code malveillant non signé pour ressembler il a été signé par Apple. En conséquence de ce « malentendu », les logiciels malveillants peuvent duper des produits et des services de sécurité vulnérables en leur faisant croire qu'il est juste un autre fichier d'Apple légitime.
Qui est touché par cette vulnérabilité? Une foule de produits de sécurité, plusieurs projets open-source et les fonctions de sécurité utilisées par Google, Facebook et Yelp.
En savoir plus sur la vulnérabilité
Comme expliqué par le chercheur Josh Pitt à Okta, la faille existe dans la différence entre la façon dont les charges de chargeur Mach-O ont signé le code par rapport à la façon dont le code utilisé incorrectement signature API chèque signé code et est exploitée par une malformé Universal / Fat Binary (un format binaire qui contient plusieurs fichiers Mach-O avec chacun ciblant une architecture de processeur natif spécifique).
Il convient de noter qu'il existe plusieurs conditions pour la vulnérabilité au travail:
– Le premier Mach-O dans le Fat / fichier universel doit être signé par Apple, peut être i386, x86_64, ou même PPC.
– Le fichier binaire malveillant, ou non Apple code fourni, doit être signé et adhoc i386 compilés pour un macOS cible de bits x86_64.
– Le cpu_type dans l'en-tête de la graisse binaire Apple doit être réglé sur un type non valide ou un type de processeur qui est pas natif du chipset hôte.
La preuve de concept initial a démontré combien il est facile pour la faille à exploiter avec succès - l'exploit n'a même pas besoin d'un accès administrateur ni ne nécessite un code de JIT'ing ou de corruption de mémoire pour contourner les contrôles de signature de code. Tout ce qui est nécessaire est un “correctement formaté Fat / fichier universel, et [puis] chèques de signature de code [sont renvoyés comme étant] valide“, le chercheur a souligné.
Rapiéçage est la responsabilité du développeur
En outre, les API de signature de code ont des drapeaux qui doivent faire en sorte que tous ces fichiers sont signés cryptographiquement. La vérité est différente, comme «ces API ne répondent pas par défaut, et les développeurs tiers devront se tailler et de vérifier chaque architecture dans le Fat / fichier universel et vérifier que les identités correspondent et sont son cryptographiquement.» Quant à savoir qui est responsable du rapiéçage de la question, chercheur Okta dit qu'il est de la responsabilité du développeur.
Connus fournisseurs et des projets open-source touchés sont alertés et les correctifs sont disponibles. Voici une liste des fournisseurs concernés et les correctifs applicables:
Noir carbone (CVE-2018-10407); Facebook (CVE-2018-6336); F-Secure (CVE-2018-10403); Google (CVE-2018-10405); objectif de développement (CVE-2018-10470); Objectif-See (CVE-2018-10404); VirusTotal (CVE-2018-10408); et Yelp (CVE-2018-10406)
Il peut y avoir encore plus de sécurité tiers, médecine légale et des outils de réponse aux incidents qui utilisent les API de signature de code officielles, ce qui signifie qu'il ya des parties plus touchées. Le chercheur invite les développeurs de vérifier leur code à l'aide de sa preuve de concept.