Eragina
Cross-Site Scripting (XSS) ahultasun bat arrakastaz ustiatzen duen erasotzaile batek biktimaren erabiltzaile gisa maskara dezake, erabiltzaileak egiteko baimena duen edozein ekintza egin dezake eta erabiltzailearen edozein datu [S1] atzi dezake. Honen barruan sartzen dira kontuak bahitzeko saio-cookieak lapurtzea, saioa hasteko kredentzialak inprimaki faltsuen bidez atzematea edo [S1][S2] birtuala desagertzea. Biktimak administrazio-pribilegioak baditu, erasotzaileak aplikazioaren eta bere datuen kontrol osoa lor dezake [S1].
Arrazoia
XSS aplikazio batek erabiltzaileak kontrola dezakeen sarrera jasotzen duenean eta web orri batean sartzen duenean gertatzen da [S2] behar bezala neutralizatu edo kodetu gabe. Horri esker, sarrera eduki aktibo gisa interpreta daiteke (JavaScript) biktimaren arakatzaileak, webguneak elkarrengandik isolatzeko diseinatutako Jatorri Bereko Politika saihestuz [S1][S2].
Ahultasun motak
- XSS islatua: Script gaiztoak web aplikazio batetik islatzen dira biktimaren arakatzailean, normalean [S1] URL parametro baten bidez.
- XSS gordeta: Scripta betirako gordetzen da zerbitzarian (adibidez, datu-base batean edo iruzkinen atalean) eta erabiltzaileei zerbitzatzen zaie geroago [S1][S2].
- DOM-en oinarritutako XSS: Ahultasuna guztiz fidagarria ez den iturri bateko datuak modu seguru batean prozesatzen dituen bezeroaren alboko kodean dago, esate baterako,
innerHTML[S1] idazten.
Konponketa konkretuak
- Kodetu datuak irteeran: Bihurtu erabiltzaileak kontrola daitezkeen datuak forma seguru batean errendatu aurretik. Erabili HTML entitateen kodeketa HTML gorputzerako, eta JavaScript edo CSS kodeketa egokia testuinguru zehatz horietarako [S1][S2].
- Iragazki sarrera iristean: Ezarri baimen-zerrenda zorrotzak espero diren sarrera-formatuetarako eta baztertu [S1][S2] bat ez datorren guztia.
- Erabili segurtasun-goiburuak: Ezarri
HttpOnlymarka saioko cookieetan [S2] JavaScript bidez sarbidea eragozteko. ErabiliContent-TypeetaX-Content-Type-Options: nosniffarakatzaileek erantzunak gaizki interpretatzen ez dituztela ziurtatzeko [S1] kode exekutagarri gisa. - Edukiaren segurtasun-politika (CSP): Inplementatu CSP sendoa script-ak kargatu eta exekutatu daitezkeen iturriak mugatzeko, defentsa-geruza sakona eskainiz [S1]ZXCVZCVF1.
FixVibe probak nola egiten dituen
FixVibe-k XSS detektatu lezake geruza anitzeko ikuspegi baten bidez, ezarritako eskaneatzeko metodologietan oinarrituta [S1]:
- Eskanea pasiboak: XSS [S1] arintzeko diseinatuta dauden
Content-Security-PolicyedoX-Content-Type-Optionsbezalako segurtasun-goiburuak falta diren edo ahulak identifikatzea. - Probes Aktiboak: URL parametroetan eta inprimaki-eremuetan kate alfanumeriko esklusiboak eta ez-maltzurrak sartzea, erantzunaren gorputzean islatzen diren zehazteko [S1] kodeketa egokirik gabe.
- Repo Scans: Bezeroaren alboko JavaScript aztertzea, fidagarriak ez diren datuak modu seguruan kudeatzen dituzten "konketa"etarako, hala nola,
innerHTML,document.writeedosetTimeout, ZTOVFIX-en ohiko adierazleak direnak. [S1].
