Andrey Konovalov from Google metode til fjernafbrydelse af beskyttelse , der tilbydes i pakken med Linux-kernen, leveret i Ubuntu (teoretisk foreslåede metoder kan arbejde med kernen i Fedora og andre distributioner, men de er ikke testet).
Lockdown begrænser root-brugerens adgang til kernen og blokerer omgåelsesveje for UEFI Secure Boot. For eksempel begrænser lockdown-tilstanden adgangen til /dev/mem, /dev/kmem, /dev/port, /proc/kcore, debugfs, kprobes debugtilstand, mmiotrace, tracefs, BPF, PCMCIA CIS (Card Information Structure), nogle ACPI-interface og CPU MSR-registre, blokerer kaldene til kexec_file og kexec_load, forbyder overgang til dvaletilstand, begrænser brugen af DMA til PCI-enheder, forbyder import af ACPI-kode fra EFI-variabler, tillader ikke manipulation af input/output-porte, herunder ændring af afbrydernummer og input/output-port for den serielle port.
Lockdown-mekanismen er for nylig blevet tilføjet til hovedkomponenten i Linux-kernen , men i de distributioner, der leveres med kerner, er den stadig implementeret i form af patches eller suppleret med patches. Et af de særpræg, der tilbydes i distributionens tilføjelser i forhold til den indbyggede kernenimplementering, er muligheden for at deaktivere den givne blokering ved fysisk adgang til systemet.
I Ubuntu og Fedora er der en tastaturkombination for at deaktivere Lockdown, nemlig Alt+SysRq+X. Det antages, at kombinationen Alt+SysRq+X kun kan bruges med fysisk adgang til enheden, og i tilfælde af fjernangreb og opnåelse af root-adgang vil angriberen ikke kunne deaktivere Lockdown og for eksempel indlæse et modul med rootkit uden godkendt digital signatur.
Andrey Konovalov har vist, at de metoder, der relaterer sig til brug af tastaturet til at bekræfte brugerens fysiske tilstedeværelse, er ineffektive. Den enkleste måde at deaktivere Lockdown på ville være en softwaremæssig af tryk på Alt+SysRq+X gennem /dev/uinput, men denne mulighed er oprindeligt blokeret. Samtidig er det muligt at identificere mindst to andre måder at indsætte Alt+SysRq+X.
Den første metode er relateret til brugen af grænsefladen "sysrq-trigger" — for at simulere er det tilstrækkeligt at aktivere denne grænseflade ved at skrive "1" i /proc/sys/kernel/sysrq og derefter skrive "x" i /proc/sysrq-trigger. Den angivne bagdør blev opdaget i decemberopdateringen af Ubuntu-kernen og i Fedora 31. Bemærkelsesværdigt er, at udviklerne, som i tilfælde af /dev/uinput, oprindeligt blokere denne metode, men blokeringen fungerede ikke på grund af i koden.
Den anden metode er relateret til simulering af tastatur via og efterfølgende sending af sekvensen Alt+SysRq+X med det virtuelle tastatur. I den medfølgende Ubuntu-kerne er USB/IP som standard aktiveret (CONFIG_USBIP_VHCI_HCD=m og CONFIG_USBIP_CORE=m) og de nødvendige signeret moduler usbip_core og vhci_hcd er tilgængelige for brug. Angriberen kan et virtuelt USB-enhed, netværksbehandleren på loopback-interfacet og forbinde den som en fjern USB-enhed ved hjælp af USB/IP. Om den nævnte metode til udviklerne af Ubuntu, men en rettelse er endnu ikke blevet udgivet.
Kilde: opennet.ru
