Atrasta Linux kodola tty apakšsistēmā ievainojamība

Izlaiduši pētnieki no Google Project Zero komandas nesen, izmantojot emuāra ziņojumu jauna ievainojamību izmantošanas metode (CVE-2020-29661), ieviešot ioctl apdarinātāju TIOCSPGRP Linux kodola tty apakšsistēma, kā arī detalizēti aizsardzības mehānismi, kas varētu bloķēt šīs ievainojamības.

Ziņā ir minēts, ka problēmu izraisa kļūda bloķēšanas iestatījumos, kas noved pie sacensību nosacījuma /tty/tty_jobctrl.c kodā, kas tika izmantots, lai radītu apstākļus, lai piekļūtu atmiņai pēc palaišanas (use-after-free), ko izmantoja lietotāja vieta, manipulējot ar ioct- izsaucot TIOCSPGRP.

Papildus publicētajai informācijai arī tika veikta funkcionālas izmantošanas demonstrācija par privilēģiju eskalāciju Debian 10 ar kodolu 4.19.0-13-amd64 un kas arī neizslēdz, ka tas var ietekmēt dažādus izplatījumus, starp kuriem, protams, ir tie, kuru pamatā ir un ir atvasināti no Debian.

Daudzas no individuālajām izmantošanas metodēm un seku mazināšanas iespējām, kuras es šeit aprakstu, nav jaunas. Tomēr es domāju, ka ir vērts tos sarakstīt kopā, lai parādītu, kā dažādi mazināšanas pasākumi mijiedarbojas ar diezgan normālu pēcbrīvu izmantošanu.

Koda fragmenti šajā emuāra ziņojumā, kas attiecas uz ekspluatāciju, ir ņemti no iepriekšējās versijas 4.19.160, jo uz to ir balstīts mērķa Debian kodols; daži citi koda fragmenti ir no Linux galvenās līnijas.

Tajā pašā laikā publicētajā rakstā uzsvars tiek likts ne tik daudz uz funkcionālas izmantošanas veidošanas tehniku, bet gan uz kādiem rīkiem tur kodolā lai pasargātu sevi pret šādām ievainojamībām.

Secinājums ir neapmierinošs, kā minēts, ka tādas metodes kā atmiņas segmentēšana kaudzē un piekļuves kontrole atmiņai pēc tās atbrīvošanas praksē netiek pielietotas, jo tās noved pie veiktspējas pasliktināšanās un aizsardzības, pamatojoties uz CFI (Control Flow Integrity), kas bloķē ekspluatāciju vēlākos. uzbrukuma stadijās, nepieciešami uzlabojumi.

Īpašs termināļa ierīču veids ir pseidotermināļi, kurus izmanto, piemēram, atverot termināļa lietojumprogrammu grafiskā vidē vai izveidojot savienojumu ar attālo mašīnu, izmantojot SSH. Kamēr citas termināļa ierīces ir savienotas ar kāda veida aparatūru, abus pseidotermināļa galus kontrolē lietotāja telpa, un pseidotermināļus var brīvi izveidot ar lietotāja telpu (bez privilēģijām).

Ikreiz, kad tiek atvērts / dev / ptmx (saīsinājums no "pseidotermināla multipleksora"), iegūtais faila deskriptors apzīmē ierīces ierīces pusi (dokumentācijā un kodola avotos kā "galvenais pseidoterminālis"). new pseidotermināls - terminālis.

 Atbilstošo termināļa ierīci (ar kuru parasti savieno apvalks) kodols automātiski izveido mapē / dev / pts / .

Aplūkojot to, kas varētu radīt pārmaiņas ilgtermiņā, uzsvars tiek likts uz uzlabotu statisko analizatoru izmantošanu vai tādu valodu izmantošanu, kas ir drošas atmiņai, piemēram, Rust un C dialekti ar paplašinātām anotācijām (piemēram, pārbaudīts C), lai izveidotu statusa, slēdzenes, objekti un norādes. Aizsardzības metodēs ir minēts arī panic_on_oops režīma iespējošana, kodola struktūru padarīšana tikai lasāma un piekļuves ierobežošana sistēmas izsaukumiem, izmantojot tādus mehānismus kā seccomp.

Kļūda, kas izraisa problēmu tas tika labots Linux kodolā pagājušā gada 3. decembrī. Problēma izpaužas kodolos pirms versijas 5.9.13, taču lielākā daļa izplatījumu ir novērsuši problēmu kodola pakotnes atjauninājumos, kas tika piedāvāti pagājušajā gadā.

Pieminēta arī līdzīga ievainojamība (CVE-2020-29660), kas tika konstatēta vienlaikus TIOCGSID ioctl izsaukuma ieviešanā, taču arī visur tika noņemta.

Beidzot Ja jūs interesē uzzināt vairāk par to, jūs varat pārbaudīt informāciju Šajā saitē.


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: AB Internet Networks 2008 SL
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.