Le Secure Boot est une fonctionnalité de la norme UEFI permettant de bâtir une chaine de lancement dont l’intégrité est vérifiée. Utilisé par Windows 8, il doit empêcher des malwares de s’infiltrer lors du démarrage du système. Mais des faiblesses dans l’implémentation qui en est faite par les constructeurs ouvrent la voie à des failles de sécurité.
Une mise en oeuvre pointée du doigt
La norme UEFI (Unified Extensible Firmware Interface) qui remplace désormais les anciens BIOS, permet la mise en place de plusieurs mécanismes de sécurité. Parmi eux, le Secure Boot, qui permet d’attacher aux éléments impliqués dans le démarrage de la machine une signature numérique. Cette dernière est nécessaire pour que l’intégrité de la chaine soit vérifiée. Toute modification brise cette intégrité et l’utilisateur est averti du problème.
La conférence Black Hat, qui avait lieu la semaine dernière à Las Vegas, a été le théâtre de plusieurs révélations sur l’implémentation faite du Secure Boot. Trois chercheurs en sécurité, Andrew Furtak, Oleksandr Bazhaniuk et Yuriy Bulygin, ont ainsi fait la démonstration de plusieurs failles de sécurité permettant de contourner la protection. Mais le problème ne réside pas directement dans cette dernière : les constructeurs font parfois preuve de légèreté dans sa mise en œuvre.
En espace kernel ou utilisateur
C’est le cas notamment d’ASUS, dont l’implémentation du Secure Boot fait défaut sur le plan de la sécurité. La première faille exploitée a permis en effet de modifier la clé qui sert à la vérification des signatures numériques des composants. Cette fameuse clé est dans le cas présent insuffisamment protégée et est modifiable dès lors que l’exécutable frelaté peut être exécuté avec suffisamment de privilèges, ce qui limite d’ailleurs la portée de l’attaque.
Notez que cette faille a été révélée il y a plus d’un an et que le constructeur a depuis mis à jour la plupart de ses cartes mères. Mais certaines machines telles que le portable VivoBook Q200E sont toujours vulnérables.
La deuxième faille vient là encore d’une mauvaise implémentation du Secure Boot par les constructeurs. Elle est d’ailleurs plus dangereuse car son exploitation peut se faire en espace utilisateur depuis une faille tierce présente dans Flash, Java, Office ou n’importe quelle autre application. Du fait de privilèges nécessaires moindres, la brèche est plus dangereuse et les chercheurs n’ont pas souhaité donner trop de détails techniques.
Qu'importe la technologie, l'implémentation est capitale
Ces deux failles font partie d’un lot plus important de problèmes de sécurité liés au Secure Boot. Selon les chercheurs, tous les constructeurs ont été prévenus, de même que Microsoft et l’UEFI Forum, l’organisme qui se charge de gérer les caractéristiques de la norme. Seule Microsoft a réagi, la firme indiquant simplement qu’elle travaillait « avec les partenaires pour s’assurer que le Secure Boot fournissait une grande protection » aux clients.
En dépit des problèmes dans la mise en œuvre de la technologie, les chercheurs ont cependant assuré qu’elle était un bon pas en avant. Tant que la chaine d’intégrité n’est pas brisée, aucun bootkit ne peut s’insérer dans le démarrage de la machine. Yuriy Bulygin a notamment indiqué qu’il s’agissait d’une barrière supplémentaire, là où les anciens systèmes laissaient quartier libre à certains types de malwares.