Objavljeni istraživači Cisco Talosa Prije nekoliko dana ranjivost u Linux jezgri koja se može iskoristiti za krađu podataka a takođe služe kao sredstvo za eskalaciju privilegija i kompromitiranje sistema.
Ranjivost opisano kao 'ranjivost otkrivanja informacija što bi napadaču moglo omogućiti da vidi memoriju stoga jezgre. '
CVE-2020-28588 je ranjivost koja otkriven u ARM uređajima proc / pid / syscall funkcionalnost 32-bitni uređaji koji pokreću operativni sistem. Prema Cisco Talosu, problem je prvi put otkriven na uređaju koji pokreće Azure Sphere.
Ranjivost otkrivanja informacija postoji u / proc / pid / syscall funkcionalnosti Linux Kernel 5.1 Stable i 5.4.66. Preciznije, ovo je pitanje uvedeno u v5.1-rc4 (komitira 631b7abacd02b88f4b0795c08b54ad4fc3e7c7c0) i još uvijek je prisutno u v5.10-rc4, tako da će vjerojatno biti pogođene sve među verzije. Napadač može čitati / proc / pid / syscall da aktivira ovu ranjivost, uzrokujući da kernel izgubi sadržaj memorije.
Proc je poseban pseudo-datotečni sistem na operativnim sistemima sličnim Unixu koristi se za dinamički pristup procesnim podacima pronađeno u jezgri. Predstavlja informacije o procesu i druge sistemske informacije u hijerarhijskoj strukturi nalik datotekama.
Na primjer, sadrži poddirektorijume / proc / [pid], od kojih svaki sadrži datoteke i poddirektorijume koji izlažu informacije o određenim procesima, čitljive pomoću odgovarajućeg ID-a procesa. U slučaju datoteke "syscall", to je legitimna datoteka operativnog sistema Linux koja sadrži zapise sistemskih poziva koje koristi jezgra.
Za kompaniju, lHakeri bi mogli iskoristiti tu manu i pristupiti operativnom sistemu i datoteci syscall kroz sistem koji se koristi za interakciju između struktura podataka jezgre, Proc. Unos syscall procfs mogao bi se iskoristiti ako hakeri izdaju naredbe za generiranje 24 bajta neinicijalizirane hrpe memorije, što dovodi do zaobilaženja slučajnog rasporeda rasporeda adresa jezgre (KASLR).
Gledajući ovu specifičnu funkciju, sve izgleda u redu, ali vrijedi napomenuti da
args
proslijeđeni parametar dolazi izproc_pid_syscall
funkcija i kao takva je zapravo tipa__u64 args
. U ARM sustavu, definicija funkcije pretvara veličinuarg
niz u četverobajtnim elementima od osam bajtova (odunsigned long
u ARM-u je 4 bajta), što rezultira time damemcpy
se kopira u 20 bajtova (plus 4 forargs[0]
).Slično tome, za i386, gdje
unsigned long
to je samo 4 bajtaargs
napisana su prva 24 bajta argumenta, a preostala 24 bajta ostaju netaknuta.U oba slučaja, ako se osvrnemo na
proc_pid_syscall
funkcija.Dok u 32-bitni ARM i i386 kopiramo samo 24 bajta u
args
polja, niz formata završava s čitanjem 48 bajtovaargs
matrica, od%llx
Niz formata je osam bajtova na 32-bitnim i 64-bitnim sistemima. Dakle, 24 bajta neinicijalizirane hrpe memorije na kraju dobivaju izlaz, što bi moglo dovesti do zaobilaženja KASLR-a.
Istraživači to tvrde ovaj napad je "nemoguće otkriti daljinski na mreži" jer čita iz legitimne datoteke operativnog sistema Linux. "Ako se pravilno koristi, haker bi mogao iskoristiti curenje ovih informacija za uspješno iskorištavanje drugih neprimjenjenih Linux ranjivosti," kaže Cisco.
S tim u vezi, Google je nedavno rekao:
„Propusti u sigurnosti memorije često ugrožavaju sigurnost uređaja, posebno aplikacija i operativnih sistema. Na primjer, u mobilnom operativnom sistemu Android koji takođe podržava jezgro Linux, Google kaže da je otkrio da je više od polovine sigurnosnih ranjivosti riješenih u 2019. godini rezultat sigurnosnih grešaka u memoriji.
Zadnji ali ne i posljednji Preporučuje se ažuriranje verzija 5.10-rc4, 5.4.66, 5.9.8 Linux kernela, od Ova ranjivost je testirana i potvrđeno je da može iskoristiti sljedeće verzije Linux kernela.
Konačno ako ste zainteresirani da saznate više o tome O postu možete provjeriti detalje u sljedeći link.