Site icon Noir Solutions

Attacchi Cross-site Scripting (XSS) come bloccarli

Dedichiamo adesso questo articolo per raccontarvi dell Cross-site Scripting (XSS) , ossia un attacco hacher che viene fatto con gli script. Principalmente si tratta di iniettare nel vostro browser un codice maligno che effettui dei danni o trasferisca informazioni. Ma ci ritorneremo a breve , come dice il nome stesso l’attacco Cross-site Scripting (XSS) è realizzato con gli scripting e più precisamente con quelli lato Client, ossia nel vostro browser, si tratta di un attacco decisamente subdolo e non sempre è percepibile quello che stiamo subendo. Ovviamente essendo un attacco di scripting i linguaggi con il quale viene fatto sono principalmente con VB, ActiveX , Flash , ma è ovvio che principalmente è usato Javascript per le sue proprietà intrinseche. Ossia con Javascript è possibile

 

Questi sono solamente alcuni esempi , ma è ovvio che con le API e gli Oggetti Dom di Javascript si ha praticamente accesso a quasi tutto. Vediamo un attimo ora come funziona nello specifico questo tipo di Attacco.

 

Cross-site Scripting (XSS)

 

Come mostrato dalla figura l’attacco è strutturato in quattro fasi e come mostra la figura di stratta di un attacco abbastanza alla portata di chi legga una buona guida e abbia delle conoscenze nemmeno troppo eccelse di Javascript , per questi motivi la guida che state leggendo è volutamente mancante di alcune parti che potrebbero spiegare a qualche malintenzionato di andare oltre….

  1. L’aggressore hacker caricherà nel database o solamente nel web site vulnerabile tipicamente un blog o un sito di qualsiasi natura tipicamente tramite un attacco DOS un codice maligno latente.
  2. Al primo punto viene fatta una richiesta al database di un sito di leggere dei dati che preleverà verosimilmente da Database
  3. Lo script ovviamente viene caricato nel browser del richiedente o vittima
  4. Lo script verrà eseguito nella vostro computer darà i risultati da voi richiesti ma contemporaneamente fornirò anche dei dati segreti ad un altro host che tipicamente è quello dell’host dell’aggressore hacker , oppure di un suo referente secondo lo schema indicato in figura.

Ribadiamo questo è solamente un esempio dei tanti che si possono fare tramite un attacco Cross-site Scripting (XSS)

Il brutto di questo nuovo attacco è che come vi ho già detto chiunque conosca un minimo di JS può farlo.

Lo potete trovare in varie forme, ve ne indichiamo le più comuni

nel vostro head

src=” sitoaggressore.com/xss.js”>

alert(“XSS”);

e dopo richiamarlo nel body

XSS Scripting nelle immagini

in questo caso il codice potrebbe essere il segue

< img src = ” javascript: alert(“XSS”); ” >

Cross-site Scripting (XSS) nel modulo Input

In questo modo penserete di richiamare l’immagine per un modulo input ma in realtà attivate il codice maligno

< input type=”image” src = ” javascript: alert(‘XSS’); ” >

Cross-site Scripting (XSS) nel div

Ovviamente nel div è ancora più semplice vi baserà fare

< div style= background-image: url(javascript : alert (‘XSS’))”>

Insomma come vedete è veramente semplice, ma come risolvere il problema?

Come bloccare e ripulire dagli attacchi Cross-site Scripting (XSS)

Andiamo per passi

Una volta che il sito è ripulito e che è stato messo in sicurezza vediamo come prevenire questo tipo di attacco. Diciamo che ci sono due metodi alternativi , se avete accesso al vostre demone Apache inserite questo comando nel httpd.conf

X-XSS-Protection: 1; mode=block

Oppure se il vostro blog risiede su un hosting condiviso allora dovrete modificare il vostro htaccess inserendo questo codice

 

<IfModule mod_headers.c>
  Header set X-XSS-Protection "1; mode=block"
</IfModule>
Exit mobile version