BatBadBut ranjivost CVE-2024-24576

U konstantnom razvoju opasnosti u sajber prostoru, otkrivena je kritična ranjivost  udaljenog izvršavanja kôda Rust standardne biblioteke, nazvana BatBadBut i označena kao CVE-2024-24576 sa CVSS ocjenom 10.0. Sa otkrićem BatBadBut ranjivosti, od suštinskog je značaja da organizacije budu svjesne ove nove prijetnje i preduzmu odgovarajuće mjere da obezbijede svoje sisteme od potencijalnih napada na Windows operativne sisteme.

BatBadBut

BatBadBut ranjivost CVE-2024-24576; Source: Bing Image Creator

RUST STANDARDNA BIBLIOTEKA

Rust standardna biblioteka (std) je kolekcija kôda za višekratnu upotrebu koji pruža osnovne apstrakcije za pisanje prenosivog softvera u Rust programskom jeziku. Uključuje dijeljene tipove, operacije, makroe, ulazno/izlazne funkcije, podršku za više niti, kontejnere, kolekcije i još mnogo toga. Standardna biblioteka takođe sadrži primitivne tipove kao što su nizovi i dijelovi, kao i složene strukture podataka kao što su vektori, heš mape, povezane liste i stabla.

Rust standardna biblioteka je dizajnirana da bude brza, bezbjedna i produktivna za programere. Pruža bogat skup funkcija koje pomažu u pojednostavljenju uobičajenih programskih zadataka, a istovremeno osiguravaju sigurnost memorije kroz pravila vlasništva i pozajmljivanja. Modularni dizajn biblioteke omogućava programerima da izaberu samo dijelove koji su im potrebni za projekte, što ga čini suštinskom komponentom razvoja softvera Rust.

 

BATBADBUT RANJIVOST

BatBadBut ranjivost je kritična ranjivost u daljinskom izvršavanju kôda (eng. remote code execution – RCE) koja utiče na Rust standardnu biblioteku. Važno je napomenuti da ova ranjivost ne utiče na sve verzije ili Rust implementacije, već samo na one na Windows platformama.

BatBadBut omogućava napadaču da izvrši ubacivanje komande u Windows aplikacije koje indirektno zavise od funkcije CreateProcess kada su ispunjeni specifični uslovi. Funkcija CreateProcess() u Windows operativnom sistemu implicitno pokreće cmd.exe (Command Prompt) kada se izvršavaju batch datoteke, čak i ako nisu eksplicitno pomenute u komandnoj liniji.

Problem nastaje zbog komplikovanih pravila raščlanjivanja komandnih argumenata u cmd.exe izvršnoj datoteci i neuspjeha vremena izvođenja programskog jezika da pravilno pobjegne od ovih argumenata. Ovo stvara priliku za napadače da ubace komande u komandne argumente batch datoteke ako mogu da ih kontrolišu. Ova ranjivost može dovesti do ozbiljnih posljedica, jer uspješna eksploatacija može omogućiti napadačima da izvrše proizvoljan kôd na ciljanim Windows sistemima.

 

“Standardna biblioteka Rust nije pravilno izbjegla argumente prilikom pozivanja batch fajlova (sa ekstenzijama bat i cmd) na Windows koristeći Command API. Napadač koji je u stanju da kontroliše argumente proslijeđne pokrenutom procesu mogao bi da izvrši proizvoljne komande zaobilazeći izlaz.”

 Rust Security Response WG

 

Naziv BatBadBut za ovu ranjivost potiče od činjenice da se oslanja na ponašanje batch datoteka i cmd.exe izvršne datoteke, koji se obično koriste u Windows okruženjima, ali se često zanemaruju prilikom obezbjeđivanja aplikacija. To ih čini privlačnom metom za napadače koji žele da iskoriste takve ranjivosti.

 

ZAKLJUČAK

BatBadBut ranjivost u Rust standardnoj biblioteci predstavlja značajnu prijetnju, jer je to kritična greška u daljinskom izvršavanju kôda koja se može iskoristiti na Windows uređajima. Uz CVSS ocjenu 10 i dokaz koncepta koji je javno dostupan, postoji povećan rizik da se ova ranjivost koristi u napadima u stvarnom svetu. Pogođena komponenta Rust standardne biblioteke podržava razvoj prenosivog softvera obezbeđujući zajedničke apstrakcije kao što su tipovi jezgra, ulazi/izlazi, podršku za više niti, kontejneri, kolekcije i složenije strukture podataka. Treba spomenuti da ova ranjivost nije jedinstvena za Rust ili njegovu standardnu biblioteku, jer su se i drugi programski jezici i biblioteke suočavali sa sličnim problemima u prošlosti.

Ova ranjivost samo naglašava potrebu da organizacije i pojedinci ulažu u robusne bezbjednosne mjere kao što su sistemi za otkrivanje upada, rješenja za zaštitu krajnjih tačaka i platforme za obavještavanje o prijetnjama kako bi ostali informisani o novim prijetnjama kao što je BatBadBut i efikasno se zaštitili od njih.

 

ZAŠTITA

Da bi se zaštitile od BatBadBut ranjivosti, organizacije treba da ažuriraju svoje Rust biblioteke što je pre moguće i da primjene robusne mjere bezbjednosti. Evo nekih konkretnih koraka koji se mogu preduzeti:

  1. Organizacije koje koriste Rust u svojim aplikacijama ili infrastrukturi treba da osiguraju da imaju instalirane najnovije verzije svih Rust biblioteka. Ažuriranje na najnoviju verziju će pomoći u zaštiti od poznatih ranjivosti, uključujući BatBadBut,
  2. Pored ažuriranja softvera i primjene ispravki, organizacije takođe treba da primljene robusne bezbjednosne mjere za zaštitu od potencijalnih napada. Ovo može uključivati korišćenje zaštitnih zidova, sistema za otkrivanje upada (eng. intrusion detection systems – IDS), antivirusnog softvera i drugih bezbjednosnih alata. Važno je osigurati da su sva bezbjednosna rješenja ažurna i ispravno konfigurisana kako bi se obezbijedila efikasna zaštita,
  3. Edukacija korisnika o rizicima klikanja na sumnjive veze ili preuzimanja neprovjerenih datoteka takođe je suštinski dio zaštite od ranjivosti kao što je BatBadBut. Podsticanje dobrih praksi sajber bezbjednosti, kao što je korišćenje jakih lozinki, omogućavanje autentifikaciju u dva koraka i izbjegavanje phishing poruka elektronske pošte može pomoći u sprečavanju napada pre nego što dostignu sistemski nivo,
  4. Redovno nadgledanje sistema u potrazi za sumnjivim aktivnostima je ključno za brzo otkrivanje potencijalnih prijetnji i reagovanje na njih. Implementacija rješenja za upravljanje bezbjednosnim informacijama i događajima (eng. security information and event management – SIEM) ili korišćenje drugih alata koji obezbjeđuju obavještajne podatke o prijetnjama u realnom vremenu može pomoći organizacijama da ostanu informisane o novim ranjivostima i napadima i preduzmu odgovarajuće mjere po potrebi.

Možda vas interesuje i...

Komentariši

Vaša email adresa neće biti objavljivana. Neophodna polja su označena sa *


The reCAPTCHA verification period has expired. Please reload the page.