Come fa il tag di ancoraggio (a) a fare un XSS memorizzato?

2

Stavo cercando di ottenere XSS ma e l'input di validazione del sito ma quando ho inserito https://google.com il sito ha fatto questo:

<a href="//google.com">https://www.google.com</a>

quindi ho provato a fare questo:

javascript:alert(7)

il sito ha fatto questo:

<a href="//javascript">:alert(7)</a>

Qualcuno ha un'idea su come aggirare questo filtro?

    
posta Malek 15.07.2018 - 05:16
fonte

1 risposta

1

Se vuoi ottenere ovunque sicurezza e trovare bug, ignorando le misure di sicurezza devi iniziare a ottenere più creatività e più sperimentale (se è anche una parola inglese ).

In questo caso:

  1. Scegli un input.
  2. Passa attraverso la scatola nera.
  3. Ottieni l'output
  4. Fai una teoria: in che modo la scatola nera trasforma il mio input - > uscita
  5. Scegli un input diverso e ripeti fino a quando non sei sicuro che la tua teoria sia corretta.
  6. Adatta / aggiorna / cambia teoria con nuove informazioni da (input, output) coppie.

Una teoria possibile in questo caso sarebbe che la scatola nera sostituisca semplicemente https con una stringa vuota. Come possiamo verificare questo: Beh ... inseriamo "hihttpsthere" e vediamo se otteniamo "hithere" come output. Ma trasforma javascript:alert(7) in (//javascript,:alert(7)) quindi forse sta dividendo a : ? Forse prova ad analizzare il protocollo dell'URL? Usa qualche roba con l'urlencoded, usa caratteri non stampabili, forse usi anche un fuzzer? Potrebbe anche essere che il loro filtro renda impossibile un XSS .. potrebbe essere. Dovrai scoprirlo.

Si tratta di tentativi ed errori.

I was trying to get xss but site valdiate input

Questo è quello che dovrebbe fare comunque. Non puoi aspettarti che tu possa fare un XSS ovunque .

    
risposta data 15.07.2018 - 12:32
fonte

Leggi altre domande sui tag