XSS Attack using SMS to Optus/Huawei E960 HSDPA Router

2009 Marzo 23
by Overclock_Orange

Como de seguro ustedes saben lo que es el XSS (su correcto nombre es Cross Site Scripting), es una vulnerabilidad producida por la no validación de los datos de entrada en la explotación de vulnerabilidades del sistema de validación de código HTML (y JavaScript) incrustado. Mediante el XSS podemos hacernos con la cookie de algún administrador, molestar insertando bucles de mensajes, entre otros.
Al revisar milw0rm me llamo muchísimo la atención encontrar un XSS attack usando SMS contra un router Optus/Huawei E960 HSDPA.

El router Huawei E960 HSPDA (con firmware version 246.11.04.11.110sp04), es vulnerable a ataques XSS usando SMS (si mensajes de texto). Una de las ‘features’ de este router es la posibilidad de enviar y recibir SMS utilizando una interfase web. Un atacante podría incluir código malicioso enviando un corto SMS, y ganar el control sobre el router.

Los primeros 32 caracteres de cada entrada SMS se presentan en un formulario en la bandeja de entrada de la aplicación. Al no poseer caracteres de escape el límite de 32 caracteres puede superarse mediante el uso de varios SMS y la inserción de código JavaScript comentado, con el fin de fusionar el mensaje actual con el siguiente.

Por ejemplo:
El primer mensaje termina con /*  con esto comenta todo el código HTML siguiente.

<script>alert('hello '/*

El segundo mensaje comienza con */ con esto cierra el comentario.
De esta forma se ejecuta el código siguiente.

*/+'world');</script>

Nótese que el primer mensaje enviado, es el primero en ser recibido.

Un atacante puede:

  • Obtener el password PPP de la víctima accediendo a /js/connections.js.
  • Desconectar a la víctima de su conexión a Internert.
  • Enviar SMS’s con el router de la víctima.
  • Ganar acceso al password WI-FI de la víctima.

Luego de que el ataque fue realizado, la bandeja de entrada de SMS’s, no puede ser usada hasta eliminar los mensajes recividos (por que el botón para elimnarlos no esta visible). Para remover los mensajes recividos, debe realizarse un telnet a el router con el usuario ‘admin’ y el password ‘admin’. Huawei E960 usa BusyBox, entonces puede utilizarse el comando rm para eliminar estos mensajes (localizados en /tmp/sms/inbox_sms). Luego de remover los mensajes, los mensajes estaran en el ‘inbox’ pero pueden ser removidos ahora desde aquí.


Todavía no hay comentarios

Escribe un comentario

Nota: Puede usar XHTML básico en sus comentarios. Su dirección de correo electrónico nunca será publicada.

Subscripción al comentario vía RSS