Cross-site scripting: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m WPCleaner v1.37 - Disambigua corretti 2 collegamenti - GET, POST / Fixed using Wikipedia:Check Wikipedia (Interlink scritto come un link esterno - Errori comuni) |
|||
Riga 1:
Il '''Cross-site scripting''' ('''XSS''') è una [[vulnerabilità]] che affligge [[Web dinamico|siti web dinamici]] che impiegano un insufficiente controllo dell'input nei [[form]]. Un XSS permette ad un [[Cracker (informatica)|Cracker]] di inserire o eseguire codice lato client al fine di attuare un insieme variegato di attacchi quali ad esempio: raccolta, manipolazione e reindirizzamento di informazioni riservate, visualizzazione e modifica di dati presenti sui server, alterazione del comportamento dinamico delle pagine web ecc
▲Il '''Cross-site scripting''' ('''XSS''') è una [[vulnerabilità]] che affligge [[Web dinamico|siti web dinamici]] che impiegano un insufficiente controllo dell'input nei [[form]]. Un XSS permette ad un [[Cracker (informatica)|Cracker]] di inserire o eseguire codice lato client al fine di attuare un insieme variegato di attacchi quali ad esempio: raccolta, manipolazione e reindirizzamento di informazioni riservate, visualizzazione e modifica di dati presenti sui server, alterazione del comportamento dinamico delle pagine web ecc... Nell'accezione odierna, la tecnica ricomprende l'utilizzo di qualsiasi linguaggio di scripting lato client tra i quali JavaScript, VBScript, Flash, HTML.
Secondo un rapporto di [[Symantec]] nel [[2007]] l'80% di tutte le violazioni è dovuto ad attacchi '''XSS'''<ref>{{en}} [http://eval.symantec.com/mktginfo/enterprise/white_papers/b-whitepaper_exec_summary_internet_security_threat_report_xiii_04-2008.en-us.pdf Symantec Internet Security Threat Report: Trends for July-December 2007]</ref>.
Line 7 ⟶ 5:
==Origine e trasformazione del concetto==
L'espressione "cross-site scripting" originariamente si riferiva unicamente ad attacchi basati sull'utilizzo di frammenti di codice [[JavaScript]] inseriti all'interno di chiamate a pagine web dinamiche poste su un web-server (tecnica facente parte dei metodi di [[code injection]]) in modo che il server remoto eseguisse operazioni diverse da quelle previste originariamente dall'applicativo web. Tale definizione, gradualmente, si è estesa comprendendo anche altre modalità di "iniezione di codice" basate non solo su [[JavaScript]] ma anche su [[ActiveX]], [[VBScript]], [[Adobe Flash|Flash]], o anche puro [[HTML]]. Ciò ha generato una certa confusione nella terminologia riferita alla [[sicurezza informatica]]: il termine, infatti, ricomprende oggi tutto un insieme di tecniche di attacco e non esclusivamente quella basata su manipolazione di codice JavaScript.<ref name=Grossman>{{Cita web|autore=Grossman, Jeremiah|titolo= The origins of Cross-Site Scripting (XSS)|url= http://jeremiahgrossman.blogspot.com/2006/07/origins-of-cross-site-scripting-xss.html |data=30 luglio 2006|accesso=15 settembre 2008
== Tipologie ==
Esistono due tipi di vulnerabilità XSS:
* '''stored''', quando il codice di scripting viene inserito in maniera permanente sul server (es. quando viene sfruttata in un forum);
* '''reflected''', quando il payload viene iniettato tramite richieste GET o POST del protocollo [[
== Un esempio di attacco ==
Questa vulnerabilità è dovuta a errori dei programmatori, che molto spesso trascurano completamente la validazione delle informazioni passate in input con le richieste [[
Per verificare la vulnerabilità di un sito è sufficiente (ad esempio) provare ad inserire del codice [[JavaScript]] o [[Structured Query Language|SQL]] nel suo campo di ricerca allo scopo di produrre effetti sulla pagina risultante, causando l'esecuzione del codice inserito.
Il seguente è un semplice frammento di codice JavaScript adatto al test:<br />
|