Cross-site scripting

El cross-site scripting (XSS) a l'è 'na vulnerabilità che la revarda i sitt web dinamich cont ona gestion fallada di input di utent che permetten a on attaccant de giontà el sò codes ai paginn legittim per compì di attacch 'me el robà di informazion, mett di fals schermaa de login o doperà i resors de calcol del sistema de l'utent. A hinn, al didincoeu, vun di mezz de attacch pussee doperaa.

 Fonzionament 
L'XSS a l'è dovuu a 'n elaborazion e presentazion de 'n imput ricevuu de 'n utent senza elaboràll e cont la restituzion diretta ai browser che 'l domanden. A l'è dònca possibil, in 'sta situazion, caregà abusivament di codes HTML e JavaScript, che per el browser riven del sitt original, che pòden fà di azion cattiv 'me modifegà i form de la pagina per robà i dacc de access, robà i cookie de l'utent, cambià di informazion del sitt, registrà i informazion digitaa, provà a menà al download di malware o fà on defacement.

 Tipi 
 Rifless 
In l'attacch rifless, ciamaa anca minga persistent, l'attacch a l'è faa in sul browser de l'utent. Per esempi, se pensom a 'n sitt cont on parameter GET de tipo:

http://sitt.net/search.php?search=paròlla de cercà

A l'è dònca, se la paròlla de cercà a l'è dada foeura direttament a l'utent in d'ona schermada dopo senza filter, assee modifegà el parameter cont on script, pu o manch offuscaa, 'me in l'esempi:

http://sitt.net/search.php?search=<script type='text/javascript'>alert('xss');</script>

Che 'l stamparia a monitor on alert JavaScript con scritt "xss".

 Persistent 
In d'on attacch persistent, inveci, el script cattiv a l'è salvaa in d'ona quaj part del server.

Per esempi se pò scriv on comment cont on script e, se l'è mìnga filtraa, i browser de quej che visiten la pagina eseguen el script.

Se gh'è 'na fonzion del tipo:
echo "<h4>Darree comment del sitt</h4>";
echo latest.database;

E l'è mittuu dent in d'on comment:
<script> /* Foo vergòtt de gramm */ </script>

El codes HTML stampaa el sarà:
<h4>Darree comment del sitt</h4>
<script> /* Foo vergòtt de gramm */ </script>

E 'l script el sarà consideraa part de la pagina del browser.

 Fondaa in sul DOM 
In d'on attacch fondaa in sul DOM l'attacch a l'è in l'ambient de la pagina, ossia indova el server el gh'ha nanca la possibilità de vedè che 'l gh'è staa 'sto attacch, vist che per el server a l'è eseguii domà el sò script legittim, la che attivazion la attiva el script cattiv.

 Autonom 
On attacch autonom (in ingles Self-XSS) a l'è 'n attacch de ingegneria sociala miraa a menà 'n utent a eseguì on codes cattiv in del sò browser. A l'è 'na tecnega doperada soratutt in di social network, cont di promess de ciappà di fonzion pussee o di messagg fals di contatt.

 Prevenzion 
 Sanificazion de l'input 
La sanificazion de l'input a l'è la trasformazion o l'eliminazion di caratter tipich de l'HTML o del JavaScript per impedì de caregà vergòtt irregolarment. I tecnegh pòden vèss combinaa: Per esempi se pòden escapaa i caratter < e >, ossia scrivej in codes HTML per fàj intepretà no e permett de scriv on codes HTML de esempi e scancellà on eventual script.

 Limitazion di tag 
La limitazion di tag a l'è doperada indova a l'è necessari permètt de doperà 'na quaj fonzion de l'HTML, tipicament quej de formattazion del test, senza permett de doperà i tag pussee pericolos 'me ,  o . A bon cunt a l'è no on sistema fonzionant totalment, degià che gh'è el ris'c che on codes offuscaa el sia caregaa istess.

 Content Security Policy 
Content Security Policy a l'è on parameter che 'l pò vess mittuu  in di header HTTP de 'na pagina web per dì al browser de fidàss domà di contegnuu che gh'è in d'ona lista dada, che 'l impediss dònca de caregà di script o iframe di alter paginn mìnga fidaa.

 Riferiment 
Excess XSS - A comprehensive tutorial on cross-site scripting
Cos'è una truffa XSS?
Tipologie XSS 
DOM Based XSS 
THE REAL IMPACT OF CROSS-SITE SCRIPTING

 Varda anca 
SQL injection
Self XSS
Server Side Template Injection

Categoria:Vulnerabilità informateghe