03/28/2024

Cum se scanează și se remediază vulnerabilitatea Log4j?

Vulnerabilitatea Log4j este printre cele mai mortale probleme de securitate din sistemele moderne.

Înregistrarea este o caracteristică cheie în aplicațiile moderne, iar biblioteca de înregistrare, Log4j, este lider în acest spațiu.

Această bibliotecă este utilizată în majoritatea aplicațiilor, serviciilor și sistemelor. Prin urmare, toate acele aplicații în care este utilizat Log4j sunt toate afectate de această vulnerabilitate Log4j găsită anul trecut.

Odată cu creșterea preocupărilor legate de securitatea cibernetică la nivel mondial, organizațiile și indivizii iau măsuri pentru a-și proteja aplicațiile, sistemele și datele.

Și când această vulnerabilitate a fost descoperită, a stresat și mai mult profesioniștii și companiile.

Prin urmare, detectarea vulnerabilității Log4j și remedierea acesteia este esențială dacă doriți să vă protejați datele, rețeaua, reputația și încrederea clienților.

În acest articol, voi discuta despre ce este vulnerabilitatea Log4j, împreună cu pașii pentru a o detecta și remedia.

Să începem prin a înțelege Log4j și de ce aveți nevoie de el.

Ce este Log4j?

Log4j este un utilitar de înregistrare open-source scris în Java, care este utilizat în principal pentru a stoca, formata și publica înregistrările de jurnalizare generate de aplicații și sisteme și apoi pentru a verifica erorile. Înregistrările pot fi de diferite tipuri, de la o pagină web și date de browser până la detalii tehnice ale unui sistem în care rulează Log4j.

În loc să scrie cod de la zero, dezvoltatorii pot folosi biblioteca Log4j integrând codul acesteia în aplicațiile lor.

Folosind Log4j, dezvoltatorii pot urmări toate evenimentele asociate cu aplicațiile lor cu informații precise de înregistrare. Îi ajută să monitorizeze aplicațiile, să identifice problemele la timp și să remedieze problemele înainte ca acestea să se transforme într-o problemă mai mare în ceea ce privește performanța și/sau securitatea.

Această bibliotecă bazată pe Java a fost scrisă de Ceki Gülcü și a fost lansată în 2001 sub licența Apache 2.0. Utilizează serviciile de denumire Java și interfață de director (JNDI) pentru a permite aplicațiilor să interacționeze cu alte aplicații precum LDAP, DNS, CORBA etc. și să obțină un director și o funcționalitate de denumire pentru aplicațiile bazate pe Java. Log4j are trei componente pentru a-și îndeplini sarcinile:

  • Loggeri pentru a captura înregistrările de înregistrare
  • Aspecte pentru a formata înregistrările de jurnal în diferite stiluri
  • Anexe pentru a publica înregistrările de jurnal în diferite destinații

Log4j este, de fapt, una dintre cele mai faimoase biblioteci de înregistrare de pe web și este folosită de organizații din mai multe industrii și țări. Ei au integrat această bibliotecă de înregistrare în multe aplicații, inclusiv servicii cloud de top de la Google, Microsoft, Apple, Cloudflare, Twitter etc.

Dezvoltatorul său, Apache Software Foundation, a dezvoltat Log4j 2, o actualizare la Log4j pentru a rezolva problemele găsite în versiunile anterioare. Anul trecut, în Log4j a fost găsită o vulnerabilitate care, atunci când este lăsată neabordată, poate permite atacatorilor să pătrundă în aplicații și sisteme, să fure date, să infecteze o rețea și să efectueze alte activități rău intenționate.

Să înțelegem mai mult.

Ce este Log4Shell – Vulnerabilitatea Log4j?

Log4Shell este o vulnerabilitate critică de securitate cibernetică a bibliotecii Log4j, care afectează funcționarea de bază a bibliotecii. Permite unui atacator să controleze un dispozitiv sau o aplicație conectat la internet prin executarea de cod de la distanță. Când au succes la asta, pot:

  • Rulați orice cod pe dispozitiv sau sistem
  • Accesați toate rețelele și datele
  • Modificați sau criptați orice fișier de pe aplicația sau dispozitivul afectat

Această vulnerabilitate a fost raportată pentru prima dată pe 24 noiembrie 2021, de către Chen Zhaojun, un cercetător de securitate la Alibaba (un gigant chinez al comerțului electronic). Vulnerabilitatea a afectat serverele lor Minecraft, pe care echipa de securitate cloud a Alibaba le-a descoperit pe 9 decembrie.

Apoi, NIST a publicat această vulnerabilitate în National Vulnerability Database și a numit-o CVE-2021-44228. Apache Software Foundation a evaluat apoi această vulnerabilitate la 10 în severitatea CVSS. Acest lucru este rar atribuit și este foarte grav, deoarece are potențialul de a fi exploatat pe scară largă și ușor, ceea ce duce la daune masive pentru organizații și indivizi.

  Cum să rootați Nokia X, să instalați Play Store și Google Now Launcher

Apache, ca răspuns, a emis un patch pentru această vulnerabilitate, dar totuși, unele părți au fost lăsate nerezolvate, ceea ce duce la alte vulnerabilități:

  • CVE-2021-45046 care a facilitat atacurile de tip Denial of Service (DoS) prin căutări JNDI
  • CVE-2021-45105 pentru a permite hackerilor să controleze informațiile Thread Context Map și să provoace atacuri DoS prin interpretarea unui șir creat
  • CVE-2021-44832 afectează toate versiunile Log4j 2 prin Remote Code Injection (RCE)

Cum funcționează Log4Shell?

Pentru a înțelege gravitatea acesteia și cât de mult rău poate face Log4Shell, este pertinent să aflați cum funcționează această vulnerabilitate Log4j.

Vulnerabilitatea Log4Shell permite unui atacator să injecteze de la distanță orice cod arbitrar într-o rețea și să obțină control complet asupra acesteia.

Această secvență de atac cibernetic începe cu biblioteca de înregistrare, cum ar fi Log4j, colectarea și stocarea informațiilor din jurnal. Dacă nu există o bibliotecă de înregistrare, toate datele de pe server vor fi arhivate instantaneu după colectarea datelor.

Dar dacă doriți să analizați aceste date sau trebuie să efectuați unele acțiuni bazate pe informații specifice de jurnal, veți avea nevoie de o bibliotecă de jurnal pentru a analiza datele de jurnal înainte de a fi arhivate.

Datorită vulnerabilității Log4j, orice sistem sau aplicație care utilizează Log4j devine vulnerabilă la atacurile cibernetice. Biblioteca de jurnalizare execută cod pe baza intrării. Un hacker poate forța biblioteca de jurnal să execute cod dăunător, deoarece vulnerabilitatea le va permite să manipuleze intrarea.

Între timp, multe lucruri se întâmplă în fundal. Când Log4j primește un șir special creat, va invoca un server LDP și va descărca acel cod găzduit în directorul său pentru a executa codul. În acest fel, atacatorii pot crea un server LDAP pentru a stoca cod rău intenționat care îi poate ajuta să controleze orice server pe care este executat codul. Apoi va trimite un șir de caractere care direcționează codul lor rău intenționat către o aplicație sau un sistem vizat și va prelua controlul deplin asupra acestuia.

Deci, iată cum poate fi exploatată vulnerabilitatea Log4j:

  • Un atacator găsește un server cu o versiune Log4j vulnerabilă.
  • Ei vor trimite serverului vizat o solicitare de obținere cu linkul serverului lor LDAP rău intenționat.
  • Serverul vizat, în loc să verifice cererea, se va conecta direct la acest server LDAP.
  • Atacatorii vor trimite acum serverul vizat cu un răspuns de server LDAP care conține cod rău intenționat. Datorită vulnerabilității Log4j, care permite primirea codului și executarea acestuia fără verificare, hackerul poate valorifica această slăbiciune pentru a pătrunde în serverul țintă și pentru a exploata sistemele, rețelele și dispozitivele conectate.

Cum poate afecta vulnerabilitatea Log4j utilizatorii?

Vulnerabilitatea Log4j este îngrijorătoare, deoarece este utilizată într-o gamă largă de aplicații și sisteme software.

Deoarece înregistrarea în jurnal este o caracteristică esențială în majoritatea aplicațiilor software și Log4j este o soluție lider în spațiu, Log4j găsește aplicații într-o varietate de sisteme software.

Unele dintre serviciile și aplicațiile populare care utilizează Log4j sunt Minecraft, AWS, iCloud, Microsoft, Twitter, routere de internet, instrumente de dezvoltare software, instrumente de securitate și așa mai departe. Prin urmare, atacatorii pot viza un număr mare de aplicații, servicii și sisteme de la utilizatorii casnici, dezvoltatorii de coduri, furnizorii de servicii și alți profesioniști și persoane înrudite.

În plus, vulnerabilitatea Log4j este extrem de ușor de exploatat de către un atacator. Procesul general necesită mai puține seturi de abilități, nu la nivel de expert, pentru a efectua un atac. Acesta este motivul pentru care numărul atacurilor care exploatează această vulnerabilitate este în creștere.

Impactul vulnerabilității Log4j este:

  • Atacurile DoS
  • Atacurile lanțului de aprovizionare
  • Exploatarea monedelor
  • Injecții de malware, cum ar fi ransomware și cai troieni
  • Injectarea de cod arbitrar
  • Executarea codului de la distanță

Și altele.

Ca urmare a acestor atacuri, puteți pierde controlul asupra aplicațiilor, sistemelor și dispozitivelor dvs., iar datele dvs. pot cădea pradă atacatorilor care vă pot vinde datele, le pot manipula sau le pot expune lumii exterioare. Prin urmare, afacerea dvs. poate fi afectată în ceea ce privește confidențialitatea datelor clienților, încrederea, secretele organizației și chiar vânzările și veniturile dvs., cu atât mai puțin riscurile de conformitate.

  Ghid de introducere pentru Skill Will Matrix pentru manageri [+2 Templates]

Potrivit unui raportpeste 40% din rețelele corporative globale au suferit atacuri din cauza acestei vulnerabilități.

Deci, chiar dacă nu utilizați versiuni Log4j vulnerabile în aplicațiile dvs., integrările dvs. terță parte ar putea să o utilizeze, ceea ce face aplicația dvs. vulnerabilă la atacuri.

Rețineți că toate versiunile Log4j înainte de Log4j 2.17.0. sunt afectate; prin urmare, trebuie să actualizați loggerul dacă îl utilizați. De asemenea, furnizorii celebri care sunt afectați de această vulnerabilitate Log4j sunt Adobe, AWS, IBM, Cisco, VMware, Okta, Fortinet etc. Dacă utilizați oricare dintre aceștia, monitorizați-vă aplicațiile în mod continuu și utilizați sisteme de securitate pentru a remedia problemele imediat ce apare.

Cum să detectați programele afectate Log4j și să remediați problemele

Vulnerabilitatea Log4Shell are un 10 în scorul CVSS. Prin urmare, toate problemele din Log4j nu sunt încă remediate. Dar este o șansă ca dvs. sau furnizorul dvs. terță parte să utilizați Log4j, pe care l-ați folosit în aplicația dvs.

Prin urmare, dacă doriți să vă protejați datele, sistemele și rețeaua, asigurați-vă că urmați câțiva pași de remediere.

#1. Actualizați-vă versiunea Log4j

Actualizarea versiunii dvs. actuale Log4j la Log 4j 2.17.1 este cea mai eficientă tehnică de remediere dacă doriți să vă protejați dispozitivul și aplicațiile de atacuri ca urmare a vulnerabilității Log4j.

Log4Shell este un tip de atac zero-day care vă poate afecta ecosistemul software. Apache a remediat unele dintre vulnerabilitățile din versiunile recente, dar dacă sistemul dumneavoastră a fost compromis înainte de actualizare, sunteți în continuare în pericol.

Prin urmare, presupunând acest lucru, nu trebuie doar să actualizați versiunea, ci și să începeți imediat procedurile de răspuns la incident pentru a vă asigura că nu există vulnerabilități în sistemele și aplicațiile dvs. și pentru a atenua atacurile. De asemenea, trebuie să verificați toate jurnalele de server pentru a găsi indicatori de compromis (IOC) și pentru a vă monitoriza în mod constant sistemele și rețeaua.

#2. Utilizați cele mai recente firewall-uri și sisteme de securitate

Firewall-urile precum Web Application Firewall (WAF) și firewall-urile de ultimă generație vă pot ajuta să vă protejați perimetrul rețelei de atacatori prin scanarea pachetelor de date primite și trimise și blocând cele suspecte. Așadar, utilizați cele mai recente firewall-uri din rețea și setați reguli stricte de ieșire pe serverele dvs. pentru a ajuta la prevenirea atacurilor asociate cu vulnerabilitatea Log4j.

Deși atacatorii pot ocoli firewall-urile, veți obține totuși un anumit grad de securitate cu firewall-uri care pot bloca solicitările unui atacator.

În plus, actualizați toate sistemele dvs. de securitate, cum ar fi sistemele de detectare a intruziunilor (IDS), sistemele de prevenire a intruziunilor (IPS) etc., cu cele mai recente semnături și reguli. Aceste sisteme vor ajuta la blocarea sau filtrarea traficului RMI și LDAP de la conectarea la un server LDAP rău intenționat.

#3. Implementați MFA

Configurarea autentificării cu mai mulți factori (MFA) în aplicațiile și sistemul dvs. va oferi o mai bună securitate împotriva atacatorilor. Va oferi un al doilea strat de securitate chiar dacă un atacator reușește să spargă primul strat. Puteți face acest lucru prin biometrie, cum ar fi amprentele digitale, scanarea irisului etc., setarea unei întrebări de securitate sau activarea unui PIN de securitate.

Utilizarea MFA va crește dificultatea și timpul atacatorilor pentru a efectua un atac complet. Între timp, vă poate informa imediat despre incident, astfel încât să puteți lua măsurile de remediere necesare când mai aveți timp.

În plus, trebuie să aplicați și politici stricte VPN pentru a reduce încălcările de date. Acest lucru va permite utilizatorilor să vă acceseze sistemele în siguranță de oriunde, fără teama de atacatori.

#4. Modificați proprietățile sistemului

În cazul în care nu puteți face upgrade la cea mai recentă versiune a bibliotecii Log4j, trebuie să modificați imediat proprietățile sistemului java dacă utilizați o versiune care variază de la Log4j 2.10 la Log4j 2.14.1.

Trebuie să îl setați astfel încât să preveniți căutările pe care le folosesc atacatorii pentru a detecta vulnerabilitățile și apoi să găsească modalități de a le exploata.

#5. Eliminați JNDI

Motivul acestei vulnerabilități critice de securitate constă în designul său. Pluginul JNDI Lookup are un defect de design prin care atacatorii pot efectua un atac.

  Cum DNS prin HTTPS (DoH) va spori confidențialitatea online

JNDI este folosit pentru executarea codului pe baza datelor de intrare din jurnalul său, pe care oricine le poate manipula cu ușurință, deoarece loggerul acceptă orice cerere fără verificare.

Cercetătorii de securitate au descoperit că acest plugin a permis întotdeauna date neanalizate de când a fost lansat în 2013 și le trimite la biblioteca Log4j.

Prin urmare, vulnerabilitatea Log4j este predispusă la exploatare cu o simplă injecție de șir. Odată ce atacatorul îl injectează, loggerul va accepta operația solicitată în șir și o va executa instantaneu fără verificare.

Deci, dacă doriți să vă securizați sistemele și aplicația, trebuie să dezactivați clasa – JndiLookup. Acest lucru va împiedica loggerul să ia măsuri pe baza datelor de jurnal.

De fapt, căutarea JNDI este deja dezactivată în Log4j 2.16.0 în mod implicit, în încercarea de a vă securiza aplicațiile și sistemele.

Deci, dacă utilizați o versiune Log4j mai mică decât 2.16.0, asigurați-vă că ați dezactivat Căutarea JNDI.

#6. Discutați cu furnizorii dvs

Dacă aveți totul corect, firewall-urile și sistemele de securitate actualizate, versiunea Log4j actualizată, căutarea JNDI dezactivată etc., nu vă relaxați încă.

Chiar dacă nu utilizați o versiune Log4j vulnerabilă în aplicațiile dvs., furnizorii dvs. terți ar putea să o folosească. Deci, nu veți ști niciodată cum aplicația sau sistemul dvs. au fost piratate, deoarece problema reală a fost cu integrarea dvs. terță parte.

Prin urmare, discutați cu furnizorii dvs. și asigurați-vă că și ei au actualizat Log4j la cea mai recentă versiune și au implementat alte practici de securitate discutate mai sus.

#7. Utilizați un scaner de vulnerabilitate Log4j

Există multe instrumente de scanare a vulnerabilităților Log4j disponibile pe piață pentru a vă facilita detectarea vulnerabilităților Log4j în sistemele și aplicațiile dvs.

Așadar, atunci când căutați aceste instrumente, verificați ratele lor de acuratețe, deoarece multe dintre ele generează rezultate false pozitive. De asemenea, găsiți un instrument care să răspundă nevoilor dvs., deoarece acestea se pot concentra pe identificarea vulnerabilității Log4j, raportarea expunerii și remedierea vulnerabilității.

Deci, dacă vă concentrați pe detectarea, găsiți un scaner de vulnerabilități Log4j care poate detecta problema sau utilizați cel care poate detecta și remedia problema.

Unele dintre cele mai bune instrumente de scanare Log4j sunt:

  • Microsoft 365 Defender: Microsoft oferă o gamă de soluții și instrumente de securitate pentru a vă ajuta să detectați și să preveniți exploatările Log4j în rețeaua dvs. Veți putea identifica tentativele de execuție și exploatare a codului de la distanță, protejându-vă de vulnerabilitățile Log4j în dispozitivele Windows și Linux.
  • Amazon Inspector și AWS: Amazon a creat un instrument de scanare pentru a găsi vulnerabilitatea Log4j în instanțe Amazon EC2 și Amazon ECR.
  • CloudStrike Archive Scan Tool (CAST): CloudStrike a creat, de asemenea, un instrument de scanare excelent pentru a detecta vulnerabilitatea Log4j, pentru a vă ajuta să rezolvați problemele la timp înainte ca atacatorii să o poată exploata.
  • Detectare Google Cloud Logging: soluția Google de detectare a înregistrării în cloud vă permite să detectați exploatările Log4j folosind Logs Explorer. Puteți crea o interogare de jurnal în acest instrument și puteți scana pentru eventuale șiruri de exploatare.
  • De asemenea, Google a creat log4jscanner, un scaner de sistem de fișiere open-source pentru detectarea vulnerabilității Log4j.
  • Scaner BurpSuite Log4j: Acesta este un plugin de securitate pentru profesioniști și întreprinderi, pentru a le ajuta să detecteze vulnerabilitatea Log4j.
  • Huntress Log4Shell Vulnerability Tester: Acest instrument generează un identificator unic la întâmplare pe care îl puteți utiliza în timp ce testați câmpurile de introducere. La găsirea unei vulnerabilități în aplicația sau câmpul de introducere, serverul său securizat LDAP va închide instantaneu conexiunea rău intenționată și vă va menține în siguranță.
  • WhiteSource Log4j Detect: WhiteSource a creat un instrument CLI gratuit, WhiteSource Log4j Detect, găzduit pe GitHub pentru a vă ajuta să detectați și să remediați vulnerabilitățile Log4j – CVE-2021-445046 și CVE-2021-44228.
  • Instrumente de scanare open-source JFrog pentru Log4j: JFrog a creat diverse soluții și instrumente open-source pentru a găsi vulnerabilități Log4j în fișierele binare și codul sursă.

Concluzie

Vulnerabilitatea Log4j este o problemă critică de securitate. Deoarece această bibliotecă de înregistrare este utilizată pe scară largă în diverse aplicații și sisteme, vulnerabilitatea Log4j a devenit larg răspândită, permițând atacatorilor să exploateze o gamă largă de sisteme și aplicații.

Deci, dacă doriți să vă protejați sistemele și aplicațiile de această vulnerabilitate, asigurați-vă că actualizați biblioteca Log4j la cea mai recentă versiune și implementați cele mai bune practici de securitate discutate mai sus.

x