XSS basato su DOM all'interno dell'attributo src

6

Ho il seguente codice JavaScript:

var url= document.location.href;
document.write("<img src='?bla="+document.location.href+"'>");

Sono in grado di iniettare il codice quando aggiungo ad es. ?b=a'onX=alert(1);' all'URL, ma funziona solo nei browser in cui ' non verrà codificato.

Ci sono altri attacchi che non ho considerato? C'è un altro modo per uscire dall'attributo src ?

    
posta Noahnder 22.11.2016 - 02:33
fonte

1 risposta

1

Are there any other attacks that I didn't consider?

Per evitare che il modulo di quotatura singola venga codificato, puoi provare a introdurre il tuo payload nel percorso invece della stringa di query. Ad esempio, se la pagina vulnerabile risiede su http://example.com/path/vulnerable.php puoi provare qualcosa del tipo:

http://example.com/'onerror='payload/..%2Fpath/vulnerable.php

L'idea è che alcuni server risolvano implicitamente il percorso. Non controllano se la prima cartella 'onerror='payload esiste effettivamente, ma ritorna immediatamente alla directory padre ( ../ ) e risolve il resto del percorso senza emettere alcun reindirizzamento. (La codifica dell'URL della barra come %2f impedisce al browser di abbreviare automaticamente il percorso.)

Is there another way to break out of the src attribute?

No, una citazione corrispondente è la tua unica possibilità di uscire dal valore dell'attributo come spiegato in questa risposta .

    
risposta data 22.11.2016 - 03:59
fonte

Leggi altre domande sui tag