Ranjivost od prije više od 15 godina u Netfilteru omogućila je eskalaciju privilegija

Prije nekoliko dana objavljena je vijest o tome ranjivost je identificirana u Netfilteru (Linux podsistem jezgre koji se koristi za filtriranje i izmjenu mrežnih paketa), koji omogućava lokalnom korisniku da stekne root privilegije u sistemučak i dok ste u izoliranoj posudi.

Ranjivost CVE-2021-22555 to je problem koji postoji od kernela 2.6.19, pokrenut prije 15 godina i danas je uzrokovana greškom u upravljačkim programima IPT_SO_SET_REPLACE i IP6T_SO_SET_REPLACE, što uzrokuje prelivanje međuspremnika prilikom slanja posebno ukrašenih parametara putem poziva setockopt u compat modu.

Možda će se mnogi u ovom trenutku zapitati kako je moguće da je nedostatak u Linux kernelu mogao toliko dugo ostati neprimijećen, a odgovor na to je da, iako je nedostatak prisutan od Linuxa 2.6.19, ranjivost je pronađena putem koda reviziju, iako C kod nije bio ponovljiv, pa ga nije bilo moguće iskoristiti jer u to vrijeme nisu pronađeni potrebni resursi za eskalaciju privilegija.

Na primjer, podrška za neprivilegirane korisničke prostore imena je u kernelu 3.8. Također, neke distribucije imaju zakrpu koja dodaje sysctl za onemogućavanje neprivilegiranih korisničkih prostora imena.

U normalnim okolnostima, samo root korisnik može nazvati compat_setsockopt (), ali potrebna odobrenja za izvođenje napada također ih može dobiti neprivilegirani korisnik na sistemima s omogućenim korisničkim prostorom imena.

CVE-2021-22555 je petnaestogodišnja ranjivost na stek izvan steka u Linux Netfilteru koja je dovoljno snažna da zaobiđe sva moderna ublažavanja sigurnosti i postigne izvršavanje koda jezgre.

Kao takvo je to opisano lokalni korisnik može stvoriti spremnik s odvojenim root korisnikom i odatle iskoristiti ranjivostí. Na primjer, "korisnički prostori imena" po defaultu su uključeni u Ubuntu i Fedoru, ali ne i u Debian i RHEL.

Ova ranjivost se može iskoristiti djelomičnim prepisivanjem m_list->nextpokazivač msg_msgstrukturu i postizanje slobodnog nakon upotrebe. Ovo je dovoljno snažno da vaš kôd jezgre radi zaobilazeći KASLR, SMAP i SMEP.

Također, problem se javlja u funkciji xt_compat_target_from_user () zbog neispravnog izračuna veličine memorije prilikom spremanja struktura jezgre nakon konverzije iz 32-bitne u 64-bitnu reprezentaciju.

Kao takvo se spominje da greška omogućava upisivanje četiri "nula" bajta u bilo koju poziciju izvan međuspremnika dodijeljeno, ograničeno pomakom 0x4C. Zbog ovoga se to spominje ispostavilo se da je ova karakteristika dovoljna za stvaranje exploita koji omogućava dobivanje root prava: brisanjem pokazivača m_list-> next u strukturi msg_msg stvoreni su uvjeti za pristup podacima nakon oslobađanja memorije (use-after-free), koja je zatim korištena za dobivanje informacija o adresama i mijenja se u druge strukture manipuliranjem sistemskim pozivom msgsnd ().

Što se tiče izvještaja o pogrešci, kao i svaka otkrivena ranjivost, ovo uključuje proces i izvještaj koji je napravljen programerima jezgra u travnju, a koji je nakon toga ispravljen za nekoliko dana i zakrpa koja je uključena u sve podržane distribucije, tako da informacije o grešci mogu se objaviti kasnije.

Projekti Debian, Arch Linux i Fedora već su generirali ažuriranja paketa. Počevši od Ubuntu-a, ažuriraju se RHEL i SUSE. Budući da je greška ozbiljna, iskoristiva u praksi i omogućava bijeg iz kontejnera, Google je svoje otkriće procijenio na 10,000 američkih dolara i udvostručio nagradu istraživaču koji je identificirao ranjivost i za identificiranje metode za izbjegavanje izoliranja Kubernetesovih spremnika na kCTF klasteru.

Za testiranje je pripremljen radni prototip eksploatacije koji zaobilazi mehanizme zaštite KASLR, SMAP i SMEP.

Konačno ako ste zainteresirani da saznate više o tome, možete provjeriti detalje Na sledećem linku.


Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Odgovoran za podatke: AB Internet Networks 2008 SL
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.