Ce n’est pas une petite faille sans importance. Des chercheurs allemands ont découvert un bug dans les puces FPGA, implicant aux concepteurs et fabricants de revoir leurs matériels, et aux utilisateurs de remplacer leurs processeurs existants sans possibilité de patch logiciel. Dans un projet commun de recherche, des scientifiques de l’Institut Horst Görtz pour la sécurité informatique de la Ruhr-Universität Bochum et de l’Institut Max Planck pour la sécurité et la confidentialité ont ont mis le doigt sur ce problème de sécurité qu’ils ont nommé « Starbleed ». En l’exploitant, les pirates peuvent obtenir un contrôle complet sur ces puces et leurs fonctionnalités.

Et ce problème vient de la raison d’être des puces FPGA : leur capacité de reprogrammation grâce à un fichier bitstream. Les scientifiques ont pu, en effet, manipuler le fichier chiffré pendant le processus de configuration pour rediriger son contenu déchiffré vers le registre de configuration WBSTAR, qui peut être lu après une réinitialisation. Les conséquences peuvent être dramatiques : « Si un attaquant accède au flichier, il obtient par ailleurs un contrôle complet sur le FPGA. Les propriétés intellectuelles incluses dans le fichier peuvent être dérobées. Il est par ailleurs possible d’insérer des chevaux de Troie matériels dans le FPGA en manipulant le fichier », explique Christof Paar, de l’Institut Max Planck de Bochum.

Seule solution : remplacer les puces

Et d’ajouter qu’étant donné que le bug est situé dans le matériel lui-même, il ne peut être corrigé qu’en remplaçant la puce... « Bien que des connaissances détaillées soient nécessaires, une attaque peut éventuellement être effectuée à distance, l’attaquant n’a même pas besoin d’avoir un accès physique au FPGA », conclut le scientifique.

Pour trouver ces résultats, les scientifiques ont analysé les FPGA de Xilinx, l’un des deux leaders du marché. La faille Starbleed affecte les FPGA de la série 7 du fabricant avec les quatre familles FPGA Spartan, Artix, Kintex et Virtex ainsi que la version précédente Virtex-6, qui constituent une grande partie de ses puces utilisées aujourd’hui. Les chercheurs ont informé la société et travaillé avec elle à résoudre le problème. La dernière série de puces du fabricant ne devrait pas être concerné par ce bug, mais Xilinx tiendra les clients concernés au courant sur son site.