Des chercheurs exploitent la mémoire bavarde des ordinateurs

Accéder à des données d'un disque chiffré, c'est possible, du moins en laboratoire. L'attaque apparaît en effet plus complexe en environnement réel.

Neuf chercheurs de l'université de Princeton, de l'Electronic Frontier Foundation et de Wind River Sys, se sont frotté à la sécurité du chiffrement de disque dur par des logiciels comme BitLocker de Microsoft ou TrueCrypt. Leur objectif : souligner la faisabilité d'un hack physique contre un ordinateur portable dont les données sont chiffrées et la session utilisateur verrouillée.

Pour parvenir à accéder aux données, les chercheurs ont utilisé le principe de rémanence des données en mémoire. Ainsi, la clef de chiffrement reste temporairement stockée dans la RAM de l'ordinateur. A partir d'un ordinateur en veille, un possible assaillant doit donc intervenir dans des délais relativement brefs afin de retirer la mémoire et l'insérer sur une autre machine où il lui sera possible de procéder à une extraction de la clef dans la mémoire.

Et pour accroître la durée de rémanence, les chercheurs ont fait appel à plus que la simple huile de coude. "Pour se donner une marge de manœuvre, ils utilisent dans leur démonstration le refroidissement de la RAM. Grâce à ce procédé, les données sont conservées plus longtemps. La méthode est intéressante, mais le timing ne me semble pas crédible", estime Frédéric Charpentier, consultant sécurité et spécialiste des tests d'intrusion chez Xmco Partners.

C'est en effet muni d'une bonbonne expulsant de l'air à moins 50° que les chercheurs refroidissent la barrette de RAM avant de l'extraire, puis de la réinjecter dans un second ordinateur. L'attaque pour être réalisable suppose donc des conditions précises, dont un accès à l'ordinateur. Toutefois, dans la pratique, les portables sont souvent exposés à des risques de vol. Néanmoins, estime Frédéric Charpentier, "cette attaque n'est pas réaliste dans la vie réelle et masque des risques plus importants comme les mots de passe, le vol de clef USB et les patchs".

"Dans la démonstration, après avoir obtenu la clef de chiffrement, les chercheurs démarrent depuis un disque dur externe. Cela suppose donc que l'ordinateur soit configuré pour autoriser le boot depuis un port USB ou même un CD. Que ce soit pour un ordinateur aux données chiffrées ou non, ce type de boot doit nécessairement être désactivé", prévient également Frédéric Charpentier.

princeton
Dump mémoire en cours © Princeton University

Autre recommandation à appliquer dans le chiffrement de fichier, la prise en compte du Swap. Cette partition créée automatiquement sur le disque fait office d'extension de la mémoire vive du système.

Ainsi, lors d'un dépassement de mémoire, l'OS copie des blocs de mémoire dans l'espace de Swap. Ces éléments y demeurent jusqu'à être écrasés. Difficilement exploitables, ces composants rémanents peuvent être par précaution inclus dans la zone de chiffrement.

En ce qui concerne plus spécifiquement la démonstration des chercheurs de Princeton, si elle ne souligne pas une vulnérabilité véritablement critique, elle a au moins le mérite de remettre l'accent sur le hacking physique, loin d'être négligeable. Moins souvent abordé que l'exploitation de vulnérabilités logicielles, ce type d'attaques doit être pris en compte dans l'analyse de risque. L'exploitation de la rémanence pourrait en outre souligner des risques dans d'autres domaines d'application comme les terminaux de paiement.

La présentation des travaux des chercheurs a d'ailleurs déjà fait des émules. Ainsi, Adam Boileau de la société de sécurité Immunity a publié, après deux ans, le code source de Winlockpwn, l'outil conçu pour accéder à la mémoire (lire et écrire) d'un ordinateur sous Windows via le port FireWire. Ces travaux avaient été présentés à l'origine en 2006 lors de la conférence Ruxcon. Adam Boileau espère pousser Microsoft à rechercher une solution.

Adam Boileau a été suivi dans cet élan d'émancipation par Robert Wesley McGrew, intéressé lui aussi par le dump mémoire des chercheurs de Princeton. Avec un système stocké sur une clef USB, il propose de réaliser le même type d'attaque. Le support, comportant un noyau système Linux (Syslinux), héberge ainsi une application (msramdmp) chargée de l'analyse de la mémoire.