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 :
+ rapide, + pratique, + exclusif
Zéro publicité, fonctions avancées de lecture, articles résumés par l'I.A, contenus exclusifs et plus encore.
Découvrez les nombreux avantages de Numerama+.
Vous avez lu 0 articles sur Numerama ce mois-ci
Tout le monde n'a pas les moyens de payer pour l'information.
C'est pourquoi nous maintenons notre journalisme ouvert à tous.
Mais si vous le pouvez,
voici trois bonnes raisons de soutenir notre travail :
- 1 Numerama+ contribue à offrir une expérience gratuite à tous les lecteurs de Numerama.
- 2 Vous profiterez d'une lecture sans publicité, de nombreuses fonctions avancées de lecture et des contenus exclusifs.
- 3 Aider Numerama dans sa mission : comprendre le présent pour anticiper l'avenir.
Si vous croyez en un web gratuit et à une information de qualité accessible au plus grand nombre, rejoignez Numerama+.
Si vous avez aimé cet article, vous aimerez les suivants : ne les manquez pas en vous abonnant à Numerama sur Google News.