martes, mayo 13, 2014

Auditar la WiFi del hotel con resaca y un jailbroken iPhone

Durante estas vacaciones de Semana Santa regresé a mi querida isla de Tenerife para disfrutar de unos días de vacaciones con la familia. Como el objetivo de estos días era desconectar de la frenética actividad a que nos lleva esta vida en el mundo de la seguridad informática, decidí dejar el ordenador portátil en casa, y disfrutar de estos días de playa, relax y algo de copas en alguno de los locales de moda de la isla.

Figura 1: Uno de los locales de moda en la isla de Tenerife.

Tras una noche de fiesta me desperté a eso de las 9:15 con la cabeza apunto de estallar, a causa del famoso Ron Arehucas de Canarias, pero mi insomnio crónico no me dejaba dormir, así que como no tenía ninguna computadora a mano, cogí el teléfono móvil y me puse a teclear para ver qué había pasado por Internet. Tras revisar los feeds RSS de seguridad y leer un post del blog del Maligno, reparé en que el hotel en el que me alojaba disponía de una red WiFi privada según nos habían dicho. Como no tenía mucho que hacer, me entretuve en saber cuál sería el nivel de seguridad que ellos entendían por privado.

Figura 2: Portal Cautivo WiFi del hotel.

Al abrir el navegador tras conectarme a la red inalámbrica, apareció el clásico portal cautivo en el que debía introducir mis credenciales. Lo primero que me llamó la atención fue el nombre del host que aparecía en la URL de login: “gateway.example.com”. Lo siguiente que hice fue consultar el direccionamiento de la red WiFi a la que me había conectado en el apartado de Ajustes de mi iPhone, para ver si el portal estaba aplicando aislamiento de clientes a nivel IP:

Figura 3: Direccionamiento de la red WiFi del hotel

Como se puede observar en la imagen, la máscara de subred que se aplica para esta red es “255.255.0.0”, por lo que hablamos de una red de clase B con direccionamiento “192.168.0.0” y no sólo el portal cautivo o la puerta de enlace son accesibles, sino también el resto de equipos.

Además del nombre del hotel, he tapado el nombre que aparece en el apartado de dominios de búsqueda, pues parece que corresponde al de la empresa que instaló y configuró esta red. No obstante, centré mi atención en el nombre de servidor del portal, “gateway.example.com”, así que abrí la aplicación Terminal instalada en mi dispositivo con jailbreak para realizar un ping al host:

Figura 4: Dirección del servidor gateway.example.com

La respuesta al comando ping situaba la dirección IP del portal en la “192.168.2.1”, así que el siguiente paso fue hacer una petición directamente al servidor sin utilizar el nombre de host, para ver si se veía algo diferente:

Figura 5: Portal de administración de Hotspot 4ipnet

Lo que se veía en el navegador ahora ya no era la página de inicio de sesión en el portal cautivo, sino la página de administración del dispositivo que implementaba dicho portal, y que como se puede observar era del fabricante “4ipnet”. No pude reprimirme, y el siguiente paso fue buscar rápidamente en Google las credenciales por defecto, que tanto juego dan en muchos casos, para el usuario administrador de estos dispositivos:

Figura 6: Manuales de dispositivos 4ipnet con credenciales por defecto

Quería comprobar, que en efecto los administradores habrían cambiado la clave por defecto. Y en efecto, afortunadamente la combinación “admin” “admin” que se puede observar en la mayoría de manuales para los productos de 4ipnet me devolvió un mensaje de “Contraseña incorrecta. Siga probando :( “

Como también tenía instalada en mi iPhone el escaner de red para iPhone Scanny, y como este tipo de dispositivos ofrece habitualmente más servicios además del HTTP para la administración de los mismos, decidí comprobar qué otros puertos estaban abiertos:

Figura 7: Escaneo de puertos del servidor con Scanny

Además de HTTP, HTTPs y PPTP, también se podía acceder al host mediante ssh. En ese momento recordé que al buscar la contraseña por defecto para los dispositivos de este fabricante, visualizando el avance del texto para el primero de los resultados se podía entrever que además del usuario admin, existía una cuenta de root.

Si el administrador de la red WiFi privada del hotel había cambiado la password de administrador, lo suyo es que hubiera hecho los deberes y cambiado también de la de root. Si no fuera así, para un posible atacante de esta red WiFi privada sería tan fácil como elegir él mismo cómo quiere configurarse la red. Volví a abrir el Terminal, para intentar conectarme por ssh al hotspot utilizando la cuenta de root, y la clave por defecto “admin”..... Owned! Cual fue mi sorpresa al ver que éste me recibía con los brazos abiertos:

Figura 8: La clave de root no estaba cambiada

En este instante me levanté sobresaltado, con el móvil en la mano y el post de El Lado del Mal que había comenzado a leer en la pantalla. La red WiFi privada había pasado a ser un entorno inseguro donde simplemente con el móvil desde la cama y en unos minutos, un atacante podría tener acceso completo a la consola del servidor que administra la red WiFi del hotel, para desde ahí poder hacer cualquier tipo de maldad: robar información, instalar una backdoor, saltar a otros servidores o clientes de la red... al estilo NSA. Nada de cosas "complicadas" como atacar WPA/WPA2, hacer cracking de las claves WPA/WPA2 o romper un hash MS-Chapv2 PPTP por diccionario o CloudCracker en una conexión PPTP.

No iba a conectarme a esa WiFi nunca, así que recopilé todos los datos y esperé a que una buena ducha luchara contra los efectos del alcohol para notificar en la recepción del hotel que deberían cambiar esa password

Autor: Deepak Daswani
http://deepakdaswani.es
http://twitter.com/dipudaswani

17 comentarios:

  1. Lo normal en un dia de resaca, ponerse a indagar un poco en la red wifi jaja. Buen post, la verdad que es interesante saberlo. Algunos no hacen bien los deberes.

    ResponderEliminar
  2. Joder que pasada, jajajaja! Interesante y divertido a la vez, el Wifi mola, da mucho juego.

    Salu2!

    ResponderEliminar
  3. Tengo una pregunta de novato:
    ¿Y que se podría hacer para evitar ese problema?
    Por si alguna vez descubro que en mi empresa pasa lo mismo y me toca ir a solucionarlo corriendo...

    ResponderEliminar
  4. Por desgracia, me parece que es una práctica muy común... Ahora tenemos Wifi por todas partes pero no podemos conectarnos porque no son seguras :-(

    Menos mal que, de vez en cuando, a alguien con resaca le da por hacer auditorías gratis a hoteles, jajaja.

    ResponderEliminar
  5. @Anonimo

    En este caso habría bastado que la empresa que montó la red (cuyo dominio está tapada en la foto de la captura de "Ajustes de mi Iphone") hubiese cambiado la password por defecto para el servicio ssh ;)

    ResponderEliminar
  6. Como es que no es chema el que publica? Es que se pueden mandar articulos o como?

    ResponderEliminar
  7. @anónimo, desde siempre yo he publicado en mi blog artículos que me han enviado que creía que merecía la pena poner por aquí. Deepak ha publicado ya 4 o 5 artículos por aquí...

    Saludos!

    ResponderEliminar
  8. Si tengo un articulo que creo que merece la pena te lo mando y me comentas si lo publicas o no??

    ResponderEliminar
  9. @Anónimo. Claro. Siempre ha sido así.

    Saludos!

    ResponderEliminar
    Respuestas
    1. Como puedo instalar el iphone scanny en mi android y el terminal con jailbreak en mi android zorry por mi ignorancia

      Eliminar
  10. No entendí nada de lo que hiciste, pero se mira interesante jajaj

    ResponderEliminar
  11. Que grande Deepak, ha faltado un defacement de la página de acceso al portal "Hacked by Arehucas..."

    Jajajaj

    ResponderEliminar
  12. jaja normalmente los administradores de red olvidan cambiar el password por defecto de los equipo , es un misterio saber cual sera el motivo!

    ResponderEliminar
  13. Hombre!, clase B ? ....

    ResponderEliminar
  14. Es lo que tiene el ron Arehucas....

    ResponderEliminar
  15. Aunque sea ya viejo el post...
    No cuadra la IP del Gateway que se ve en el iPhone 192.158.1.1, una subred un poco "rarita" para ser privada, con la que se ve luego en el ping del terminal 192.168.2.1
    Hay que tener cuidado con los "detalles".

    ResponderEliminar
  16. @Anónimo.
    Las capturas son totalmente verídicas y no hay nada que no pueda ser cierto. Sí que hay una errata en el texto del post en el que pone "192.168.0.0" en lugar de "192.158.0.0". El gateway era la 192.158.1.1, pero el hotspot, estaba en la IP 192.168.2.1 en otra red, que está claro que era accesible y a la que se podía acceder vía el gateway. Que esté en otra red no significa que no se pueda llegar a ella.
    El caso es totalmente real. De hecho los que instalaron esa Wifi vinieron a verme casualmente a una charla en Tenerife la que conté el caso, y me admitieron el despiste ;)
    Un saludo!

    ResponderEliminar