xss quando viene aggiunto http nel payload

2

Se un campo non è santizzato (eccetto <, >) e tutto ciò che fa è aggiungere http nel payload e riflette l'output, è possibile eseguire script nel lato client?

Ecco come appare l'output per l'input ../ javascript: alert (1)

<a href  = "http://../javascript:alert(1)" target ="_blank">

Un altro esempio di input: Input: "> < >:

Output:

<a href = "http://"&gt;&lt;:" target="_blank">

Modifica: Sarebbe bello se qualcuno potesse pensare a payload con javascript:, atrribuire come un modo per richiedere l'uso di javascript: prompt (1).

    
posta ramailo sathi 11.10.2015 - 20:37
fonte

2 risposte

3

Poiché < e > sono codificati, terminando il tag di ancoraggio e aggiungendo un nuovo tag non funzionerà. Tuttavia, se le virgolette " non sono codificate o filtrate, puoi comunque ottenere XSS. Ad esempio, example.com/"+onclick="alert('XSS!') come input URL genererà l'output <a href="http://example.com/" onclick="alert('XSS!')" target="_blank"> .

L'avviso onclick è il modo più semplice ( EDIT: come indicato da @pineappleman), ma potresti anche aggiungere altri eventi (come onmouseover ) e potresti visualizzare il tuo contenuto in front of the page con CSS, che potrebbe consentire a un utente malintenzionato di influenzare le vittime nel fare cose che non vorrebbero fare (pensa al clickjacking, ma direttamente sulla pagina vulnerabile invece che tramite un iframe di quella pagina).

    
risposta data 11.10.2015 - 21:25
fonte
1

Se i dati non sono disinfettati, ma viene aggiunto solo "http", rispetto all'app è vulnerabile all'XSS. Ad esempio, se i dati sono inseriti in un attributo href come questo:

<a href="http://userdata">

quindi un utente malintenzionato potrebbe invece userdata inserire "><img src=x onerror=alert() come risulterebbe in:

<a href="http://"><img src=x onerror=alert()">

Modifica: nel secondo esempio che hai aggiunto, < e > i segni sono codificati. Puoi provare a inserire " onclick="alert() che cosa potrebbe eseguire uno script quando qualcuno fa clic sul link.

    
risposta data 11.10.2015 - 21:03
fonte

Leggi altre domande sui tag