martes, 4 de febrero de 2014

Hackeando el router ZTE ZXV10 W300 v2.1 (El Portaretratos)

Fig. 0 - Router ZTE ZXV10 W300 v2.1

Se ha publicado una vulnerabilidad para el router modelo ZXV10 W300 V2.1 de la marca ZTE, más conocido aquí en Perú como "El Portaretratos" por su singular apariencia. Esta vulnerabilidad permite acceder a la configuración del router con permisos de administrador a través del servicio telnet.

Link: http://www.kb.cert.org/vuls/id/228886

La vulnerabilidad consiste en que el router tiene hardcodeado un usuario llamado "admin" con clave "XXXXairocon". Donde "XXXX" son los últimos 4 caracteres de la dirección MAC en su representación hexadecimal. Es decir que para conocer la clave necesitamos primero conocer la MAC.

Si estamos en la LAN conocer la MAC es trivial. Basta con hacer "ping" al router y luego consultar la caché ARP de nuestro equipo.

fig. 1 - Obtener MAC en LAN.

Pero obtener la MAC desde Internet no es tan sencillo. Sin embargo este router tiene habilitado hacia Internet el servicio SNMP con la comunidad por defecto "public". Entonces podemos hacer una consulta SNMP por el OID ".1.3.6.1.2.1.2.2.1.6.10000" y obtener la dirección MAC. Así:

snmpget -c public -v 2c -On IP_PUBLICA OID

Donde:
  • -c public: Indica el nombre de la comunidad SNMP.
  • -v 2c: Indica la versión del protocolo SNMP.
  • -On: Indica que la salida sea en formato numérico.
  • IP_PUBLICA: La dirección IP pública del router
  • OID: El OID del MIB que quieres leer. En este caso el OID que contiene la MAC es ".1.3.6.1.2.1.2.2.1.6.10000".
 
Fig. 2 - Obtener MAC desde Internet.

Luego de conseguir la MAC ya podemos formar la clave del usuario "admin" concatenando los últimos 4 caracteres de la MAC en mayúsculas con la palabra "airocon". Por ejemplo: Si la MAC es "a1:b2:c3:d4:e5:f6" la clave será "E5F6airocon". Y con esto ya podemos conectar al router por telnet.

Además una vez iniciada la sesión por telnet es posible recuperar en texto plano las credenciales de los usuarios "support" y "admin" con las que se accede a la interfaz web. Para ello primero activamos el modo shell con el comando "sh" y luego listamos las credenciales con "login show".

Fig. 3 - Acceso por telnet y listado de credenciales.

Recomendaciones
  • Configurar listas de control de acceso en el router para restringir el acceso al servicio telnet desde Internet.
  • Deshabilitar el servicio SNMP o en todo caso cambiar la comunidad SNMP por defecto.

Para terminar, comentar que no es la única vulnerabilidad que hay en este equipo. Hace poco publicamos en este blog también un fallo de denegación de servicio en este mismo modelo de router.

Link: http://blog.alguien.at/2014/01/zte-zxv10-w300-v21-http-authorization.html

Tomen sus precauciones.

Un saludo.

17 comentarios:

  1. Muy Buena Informacion

    Solo Tengo Una Pregunta

    Como Se Obtiene el OID para Otro Tipo de Routers???

    ResponderEliminar
  2. Puedes usar SNMP walking para barrer todos los OIDs del MIB y buscar cual es el que te interesa.

    # snmpwalk -c public -v 2c -On DIRECCION_IP .

    Un saludo.

    ResponderEliminar
  3. Sabrías por casualidad como obtener la ssid y el pass del wifi a través de telnet para este router? Gracias.

    ResponderEliminar
  4. Claro...

    > sh
    # show wlan config

    Un saludo.

    ResponderEliminar
    Respuestas
    1. disculpa, no se si la respuesta que diste era con respecto a la pregunta del ssid y el pass total probé y no funcionó puesto que el el prompt es:
      ZTE>
      y aunque el comando show si está disponible no se ejecuta con la opción wlan puesto que solo hay wan lan all y en ninguna de ellas encuentro el ssid y el pass.

      Gracias por si puedes ayudarme y sino pues de todas maneras gracias por intentarlo tienes artículos interesantes...

      Eliminar
    2. Estamos hablando del mismo modelo de router? ZTE ZXV10 W300 v2.1 Yo tengo uno y si me va...

      Eliminar
    3. Mi prompt no es "ZTE>". Inicialmente es "$" luego de ejecutar el comando "sh" cambia a "ADSL#" y en ese modo ejecutas "show wlan config" y te muestra toda la info de la wlan.

      Un saludo.

      Eliminar
  5. Bueno, ahí entonces esta el pequeño detalle acabo de verificar mi versión y es un W300V1.0.0a_ZRD_CO, en fin... Gracias por tu colaboración finalmente me decidí por hacer web scraping con python para extraer la info. Sin embargo quisiera seguir en contacto contigo pues estoy empezando con este tema... Gracias.

    ResponderEliminar
    Respuestas
    1. Claro... si quieres puedes enviarme tu correo por el form de Contacto que está en la parte de arriba... o dejar comentarios en los posts... lo que prefieras :)

      Eliminar
  6. amigo me gustaria que me ayudaras dandome el usuario y la clave de este modem para acceder a el ya q no se puede en estos ultimos dias

    ResponderEliminar
    Respuestas
    1. Procede con las instrucciones que se indican en este post o también puedes usar este script para Nmap:

      https://github.com/alguien-gh/scripts/blob/master/exploits/nse/airocon.nse

      Un saludo.

      Eliminar
  7. las mac de estas comienzan con 98:F5:37 ?? y otra duda encontre una mac B0:75:D5 averiguando creo que este mismo modelo aunque no se la version :S . alguien con info acerca de estos models .:D

    ResponderEliminar
  8. Existe alguna forma de eliminar la credencial con password XXXairocon
    ¿?

    ResponderEliminar
    Respuestas
    1. No, la recomendación es configurar el firewall y deshabilitar el servicio SNMP.

      Eliminar
  9. Hola, tengo un problema con este router, cuando quise ingresar con la contraseña no lo conseguia, tuve que resetear y colocar una nueva contraseña, a menos de una hora volvió a pasar los mismo la nueva contraseña creada no funcionaba, tuve que hacer un tercer reseteo al router y otra contreseña mas complicada pero nada, vuelve a pasar lo mismo, me podrías ayudar para saber que esta sucediendo?? o alguna recomendación??

    ResponderEliminar
    Respuestas
    1. Quiza tenga que ver con esto:

      http://www.pecert.gob.pe/alertas/AL-20140-06001.html

      Te recomendaria resetear el router y luego cambiar la clave de los usuarios "admin" y "support". Y tambien configurar las ACL para que no sea posible acceder a la configuracion del router desde WAN. Suerte.

      Un saludo.

      Eliminar
  10. Excelene info amigo "Alguien", probe el tutorial con la esperanza de poder acceder al router y poder modificar algunas cosas, pero al estar en Telnet solo me pide password; te comento que estoy conectado mediante WiFi, pero solo puedo iniciar sesion con el user/pass (user/user), el modelo del router es (W300V1.0.3b_ZRD_CO3); por otro lado te cuento que, trate de descargar el archivo (rom-0) mediante (192.168.1.1/rom-0) pero fue inutil, debido a los pocos permiso que posee ese usuario; me gustaria saber si hay alguna manera de ingresar, de antemano muchas gracias...

    Un saludo...

    ResponderEliminar