web-dev-qa-db-fra.com

Pouvez-vous extraire le contenu de la mémoire d'une machine Windows hibernée?

Dans une récente discussion sur les hacks matériels, les attaques entourant Windows Hibernate ont sauté. Je ne suis pas entièrement convaincu qu'il serait viable d'obtenir des choses de la mémoire sauvegardées sur le disque.

Lorsque Windows hibernate, il met le contenu de RAM à un fichier sur le disque (et peut-être d'autres choses aussi, je ne sais pas) puis ne sait pas. Quand il se retourne. Quand il se retourne. m en supposant, il apparaît le contenu enregistré RAM Contenu sur le RAM lui-même.

Donc, une attaque hypothétique serait de voler le fichier de disque sauvegardé, vole ainsi RAM contenus, pouvant inclure des données sensibles telles que des mots de passe ou une corruption de mémoire en modifiant le RAM Contenu, en ajoutant/éditer des instructions de sorte que le code arbitraire soit exécuté.

Maintenant, je sais qu'un attaquant ayant un accès physique à une machine peut faire à peu près n'importe quoi, mais prendre ces attaques spécifiques en considération, est-ce possible? En supposant qu'il n'y ait pas de cryptage à l'échelle de disque, Windows chiffre-t-il réellement le fichier enregistré RAM quand il hiberne?

En outre, quelqu'un sait-il où ce fichier sera stocké? Donc, je peux essayer de voir le contenu du disque, peut-être utiliser un LiveCD?

14
sudhacker

Il est possible d'accéder au contenu d'une image hibernation simplement en démarrant l'ordinateur, ce qui reprend l'image. Ceci est après tout le point d'hibernation. Si la reprise ne nécessite aucun secret, cela signifie que l'image hibernation est autonome, il ne peut y avoir de protection contre un attaquant qui l'accède car il n'ya aucun moyen de distinguer un attaquant d'un utilisateur légitime.

La reprise peut ne pas donner accès à tout, par exemple Si vous revenez à une invite de déverrouillage de l'écran. Faire une copie de l'image Hibernation vous permettra de le démarrer plusieurs fois. Vous pouvez même essayer de le démarrer dans une machine virtuelle, même si vous deviez imiter le matériel original assez étroitement pour que la restauration réussisse.

Bien sûr, la meilleure façon d'accéder aux données qui a été écrite dans l'image hibernation est de le lire sans l'exécuter ( réponse du polynôme a des pointeurs à la documentation du format).

Il est en principe possible de chiffrer l'image hibernation, mais qui nécessite une modification d'interface utilisateur: une personne doit entrer la clé de déchiffrement lors du CV (généralement en tapant une phrase secrète ou par exemple en insérant une carte à puce). Autant que je sache, Windows ne prend pas en charge le cryptage du fichier hibernation, même avec BitLocker ( la FAQ est ambiguë, Cet article affirme l'absence d'une telle caractéristique) . Truecrypt Supporte le cryptage du fichier hibernation, de même que le mécanisme de cryptage Hibernation et de disque de Linux.

Notez qu'une image en hibernation cryptée est inutile pour un attaquant qui vole le disque, mais il ne défend pas contre une attaque maléfique , où quelqu'un a accès au système hiberné et peut planter des logiciels malveillants dans la botte. Image qui sera activée lorsqu'un utilisateur légitime se présente et entre dans la phrase secrète. La défense contre de telles attaques nécessite de vérifier l'intégrité du chargeur de démarrage (y compris la facilité de CV) - ce n'est pas différent de l'attaque de la botte à froid d'un système.

De telles attaques sont possibles. Le nom du fichier est "Hiberfil.sys" situé à la racine de la partition Windows. L'emplacement peut être changé. Windows ne chiffre pas l'hibernation ni le fichier Swap (PageFile.sys). Pour éviter ce type d'attaque hors ligne, Cryptage de disque complet (du lecteur système et de l'entraînement de stockage de Hiberfil.sys et de pageFile.sys si leurs emplacements ont été modifiés) doivent être utilisés.

3
Matrix