Sito Esecuzione di caratteri di controllo nel tag title

3

Attualmente sto ripetendo un sito per un mio cliente e ho trovato un "bug" molto strano.

Hanno una casella di ricerca sulla home page che se inserisco te\tst e faccio clic su Cerca, reindirizza alla pagina dei risultati di ricerca (non tramite ajax), e nel titolo mostra le parole chiave che ho cercato, tuttavia , il carattere di controllo viene effettivamente eseguito.

Quindi il tag title dice questo: "te st | site name" < - Eseguito il \ t e creato 4 spazi.

Quindi le mie domande sono davvero:

  1. Potrebbe essere classificata come una potenziale vulnerabilità?
  2. C'è comunque che questo possa essere sfruttato?

Grazie!

[Edit]

Solo FYI, esegue anche altri caratteri di controllo non solo la scheda. Ho appena provato \ r \ n e la nuova linea.

Inoltre, esegue i caratteri di controllo solo se sono incapsulati all'interno di altri caratteri, quindi:

\r\n non funziona te\r\nst restituirà te [nuova riga] st

    
posta DarkMantis 14.08.2013 - 11:01
fonte

1 risposta

1

Molte vulnerabilità si verificano a causa di piccoli bug non sfruttabili che fanno sì che diverse parti del software facciano false supposizioni l'una sull'altra.

Restituire l'input dell'utente in una risposta alle applicazioni web suggerisce ovviamente la possibilità di cross-site scripting (XSS) attacchi. Questi possono essere eliminati con un corretto filtro / codifica input / output.

Applicare una trasformazione come l'analisi dei caratteri di controllo che hai menzionato può tuttavia far scivolare il tuo payload attraverso le protezioni applicate, ad esempio il seguente pseudocodice:

transform(filter_xss($input))

può risultare in HTML / JS valido per il seguente input:

test\x3cscript\x3ealert(1)\x3c/script\x3etest

I caratteri multibyte possono anche essere utili per lo sfruttamento.

Sembra anche possibile che l'input dell'utente venga analizzato da una sorta di shell dei comandi che potrebbe rendere più pericolosi gli attacchi, in particolare il comando iniezione possibile. In base al sistema operativo puoi provare diversi metacaratteri per ottenere l'esecuzione di codice in modalità remota, alcuni sono per * nix:

link

    
risposta data 17.08.2013 - 10:25
fonte

Leggi altre domande sui tag