Cuprins:
Definiție - Ce înseamnă XSS Hole?
O gaură XSS este o aplicație Web care oferă conținut dinamic utilizatorilor cu o vulnerabilitate a securității computerului. Această aplicație are scripturi cross-site (XSS) și permite unui atacator să exploateze datele confidențiale ale unui utilizator fără a trece un mecanism de control de acces, cum ar fi o politică de aceeași origine. Acest defect este mai cunoscut ca gaură XSS.
Techopedia explică XSS Hole
De exemplu, utilizatorul poate găsi un hyperlink într-o aplicație Web care indică un anumit conținut rău intenționat. Utilizatorul poate face clic pe link și va fi dus la o altă pagină care conține unele sau un buletin de e-mail. Această pagină adună informații despre utilizator sub formă de parolă. De asemenea, generează o pagină de ieșire rău intenționată care indică unele răspunsuri false adaptate pentru a apărea autentice pentru utilizator. Fie datele introduse de utilizator pot fi utilizate greșit, fie sesiunea utilizatorului poate fi deturnată de furtul de cookie-uri. Pe baza sensibilității datelor colectate, scripturile cross-site pot varia de la o simplă vulnerabilitate la o lacună de securitate serioasă. După exploatarea vulnerabilității XSS, atacatorul poate evita politicile de control al accesului organizației.
Conceptul de cross-site scripting se bazează pe aceeași politică inițială. Aceleași politici originale afirmă că un browser Web care utilizează JavaScript poate avea acces la diferite proprietăți și metode aparținând aceluiași site fără nicio restricție. Atacatorii răuvoitori pot exploata conceptul aceleiași politici originale prin injectarea codului rău intenționat pe un site web folosind JavaScript. Atunci când paginile Web sunt vizualizate de utilizatori, atacatorii pot aduna câteva informații utile pentru utilizator, cum ar fi un nume de utilizator sau o parolă.
Conform statisticilor adunate de Symantec în 2007, scripturile încrucișate reprezintă 80 la sută din toate atacurile de securitate executate utilizând calculatoare. Există trei tipuri de scripturi cross-site:
- XSS non-persistent: tipul non-persistent de scripturi cross-site este văzut în timpul solicitărilor HTTP în care clientul introduce datele într-o cerere HTTP. Când serverul folosește datele trimise de client pentru a genera pagini, găurile XSS pot fi active dacă solicitarea nu a fost igienizată corespunzător. Pagini HTML sunt compuse atât de conținut, cât și de prezentare. Dacă utilizatorul dăunător adaugă un anumit conținut care nu a fost validat, atunci apare o injecție de marcare. Utilizatorul își va compromite securitatea prin introducerea informațiilor solicitate de codul rău intenționat. Atacatorul poate induce în eroare utilizatorul către o altă adresă URL, care poate conține un virus mai sofisticat și să obțină informații importante despre utilizator.
- XSS persistent: Conținutul rău intenționat injectat de atacator este salvat pe server și toate solicitările ulterioare ale clientului au acces la conținutul modificat, reprezentând astfel un risc de securitate grav. De exemplu, unele forumuri permit utilizatorului să posteze mesaje formatate HTML. Prin urmare, un atacator poate încorpora un cod JavaScript pentru a prezenta o casetă de text rău intenționată pentru a aduna informații precum o parolă. Atacatorul mai poate configura codul JavaScript pentru a salva și transmite fiecare parolă introdusă în câmpul text.
- XSS bazat pe DOM: modelul de obiect document (DOM) este o structură de arbore care reprezintă toate etichetele care apar într-un document care se conformează standardelor XML. DOM este folosit în JavaScript pentru a accesa și manipula etichetele HTML și conținutul din etichete. Un atacator poate injecta o bucată de cod JavaScript care conține instrucțiuni DOM adecvate pentru a accesa și modifica informațiile importante ale utilizatorului. De exemplu, atacatorul poate folosi DOM pentru a redirecționa informațiile utilizatorului printr-o trimitere necorespunzătoare către un site web dăunător terților.
