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

Prije nekoliko dana objavljena je vijest koja u Netfilteru je identificirana ranjivost (Linux podsustav jezgre koji se koristi za filtriranje i izmjenu mrežnih paketa), koji omogućuje lokalnom korisniku stjecanje root privilegija u sustavučak i dok je 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 bugom u upravljačkim programima IPT_SO_SET_REPLACE i IP6T_SO_SET_REPLACE, što uzrokuje preljev međuspremnika pri slanju posebno ukrašenih parametara putem poziva setockopt u načinu rada compat.

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 je na to da je, iako je nedostatak prisutan od Linuxa 2.6.19, ranjivost 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 dopuštenja za izvođenje napada također ih može dobiti neprivilegirani korisnik na sustavima s omogućenim korisničkim prostorom imena.

CVE-2021-22555 je petnaestogodišnja ranjivost iz stack-a u Linuxu Netfilter koja je dovoljno snažna da zaobiđe sva moderna ublažavanja sigurnosti i postigne izvršavanje koda jezgre.

Kao takvo, opisano je da lokalni korisnik može stvoriti spremnik s zasebnim korijenskim 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 se ranjivost može iskoristiti djelomičnim prepisivanjem datoteke 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 nastaje u funkciji xt_compat_target_from_user () zbog pogrešnog izračuna veličine memorije prilikom spremanja struktura jezgre nakon pretvorbe iz 32-bitne u 64-bitnu reprezentaciju.

Kao takvo se spominje da pogreška omogućuje upisivanje četiri "nula" bajta u bilo koji položaj izvan međuspremnika dodijeljeno, ograničeno pomakom 0x4C. Zbog toga se spominje da ispostavilo se da je ova značajka dovoljna za stvaranje exploita koji omogućuje 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 podataka o adresama i mijenja se u druge strukture manipuliranjem sistemskim pozivom msgsnd ().

Što se tiče izvješća o pogrešci, kao i svaka otkrivena ranjivost, to uključuje postupak i izvješće koje je izrađeno programerima jezgre u travnju, a nakon čega je ispravljeno za nekoliko dana i zakrpa koja je uključena u sve podržane distribucije, tako da informacije o programskoj pogrešci mogu se objaviti kasnije.

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

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

Konačno ako vas zanima više o tome, možete provjeriti detalje U sljedećem linku.


Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  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 obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.