Comment l'utilisateur moyen peut-il facilement valider l'intégrité du micrologiciel de son Mac?
Avant de voter contre cette question ou de me faire la leçon sur la façon dont je suis paranoïaque et que personne ne devrait jamais avoir besoin de le faire, veuillez lire ci-dessous.
En juillet 2015, CVE-2015-3692 a révélé qu'un firmware EFI d'un Mac pouvait être piraté par un attaquant distant. (Les vecteurs disponibles pour cela se trouvent dans d'autres CVE, mais pourraient hypothétiquement être n'importe quoi, y compris des choses comme de faux installateurs de mises à jour Flash malveillants.)
Cette vulnérabilité a été rendue publique au moins quatre semaines avant qu'Apple ne la corrige le 30 juillet pour OS X 10.8, 10.9 et 10.10 avec EFI Firmware Security Update 2015-001 .
Le même chercheur en sécurité qui a annoncé cette vulnérabilité affirme également avoir assisté à une démonstration lors d'une conférence d'un hack de firmware qui ne peut pas être supprimé ou écrasé.
Par conséquent, une fois que l'EFI d'un Mac a été possédé, si l'attaquant l'a fait correctement, la seule façon de reflasher l'EFI avec un firmware Apple valide serait de câbler un reflasher directement à la puce EFI sur la carte logique elle-même ( n'essayez pas ceci à la maison).
Les articles de presse qui ont signalé cette vulnérabilité l'ont minimisée, disant que la plupart des utilisateurs ne devraient pas s'inquiéter, et tout ce que vous devez faire pour vous protéger est de ne jamais laisser votre Mac passer en mode veille, et de désactiver l'utilisateur root ou de ne jamais authentifier quoi que ce soit que vous ne faites pas confiance à 100%. Les fils de commentaires sur ces articles le résument comme suit: si toutes vos applications proviennent de sources fiables comme l'App Store officiel, et que vous n'exécutez jamais rien qui n'est pas signé par un développeur connu d'Apple, alors vous ne devriez avoir rien à craindre.
Mais en septembre 2015, nous avons découvert l'exploit XCodeGhost , qui est connu pour avoir fait apparaître de nombreuses applications infectées par des logiciels malveillants sur l'iOS App Store officiel - mais qu'en est-il des applications OS X? Dans l'article lié, Malwarebytes a écrit:
Wardle a souligné en mars que Xcode était vulnérable à ce genre de chose, mais effrayant, a également pointé du doigt de nombreuses autres applications OS X. Chacune de ces applications pourrait être vulnérable à des attaques similaires.
Ils ont également écrit: "l'utilisateur moyen ne devrait pas paniquer" - le même mantra que je vois souvent perché sur les forums d'assistance Apple et ailleurs chaque fois qu'un utilisateur publie un fil sur des tonnes de problèmes étranges qu'ils rencontrent. "Reformatez simplement votre disque et effectuez une nouvelle installation du système. Le problème est probablement une modification du système par un tiers", nous dit-on. Lorsque cela ne le résout pas, les gens sont informés qu'il doit s'agir d'un problème matériel, comme un disque dur défaillant, un GPU défaillant ou une mauvaise RAM. J'ai vu des discussions où les gens remplaçaient littéralement tous les composants de leur Mac, et le problème revenait toujours.
Nous savons maintenant qu'il est possible que le micrologiciel EFI des utilisateurs ait été piraté. Ainsi, même si leur carte mère était remplacée, lorsqu'ils réinstalleraient leurs applications, le micrologiciel pourrait à nouveau être reflué par le logiciel malveillant! Et si la carte mère n'était pas remplacée, ils seraient arrosés quoi qu'il arrive.
Cela me ramène à la question principale.
Comment l'utilisateur moyen peut-il facilement valider l'intégrité du micrologiciel de son Mac? Par exemple, comment pouvez-vous vérifier que le micrologiciel de votre Mac n'a jamais été compromis par des logiciels malveillants? Je n'ai trouvé aucune méthode compatible avec El Capitan qui ne nécessite pas de désactiver SIP. Pour les versions antérieures du système d'exploitation, il existe un outil tiers complexe appelé DarwinDumper qui peut vider le contenu de vos EFI dans un fichier texte, mais vous devez toujours disposer du micrologiciel Apple valide pour le comparer - ce n'est pas une méthode que l'utilisateur moyen est capable de faire.
Dire aux gens de ne pas s'inquiéter de quelque chose dont ils pourraient très bien être la victime, et n'avoir aucun moyen de vérifier s'ils le sont, est ce qui permet à ces types d'exploits d'être rentables pour les pirates, qui dépendent de la complaisance et d'un manque de vigilance sur le partie des utilisateurs.
==
EDIT: J'ai trouvé le dernier programme d'installation officiel du micrologiciel Apple sur le site d'assistance d'Apple . Le programme d'installation ne fonctionne pas sur 10.10 ou 10.11, bizarrement. En utilisant Pacifist, j'ai extrait le fichier .scap pour mon Macbook Pro 9,1. J'ai comparé le binaire dans HexFiend avec le biosdump que j'ai extrait en utilisant DarwinDump après avoir redémarré en mode de récupération et exécuté csrutil disable
sur le terminal pour désactiver rootless et permettre d'exécuter des kexts non signés. J'ai récupéré cet en-tête du BIOS:
$IBIOSI$ MBP91.88Z.00D3.B0B.1506081214Copyright (c) 2005-2015 Apple Inc. All rights reserved.ˇˇˆ´5µ}ñÚC¥î°Îé!¢é_i@Ÿ¯¡Apple ROM Version
BIOS ID: MBP91
Built by: root@saumon
Date: Mon Jun 8 12:14:35 PDT 2015
Revision: svn 39254 (B&I)
Buildcave ID: 6
ROM Version: 00D3_B0B
Le BIOS officiel de l'en-tête d'Apple:
$IBIOSI$ MBP91.88Z.00D3.B0B.1506081214Copyright (c) 2005-2015 Apple Inc. All rights reserved.ˇˇˆ´5µ}ñÚC¥î°Îé!¢é_i@Ÿ¯¡Apple ROM Version
BIOS ID: MBP91
Built by: root@saumon
Date: Mon Jun 8 12:14:35 PDT 2015
Revision: svn 39254 (B&I)
Buildcave ID: 6
ROM Version: 00D3_B0B
En dehors de cela, les fichiers sont très différents, mais je suppose que le fichier .scap a une sorte de compression. Au moins, cela me dit que j'avais le dernier firmware installé, celui qui a été publié après l'annonce des hacks. Je suis vraiment bon. Ce serait bien de pouvoir confirmer que je suis bon grâce à une sorte de vérification de la somme de contrôle cependant! Je vous regarde, Apple!