sábado, junio 30, 2018

Meet Movistar Home: Juega a "OK Aura" con el "Clink" & "Clonk" #MeetMovistarHome

Cuando el pasado mes de Febrero me tocó hacer la presentación de Movistar Home en el Mobile World Congress de este año e hice las demos en el escenario con el dispositivo, las demos iban más que probadas. Las había hecho decenas y decenas de veces. Había hecho el proceso completo de demos tantas veces que era imposible que me olvidara de un paso.

Figura 1: Meet Movistar Home: Juega a "OK Aura" con el "Clink" & "Clonk"

Mis compañeros también se lo sabían. De hecho, se lo sabían mejor que yo, porque cada vez que cambiaba el discurso un poco, o hablaba con AURA en Movistar Home usando diferentes palabras - esa es la gracia de utilizar interfaces de lenguaje natural en una plataforma "cognitive" - ellos sufrían. Podía verlos envejecer y sentir el aceleramiento de su corazón cada vez que decía algo nuevo al hablar con AURA.

A post shared by Chema Alonso (@chemaalonso) on

En ese momento, cuando empecé las demos y crucé los dedos en el escenario todos estaban atentos a mis palabras. Saber si AURA me había entendido era estar atentos al Clink y al Clonk. Yo iba a ir hablando y enviando mensajes de voz a Movistar Home y AURA debía entender lo que decía, reconocer mi intención, y ejecutar mi acción. Y eso lo sabíamos todos por los mensajes que daba. Un Clink significaba que AURA me había entendido y había reconocido una acción a ejecutar. Un Clonk significaba que no me había entendido y no iba a hacer nada.

A post shared by Chema Alonso (@chemaalonso) on

Cuando empecé las demos todo comenzó según lo previsto. Varios Clinks que nos dieron confianza, pero de repente sonó un Clonk. Nadie se dio cuenta, pero yo pude oír el "crack" en el corazón de David y Daniel, que estaban allí detrás envejeciendo por segundos. Antonio los tumbó en el pasillo y comenzó a aplicarles masajes cardiacos para que volvieran en sí. Los cuerpos médicos de primeros auxilios les pusieron oxígeno, pero.... yo opté por seguir adelante y mantener sangre fría. Era una demo real, y que no me reconociera una intención es algo natural y parte del uso de los sistemas cognitivos


Figura 4: Presentación de Movistar Home en MWC 2018

Si escuchas con atención el audio de la presentación, podrás descubrir exactamente el momento en que cuando le doy el comando, AURA responde con un "Clonk". Por suerte, ese caso de uso no estaba enlazado con el resto de la demo, así que evalué si merecía la pena repetirlo y en milésimas de segundo me dije a mí mismo: "Adelante". Todo estaba bien y probado, debía funcionar. Por supuesto, siempre puede fallar algo. Eco que haga que no entienda correctamente la voz, un fallo con la conexión WiFi de la Televisión, la Fibra en Vitoria, o que la temperatura quemara cualquier componente electrónico de cualquiera de los dispositivos que teníamos en el escenario. Es el riesgo de hacer demos en directo. Adrenalina en vena.

A post shared by Chema Alonso (@chemaalonso) on

El momento difícil de la presentación no era ese, sino el de recibir la Vídeo-Conferencia desde Vitoria con Mikel Landa y pasarla a la televisión. De hecho, cuando funcionó tan bien como lo habíamos ensayado en el pasado me dio tal subidón que la alegría que tengo hablando con Mikel en la presentación es solo una prueba de cómo estaba yo por dentro. Desde ese día, ver a Mikel Landa, en persona o por la tele dando pedaladas me alegra el corazón, y es porque dentro de mi hace "Clink".


Así que, el otro día, aprovechando que estaban Mikel Landa, Alejandro Valverde y Nairo Quintana del equipo ciclista Movistar Team paseando por el Distrito C de Telefónica, aproveché para jugar unos minutos al OK AURA con ellos, a ver si tenían tanta suerte o no como tuve yo en su momento.


Figura 7: Juando al OK AURA con Mikel Landa, Nairo Quintana
y Alejandro Valverde, del Movistar Team

Y ahora podrás jugar tú a esto mismo con Movistar Home en Madrid y Barcelona. El plan de proyecto sigue como estaba previsto, y a partir de Octubre va a estar disponible para nuestros clientes, pero a partir de la semana que vienes puedes ir a las tiendas de Gran Vía 28 en Madrid, y a la de Movistar Centre en la Plaza de Catalunya en Barcelona a jugar al "OK AURA". Jugar a ver si te hace Clink o Clonk.

Saludos Malignos!

viernes, junio 29, 2018

Unos "consejos veraniegos" para cuidar tu tarjeta de crédito

Llega el verano a España, y con él también el salir a hacer mil y una actividad al aire libre, que van desde tomar unas cañas, hasta pasar días desplazado de nuestra zona habitual de vida. En esos momentos es probable que consumas y pagues con tarjeta de crédito en muchos sitios, así que os voy a dejar unos pequeños "tips" que le doy a mis amigos para evitar que te la clonen o que, si lo hacen, la puedan utilizar.

Figura 1: Unos "consejos veraniegos" para cuidar tu tarjeta de crédito

No pretendo hablar de todas las medidas de seguridad posibles a tomar en las tarjetas de crédito, así que si tienes alguna idea más que aportar, siéntete libre de ponerlas en los comentarios, y si son buenos los voy agregando al artículo.
- Bizum, Twipp e Instant Money: Como suelo publicar en mi Instagram, a mí me gusta salir a comer, cenar y tomar algo con amigos, así desde hace tiempo utilizo sistemas de pago con el móvil entre amigos. Uso Bizum que permite compartir dinero instantáneamente entre amigos, Twyp, que además permite el modo pay and cash en caso de necesidad e Instant Money para enviar dinero por SMS. Usar esos servicios evita, además, que tengas que dar tu número de tarjeta de crédito o número de cuenta a nadie. Muy fáciles de configurar y listos en minutos.
Figura 2: App de Bizum + Instant Money + pago sticker contactless (no activado)
Todos estos sistemas llevan asociado detrás una tarjeta de crédito - o débito en el caso de Instant Money para que no tenga comisiones - y así evito siempre que puedo llevar mucho dinero en efectivo encima para repartirnos los pagos en las cenas. Así, los amigos evitamos el espectáculo de las ocho tarjetas de crédito encima de la mesa para dividir la cuenta. Uno paga, y el resto se lo pasa a la tarjeta por cualquier método, con lo que reducimos "la superficie de exposición" de la tarjeta.
- Protección Contactless: Ya la mayoría de las tarjetas de crédito y débito son "Contactless", además de que existan los stickers Contactless, así que para evitar que hagan pagos de menos de 20 € sin tu consentimiento, lo mejor es llevar tu tarjeta siempre dentro de una funda de protección para que cuando quieras hacer este pago seas tú el que la saque.
Figura 3: Funda para tarjetas contactless
- Apple Pay o Google Pay: Yo no los uso mucho, pero el funcionamiento es similar. No hay tarjeta de crédito, así que mejor. En esos casos, la duda es el pago Contactless, ya que con una tarjeta sin contacto la llevo en la cartera protegida para evitar pagos menores de 20 € sin poner el PIN, pero el terminal no lo llevo en una carcasa de protección para este tipo de pagos. Aún así, todo lo que sea evitar que se lleven la tarjeta al PoS lejos de tu vista - algo aún muy típico en muchos sitios -, evitará que la clonen.
- Restricción de tarjeta para uso de Internet o en el extranjero: Muchas veces las tarjetas que se clonan se venden en el mercado negro y se usan para pagos por Internet o en otros países. Lo mejor es que tengas la app de tu banco (o mediante la web), controlado para que no esté activada en el extranjero o para pagos vía Internet.
Figura 4: Protección para evitar uso de tarjeta en el extranjero o por Internet desde banca móvil
Hay que tener en cuenta que, si estamos ante un ataque sofisticado de malware en un PoS (Point of Sale) las restricciones de uso en Internet, en el extranjero o la protección del CVV/CVC son lo único que nos salvará. En esta sesión nuestro compañero Gabriel Bergel nos contaba este tipo de ataques.

Figura 5: Fraude en PoS

- "Pedir DNI" o firma: Cuando sales de España no es común que te pidan un "Photo-ID" para validar que eres el dueño de esa tarjeta y miran solo la firma personal que hay en la tarjeta para ver si se parece a la que pones en el recibo del pago con tarjeta. En España lo de mirar la firma es algo que no se estila, pero sí se suele pedir el DNI para ver que el que paga tiene los dos documentos, y revisar la fotografía "someramente". 
Hace años que yo no llevo las tarjetas firmadas por detrás, para que si me la roban no sepan ni cómo es mi firma, y además suelo poner el texto de PEDIR DNI para que los que me cobran con tarjeta siempre me pidan el DNI. Es un consejo que me dio un amigo y yo lo sigo a pesar de que en algún país fuera de España me ha dado guerra y he tenido que dar explicaciones..
Figura 6: Pedir DNI y pegatina en el CVV/CVC

- CVV tapado: El número de seguridad CVV de las tarjetas de crédito suele usarse como un segundo factor de protección para evitar las copias de bandas magnéticas. Es un número que va por detrás de 3 o 4 cifras y que se necesita para el pago por Internet sí o sí. Lo que hace mucha gente que las clona en PoS es hacer la copia magnética y luego mirar el CVV manualmente y apuntarlo en un papel. Un truco sencillo es memorizarlo y taparlo con una pegatina para que nadie lo pueda ver sin despegar la cinta.
- Número de cancelación en la agenda de contactos: Cuando te das cuenta de un robo de tarjeta de crédito, siempre pierdes tiempo intentando localizar el número de teléfono de cancelación directa. Lo puedes hacer por la web y la app, pero si tu banco no lo tiene, ten metido en la agenda de contactos el número nada más adquirir la tarjeta para que puedas cancelarla en 1 minuto. 
Figura 7: Tarjeta de crédito publicada en Twitter

Por supuesto, tener límites de consumo ajustados a tu vida, con los seguros de protección adecuados, que no se lleven tu tarjeta de crédito fuera de tu vista, no usarla en sitios webs que no tengan pasarela de pago de una entidad bancaria, usar tarjetas virtuales para compras por Internet y no publicarla en Twitter u otra red social, son otros buenos hábitos que te ayudarán a mantener tu dinero en su sitio.

Saludos Malignos!

jueves, junio 28, 2018

macOS & Windows: Pentesting it with iBombshell (Part 2 de 2)

Continuando con la primera parte de este artículo, evolucionamos las ideas que ahí se muestran comenzando con una pregunta. ¿Y si luego perdemos la conexión a Internet desde la máquina y no podemos descargar las funciones? Si más adelante no tengo Internet el sistema está preparado para ello y se puede hacer uso de la funcionalidad savefunctions que consta, de dos funciones.

Figura 10: macOS & Windows: Pentesting it with iBombshell (Part 2 de 2)

La primera vuelca todas las funciones cargadas en memoria en el registro de Windows en la ruta HKCU:\Software\Classes\ibombshell. La segunda función verifica la existencia de dicha ruta y recupera las funciones y las mete en memoria.

Figura 11: función savefunctions

En este caso, no habría necesidad de descargarlas de Internet. Hay que tener en cuenta que ibombshell no descarga una función de Internet que ya tiene, aunque dispone de una función llamada clearfunction, la cual se puede encontrar en la ruta system/clearfunction, que permite borrar una función de memoria. Si esto ocurre, la siguiente vez que se pida la función se descargará del repositorio.

Figura 12: Claves en el registro para la función savefunctions

Si hacemos uso de la función savefunctions podemos ver que en la ruta HKCU:\Software\Classes\ibombshell se crean entradas con el nombre de cada función. Dentro se crea una clave por cada línea de la función, por lo que, si la función tiene 1000 líneas, habrá 1000 claves, tal y como se puede ver en la imagen superior.


Figura 13: PoC iBombShell savefunctions

La nueva idea: ibombshell silently mode

La segunda idea era aprovechar este prompt de forma remota, por lo que se introdujo un parámetro que permite ejecutar el prompt en modo silencioso. Es decir, el código Powershell se ejecutará de forma que no debiera ser visible y hará llamadas a una URI, primero para registrarse y después para descargar y ejecutar funciones e instrucciones. Por último, reportará los resultados. Esto es lo que hemos denominado Warrior y nos sirve para disponer de una gran posibilidad en la post-explotación dentro de un Ethical Hacking haciendo uso de Pentesting con PowerShell.

Figura 14: parámetros de invocación del Silently mode

En el comienzo de la función console, el prompt de ibombshell, se dispone de una serie de parámetros $Silently, $uriConsole e $id. Al menos a día de hoy. Estos parámetros marcan el modo de ejecución, la URI a la que tiene que llamar el warrior y el ID para diferenciar un warrior de otro. El esquema quedaría como se puede ver en la siguiente imagen:

Figura 15: Esquema de funcionamiento

Para finalizar queríamos enseñaros vídeos, aunque la herramienta no está disponible aún porque debemos pulir algunas cosas. Queremos liberarla como OpenSource y que cualquiera pueda mejorarla y ampliar su funcionalidad. Todavía tenemos un largo camino, pero queríamos compartir con nuestros amigos de EuskalHack lo que estábamos trabajando.


Figura 16: PoC Metasploit con iBombshell warrior

Os dejamos la última demo que se hizo en la charla del sábado. El sábado introducíamos nuestro warrior en la máquina Windows 7 gracias a explotación con Metasploit y el uso del módulo de Powershell de Meterpreter. En el video esto no aparece. El resto es igual, se realiza un bypass de UAC y se ejecuta un nuevo warrior en un nivel de integridad alto, para obtener los hashes de la máquina y realiza PtH contra una máquina Windows 10 ejecutando nuestro warrior en la nueva máquina, tal y como vemos en este ataque desde Kali Linux.


Figura 17: PoC Warrior + Bypass UAC + Pass the hash

Por último, os dejamos este video de ibombshell funcionando en macOS, ejecutando la función Invoke-Portscan. Esto refleja que se puede crear un gran número de funciones de post-explotación para macOS y Linux y se abren nuevas posibilidades al Hacking de macOS.


Figura 18: PoC de iBombShell en macOS

Una de las preguntas que me hizo ilusión ver era el parecido con Powershell Empire, pero no es comparable. La primera diferencia es obvia, y es el prompt everywhere, además de la posibilidad de utilizar el loaderext en el warrior lo cual amplía mucho la posibilidad de utilizar cualquier código en el entorno del warrior. Sea como sea, es un orgullo que las comparen, pero no son herramientas, a día de hoy, comparables. Esperamos seguir avanzando, tenemos algunas ideas e iremos compartiendo y comentando. Esperamos poder subir una primera versión en poco tiempo.

Autor: Pablo González Pérez (@pablogonzalezpe), escritor de los libros "Metasploit para Pentesters", "Hacking con Metasploit: Advance Pentesting" "Hacking Windows", "Ethical Hacking", "Got Root" y “Pentesting con Powershell”, Microsoft MVP en Seguridad y Security Researcher en ElevenPaths

miércoles, junio 27, 2018

macOS & Windows: Pentesting it with iBombshell (Part 1 de 2)

El fin de semana pasado estuvimos en Euskalhack 2018. Una CON que sin duda merece, y mucho, la pena. No solo por la calidad de los ponentes, sino también por la calidad humana y el trato que todos recibimos. Buena gente, buena comida, buen paisaje, buen hacking, ¿qué más se puede pedir? Junto a mi compañero Álvaro Nuñez-Romero daba una charla el pasado sábado 23 de junio.

Figura 1: macOS & Windows: Pentesting it with iBombshell (Part 1 de 2)

La charla tenía que ver con algo que todo pentester debe conocer a la perfección, el mundo del Pentesting con PowerShell, en la que, basándonos en una idea anterior, presentábamos una nueva herramienta que ayuda a integrar un sin fin de funciones en Powershell directamente a memoria, que proporciona un prompt flexible y potente y que proporciona una vía de post-explotación gracias al concepto de “warrior”.

La primera idea: El comienzo del juego

La llegada de Powershell al mundo GNU/Linux y macOS llamó mi atención hace un tiempo. Powershell es una de las líneas de comandos más potentes, si no la que más, y poder utilizar su potencial en otros sistemas es algo interesante. Es cierto que el no disponer por defecto de Powershell en macOS - donde tradicionalmente se utilizan otras técnicas de hacking en macOS - y GNU/Linux es algo que lo penaliza, por ejemplo, frente a su uso en sistemas Microsoft, en los cuales viene por defecto desde Windows 7 - por eso es pieza clave en el Hacking de Windows -.

Basándonos en los antecedes de algunos de mi trabajos sobre Powershell, como el caso de PSBot - y su uso en el ámbito del Ethical Hacking llegamos a la conclusión de que sería interesante aunar posibilidades en una nueva función de Powershell que permitiera integrar diferentes funciones orientadas a pentesting, aportar flexibilidad en el manejo del prompt y poder usar en cualquier sistema. Además, de crearnos todo lo necesario para llevarlo a cabo. Aquí nació la primera propuesta "macindows", la cual fue cambiada a "ibombshell". Pregúntenle por los nombres a mi compañero Álvaro.


Figura 2: PSBot, dame una PowerShell y moveré el mundo

En los trabajos anteriores se mostraba un escenario inicial en el que el pentester no tenía la posibilidad de instalar herramientas y tiraba de las posibilidades de Powershell. En ambos trabajos se presentaba una herramienta que proporcionaba la posibilidad de cargar funciones, en la primera tocando disco y en la segunda directa a memoria. Las instrucciones se encontraban en un servidor del propio usuario, mientras que en el primer trabajo se utilizaba un covert channel, como Twitter, para llevar a cabo las acciones.

En un primer lugar, la idea era una pequeña herramienta que podía ser manejada de forma remota a través de tuits de Twitter. Poco a poco la idea fue cambiando a que el pentester pudiera tener una función desde la que poder descargar instrucciones y funciones. Uno de los objetivos del principio era utilizar el menos código posible.

La nueva idea: ibombshell

La evolución del trabajo surge con la aparición de UAC-A-Mola y a una conversación con mi compañero Santiago Hernández Ramos. En este trabajo que realizamos de forma conjunta llegamos a la conclusión de que sería muy interesante poder tener en memoria, a través de Powershell, un prompt de UAC-A-Mola, y llegará ;)


Figura 3: CodeTalk 4 devs: UAC-a-mola


La idea era interesante. Abrir una Powershell y poder descargar lo necesario en funciones de Powershell para jugar con nuestro UAC-A-Mola. Esta idea fue cambiando y derivó en tener el mismo juego, es decir, abrir una Powershell y disponer de todas las funciones necesarias al alcance de una manera sencilla y flexible. Que sea cómodo para el usuario y que cualquier pudiera ir añadiendo funciones al repositorio. Que estuviera disponible en cualquier instante y en cualquier lugar, es decir, "everywhere".

Figura 4: UAC-A-Mola en GitHub

La primera idea que quisimos llevar a cabo fue esto. Un prompt que esté en el repositorio de Github y que puedas descargar en cualquier instante y desde cualquier lugar. En otras palabras:
1. Abrimos una powershell.exe 
2. Ejecutamos una instrucción que viene en el repositorio de Github, la cual es iex(new-object net.webclient).downloadstring([URL github]) 
3. Ejecutamos la función console y obtenemos nuestro prompt, sin necesidad de tenerlo en nuestro disco 
4. Ahora tienes a tu alcance todo lo necesario
Sencilo, ¿verdad? Es más, hasta ahora la instrucción iex(new-object net.webclient).downloadstring([URL github]) nos ayuda a bajarnos un prompt que aporta simplicidad, flexibilidad y ayuda al usuario que quiere utilizarlo, pero lógicamente, nuestro loader es similar a iwr([URL snippet function]).context|iex.

Lo interesante es aportar simplicidad, flexibilidad, posibilidad de almacenar en registro las diferentes funciones para no tener que descargarlas de Internet e integración en un mismo scope con el objetivo de hacer que varias acciones se puedan involucrar. Además, se podrá, aunque aún no lo hemos contado, ejecutar diferentes ibombshell con distintos modos e interactuar con ellas y entre otras máquinas. Esto viene bien para la parte de post-explotación.

Figura 5: Función loader

Aquí nos surgió una segunda idea, es interesante proporcionar un prompt dónde cualquiera pueda utilizar funciones de Powershell a través de una shell sencilla, pero suma, y mucho, la posibilidad de utilizar ibombshell de forma remota y que lo haga en modo sigiloso. Es decir, poder ejecutar el prompt de forma remota y de forma oculta y poder ser gestionado desde un panel de control escrito en un lenguaje que aman los pentesters: Python.

iBombshell: Funcionamiento

En resumen, en primera instancia ibombshell nos proprociona un prompt descargado y ejecutado en memoria. Este prompt hace lo siguiente:
1. Verifica si existe en el registro de Windows una entrada en HKCU:\Software\Classes\ibombshell. Si está entrada existe, significa que habrá funciones de Powershell almacenadas en el registro. ¿Cómo se hace esto? ibombshell proporciona la posibilidad de almacenar funciones en el registro de Windows. Cada línea de la función será una clave en el registro. Por ejemplo, si tenemos la función txuleta, tendremos la clave HKCU:\Software\Classes\ibombshell\txuleta y dentro de la ruta tendremos del 0 hasta N claves con las líneas de la función. Si existen funciones en el registro el prompt las recupera y las carga en memoria. 
 2. Lee de Github las funciones disponibles. El prompt lee un fichero denominado functions.txt, el cual tiene por cada línea una función disponible en el repositorio de código. Hay funciones que están creadas para aportar funcionalidad y flexibilidad a la herramienta y luego hay funciones orientadas al pentesting.
Figura 6: Fichero functions.txt
3. El prompt verifica el modo en el que ha sido ejecutado, es decir, ibombshell a día de hoy tiene dos modos de ejecución, el primero es el que hemos comentado, mientras que el segundo se comentará más adelante. Si el modo es su modo normal o everywhere, mostrará un prompt y nos solicitará alguna acción.
4. La función showcommands nos muestra las posibles funciones disponibles en el repositorio de Github.
5. La función showfunctions nos muestra las funciones cargadas en memoria en el ámbito o scope de ibombshell.
Figura 7: Showcommands y Showfunctions

Como se puede ver en la imagen, las posibilidades empiezan a ser grandes y eso que estamos comenzando. Para simplificar la carga de cualquier otro repositorio o función que se encuentre en otro lado y que no esté en nuestro repositorio se dispone de una función llamada loaderext. Esta función proporciona el mecanismo adecuado para cargar la función remota y de otro ‘repo’ en nuestro ámbito de ejecución de ibombshell.

Para descargar la función ejecutamos la ruta a la función, como se puede ver en la imagen anterior system/loaderext. Tras cargar la función, si ejecutamos showfunctions veremos que está cargada ya con su nombre loaderext.

Figura 8: Carga de una función

Existe la posibilidad de bajarnos una función ayuda, denominada help!, con la que podemos consultar la ayuda disponible de cada función de la siguiente manera: help! –function [función cargada].

Figura 9: Acceso al catálogo disponible de funciones

Una de las ideas que tenemos en mente es ampliar las posibilidades de loaderext y que muestre un gran catálogo de posibilidades con funciones interesantes para el pentesting con Powershell. En la imagen superior se puede ver como con el parámetro –catalog se puede listar URLs de funciones interesantes para pentesting. Estamos en la construcción de dicho catálogo. Más adelante, se puede ver como se carga la función y está disponible en memoria.

[Segunda parte del artículo]

Autor: Pablo González Pérez (@pablogonzalezpe), escritor de los libros "Metasploit para Pentesters", "Hacking con Metasploit: Advance Pentesting" "Hacking Windows", "Ethical Hacking", "Got Root" y “Pentesting con Powershell”, Microsoft MVP en Seguridad y Security Researcher en ElevenPaths

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 ;)

lunes, junio 25, 2018

Nuevas conferencias y charlas en el Canal Youtube. Ya son casi 1.000 vídeos

He estado recopilando algunas de las charlas y vídeos que hemos estado haciendo estos meses atrás para mantener mi Canal Youtube actualizado. En él voy subiendo todo el trabajo que hacemos en ElevenPaths, 0xWord, LUCA, AURA, la 4th Plataforma, Movistar Home, Informática 64 antiguamente, o vídeos y charlas que voy haciendo por todo el mundo, etc... en formato vídeo. Son casi 1.000 los vídeos que hay subidos con conferencias que tienen más de una década.

Figura 1: Nuevas conferencias y charlas en el Canal Youtube. Ya son casi 1.000 vídeos

A lo largo de los años mi Canal Youtube ha ido generando una comunidad de casi 200.000 subscritos, y por eso lo sigo manteniendo activo, para que todos los que allí están sigan recibiendo todo lo que hacemos. Ya sean charlas, vídeo-tutoriales, demos de los posts, etc...


Figura 2: Security Day 2018: Keynote por Chema Alonso

Hoy os dejo los últimos vídeos que he subido. En primer lugar he subido el vídeo del evento completo del Security Day 2018, y he cortado solo la keynote que di yo por si queréis ver solo esa charla resumen.


Figura 3: Amazon AWS Summit Madrid 2018: Chema Alonso en la keynote

También he subido la participación que tuve en el evento de Amazon AWS Summit Madrid 2018 donde hablé de los proyectos de la unidad LUCA utilizando arquitecturas de BigData sobre AWS, en concreto en plataformas como SmartSteps, SmartDigits o Mobile Connect.


Figura 4: AURA using Microsoft AI

Pero como en nuestra unidad utilizamos todas las tecnologías - no solo AWS y Azure que utilizamos en plataformas como AURA o Faast - también nos pidieron participar en el Google Cloud Summit Madrid 2018 y grabé este pequeño vídeo.


Figura 5: Chema Alonso en el Google Cloud Summit Madrid 2018

Por último, aparte de subir el vídeo completo del Network Innovation Day 2018, he subido el corte de la keynote que hicimos Guillermo Ansaldo y yo, por si quieres ver solo el resumen de las principales novedades del evento que hicimos nosotros.


Figura 6: Network Innovation Day 2018 Keynote

La verdad es que mantener mi Canal Youtube tiene trabajo, pero tener los casi 1.000 vídeos recopilados en un único sitio merece la pena, ya que además los tengo organizados por listas de reproducción que me permiten encontrar rápidamente el contenido. Espero que a algunos de vosotros os sea útil este recurso.

Saludos Malignos!

domingo, junio 24, 2018

La agenda para la última de Junio

El hito más importante durante la semana pasada fue sin duda el poder llevar el número de libros publicados en 0xWord hasta el número 55 con el título de "El Red Team de la empresa", además de informaros de las 40 vacantes que tenemos abiertas en ElevenPaths Professional Services. Ahora toca mirar hacia la semana que viene, y el número de actividades que tenemos. Estas son los que tenemos desde Telefónica, 0xWord, ElevenPaths y LUCA.

Figura 1: La agenda para la última de Junio

El primero de los eventos que hay que citar es sin duda el que tiene lugar el lunes 25 de Junio en el Auditorío de la Fundación Telefónica en Gran Vía. Allí, habrá un debate más que interesante sobre cómo avanzar la tecnología poniendo a las personas en el centro de este avance. En la web, una vez que te registres, tienes información de horarios, transporte y agenda completa.

Figura 2: Manifiesto por un pacto digital

Del 25 al 27 de Junio, nuestros compañeros de LUCA llevarán la tecnología de Smart Tourism al 2nd UNWTO World Conference on Smart Destinations que tendrá lugar en la preciosa ciudad de Oviedo. En la web del congreso tienes información de la agenda y de cuándo hablan nuestros compañeros.

Figura 3: 2nd UNWTOP World Conference on Smart Destinations
Por supuesto, el día 25 a las 20:00 horas hay que estar pegado al televisor viendo a nuestra querida Selección Española jugándose el pase los octavos de final del Mundial de Fútbol de Rusia.

El martes 26, a través de Internet y en Inglés, tendrá lugar un interesante Webinar sobre Inteligencia Artificial dentro de las LUCA Talks de nuestros compañeros. En esta ocasión centrado en analizar los seis grandes retos que tiene la construcción de una Artificial Intelligence. Tienes toda la información del evento que comienza a las 16:00 hora en la web de registro.

Figura 4: Retos en el mundo del AI

Un poco más tarde, a las 19:00 horas en Madrid, nuestro compañero Pablo Rodríguez, responsable de Telefónica Alpha, presentará en el Espacio Fundación Telefónica el libro Inteligencia Artificial: Cómo cambiará el mundo (y tu vida).

Figura 5: Presentación en Madrid

Un libro que podrás comprar a partir de ese día y del que los beneficios irán a los proyectos de educación digital en África que lleva la Fundación Profuturo. Puedes registrarte también para la misma presentación, el día 28 en Barcelona, en este caso en el Movistar Centre. Reserva tu plaza para Barcelona cuanto antes para el evento registrándote en esta web.

Figura 6: Libro en Amazon

El miércoles 27 de Junio tienes otra cita para marcar en el calendario, con el comienzo del Curso Online de Hacking Ético de nuestros compañeros de The Security Sentinel. La formación, que es a través de Internet tiene un total de 180 horas de duración y en ella, además de las formaciones online, las tutorías con el equipo docente que te ayudará a hacer todas las prácticas, tienes como complemento los libros de 0xWord titulados "Ethical Hacking" y la última edición, actualizada, ampliada y corregida de "Metasploit para pentesters". 

Figura 7: Curso Online de Hacking Ético

Si quieres entrar en el mundo profesional - y acceder a alguna de las vacantes de ElevenPaths Professional Servicies, estos son contenidos que probablemente debas dominar.

El jueves 28 toca moverse a París, donde tendrán lugar las charlas de Hack in París, en las que participarán nuestros compañeros Claudio Caracciolo y Sheila Berta, con el trabajo de El Bicho, una conferencia que podéis ver también de la sesión en la Ekoparty.

Figura 8: ElevenPaths en Hack in Paris

El viernes 29 tenemos un acto muy especial en la Fundación Telefónica, con la conferencia de Salvador Larroca en la que celebraremos sus 25 años de carrera en Marvel al que muchos conocimos por aquellos míticos posters que venían en los Cómics Forum. Su dibujo estaba claro que era para triunfar. Ahora esos primeros posters de Forum son como oro.

Figura 9: Charla con Salvador Larroca por sus 25 años en Marvel

Y después, tocan los Guns'N Roses en el Download Festival en Madrid, pero esa es ya otra historia solo para los amantes de los pantalones elásticos y los pelos largos - además de conocernos la historia de la estética de Axl Rose -. Y no te olvides, si vas a ir a la 8.8 en Chile que el día 30 de Junio acaba el tramo más barato para comprar las entradas. Y si eres empleado de Telefónica en el Distrito C, acuérdate que el 29 toca pedalear con Perico Delgado. ¡Vaaaamos!

Saludos Malignos!

sábado, junio 23, 2018

El Red Team de la empresa. Nuevo libro de @0xWord

Hoy sábado está ya por fin disponible el último libro de nuestra pequeña editorial 0xWord, que ha escrito Eduardo Arriols y que abre una línea de títulos que se centrarán en los equipos que se ocupan de la seguridad en las empresas. Hoy, el Red Team, el equipo que se encarga de atacar los sistemas de una organización tanto en los ejercicios de simulación, como parte del proceso continuo de seguridad de una empresa.

Figura 1: El Red Team de la empresa. Nuevo libro de @0xWord

Estos Red Teams pueden ser internos o externos, pero deben estar centrados en mantener a los equipos de defensa siempre alerta. A veces, los mismos profesionales actúan de equipo de defensa y ataque alternativamente, lo que hace que se tense mucho toda la seguridad de la organización. Además, al finalizar cada ejercicio, el Red Team de aportar conocimiento de cuáles son los fallos que van descubriendo, para que se pueda meter su corrección o medidas de detección, fortificación y alerta dentro de los procesos.

En las empresas, el Red Team es una pieza fundamental para el CISO (Chief Information Security Officer) ya que es el equipo que tensa las medidas de seguridad y al Blue Team, encargado de defender el campo de batalla durante los ejercicios de entrenamiento constante.
"Un ejercicio Red Team consiste en una simulación real de un ataque dirigido sobre una determinada organización, creando una intrusión completa sobre sus principales activos. Si bien el origen de esta práctica es militar, y se englobaba dentro de los conocidos juegos de guerra (War Gamming), cada vez son más las organizaciones que optan por este enfoque para identificar el nivel de exposición y riesgo, e incrementar las capacidades de detección y respuesta a potenciales incidentes. 
Su desarrollo plantea la necesidad de hacer uso de una metodología diferente a lo habitual, donde podrán ser utilizados de forma conjunta vectores de ataque dentro del ámbito digital, físico y humano para lograr la intrusión. 
El libro que el lector tiene entre sus manos le sumergirá en la ejecución de estos ejercicios, exponiendo técnicas utilizadas para identificar vectores de acceso en cualquier ámbito de actuación, el uso de una metodología que permita lograr una intrusión real y simular de forma correcta a un adversario real, así como aquellos aspectos más relevantes adquiridos durante la experiencia del desarrollo de ejercicios Red Team en grandes organizaciones. 
La estructura que mantiene el libro expone de forma organizada las fases que componen la metodología en cuestión, permitiendo además al lector utilizar el libro de forma puntual según las necesidades que pueda tener o como guía para el desarrollo de ejercicios de intrusión desde su inicio hasta la finalización de los mismos."
Para que tengas más información, tienes el índice completo del libro subido a SlideShare, para que puedas ver cuáles son todos los temas que se tratan en detalle.


Este es el libro número 55 de nuestra editorial 0xWord, donde puedes encontrar libros de Seguridad Informática & Hacking para cubrir muchos temas profesionales dentro de este apasionante mundo. Os agradezco personalmente a todos los que habéis adquirido algún libro de ella, pues habéis contribuido a que este proyecto de tener libros técnicos de calidad en español a un coste asequible haya podido aguantar hasta alcanzar este número redondo de 55 títulos, en estos diez años que llevamos publicando títulos, que cada día cuesta más lograrlo. Cada nuevo título que conseguimos publicar es motivo de celebración.

Saludos malignos! 

Entrada destacada

Seis recomendaciones personales de libros de @0xWord para disfrutar y aprender

Este verano pude disfrutar de la lectura de un libro que me encantó. El libro de Factfulness que me había regalado mi compañera Beatriz Ce...

Entradas populares