Selon Der Spiegel, la NSA disposerait des moyens de hacker le firmware des principaux disques dur du marché. Dans quel but ? Explications.

Parmi ses révélations du jour sur les moyens mis en oeuvre par la NSA (voir notamment le piratage des routeurs), le quotidien allemand Der Spiegel affirme que l'agence américaine dispose de toute une batterie de logiciels pour "attaquer le firmware des disques durs fabriqués par Western Digital, Seagate, Maxtor et Samsung". Cependant, le journal ne précise pas comment les disques peuvent être hackés, et quel peut être l'intérêt.

Pour le comprendre, il faut savoir qu'un disque dur est presque un système informatique à part entière, doté de son propre processeur, et de logiciels internes. Lorsqu'il démarre, la première chose que fait le disque dur est de charger son firmware, qui remplit différentes fonctions, de la mise en route des moteurs et du paramétrage des têtes, jusqu'à la détection et la gestion des erreurs avec le système SMART, en passant par la traduction des données lues sur les disques en données transmises à travers l'interface (généralement SATA) de l'ordinateur.

Les disques durs disposent également d'une mémoire cache, qui permet d'accélérer les échanges entre la mémoire RAM de l'ordinateur et le disque dur. Plutôt d'accéder physiquement aux données les plus fréquemment utilisées, le firmware les stocke dans une mémoire tampon. Toutes les données utilisées le plus récemment sont stockées au moins temporairement dans cette mémoire.

En hackant le firmware des disques durs, le but est de détourner le code qui contrôle le cache pour modifier des données à la volée, lorsqu'elles sont stockées dans la mémoire, sans les modifier physiquement sur le disque dur. Comme l'a démontré SpritesMod à partir d'un disque Western Digital, il est possible d'injecter du code dans le firmware, et de déclencher son exécution lorsqu'une chaîne prédéfinie apparaît dans la mémoire cache. Cette chaîne (un ensemble de données binaires) peut être stockée dans une image chargée sur un site internet, intégrée à une URL, ou dans n'importe quel document.

Concrètement, le hacker (possiblement la NSA) peut par exemple modifier le firmware pour modifier à la volée le contenu en cache du fichier /etc/shadow, qui contient les mots de passe d'un système Linux. Il peut alors remplacer le vrai mot de passe de l'administrateur par un mot de passe temporaire, et se logger sur la machine pour accéder à toutes les données.

Démonstration :

Nouveauté : Découvrez

La meilleure expérience de Numerama, sans publicité,
+ riche, + zen, + exclusive.

Découvrez Numerama+

Abonnez-vous à Numerama sur Google News pour ne manquer aucune info !