Sécurité : menaces sur les firmwares des ordinateurs
Les travaux de plusieurs chercheurs dévoilés en fin d’année montre le risque d’installation de logiciels malveillants furtifs au sein du logiciel interne des ordinateurs.
Les documents divulgués par Edward Snowden sur les activités de la NSA l’expliquaient déjà : les agents du service de renseignement américain intercepteraient certaines livraisons pour installer des firmwares – logiciel interne – modifiés sur des ordinateurs afin de pouvoir y accéder à distance.
A l’occasion du Chaos Communications Congress, qui se déroulait en Allemagne fin décembre, le chercheur Trammell Hudson a montré comment il pouvait être possible sur des ordinateurs fabriqués par Apple via leur port Thunderbolt.
Pour résumer, « une vulnérabilité significative dans le firmware EFI d’Apple permet d’écrire du code malveillant sur la ROM de démarrage et de résister aux tentatives visant à le supprimer », explique-t-il sur son blog. Le tout en raison de l’absence de vérification rigoureuse de la conformité du contenu de la ROM de démarrage. Pour cela, il est nécessaire de disposer d’un accès physique à la machine, mais durant un délai très bref – « quelques secondes » - car « le port Thunderbolt offre un moyen d’exécuter du code lorsque le système démarre ».
Le concept d’une telle attaque avait déjà fait l’objet de travaux préalables. La nouveauté tient à autre chose : « le clé RSA publique dans la ROM de démarrage est désormais une clé que nous contrôlons ; seules les mises à jour signées avec notre clé privée peuvent être utilisées pour mettre à jour le firmware ». Supprimer le logiciel malicieux n’en devient que plus difficile, d’autant plus que celui-ci peut être conçu pour corriger la vulnérabilité initiale.
D’autres menaces sur les firmwares
Parallèlement, Rafal Wojtczuk, de Bromium, et Corey Kallenberg, de Mitre, on découvert une vulnérabilité dans l’implémentation de référence de l’UEFI.
Dans une alerte du Cert américain, le second la détaille : « l’UEFI utilise plusieurs variables non-volatiles pour communiquer des informations avec le système d’exploitation et le firmware ». Une opération importante de réallocation de l’espace de stockage inutilisé pour ces variables contient une vulnérabilité permettant de déclencher un dépassement de mémoire tampon.
Dès lors, pour les chercheurs, « l’impact de la vulnérabilité dépend de moment où le code vulnérable est instancié » et, « dans un scénario idéal (pour l’attaquant), le code vulnérable peut être instancié avant le verrouillage » de la mémoire flash utilisée pour le stockage des variables en question, permettant alors « de reflasher arbitrairement le firmware de la plateforme ».
Là encore, le but est de substituer un code malicieux à un code légitime.
La vulnérabilité réelle dépend des implémentations des constructeurs. Les machines Apple ne sont pas concernées, ni même celles d’IBM, d’Intel ou celles embarquant un jeu de composant Phoenix. Celles équipées de composant Insyde le sont en revanche, mais un correctif est disponible.
La situation des machines signées Asus, Dell, HP ou encore Lenovo, Sony et Toshiba n’est pas encore connue.