Andrey Konovalov, va compartir un mètode de desactivació d'lockdown

Andrey Konovalov enginyer de programari de Google, va donar a conèixer un mètode per desactivar de forma remota la protecció de tancament oferta en el nucli de Linux subministrat en Ubuntu. Amb la qual cosa demostra que els mètodes de protecció són ineficaços, A més de que també esmenta que els mètodes que va donar a conèixer teòricament haurien de funcionar també amb el nucli de Fedora i altres distribucions, (però no han estat provats).

Per als qui desconeixen de Lockdown, han de saber que és un component de el nucli de Linux que té com a principal funció limitar l'accés de l'usuari root en el nucli de sistema i aquesta funcionalitat s'ha mogut a l'mòdul LSM carregat opcionalment (Linux Security Module), que estableix una barrera entre l'UID 0 i el nucli, Limitant certes funcions de baix nivell.

Això permet que la funció de bloqueig estigui basada en polítiques en lloc de codificar una política implícita dins de l'mecanisme, amb el que el bloqueig inclòs en Linux Security Module proporciona una implementació amb una simple política destinada a ús general. Aquesta política proporciona un nivell de granularitat controlable a través de la línia d'ordres de l'nucli.

sobre lockdown

El bloqueig restringeix l'accés de root a el nucli i bloqueja les rutes de derivació d'arrencada segur UEFI.

Per exemple, en mode de bloqueig, l'accés a / dev / mem, / dev / kmem, / dev / port, / proc / kcore, debugfs, la manera de depuració kprobes, mmiotrace, tracefs, BPF, PCMCIA CIS, entre d'altres , algunes interfícies són limitades així com els registres ACPI i MSR de la CPU.

Mentre que les trucades kexec_file i kexec_load estan bloquejades la manera de suspensió està prohibit, l'ús de DMA per a dispositius PCI és limitat, la importació de codi ACPI des variables EFI està prohibida i tampoc es permeten manipulacions amb ports d'entrada / sortida, inclòs el canvi de el nombre d'interrupció i un port d'i / O per al port sèrie.

Com sabran alguns, el mecanisme de lockdown es va afegir en el nucli de Linux 5.4, però encara s'implementa en forma de pegats o es complementa amb pegats en els nuclis subministrats amb les distribucions.

Aqui, una de les diferències entre els complements proporcionats en les distribucions i la implementació de l'nucli incorporat és la capacitat de desactivar el bloqueig proporcionat quan hi ha accés físic a el sistema.

Ubuntu i Fedora usen la combinació de tecles Alt + SysRq + X per desactivar el bloqueig. S'entén que la combinació Alt + SysRq + X només es pot fer servir amb accés físic a el dispositiu i en cas d'un atac remot i accés a root, l'atacant no podrà desactivar el bloqueig.

Lockdown pot ser deshabilitat de forma remota

Andrei Konovalov va demostrar que els mètodes relacionats amb el teclat per confirmar la presència física d'un usuari són ineficaços.

Ell va donar a conèixer que la forma més fàcil de desactivar el bloqueig seria simular pressionar Alt + SysRq + X a través de / Dev / uinput, Però aquesta opció està inicialment bloquejada.

Però, s'han revelat a el menys dues formes més de substituir Alt + SysRq + X.

  • El primer mètode implica fer servir la interfície SysRq-trigger: Per simular, només habiliti aquesta interfície escrivint «1» en / Proc / sys / kernel / SysRq i després escrivint «x» en / Proc / SysRq-trigger.
    Aquest buit es va corregir en l'actualització de desembre de l'nucli d'Ubuntu i en Fedora 31. És de destacar que els desenvolupadors, com en el cas de / Dev / uinput, Inicialment van intentar bloquejar aquest mètode, però el bloqueig no va funcionar a causa d'un error en el codi.
  • El segon mètode consisteix a emular el teclat a través d'USB / IP i després enviar la seqüència Alt + SysRq + X des del teclat virtual.
    En el nucli, USB / IP subministrat per Ubuntu, està activat per defecte i els mòduls usbip_core y vhci_hcd necessaris s'inclouen amb la signatura digital necessària.
    Un atacant pot crear un dispositiu USB virtual executant un controlador de xarxa en la interfície de bucle invertit i connectant-com un dispositiu USB remot mitjançant USB / IP.

El mètode especificat s'ha informat als desenvolupadors d'Ubuntu, però encara no s'ha publicat una solució.

font: https://github.com


Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.