Andrey Konovalov, nagbahagi ng isang paraan ng hindi pagpapagana ng lockdown

Andrey konovalov Google software engineer, inilahad ang isang pamamaraan upang malayo hindi paganahin ang proteksyon mula sa Lockdown inaalok sa Linux kernel na ibinigay sa Ubuntu. Kung saan ipinapakita na ang mga pamamaraan ng proteksyon ay hindi epektibo, plus binanggit din niya na ang mga pamamaraan na isiwalat niya sa teoretikal ay dapat na gumana kasama ang kernel ng Fedora at iba pang mga pamamahagi din, (ngunit hindi pa nasubukan).

Para sa mga walang kamalayan sa Lockdown, dapat nilang malaman na ito ay isang bahagi ng Linux kernel na Ang pangunahing pagpapaandar nito ay upang limitahan ang pag-access ng root user sa system kernel at ang pagpapaandar na ito ay inilipat sa module ng LSM opsyonal na na-load (Linux Security Module), kung saan nagtataguyod ng isang hadlang sa pagitan ng UID 0 at ng kernel, nililimitahan ang ilang mga pagpapaandar na mababang antas.

Pinapayagan nitong ang locking function ay maging batay sa patakaran sa halip na hard-coding isang implicit na patakaran sa loob ng mekanismo, kaya ang lock na kasama sa Linux Security Module ay nagbibigay ng isang pagpapatupad na may isang simpleng patakaran inilaan para sa pangkalahatang paggamit. Ang patakarang ito ay nagbibigay ng isang antas ng granularity na maaaring makontrol sa pamamagitan ng linya ng utos ng kernel.

Tungkol sa lockdown

Pinipigilan ng lock ang pag-access sa ugat sa kernel at hinaharangan ang mga ligtas na boot bypass ng UEFI.

Halimbawa, sa lock mode, pag-access sa / dev / mem, / dev / kmem, / dev / port, / proc / kcore, debugfs, debug mode kprobes, mmiotrace, tracefs, BPF, PCMCIA CIS, bukod sa iba pa, ang ilang mga interface ay limitado pati na rin ang mga rehistro ng ACPI at MSR ng CPU.

Habang naka-lock ang mga kexec_file at kexec_load na tawag, ipinagbabawal ang mode ng pagtulog, ang paggamit ng DMA para sa mga aparatong PCI ay limitado, ang pag-import ng ACPI code mula sa mga variable ng EFI ay ipinagbabawal, at ang mga manipulasyon na may mga input / output port, kasama ang pagbabago ng makagambala na numero at isang I / O port para sa serial port.

Tulad ng maaaring malaman ng ilan, ang mekanismo ng idinagdag ang lockdown sa Linux kernel 5.4, ngunit ipinapatupad pa rin ito sa anyo ng mga patch o suplemento ng mga patch sa mga core na ibinibigay sa mga pamamahagi.

Dito, ang isa sa mga pagkakaiba sa pagitan ng mga plugin na ibinigay sa mga pamamahagi at ang naka-embed na pagpapatupad ng kernel ay ang kakayahang huwag paganahin ang lock na ibinigay kapag may pisikal na pag-access sa system.

Ang Ubuntu at Fedora ay gumagamit ng pangunahing kumbinasyon Alt + SysRq + X upang huwag paganahin ang lock. Nauunawaan na ang pagsasama Alt + SysRq + X maaari lamang itong magamit sa pisikal na pag-access sa aparato at sa kaganapan ng isang remote na pag-atake at pag-access sa ugat, hindi maa-disable ng umaatake ang lock.

Ang Lockdown ay maaaring hindi paganahin nang malayuan

Pinatunayan iyon ni Andrei Konovalov mga pamamaraan na nauugnay sa keyboard para sa Ang pagkumpirma ng pisikal na pagkakaroon ng isang gumagamit ay hindi epektibo.

Siya isiniwalat na ang pinakamadaling paraan upang hindi paganahin ang lock ay ang gayahin pindutin Alt + SysRq + X sa pamamagitan ng / dev / uinput, ngunit ang opsyong ito ay paunang na-block.

Pero hindi bababa sa dalawa pang paraan upang mapalitan Alt + SysRq + X.

  • Ang unang pamamaraan ay nagsasangkot ng paggamit ng interface sysrq-gatilyo: upang gayahin, paganahin lamang ang interface na ito sa pamamagitan ng pag-type ng "1" sa / proc / sys / kernel / sysrq at pagkatapos ay nai-type ang "x" sa / proc / sysrq-gatilyo.
    Ang puwang na ito ay naayos sa pag-update ng kernel ng Disyembre Ubuntu at sa Fedora 31. Kapansin-pansin na ang mga developer, tulad ng sa kaso ng / dev / uinput, una nilang sinubukan na harangan ang pamamaraang ito, ngunit hindi gumana ang pag-block dahil sa isang bug sa code.
  • Ang pangalawang pamamaraan ay gayahin ang keyboard sa pamamagitan ng USB / IP at pagkatapos ay ipadala ang pagkakasunud-sunod ng Alt + SysRq + X mula sa virtual keyboard.
    Sa kernel, ang USB / IP na ibinigay ng Ubuntu ay pinapagana ng default at ng mga module usbip_core y vhci_hcd ang kinakailangan ay ibinibigay ng kinakailangang digital signature.
    Ang isang mang-atake ay maaaring lumikha ng isang virtual na aparato ng USB sa pamamagitan ng pagpapatakbo ng isang network controller sa loopback interface at pagkonekta ito bilang isang remote USB aparato gamit ang USB / IP.

Ang tinukoy na pamamaraan ay naiulat sa mga developer ng Ubuntu, ngunit ang isang solusyon ay hindi pa inilabas.

Fuente: https://github.com


Iwanan ang iyong puna

Ang iyong email address ay hindi nai-publish. Mga kinakailangang patlang ay minarkahan ng *

*

*

  1. Responsable para sa data: Miguel Ángel Gatón
  2. Layunin ng data: Kontrolin ang SPAM, pamamahala ng komento.
  3. Legitimation: Ang iyong pahintulot
  4. Komunikasyon ng data: Ang data ay hindi maiparating sa mga third party maliban sa ligal na obligasyon.
  5. Imbakan ng data: Ang database na naka-host ng Occentus Networks (EU)
  6. Mga Karapatan: Sa anumang oras maaari mong limitahan, mabawi at tanggalin ang iyong impormasyon.