web-dev-qa-db-fra.com

Le démarrage sécurisé est-il vraiment sécurisé?

J'ai trouvé le concept de démarrage sécurisé assez intriguant. Je ne peux pas dire que je sais beaucoup à ce sujet parce que je ne le fais pas mais je crois que je comprends le concept principal de celui-ci.

Le démarrage sécurisé vérifie la signature de l'exécutable que l'ordinateur démarre. (Généralement, le cas est le chargeur de démarrage)

Sur un ordinateur sans démarrage sécurisé, un attaquant pourrait simplement écraser \EFI\Boot\bootx64.efi ou \EFI\Boot\bootia32.efi Selon l'architecture avec son propre programme, son programme infecterait en quelque sorte à la machine d'OS et poursuivra l'exécution avec le chargeur de démarrage de Windows qui est stocké dans \EFI\Microsoft\Boot\bootmgr.efi

Le démarrage sécurisé empêche que l'exécutable EFI de l'attaquant n'est pas signée.

Mais cela pourrait facilement être évité.

Un attaquant pourrait simplement installer systemd-boot bootloader qui appellerait le fichier EFI de l'attaquant qui appellerait le chargeur de démarrage Windows après son travail.

Est-ce que je manque quelque chose?

4
ChrisK

systemD-Boot doit également être signé. L'original signé Gummiboot respecte le processus de démarrage "sécurisé" et nécessite que les fichiers binaires à lancer sont signés également: https://www.rodsbooks.com/efi-bootloaders/secureboot.html

Donc, ce n'est pas tout à fait ce trivial. Mais il y a des attaques sur une autre partie du processus de démarrage (appelée Secure Boot par Windows, mais ne faisant pas partie du démarrage sécurisé UEFI) qui remplace certaines protections:

Terme Sécurisé En ce qui concerne l'architecture X86 est toujours relatif; Il doit être considéré comme des cotes d'accident de voiture - aucune voiture n'est primordiale, certaines prennent juste un peu plus de force pour le rendre fatal.

C'est à une certaine mesure inhérente à toute sécurité, mais avec d'autres conceptions, une courbe STSeeee S-Curve de "Open large" à "besoin d'un microscope électronique et d'un faisceau d'ions ciblé à craquer". Les efforts déployés pour sécuriser un système Windows x86 + s'apparentent de brancher chaque trou sur un tamis pour la rendre navigable - avec la condition que chaque bouchon doit s'ouvrir automatiquement lorsqu'une fonctionnalité héritée dépend de la fonction originale du tamis de la mise en place de l'eau.

4
ZOMVID-20

Je pense que la théorie est que chaque niveau signe qu'une instance du niveau suivant s'il implémente la signature vérifie correctement.

En d'autres termes, SystemD-boot est censé faire des vérifications de signature et ne chargez que des fichiers qui passent la validation.

De toute évidence, il peut y avoir des lacunes entre théorie et pratique ...

3
Douglas Leeder