Andreï Konovalov de Google
Le verrouillage restreint l'accès de l'utilisateur root au noyau et bloque les chemins de contournement du démarrage sécurisé UEFI. Par exemple, en mode verrouillage, accès à /dev/mem, /dev/kmem, /dev/port, /proc/kcore, debugfs, mode de débogage kprobes, mmiotrace, tracefs, BPF, PCMCIA CIS (Card Information Structure), certains les interfaces sont limitées. Les registres ACPI et MSR du CPU, les appels à kexec_file et kexec_load sont bloqués, le mode veille est interdit, l'utilisation du DMA pour les périphériques PCI est limitée, l'importation de code ACPI à partir de variables EFI est interdite, les manipulations avec les ports d'E/S ne le sont pas. autorisé, y compris la modification du numéro d'interruption et du port d'E/S pour le port série.
Le mécanisme de verrouillage a été récemment ajouté au noyau Linux principal
Dans Ubuntu et Fedora, la combinaison de touches Alt+SysRq+X est fournie pour désactiver le verrouillage. Il est entendu que la combinaison Alt+SysRq+X ne peut être utilisée qu'avec un accès physique à l'appareil, et en cas de piratage à distance et d'obtention d'un accès root, l'attaquant ne pourra pas désactiver le verrouillage et, par exemple, charger un fichier. module avec un rootkit qui n'est pas connecté numériquement au noyau.
Andrey Konovalov a montré que les méthodes basées sur le clavier pour confirmer la présence physique de l'utilisateur sont inefficaces. Le moyen le plus simple de désactiver le verrouillage serait de programmer par programme
La première méthode consiste à utiliser l'interface « sysrq-trigger » - pour la simuler, activez simplement cette interface en écrivant « 1 » dans /proc/sys/kernel/sysrq, puis écrivez « x » dans /proc/sysrq-trigger. Cette faille
La deuxième méthode implique l'émulation du clavier via
Source: opennet.ru