Mostrando entradas con la etiqueta Shodan. Mostrar todas las entradas
Mostrando entradas con la etiqueta Shodan. Mostrar todas las entradas

martes, enero 03, 2023

OSINT: Localizar personas con Shodan usando "Banner Grabbing"

A estas alturas del año suelo, como tanta gente, echar la vista atrás y pensar en cuanto viví en los últimos doce meses. Pero esta vez las circunstancias me han obligado a reflexionar sobre lo que la ciberseguridad me ha dado desde que, allá por 2008, Chema Alonso y yo escribimos aquel artículo sobre “Metadatos en Microsoft Office” e iniciamos un camino que nos llevaría a concebir herramientas como FOCA o Metashield Protector.

Figura 1: OSINT - Localizar personas con Shodan usando "Banner Grabbing".
Imagen hecha con Dall-e 2 (A happy hacker in Picasso style)

A mi cabeza han acudido recuerdos de la Black Hat y la gente con la que la compartimos. De tardes enteras que pasaron como un soplo mientras yo trataba de terminar el libro de "Hacking con Buscadores: Google, Bing & Shodan + Robtex". De charlas. De la fascinación que experimenté mientras descubría cosas nuevas (nuevas, al menos, para mí). De las ganas de transmitir aquello que estaba viendo.

Figura 2: Enrique Rando y Chema Alonso en la Open Source World Conference 2008

No sé por qué. Pero me quedé un rato pensando en un par de debates organizados por Yolanda Corral en su programa “Palabra de hacker” en los que participé. Uno era sobre “OSINT y hacking con buscadores” y allí me encontré con Vicente Aguilera, Rafael Otal, Miguel Ángel Cotanilla y John Jairo Fernández. El otro se titulaba “¿Qué es Shodan? El buscador, al descubierto” y en él compartí un rato con Eduardo Sánchez, Jorge Coronado y Miguel Ángel Arroyo
No sé en cuál de los dos nos preguntó Yolanda  qué era lo que más nos había sorprendido encontrar. Lo que sí recuerdo fue mi respuesta: localizar personas en Shodan. Bueno, personas, en realidad, no, pero sí sus nombres y apellidos y, en algunos casos, su dirección. Y es que los servicios técnicos de algunas operadoras ponían por entonces esa información en los "banners" de varios de los servicios de los routers de sus clientes. Supongo que para asegurarse de que no se conectaban al equipo equivocado.

Localizar personas con "Banner Grabbing"  

Hoy en día esos resultados son mucho menos frecuentes. Quizá porque se configure mejor los servicios. Quizá porque se expongan menos. Pero aún es posible encontrar algunos. Por ejemplo, en las cabeceras del protocolo FTP.

Figura 4: Servicio FTP (¡FTP!) con el nombre y la dirección
de una persona en su banner

… o en los mensajes que se muestran al pedir credenciales de acceso:

Figura 5: Autenticación para la administración que identifica al cliente

Pensándolo bien, esta reducción el número de resultados quizá se deba a que la tecnología ha evolucionado y ya no es habitual conectarse al router mediante FTP o Telnet. Si esta es la razón… ¡tenemos un problema! Porque la tecnología cambia rápidamente, pero las personas no. Y posiblemente terminemos cometiendo viejos errores con nuevas herramientas.

Por ejemplo, muchas organizaciones publicaron en Internet servicios de Escritorio Remoto cuando la pandemia de COVID-19 nos obligó a confinarnos y se produjo aquel boom del teletrabajo. Pantallas de inicio de sesión comenzaron a ser recogidas por Shodan y más de una mostraban la plantilla completa de un centro de trabajo o una organización:

Figura 7: Todos los compis de la oficina tienen cuenta en este equipo.
Y Shodan lo sabe.

Y, volviendo a los servicios técnicos de algunas operadoras, si aún siguen necesitando tener seguridad de que no tocan el equipamiento equivocado o la línea de una persona distinta de la que tienen al teléfono, no será raro que haya quien solucione el problema a la antigua usanza.

 
Pero parece que con el equipamiento actual es mejor hacerlo en otros puntos. Quizá en la configuración de la conexión punto a punto sobre Ethernet (PPPOE) de la operadora con cada cliente, donde es posible realizar de forma sencilla una gestión centralizada del enlace. Así que… ¿por qué no hacer en Shodan una búsqueda del tipo “pppoe garcia” o “pppoe juan”?

Figura 9: No sé por qué, pero separan los apellidos del nombre con una arroba @

En definitiva: como siempre, lo de siempre. Y esta es solo la parte que Shodan ve. No os robo más tiempo por hoy. Quizá otro día haya ocasión de hablar de los sistemas de vídeo-vigilancia que gestionan varias cámaras y etiquetan cada una con el nombre de la calle que monitoriza...

PD: Aunque no sé cuándo se publicará, ni si se publicará, escribo esto el 31 de diciembre. Así que os deseo que en el nuevo año no haya un segundo que no viváis con ilusión por el siguiente. Que vuestros días se os hagan cortos porque estéis haciendo lo que os apasiona con la gente que queréis. Y que los meses os parezcan largos cuando recordéis vuestros logros.

Autor: Enrique Rando González.

miércoles, agosto 29, 2018

Shodan es de cine: Hacking Tautulli, un GUI para Plex Media Server (Parte 2 de 2)

Continuando con la historia que está escrita en la primera parte de este artículo os recuerdo que habíamos descubierto que aparecía una key con un fichero en formato .mp4. Esta key no parte de la base del directorio en que nos encontramos ya que hasta ahora no hemos estado por una carpeta llamada parts, pero parece que referencia al fichero de la película en sí. Al invocar esta URL en el navegador y pulsar Enter… ¡nos la está (des)cargando embebidamente!

Figura 15: Shodan es de cine: Hacking Tautulli, un GUI para Plex Media Server (Parte 2 de 2)

¿Os acordáis más arriba del artículo, de que no podíamos verla porque nos pedía credenciales? Pues señoras y señores, lo de que “todos los caminos llevan a Roma” parece cierto… Solo había que mirar “debajo del felpudo” para hacernos con la “llave”. Para entender la situación dibuje el diagrama reflejado en la siguiente Figura 16.

Figura 16: Diagrama resumiendo la situación

Al final, tiene sentido que si intentamos entrar a ver la película a través de Tautulli nos topamos con la seguridad de la plataforma, pero al tirar con el token y la URL del fichero que aparece en la key y que apunta al servidor donde está Plex esta validación no tiene sentido. En la Figura 16 se muestran dos zonas claramente definidas:
Zona Azul: Shodan es una importante pieza en este “puzzle”. Se sitúa entre la zona azul y el resto de Internet. Será nuestro “portero” que nos dejará acceder al recinto si le decimos “la contraseña”, esa la sabemos (los dos strings a buscar CherryPy/5.1.0 y /home). 
Zona Roja: Estando ya en la Zona Azul (tranquilos, esta no se paga por “estacionar” ni tiene horarios :P) sólo hay que mirar “debajo del felpudo” para hacernos con la llave (en este caso, el Token).
Para ver todo lo expuesto en esta PoC, podéis pasar a la acción en este vídeo que realicé.

Figura 17: Vídeo de la PoC: Hacking Plex Media Server [PMS] through Tautulli (PlexPy) using Shodan

Para aquellos que se cuestionen si realmente notifiqué al usuario, aquí dejo la prueba, para que no se diga que soy malo. Al final el objetivo era entender si un sistema como ese, descubierto aleatoriamente con Shodan tenía robustez. No hacer daño a nadie y por lo tanto avisé.

Figura 18: Notificación al usuario

Parece que el usuario lo agradeció como se puede ver en su escueta pero directa respuesta :). Reflejé también lo expuesto en un “papel” (en inglés) con título: "Don’t break the door, the key is under the doormat"



¡Bonus Track!

Sería raro seria que hiciera un artículo sin esta sección, parece que ya es una costumbre. Creo que es importante mencionar estos detalles que complementan (o potencian) el impacto que puede tener este trabajo. Tautulli contiene una sección para configurar notificaciones y newsletters. En la figura siguiente vemos cómo capturar/desenmascarar sus credenciales usando las herramientas del desarrollador bajo Firefox.

Figura 20: Desenmascarando la password  del formulario bajo Firefox

El puerto usado en PMS puede ser alterado por el usuario (distinto al “by default” que es el 32400) aunque existen métodos para averiguarlo, cómo hacer un barrido con nmap en el caso de que Shodan no haya escaneado ese puerto, pero… ¿Por qué no se lo preguntamos amablemente a Plex directamente? Pues preguntémosle que no perdemos nada.

Figura 21: Datos de conexión internos en la configuración de Plex

El Token de Plex permite consultar los recursos que se tienen asociados (los vinculados a la cuenta del Token del usuario) cómo herramienta de troubleshooting. Está consulta se hace contra los propios servidores de Plex no al servidor de Plex que el usuario se instala cómo producto.

Encontré un Google Dork donde poder encontrar los servidores Tautulli indexados, pero no tiene nada que ver con el resultado que da Shodan (éste último, más enfocado a dispositivos conectados a Internet).

Figura 22: Google Dork de Tautulli

Para esta finalidad no es la herramienta adecuada, pero no va mal saber que existen otras posibilidades.

Reflexiones finales

Shodan dice que hay acerca de 2700 dispositivos Tautulli/PlexPy desprotegidos - sin necesidad de credenciales - en el momento que ha sido escrito el artículo. De ese total, 57 son de España, siendo el país ganador Estados Unidos. Esta cifra la vi en su máximo esplendor en el momento que realicé el vídeo, curiosamente la cifra disminuyó en un 10%. ¿Qué pensáis?… ¿bajará, subirá o se mantendrá (más o menos) igual? Hagan sus apuestas…

Figura 23: Resultados en Shodan

Esto me pareció realmente alarmante, ver un número tan elevado - incluyendo países de todo el mundo -, me hizo pensar que muchos no saben que su centro multimedia está expuesto a la merced de cualquiera. Posiblemente, la gran mayoría sienta la necesidad de poner sus ficheros multimedia en un mismo saco para tenerlos al alcance de todos sus dispositivos (smartphones, tablets, navegadores, clientes aplicaciones que se integran con este software, etcétera) tendrán cómo “checklist” comprobar la tarea de ¿funciona? Y siendo este afirmativo los mecanismos de seguridad son ignorados.

Ya me parece preocupante que se pueda seguir/hacer un “tracking” de la vida multimedia de alguien desperdiciando el Token que muestra Tautulli porque, estando en la Zona Azul cómo se comentaba, hay mucha información con la que “moldear”, útil para muchos fines, ya sean malos o buenos, sin olvidarse de que son datos privados, datos que no deberían de exponerse públicamente. No sólo películas pueden almacenarse en PMS.

Figura 24: Mostrando “Thumbnails” sin Necesidad de Token

Pasando el ratón para aquél que cumpla con los requisitos de tener sus fotos y Tautulli al descubierto, pueden verse sus miniaturas. Por supuesto que también son “downloadables”, debes de indicar el parámetro download=1 en la URI, tipo así:
http://IP:PUERTO/…*fichero.jpg?download=1&X-Plex-Token=TUTOKENOELDEELAQUI
Si no, puede dar un 400 Bad Request (del cuál sabemos la solución). Esto puede llegar a ser una nueva vertiente de ransomware omitiendo la necesidad de cifrar. ¿Para qué van a perder ese tiempo? Si los malos ya saben el e-mail de la víctima (obtenido en la Figura 12 de la primera parte del artículo). Además, haciendo uso del Token parece que Tautulli no te trackea, no deja rastro en registros.

Otros valiosos datos que son públicos, si ya te has hecho con el Token, son los vistos en Figura 21, de ahí además del puerto, sacas cuántos servidores Plex puede llegar a tener configurados con dicha cuenta, móviles que lo usan, direcciones de la red Interna...  modelos de móviles como en el caso de Google y la recuperación de cuentas.

Y que hay sobre los formularios de las notificaciones que se ha visto en Bonus Track de la Figura 20? Esas credenciales pueden ser válidas si son usadas en otras identidades del usuario, ya se ha visto que muchos usan la misma password para todo. Quizá den acceso al Plex del mismo en auténtico modo GUI.

Bien, creo que ya es suficiente. Cómo veis,  el espíritu y las ganas de aprender que decía Amador que tienen los hackers es lo que necesitaos para darnos cuenta de que las cosas pueden ser mejoradas. ,No hace falta centrarse en códigos de gran complejidad accesibles solo a exploiters.  Por supuesto, hay que formarse todo lo que se pueda, y para comenzar los libros de Hacking con Buscadores: Google, Bing & Shodan 3ª Edición o el de Hacking Web Technologies de Chema Alonso, Pablo González y Amador Aparacicio entre otros son perfectos para empezar a entender las herramientas que tenemos a mano...

Figura 25: Libros de Hacking en 0xWord para empezar en el hacking web

Tampoco he usado una cuenta en Shodan para esta PoC (no ha sido necesario visto los resultados), las facilidades son muchas, siéndose un poco curioso y con constancia, “las piezas de un puzzle pueden generar otro tipo de puzzle” y si encaja, tienes otra obra, y ya sólo te quedará exponerla.

Remember… Be Good, Be Hackers!

Autor: Gerard Fuguet (@GerardFuguet)

martes, agosto 28, 2018

Shodan es de cine: Hacking Tautulli, un GUI para Plex Media Server (Parte 1 de 2)

Recibí una invitación para asistir a un evento de ciberseguridad ofrecido por un proveedor de networking, impartiéndose unos días antes del inicio de verano. Este fue su primer evento en el ámbito de la seguridad informática acogiendo a fabricantes conocidos del sector. Entre ellos destacaba una persona experta en este mundo, un hacker, mencionado numerosas veces en este maligno blog y que además es coautor de un libro que si, mi navegador no me engaña,  todavía puede localizarse fácilmente en el córner izquierdo superior de esta página: Hacking Web Technologies. Él es Amador Aparicio (@amadapa).

Figura 1: Shodan es de cine: Hacking Tautulli, un GUI para Plex Media Server (Parte 1 de 2)

Cuando me percaté que se pronunciaba en la agenda dando no una, sino dos charlas: Hacking Web Technologies Old School y From hacking IT to Hacking OT: Jungla 4.0 no dudé en enviar mi OK de asistencia al evento.

El día del evento

Se celebró en Barcelona en el Café de la Pedrera. Antes del comienzo fue fácil localizarle, su camiseta de Rammstein fue lo primero que me llamó la atención - ya somos dos fans : ) -. Me acerqué para saludar, y me recibió estupendamente. No tengáis miedo de acercaros a un hacker, no muerden, son buenos y muy humanos, cómo todo… si se va con buena conducta y respeto ¿Qué razón habría de obtener un desprecio? A todo esto salió un recuerdo fotográfico que os dejo por aquí para que pongáis cara a Amador - con su camiseta de Rammstein -.

Figura 2: Amador y yo en el evento

Pero no quería hablar de la parte social de este evento, sino del contenido y de lo que inspiraron en mi posteriormente, que me animé a hacer un poco de Hacking con Buscadores usando Shodan.

Las charlas y Shodan

Asistir a un evento de manera presencial, es como asistir a un concierto de un grupo en directo, tanto los errores como las improvisaciones ganan un valor especial, por más que sea repetida “la función” en cada lugar, siempre es distinto.

Nos cautivó a todos con sus habilidades de Hacking Web Technologies, a mí en particular la facilidad de “orquestrarShodan a su estilo “old school” ¿Cómo puedo hacerlo con un portátil de gama baja-media y una conexión a Internet? Ese es uno de los objetivos, usando herramientas al alcance de todos a precios rentables.

Las demos que nos brindó eran “live”, es decir, búsqueda de dispositivos de red públicos (y reportados) que aun sabiéndose de ello, parecía no importarles a los propietarios, “muchos prefirieron dejar la puerta abierta o no arreglarla”…

Yo también quiero hacer Hacking Web Technologies

Se me grabaron en la memoria no volátil de mi cabeza esas búsquedas de escasos caracteres que hizo en Shodan, y el impulso motivador para adentrarme en este tipo de buscador fue un “flash” sobre la vulnerabilidad que descubrí en la cámara 360Fly, una vez alcanzado su web server.

Figura 3: Web Server de la 360Fly. Cadena de caracteres a buscar en Shodan

En la Figura 3, vemos cómo se repite la palabra “resource” tanto en título, la URL y hasta en el Body de la página. Era suficiente munición”para activar a Shodan en búsqueda de… ¿cámaras 360Fly públicas? No pareció encontrar ninguna al descubierto pero en la red de pesca lanzada había alguna otra cosa.

Figura 4: Búsqueda en Shodan y resultado del servicio

Un portal nos paraba los pies pidiendo credenciales, se lee Tautulli ¿De qué se tratará? Por la información de las cabeceras HTTP, vemos que el servidor indica: CherryPy/5.1.0. Sigamos más su rastro…

El papel que ejerce Tautulli

Al parecer, según su página web oficial es una aplicación de terceros para monitorizar un servidor multimedia Plex y la palabra Tautulli, viene del idioma Inuktitut. Lo siento, pero parece que Google Translate no lo tiene en su lista de lenguas disponibles.

La sección de descarga de la web nos lleva a su GitHub. Los avances de versionado son frecuentes, pero no parecen hacer lo mismo con todos sus componentes. CherryPy es el servidor web usado, un framework web minimalista escrito en Python. Su “changelog” de versionado también es frecuente.

Figura 5: Parte del Historial de versiones a día de hoy de CherryPy

Y la pregunta que se me vino… ¿cuál es la versión de CherryPy usado en Tautulli? Podríamos viajar al pasado con “la máquina del tiempo” pero en este caso es más práctico usar el propio histórico de GitHub que guarda los cambios cómo trofeos en vitrina” Y la deducción extraída la plasmamos en forma de tabla, que así se verá con mayor claridad.

Figura 6: Tabla de historial de cambios CherryPy en Tautulli

Para sacar estas deducciones, nos centramos en el fichero wsgiserver2.py donde refleja los cambios de versionado de CherryPy. En Figura 6, a la izquierda, se muestra quién realizó, y las veces del cambio de este fichero. A la derecha, y de manera encadenada, se obtiene el rango deducido por las fechas de wsgiserver2.py y la correlación del changelog de Tautulli. La versión de CherryPy que abarca más versiones en Tautulli es la 5.1.0 abarcando versión v1.3.16 (2016-05-01) en adelante (por el momento, la 2.1.14).

Como nota curiosa para bordar algo más el rastro, también podemos ver, que Tautulli antes se llamaba PlexPy y que su creador principal fue drzoidberg33 en lugar de ser JonnyWong16.

Tautulli al descubierto

El dato del servidor CherryPy usado es clave para buscar versiones actuales y las que datan del año 2016 (incluyendo las de PlexPy). El momento antes de poner el string CherryPy/5.1.0 en Shodan lo describiría con un sentimiento similar al que uno podía tener cuando abrías uno de esos huevos sorpresa,… ¿quñe saldrá...?

Figura 7: Portal principal de un Tautulli desprotegido

Entrando en puerto 8181 y al /home en URL sin… ¿usuario ni contraseña? Pues mirad por dónde que ya tenemos la receta para acceder a los Tautulli’s/PlexPy’s expuestos de todo el mundo, eso sí, gracias a Shodan. A priori obtenemos interesante información, cómo:

  • Películas más vistas.
  • Películas más populares.
  • Los programas de TV más vistos.
  • Los programas de televisión más populares.
  • Visto recientemente.
  • Usuarios más activos.
  • La barra de estadísticas...
  • Y... ¡Lo que se está viendo ahora!
Parece una buena fuente de datos de una persona para hacerse un Big Data en toda regla al estilo de Cambridge Analytica si tienes la dirección IP asociada a ti, por cualquier casualidad del destino. Además te dibuja gráficos cómo muestra la siguiente Figura 8.

Figura 8: Gráficas de estadísticas en Tautullli

La avaricia rompe el saco que dicen, pues vamos a ver si podemos romperlo. Cómo hackers intentamos "romper” con la finalidad de que sea reparado/subsanado, notificar algo sin llegar al punto de aprovechar la brecha que un “Bad Guy” podría llegar a hacer. En este contexto, el hecho de romper es para fortalecer, es cómo si vemos a alguien que se le cae algo por el camino y le avisamos para devolvérselo, no nos lo quedamos y nos vamos - para entendernos -, ¡por supuesto!

Echando un ojo a la videoteca

Pica la curiosidad por saber la arquitectura de esa parte. Nos dirigimos a Libraries y entre las distintas categorías que tiene el usuario, decidimos escoger una película de Ace Ventura. Clic para verla en Plex, por lo que pone en la miniatura, pero algo no va a ir bien en ese punto.

Figura 9: Abriendo un streaming

Ohh!... parece que a priori necesitamos las credenciales de Plex. Parece que esa zona es robusta, pero visto todo esto tal vez encontremos otra forma. Vamos a seguir viendo el portal.

No rompas la puerta, la llave esta debajo del felpudo

Otra pieza clave es el valor del Token que encontramos dentro del menú Settings, pues se trata de un master Token generado por un Plex Media Server del usuario que ha tenido que configurarlo en esta zona de la configuración para que pueda funcionar Tautulli con el software de Plex.

Figura 10: Master Token de Plex

Tautulli se alimenta de Plex Media Server (PMS) mediante accesos que realiza con este Token para poder construir una información clara de “tracking” de los movimientos que se realizan del contenido multimedia albergado en PMS.

Y más preguntas que surgieron… ¿qué privilegios nos da este Token? Google nos dijo que puede ser usado de la siguiente forma, según el soporte oficial de Plex, pasando el valor X-Plex-Token cómo parámetro en URL para obtener peticiones bajo XML.

Figura 11: X-Plex-Token en la dirección URL

En la documentación se explica que para obtener el Token hace falta un usuario y password de Plex. Nosotros no tenemos las credenciales, pero no las necesitamos porque tenemos ya el Token  que nos “regalaTautulli. No le haremos el feo y hacemos un “unboxing” del mismo. Usaremos:
http://IP:32400/?X-Plex-Token=YOURTOKENVALUEHERE
En puerto 32400 que es el estándar usado por Plex.

Figura 12: Estructura XML del Servidor Plex

Esto parece una estructura de carpetas ¿verdad? Pero en un entorno más propio de un “cmd style” que no de uno en modo GUI. Vamos a ver, como reto, si somos capaces de llegar a esa película de Ace Ventura y ver su estructura desde otra perspectiva, ahora que tenemos el Master Token de Plex.

Figura 13: Navegación en estructura de carpetas bajo XML

En Figura 12 nos sitúa en el directorio “root”. En Figura 13 nos encontramos dentro de /library ya que saltamos hasta dicho directorio, después a sections (/library/sections) y así sucesivamente, navegando en subcarpetas hasta llegar a la info deseada - siempre indicando el valor de X-Plex-Token cómo autorizador de las consultas en URI -. La interpretación de su XML es bastante intuitiva y te hace saber el tipo de “pavimento que pisas” en todo momento.

Las carpetas se distinguen con el nombre Directory, estos también llevan atributos. Los directorios tienen atributos con nombre key y el valor de éstos son los aceptados en URL. Con lo que, para saltar de directorio (o carpeta) en directorio, usaremos el contenido de las key. Pero espera, esta key parece contener una extensión de fichero, un .mp4. ¿Será otro directorio?

Figura 14: La key de la película

Nota: Puede usarse el atributo title (o el de type) como referencia para tener una idea del contenido, ya que el valor de una key no siempre será igual al valor del atributo title y no contendrá información deducible sobre su contenido.

[Continúa en la segunda parte]

Autor: Gerard Fuguet (@GerardFuguet)

martes, junio 26, 2018

Hundir la flota por computador: Fallos de seguridad en miles de barcos navegando por el mundo.

Los barcos de transporte que hoy día navegan por el mundo son quizás el entorno IoT definitivo ya que integran cientos de sensores, motores, etcétera. Hasta hace relativamente poco tiempo los ICS (Industrial Control System) de estos vehículos de transporte marítimos estaban totalmente asilados utilizando redes internas e incluso protocolos propios de comunicaciones los cuales apenas tenían apenas medidas de seguridad. Esto en principio no era un problema siempre y cuando el acceso físico y los terminales de comunicaciones estuviera controlado y supervisado.

Figura 1: Hundir la flota por computador.
Fallos de seguridad en miles de barcos navegando por el mundo.

Pero claro, hoy día con Internet todo eso ha cambiado y estos barcos se han conectado a Internet utilizando tecnologías como VSAT, GSM/LTE e incluso WiFi. De hecho, los problemas de base son prácticamente los mismos que se aplican a todos los dispositivos IoT: falta de actualizaciones, contraseñas inseguras, configuraciones de seguridad débiles, etcétera. Muchas de esas vulnerabilidades que pueden ser explotadas las hemos visto en detalle en libros como el de Sistemas de Control Industrial: Auditorías de seguridad y fortificación o el de Hacking de comunicaciones móviles: GSM,GPRS,UMTS, LTE.

Pero esta vez hablamos de auténticas casas o ciudades flotantes, y no de fábricas, llenas de estos aparatos electrónicos (sistemas de navegación, ECDIS, grúas, etcétera) que además surcan los mares del mundo transportando contenedores, vehículos, materiales peligrosos o incluso personas. Estamos ante todos los ingredientes para que se produzca un auténtico desastre y es urgente poner remedio lo antes posible.

Figura 2: Barco con contenedores con la carga desplazada

Pero hay muchos factores que hacen bastante complicado solucionar este problema de ciberseguridad para la industria marítima. Uno de ellos es que muchos de estos sistemas han sido construidos hace más de treinta años con tecnologías totalmente obsoletas, sin mantenimiento ni actualizaciones. Otro factor que destacar es la tripulación la cual está en constante cambio o relevo, añade un factor más para que se produzca un fallo de ciberseguridad tanto por un error humano (por desconocimiento) como por algún tipo de ataque usando ingeniería social.

Por último, cambiar todos estos complejos sistemas implica también actualizar los mismos dispositivos que existen en las bases localizadas en las compañías navieras, lo que implica una gran inversión.

Jugando a los barquitos por computador con Shodan

Si has leído el libro de Hacking con Buscadores: Bing, Google & Shodan, conocerás la potencia de este último para localizar sistemas con las características que he citado en la primera parte del artículo, así que vamos a utilizar Shodan para comprobar lo sencillo que es localizar y analizar barcos desde Internet. Para empezar, Shodan ya dispone de un servicio el cual nos ofrece un seguimiento de barcos actualmente en ruta en tiempo real

Figura 3: Ship Tracker de Shodan

Podemos utilizar la información que nos ofrece este localizador de Shodan o podemos hacerlo nosotros mismo de forma manual. Para encontrar barcos tenemos que centrarnos en los principales proveedores de comunicaciones por vía satélite como por ejemplo Inmarsat, Telenor, Cobham, Iridium, Thuraya, etcétera, así como en las empresas que se dedican a fabricar terminales de comunicaciones como por ejemplo KVH. También hay que poner atención a los diferentes programas de gestión del barco como por ejemplo los ofrecidos por ThinkPalm, Marine Office PMS o DNV-GL. Añadir el término “vessel” como parámetro en el hostname también ayuda a localizar este tipo de vehículos de transporte:

Figura 4: Ejemplo de búsqueda con Shodan utilizando los términos “vessel” e “Inmarsat”

Es realmente sorprendente la cantidad de información que podemos obtener sin ni siquiera acceder como usuario del servicio. Por ejemplo, los dispositivos de la marca Cobham muestran mucha información. Ofrecen datos como el número de serie, dirección IP, posición GPS, modelo, etcétera, como se puede apreciar en la siguiente captura de un ejemplo que hemos encontrado al azar:

Figura 5: Datos del dispositivo de conexión vía satélite marca Cobham

Las coordenadas GNSS lo ubican en el momento que hemos escrito este post, en 28.70 grados Sur y 46.78 grados Oeste. Utilizando simplemente Google Maps podemos ver la localización actual del barco en cuestión:

Figura 6: Ubicación del barco en Google Maps

Y si esta información la contrastamos con la web www.vesselfinder.com (AIS Data) podemos saber en un instante más información sobre el barco, incluido su nombre “Ocean ********” además de comprobar que la ubicación que hemos obtenido antes es correcta:

Figura 7: Información más detallada del barco usando el servcio www.vesselfinder.com

Podemos incluso obtener una ficha completa del barco:

Figura 8: Ficha técnica del barco

Toda esta información es pública y accesible desde Internet, no ha hecho falta ningún tipo de ataque o búsqueda de una vulnerabilidad para obtenerla. Partiendo de todos estos datos es posible ejecutar un ataque más dirigido para tomar el control de otras funciones del barco empezando por comprobar si existen exploits para este tipo de software y comprobar las versiones firmware de los dispositivos (por ejemplo, de dispositivos de comunicación vía satélite) para buscar las obsoletas.

Pero, es más, sabiendo el nombre del barco también sería factible realizar una búsqueda por redes sociales e Internet para encontrar el nombre del capitán, posibles marineros, etc y con esta información realizar un ataque dirigido utilizando phishing o incluso ingeniería social.

Posibles escenarios de ataque

Uno de los barcos más críticos que pueden ser objetivo de estos ataques son los de transporte de contenedores. Estos utilizan mensajes EDIFACT con una serie de códigos los cuales podrían ser interceptados y modificados. En concreto, se podrían manipular los códigos BAPLIE EDIFACT utilizados para todo tipo de transporte. Estos barcos podían ser muy vulnerables a este tipo de ataques ya que podrían provocar incluso situaciones de balanceo de carga lo cual podría llevar al volcado del barco. Vamos a ver un ejemplo con el siguiente mensaje EDIFACT:
MEA+AAE+VGM+KGM:5000
• MEA: medida (measure). Indica el peso físico de los bienes transportados
• AAE: reconocimiento de descripción (parámetro de control)
• VGM: indica que el objeto es una pieza de transporte como por ejemplo un contenedor
• KGM: indica el peso en Kilogramos
Por lo tanto, si podemos modificar el peso y en vez de 5.000 le ponemos 1.000, este se ubicará en una zona distinta dentro del barco creando inestabilidad debido a que se colocará con otros contenedores de menor peso lo que puede llegar a inclinar hacia un lado el barco o incluso llegar a hundirlo por exceso de peso de carga. Si esto se repite con el número suficiente de contenedores podríamos incluso llegar a volcarlo. Estos códigos se utilizan como entrada para software de optimización de carga como por ejemplo IS StowMan o PowerStow, los cuales tienen un aspecto similar al mostrado en la siguiente imagen:

Figura 9: Ejemplo de software de distribución de la disposición
de los contenedores en función de su tipo de carga y peso

Pero esto no queda aquí, incluso podría ser factible marcar un contenedor que tiene material explosivo o inflamable y quitarle la marca de “material peligroso” lo que podría provocar un incendio o una explosión en caso de una manipulación incorrecta. Es muy importante asegurar al máximo este tipo de comunicaciones para evitar cualquier interceptación y modificación de los códigos. En este artículo tienes más información.

Esto no es nuevo, ya habló bastante de este tema en 2017 pero parece que hoy día sigue más o menos igual. En un estudio más reciente se indica que hay más de 50.000 barcos susceptibles a recibir un ciberataque. Pero esto no es sólo teoría, en 2017 la empresa Moller-Maerks sufrió un ciberataque que provoco retrasos en toda su flota provocando pérdidas económicas.

Parece ser que poco a poco la industria marítima de transporte se empieza a concienciar de este grave problema de seguridad, pero llevará mucho tiempo poder auditar y securizar todos los ICS de los barcos, exactamente el mismo problema que nos ocurre con el IoT en tierra firme. Con la llegada de la Industria 4.0 no podemos olvidar el transporte marítimo e incluirlo como un elemento más a controlar y asegurar dentro del mundo del Internet of Things.

Autor: Fran Ramírez, (@cyberhadesblog) miembro del equipo de Crazy Ideas en CDO en Telefónica, co-autor del libro "Microhistorias: Anécdotas y Curiosidades de la historia de la informática (y los hackers)", del libro "Docker: SecDevOps" y del blog Cyberhades.

Nota del autor: Hay tres aparatos electrónicos de mi infancia a los cuales les tengo un gran cariño, ya que me marcaron de por vida. El primero fue un videojuego portátil llamado Galaxy Invader 1000 (no recuerdo la de horas que pasaba jugando a este sencillo clon de Space Invaders), un ZX81 con 1KB de memoria RAM (menos memoria que un simple SMS de un móvil) y mi querido Hundir la Flota por Computador, cariño que comparto con Chema Alonso sobre este fantástico juego de nuestra infancia. Sirva este post como homenaje a este último ;)

viernes, julio 21, 2017

Qué fácil es ver las flaquezas de seguridad de algunos ICS (Sistemas de Control Industrial)

En los últimos años, la seguridad informática ha adquirido una gran relevancia, y no hace falta que lo jure, ¡por algo estáis en el lado del mal! Todos los sectores están haciendo lo que pueden para protegerse de los ciberataques; sin embargo, en algunas partes de los sectores industriales hay quién se está quedando por detrás, y para entender por qué hay que remontar al año 2000. En aquellos años Internet no traía grandes beneficios aún a muchos sectores, por lo que las redes de los Sistemas de Control Industrial (ICS, por sus siglas en inglés) eran locales, lo que hacía que fueran vulnerables solo ante un ataque realizado por alguien que estuviera físicamente en el entorno.

Figura 1: Qué fácil es ver las flaquezas de seguridad de algunos ICS (Sistemas de Control Industrial)

Con el auge de Internet estos últimos años, ha surgido la llamada Industria 4.0, que define un modelo híperconectado para ofrecer servicios de inmediato en cualquier parte del mundo, y son numerosas las empresas que se han sumado a esta innovadora tendencia. Pero la mayoría al conectarse, han mantenido sus ICS tal y como las tenían antes de conectarse por lo que se están descubriendo más y más vulnerabilidades cada año. Y eso era, y es, un problema.

Figura 2: Vulnerabilidades descubiertas en sistemas ICS del año 1997 al 2015

Tenemos la suerte, aunque en parte desgracia, y ahora explicaré por qué, de que en la Ley PIC (protección de infraestructuras críticas, 8/2011 de 28 de abril) se establecieran unas medidas de seguridad obligatorias para las infraestructuras críticas de España, las cuales están controladas por ICS, así que hay que protegerlas con todo lo que se pueda. Ahora bien, antes he dicho que en parte era una desgracia, y esto es porque infraestructuras críticas solo son aquellas que son indispensables para la población y que si se pararan no podríamos cubrir.

Figura 3: Ley de Protección de Infraestructuras Críticas en España

Pero la ley solo cubre a las infraestructuras críticas e Internet es un lugar muy vasto. Una vez que conectamos las industria a la red, cualquiera puede hacer un poco de Hacking con Buscadores utilizando el buscador de dispositivos de Shodan, y, ¿podéis adivinar qué se puede encontrar? Efectivamente, los ICS vulnerables. Y lo mejor es que son tan buscados que Shodan ya tiene un apartado para ellos.

Figura 4: Buscador de ICSs en Shodan

Lo curioso de Shodan es que además puedes buscar protocolos y puertos abiertos, que son una vía de entrada al sistema que está al otro lado. Y rebuscando un poco entre los protocolos más comunes de ICS, como Modbus o DNP3, podemos encontrar bastantes ICS vulnerables, y lo más preocupante es que no hay que tener mucho conocimiento previo para penetrar en una red en la que puedes provocar un desastre gordo como una inundación al abrir las compuertas de una presa o fastidiar la fabricación de algún producto que luego cause daños y pérdidas de dinero.

Figura 5: Contraseñas en los resultados de los productos

Además, como podéis observar en la Figura 5 tras buscar un poco se empiezan a encontrar las contraseñas de servidores a la vista sin protección alguna - ¿Será algún Honey Pot? -. Y no penséis que es un solo caso específico, hay por lo menos cientos de ICS que o tienen la contraseña a plena vista o usan las contraseñas por defecto (investigadores rusos de SCADA StrangeLove listaron más de 100 productos SCADA, los utilizados por los ICS, y sus contraseñas por defecto, que no son cambiadas en muchos casos), o, mucho más peligroso aún, no requieren de credenciales para entrar.

Figura 6: SCADAPASS


En la Figura 7, por ejemplo, se ha entrado sin que pidieran credenciales, y nosotros que somos aficionados a la seguridad no hacemos nada con ello, solo informamos, pero la posibilidad de que un ciberdelincuente entre es muy alta, y estando sin credenciales, establecer unas nuevas y dejar fuera a los verdaderos dueños es un paso muy sencillo, tan solo hay que navegar un poco por el portal.

Figura 7: Sistemas de control ICS sin passwords publicados en Internet

Que los sistemas SCADA de los que dependen nuestras industrias sean tan vulnerables parece una situación de ficción; y lo que parece más ficción todavía es que su seguridad no sea obligatoria por ley. Ya va siendo hora de que los gobiernos tomen medidas, y que posiblemente hagan que la ley PIC no abarque solo a infraestructuras críticas, porque, como ya habéis visto, entrar en ICS y hacer estropicios gordos es tan sencillo como mirar y rebuscar un poco en Shodan. Os recomiendo la lectura del libro de Infraestructuas Críticas & Sistemas de Control Industrial: Auditorías de Seguridad y Fortificación para conocer mucho más de este tema.

Autor: Jorge "Junior" de la Morena (Intership at ElevenPaths)

Entrada destacada

+300 referencias a papers, posts y talks de Hacking & Security con Inteligencia Artificial

Hace un mes comencé a recuperar en un post mi interés en los últimos años, donde he publicado muchos artículos en este blog , y he dejado mu...

Entradas populares