Lockdown kaitse keelamise meetodid Ubuntu's EEFI Secure Boot'i kaugülesehitamiseks

Andrei Konovalov Google'ist avaldas kaugjuhtimise kaitse väljalülitamise meetod Lockdown, mis on saadaval koos Ubuntusse pakitud Linuxi kärgiga (teoreetiliselt võib kasutada ka Fedore ja muid distributsioonide mudeleid, kuid need pole testitud). peavad töötada Fedora tuumaga ja teiste jaotustega, kuid neid ei ole testitud).

Lockdown piirab root-kasutaja juurdepääsu kärjele ja blokeerib UEFI Secure Boot läbiviimisvõimalused. Näiteks Lockdown režiimis piiratakse juurdepääsu /dev/mem, /dev/kmem, /dev/port, /proc/kcore, debugfs, kprobes'i silumisrežiimile, mmiotrace'ile, tracefs'ile, BPF'ile, PCMCIA CIS (kaarditeabe struktuur), mõned ACPI liidesed ja CPU MSR registrid, blokeeritakse kexec_file ja kexec_load ülekutsed, on keelatud jõustumine unerežiimi, piiratakse DMA kasutamist PCI seadmetele, keelatakse ACPI koodi importimine EFI muutujatest, sisendi/väljundi portidega manipuleerimine, sealhulgas katkemise arvu ja sisendi/väljundi pordi muutmine järjestusporti.

Lockdown mehhanism lisati hiljuti Linuxi kärude põhikoosseisu. 5.4, kuid jaotistes tarnitavates südamikes on see siiski rakendatud patšitena või täiendatud patšidega. Üheks eristavaks näiteks jaotistes pakutavate lisade ja südametekstide rakenduse vahel on võimalus blokeeringut välja lülitada füüsilise juurdepääsu olemasolul süsteemile.

Ubuntu ja Fedora puhul on Lockdowni keelamiseks ette nähtud klahvikombinatsioon Alt+SysRq+X. Eeldatakse, et klahvikombinatsiooni Alt+SysRq+X saab kasutada ainult füüsilise juurdepääsu korral seadmele, ja juhul, kui toimub kaugplatvormi ründamine ja saavutatakse root-juurdepääs, ei saa ründaja Lockdowni välja lülitada ning näiteks laadida südamikku allkirjata digitaalsete allkirjade moodulit koos rootkit'iga.

Andrei Konovalov näitas, et klaviatuuri kasutamisega seotud meetodid kasutaja füüsilise kohaloleku kinnitamiseks on ebatõhusad. Lihtsaim viis Lockdowni keelamiseks oleks programmiline simuleerimine Alt+SysRq+X vajutamise kaudu /dev/uinput, kuid see variant on algselt blokeeritud. Samas suudeti tuvastada vähemalt kaks muud meetodit Alt+SysRq+X asendamiseks.

Esimene meetod on seotud „sysrq-trigger“ liidese kasutamisega — simuleerimiseks piisab selle liidese aktiveerimisest, kirjutades „1“ faili /proc/sys/kernel/sysrq ja seejärel „x“ faili /proc/sysrq-trigger. Antud konspiratsioon eemaldatud on seotud Ubuntu tuuma detsembrikuu värskendusega ja Fedora 31-ga. Märkimisväärne on see, et arendajad, nagu juhtum /dev/uinput, algselt püüdsid seda meetodit blokeerida, kuid blokeerimine ei töötanud vigade tõttu koodis.

Teine meetod on seotud klaviatuuri emuleerimisega läbi USB/IP ja järgneva Alt+SysRq+X järjestuse saatmisega virtuaalsest klaviatuurist. Ubuntu tuumas on USB/IP vaikimisi aktiveeritud (CONFIG_USBIP_VHCI_HCD=m ja CONFIG_USBIP_CORE=m) ning on saadaval vajalikud töötavate moodulite digitaalselt allkirjastatud versioonid usbip_core ja vhci_hcd. Ründaja võib luua loomine virtuaalne USB-seade, käivitades võrgufunktsionaalsuse loopback-liidese kaudu ja ühendades selle eemaloleva USB-seadmest USB/IP abil. Antud meetodist on teatatud Ubuntu arendajatele, kuid parandust pole veel välja antud.

Allikas: opennet.ru

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster