domingo, mayo 19, 2019

Una semana llena de actividades de tecnología y cultura: Digital Enterprise Show, AI, Batman, Familia & Tech, Big Data, Ciberinteligencia, IoT y el nuevo orden mundial

Aprovechando que es domingo y que me toca patinar, patinar, patinar, os dejo la lista de los eventos para la semana que viene, donde yo tendré un par de citas en Madrid y Barcelona. Una keynote en el Digital Enterprise Show, y una conferencia en el evento de mis amigos de MGS Seguros. Pero además tenemos muchas más cosas. Os dejo las más importantes que tengo en mente en las que tenemos algo que ver.

Figura 1: Una semana llena de actividades de tecnología y cultura
"Digital Enterprise Show, AI, Batman, Familia & Tech,
Big Data, Ciberinteligencia, IoT y el nuevo orden mundial

Lunes, 20 de Mayo:"Un nuevo contrato social para Internet" [Madrid] [Online]
Web: Para apuntarse y para seguir el evento online
En este nuevo encuentro de nuestro ciclo Tech & Society, debatiremos con José Manuel Alonso sobre la vigencia de los valores que sustentaban la web en sus orígenes, en qué se ha convertido y cómo rediseñarla en el futuro. ¿Podría un contrato social paliar los riesgos a los que estamos sometidos en la web? 
Martes, 21 a 23 de Mayo: Digital Enterprise Show [Madrid] [*]
Ese día voy a hablar de mis cosas de AI. Ya sabéis, de algo parecido a lo que conté en mi charla de AI...AI, AI, AI, AI. Pero en inglés, con alguna demo más rápida, y también metiendo en la coctelera lo que publiqué en el blog de "Human Parity" en Cognitive Intelligence
Figura 2: Stand de Telefónica en el DES Madrid
Además, tendremos un stand de Telefónica para atender a todos los que vengáis sobre nuestras soluciones de ElevenPaths, LUCA, IoT, Cloud o Comunicaciones empresariales. Más información en el blog de Think Big Empresas. 
Martes, 21 de Mayo: Smart Data Spain Summit [Madrid]
Web: 3S Smart Data Spain Summit
El congreso nacional para profesionales de empresas privadas y entidades públicas responsables de implantar o gestionar soluciones de Big Data, Business Intelligence o de gestión de datos en general. Antonio Pita, Head of LUCA Consulting & Analytics particpiará como speaker en la mesa redonda: “Big Data y Reporting: ¿Podemos conseguir un proceso ágil y eficiente en la entrega de datos del negocio?”.
Figura 3: Smart Data Spain Summit 2019

Martes, 21 de Mayo: Batman, felices 80 [Madrid] [G]
Web: Espacio Fundación Telefónica
Un día en el espacio de "Hay vida en Martes" en el que en el Espacio de la Fundación Telefónica en el que recordaremos el 80 cumpleaños del Hombre Murciélago con una debate interesante. Grande. Yo intentaré no perdérmelo.
Figura 4: Batman, Felices 80 años

Miércoles, 22 de mayo, 2019. Latch IoT [Online] [G]
Web: CodeTalk for Developers Latch IoT
Bajo el nombre de Latch IoT encontramos un proyecto relacionado con el hardware hacking gracias a la construcción de un nuevo firmware para el dispositivo Sonoff del fabricante Itead con el que podrás controlar tu hogar. En esta #CodeTalks4Devs: Latch IoT: controlando tu casa desde Latch nuestro compañero Álvaro Núñez-Romero nos explicará los detalles. Anteriormente, ya hemos hecho muchas cosas con Latch en el mundo IoT que es bueno que tengas en mente.
Figura 5: CodeTalk for Developers Latch IoT "Controlando tu casa desde Latch"
Debido a la creación del nuevo firmware para el dispositivo Sonoff del fabricante Itead, hemos creado un proyecto de hacking hardware bajo el nombre de Latch IoT. Este firmware requiere ser flasheado en la memoria del dispositivo de Itead y, a su vez, conectarse a través del protocolo MQTT al dispositivo con un servicio de nuestra herramienta Latch. 

Figura 6: Demo de Latch for MQQT del Concurso de plugins de Latch
Este servicio permite activarse, mediante WebHooks, evitando las llamadas constantes al servicio de Latch para comprobar el estado. Mediante este #CodeTalks4Devs intentamos mostrar una variación de nuestra aplicación Latch en el mundo físico, ideal para montar un entorno domótico.
Jueves, 23 de Mayo: GeoTecnología, nuevo orden Mundial [Madrid][Online][G]
Web: Registro gratuito para Espacio Fundación Telefónica y para ver por Streaming
En el siglo XXI, el poder mundial reside en el dominio de la tecnología y la ciencia, de ahí el empeño de las grandes potencias mundiales en el desarrollo de estos campos. Sin embargo, es necesario ser conscientes de los riesgos que conlleva esta transformación.
Figura 7: Geotecnología, el nuevo orden mundial en Madrid y Online

Viernes, 24 de Mayo: Familia y Tecnología [Madrid] [Online]
¿Qué es lo que realmente nos preocupa a los que educamos en tiempos de Internet? ¿Tiempo de pantalla, adicción, distracción, contenidos inadecuados, sobreexposición, impacto sobre aprendizaje, relaciones desvirtuadas? En este encuentro, reflexionaremos sobre todos estos temas junto a un completo grupo de expertos.

Figura 8: Familia y Tecnología en Madrid y Online

Viernes y Sábado 24 y 25 de Mayo: El futuro de la investigación criminal [Chile]
Web: Futuro de la investigación criminal
El próximo Viernes 24 y Sábado 25 de mayo, la Fiscalía Regional de Aysén y la Policía de Investigaciones de Chile, efectuarán un inédito simposio en el ámbito de la cibercriminalidad, denominado “El futuro de la investigación criminal”, el cual se desarrollará íntegramente en dependencias del cuartel de la PDI camino a Coyhaique Alto y donde se abordarán temas de actual vigencia como las criptomonedas y el lavado de activos o el cibercrimen y las nuevas formas del delito. Entre los ponentes estará nuestro compañero Gabriel Bergel, de ElevenPaths.
Viernes y Sábado, 24 y 25 de Mayo: CiberInteligencia [Alicante]
Web: CiberInteligencia Alicante
Este día nuestros compañeros de ElevenPaths José Manuel Ávalos y Cristina Martínez Aylagas estarán en este simposio para debatir sobre Cibercrimen, Ciberseguridad y Ciberinteligencia. En la ciudad de Alicante.
Y esto es todo lo que os traigo para esta semana que se nos viene. No os dejo información del evento que doy en Barcelona de MGS porque es un evento privado al que solo se puede ir por invitación, así que ... para la próxima.

Saludos Malignos!

sábado, mayo 18, 2019

La Paridad Humana (Human Parity) en Inteligencia Artificial Cognitiva

Hoy sábado os dejo un repost de un artículo que publiqué para el blog de DES Madrid, donde voy a participar con una charla. Para que no se pierda en el tiempo, y quede para siempre en este blog, que es más largo que mi vida. Y de paso le añado algunos enlaces y alguna imagen más, para que quede más completo.

La Paridad Humana (Human Parity) en Inteligenci Artificial Cognitiva

Las tecnologías de Inteligencia Artificial han avanzado mucho en los últimos tres a cinco años. Pero cada día que pasa se alcanza un nuevo logro, especialmente en los servicios cognitivos, que es de lo que quiero hablar hoy.

Figura 1: La Paridad Humana (Human Parity) en Inteligencia Artificial Cognitiva

Dentro de las capacidades de utilizar sistemas de inteligencia artificial para resolver problemas complejos, hay toda una rama dedicada a construir modelos y tecnologías que resuelvan los problemas cognitivos que resolvemos los humanos con relativa facilidad en nuestro motor de inteligencia – el cerebro – utilizando nuestros sensores de entrada y salida de datos: la vista, la voz, el oído, el tacto y el gusto.

Son estas disciplinas de Visión, Habla y Escucha, las que han estado desarrollándose durante los últimos años a una velocidad increíble. Y por una razón, que incluso nosotros mismos en Telefónica tomamos como guía:
“Durante muchos años los humanos hemos aprendido los interfaces de la tecnología y ya es hora de que la tecnología aprenda los interfaces de los humanos.”
Y por supuesto, lo han hecho. Existe una unidad de medición de la calidad de los modelos de Inteligencia Artificial para Servicios Cognitivos que se llama “Paridad Humana”. Es decir, utilizamos la Paridad Humana como tasa de error, por lo que si un servicio cognitivo se equivoca menos que un humano en uno de los problemas, decimos que ese servicio ya ha superado al ser humano.


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

Imaginemos un servicio de atención de llamadas telefónicas para los Estados Unidos. Imaginemos ahora que tenemos un equipo de humanos con Servicios Cognitivos de reconocimiento del habla en inglés para todos los ciudadanos que hablan en esa lengua en ese país. La tasa de veces que ese equipo de humanos falla al reconocer una frase de otros humanos es superior al que tendríamos si pusiéramos una Inteligencia Artificial a reconocerlos. Y es que la Paridad Humana en Speech Recognition en lengua inglesa se superó ya en el año 2017.

Figura 3: Paridad Humana en Speech Recognition

Ejercicios similares han ido pasando a lo largo de los últimos tres años. Fue ya en el año 2015 cuando los servicios cognitivos de visión artificial superaron la Paridad Humana en reconocimiento de objetos. Y hace no más de un año y unos meses, en Enero de 2018 se superó la Paridad Humana en comprensión lectora. Sí, puedes dar un texto a una Inteligencia Artificial y hacer todo tipo de preguntas que se pueden extraer de ese texto en base a la información que en él existe y empezar a preguntarle. Su tasa de error es menor que la de los seres humanos.


Figura 4: Skype Translator powered with AI

En Marzo de 2018 se consiguió superar la Paridad Humana en traducción inglés-chino, y supongo que a todos os emociona ver el uso de esta capacidad en Skype para que en tiempo real dos niñas de México y Estados Unidos se comuniquen sin barrera de idioma de por medio.

Y en este año otra límite ha sido superado. Una Inteligencia Artificial ha superado la Paridad Humana en lectura de labios, como si en una 2001 lo hubieran visto venir. El “pobre” HAL 9000 ya ha sido superado, por el proyecto de MIT Lab “Alter Ego” .

Figura 5: AlterEgo, desarrollado por el MIT Lab

Y esto se está masificando y comoditizando. Por ejemplo, los jóvenes ya no se sorprenden de los sitemas de Visión Artificial que se usan en SnapChat para ponerte orejas de gatito, o que usan los sistemas de Vídeo Conferencia para difuminar el fondo. O de que se reconozca a la gente en las fotografías.


En el caso de Microsoft Azure, hay servicios de Visión Artificial para reconocer a Celebrities, y ni el propio Kevin Mitnick y yo, cambiando sus gafas por mi gorro, fuimos capaces de engañarle. Y solo estamos en 2019. ¿Qué habrá en 2030?

Imaginemos lo que imaginemos para el 2030, está claro que debe contar con sistemas de Inteligencia Artificial con servicios Cognitivos muy superiores a los humanos, y probablemente tendrán incluidas cosas que nos parecen tan nuestras como “el instinto”, “la intuición” o la “imaginación”, que al final tienen un poco o un mucho de Analítica Predictiva de datos. 

Figura 7: No Lusers 171: "Emociones Intelectuales"

El futuro lo construimos – por ahora – nosotros, así que mientras que estas AI no tengan sueños, soñemos nosotros con un mundo en el que la tecnología nos hace mejores humanos.

Saludos Malignos!

PD: Me gustaría completar el artículo con el trabajo de Botnik Studios que ha utilizado una IA para reproducir el estilo de J.K. Rowling y escribir un capítulo de Harry Potter titulado "Harry Potter y el retrato de lo que parecía un montón de ceniza", que muestra cómo una AI puede aprender a escribir tal y como lo hace un humano concreto.



Figura 8: Harry Potter y el retrato de lo que parecía un montón de ceniza

viernes, mayo 17, 2019

TCAV: La lucha de Google contra el aprendizaje con sesgo en Inteligencia Artificial

No han sido pocas las voces que se ha denunciado el sesgo que muestran muchos modelos de Inteligencia Artificial que emplean grandes compañías al haber sido entrenados con datos que ya tenían ese sesgo, algo que es importante vigilar. Ya en una entrada anterior, se veía como Google Translate demuestra un claro sesgo de género con las traducciones de profesiones, pero no es la única herramienta con ese problema.

Figura 1: TCAV: La lucha de Google contra el aprendizaje con sesgo en Inteligencia Artificial

Hace poco surgieron grandes críticas al sistema de reconocimiento facial de Amazon, presente en departamentos de policías y en oficinas de inmigración, ya que esta herramienta presentaba una tasa de error mayor cuando trataba de identificar pieles más oscuras y rostros femeninos.

¿Cuál es el problema para que aparezcan estos sesgos?

Cuando se entrenan modelos de redes neuronales siempre surge el problema de interpretar cuáles son los conceptos que una red neuronal debe comprender para generar predicciones. Para abordar esto es necesario una profunda comprensión de la materia, ya que en la mayoría de modelos, los conceptos que los humanos entendemos como “decisivos” no tienen por qué ser los que una máquina interprete como relevantes.

Figura 2: Sesgos en profesiones en Google Translate


Por poner un ejemplo, un modelo destinado a predecir el cáncer de piel en fases tempranas, si no está correctamente ajustado, podría tomar como concepto relevante el tono de piel, si el algoritmo ignora los tonos de piel oscura podría suponer un fallo de diagnostico y un potencial riesgo de salud para cierto sector de la población.


Figura 3: Google I/O 2019 Keynote

Por esto es muy importante conocer los Conceptos de Activación en los modelos predictivos, tanto es así, que en el pasado Google I/O 2019, el propio CEO de la compañía, Sundar Pichai, dedicó una gran parte de la conferencia a hablar de los peligros que representa el sesgo dentro del mundo de la Inteligencia Artificial.

Figura 4: A more helpful Google for everyone by Sundar Pichai

Fue aquí donde anunció una de las soluciones con las que la compañía de Mountain View va a intentar frenar este problema: usando técnicas de interpretabilidad. Toda estas información que Sundar Pichai anunció, la dejó plasmada en un artículo que puedes leer online.

Definición de TCAV: Testing with Concept Activation Vectors

TCAV son las siglas de “Testing with Concept Activation Vectors” o “Pruebas con Vectores de Activación de Concepto”. Este nuevo método de interpretación permite comprender qué señales usan los modelos de redes neuronales para sus predicciones. Los métodos de interpretabilidad no son algo nuevo, pero la gran diferencia de TCAV es que muestra la importancia de los conceptos de alto nivel (por ejemplo color, género, raza, etcétera) para una clase de predicción frente a los pesos de cada característica de entrada de los métodos de interpretabilidad comunes.

Figura 5: Paper sobre TCAV de Google Research

Las técnicas de interpretabilidad llevan ya tiempo usándose en modelos de Machine Learning. Fundamentalmente, estas técnicas se basan en exploración de los datos antes de construir los modelos o interpretabilidad asociada a un modelo preexistente. El problema viene que la mayoría de modelos de Machine Learning están diseñados para operar con conceptos de bajo nivel como por ejemplo el color de un solo píxel o la relación con los píxeles adyacentes.

Aunque esta forma de generar los algoritmos de Machine Learning pueden ser muy útiles en detección de ataques de red, o técnicas de bypass de soluciones antimalware, como se explica en el libro de "Machine Learning aplicado a Ciberseguridad: Técnicas y ejemplos en la detección de amenazas" que escribieron mis compañeros, esto es radicalmente diferente a los conceptos de alto nivel que los humanos manejamos, como el color de las hojas de un árbol, el número de ruedas de un coche o las rayas de una cebra, y hace que esos algoritmos - especialmente en servicios cognitivios - sean susceptibles de cometer sesgos de género, raza o sexo.

Figura 6: Machine Learning aplicado a Ciberseguridad:
Técnicas y ejemplos en la detección de amenazas

Aquí es donde entra TCAV, una iniciativa del equipo de Google AI que permite una interpretación del estado interno de una red neuronal usando derivadas direccionales para cuantificar el grado por el cual un concepto definido por un usuario es importante para el resultado de una clasificación.

Funcionamiento de TCA

Poniendo el ejemplo que se detalló en la conferencia vamos a ver el funcionamiento interno de TCAV. Supongamos que tenemos un modelo entrenado para detectar cebras en una imagen. Querríamos saber cuales son las variables relevantes en el proceso de clasificación. TCAV nos permitiría entender si las rayas de la cebra son un detalle importante para la predicción del modelo, siendo verdad en este caso.

Figura 7: Modelo para reconocimiento de cebras + TCA

Ahora es donde entramos en el asunto del sesgo, pongamos que vamos a mirar un modelo entrenado con un Dataset de doctores. Si el modelo ha sido entrenado con demasiadas fotos de hombres con batas blancas y estetoscopios puede que determinen el género masculino como un factor relevante, demostrando que existe un sesgo en nuestro set de datos de entrenamiento. Aquí reside el verdadero poder de TCAV, el entender en lenguaje “Humano” los vectores de activación importantes de nuestro modelo para así tener conocimiento y control sobre este mismo.

Figura 8: TCAV descubre que ser hombre tiene un 37 % de importancia

No voy a detenerme mucho en los conceptos matemáticos detrás de esta técnica, para profundizar más en el tema os recomiendo consultar el paper de TCAV y tienes el código del proyecto en Github donde se puede ver con más detalle la implementación subyacente a esta técnica así como ejemplos prácticos para Tensorflow.

Conclusiones

TCAV es sin duda una buena herramienta para interpretar de forma sencilla el estado interno de un modelo de Deep Learning, pero no es la solución a todos los problemas, las compañías van a tener que seguir haciendo grandes esfuerzos para eliminar los sesgos dentro de sus modelos de Inteligencia Artificial. Sin embargo, esta técnica es un primer paso muy importante para solucionar un problema cada vez más evidente en este nuevo mundo.

Autor: Lucas Fernández Aragón (@lucferbux) investigador en el equipo de Ideas Locas.

jueves, mayo 16, 2019

Sappo para Twitter: Cómo usar Sappo para "silenciar" a un Twittero

Hace un año, en la conferencia de Open Expo 2018, di una charla en la que presentaba una actualización de nuestra herramienta para hacer Spear Apps to Steal OAuth Tokens que bautizamos como Sappo. Le habíamos añadido en el equipo de Ideas Locas en ElevenPaths la capacidad de controlar una cuenta de Twitter a partir del robo de un token OAuth. Hice la charla allí, pensando que la iban a grabar pero no, no fue así, así que se perdió como las lágrimas en la lluvia.

Figura 1: Sappo para Twitter: Cómo usar Sappo para "silenciar" a un Twittero

Como este año voy a volver a ir a Open Expo Europe 2019, he pedido que graben la charla, porque también voy a contar algo nuevo de lo que no hemos hablado nada por ahora. Pero antes, para que tengáis la información completa, os voy a contar básicamente qué es lo que hicimos el año pasado. Allí presentamos una ampliación de Sappo con objetivo Twitter  para conseguir:
  1. Ver, Enviar y Eliminar Mensajes privados en Twitter.
  2. Publicar y Eliminar Twitts en el time-line de la cuenta controlada.
  3. Hacer unfollows de la gente a la que sigue la cuenta controlada.
  4. Hacer que dejen de seguir los followers a la cuenta controlada.
Antes de comenzar a ver cómo funciona el proceso, os dejo las referencias para que leáis lo que ya hemos publicado de Sappo, RansomCloud O365 y la amenaza de OAuth.

[Post] Google alerta de las apps NO verificadas al pedir permisos OAuth. Microsoft Office 365 aún debe mejorar un poco.
[Post] OAuth: La amenaza invisible

Y, como no, la charla de la RootedCON 2016 donde hablamos de este tipo de ataques por primera vez y mostramos Sappo al público.


Figura 2: RootedCON 2016 "Sólo hay que besar un Sappo"

Y ahora vamos a ver los diferentes ataques para conseguir hacer todo lo que se puede hacer con Twitter. Para ello, como en los casos de Gmail, de Outlook y de Office 365, primero es necesario crear una app en Twitter que utilizaremos después en Sappo

Figura 3: Zona de creación de apps en Twitter para developers

Para ello hay que ir a la sección de apps, convertir la cuenta de Twitter en Developer Account y rellenar el formulario de tu app. En este artículo tienes explicado el proceso: "How to create a Twitter app in 8 easy steps". Nosotros la creamos, y la dimos de alta en Sappo, para poder utilizarla como los demás, así que la vais a ver utilizada en nuestras demos en los vídeos.

1.- Toma de control de la cuenta de Twitter con Sappo

Para tomar control de la cuenta de Twitter, es necesario que la víctima de permisos a la App de Twitter maliciosa que hemos creado para Sappo, para ello, hacemos un ataque se Spear Phishing que lleva un enlace a la petición de permisos de acceso, tal y como se explica en el artículo de Sappo que publiqué en el año 2016


Figura 4: Sappo para Twitter. Robo de token OAuth de cuenta Twitter

En este vídeo tienes el proceso completo, así que una vez que se tiene el token OAuth concedido, podemos continuar con el resto de los ataques. Un punto interesante es que los tokens de Twitter duran una infinidad de tiempo como válidos.

2.- Ver, Eliminar y Publicar Tweets en el Tiem-Line

Una vez que ya tenemos el token validado en Sappo, se puede proceder a gestionar el Time-Line de la cuenta de Twitter. Es decir, se pueden ver todos los mensajes, se pueden eliminar y se pueden publicar nuevos mensajes que saldrán en el Time-Line. En este vídeo se puede ver cómo funciona esto desde Sappo.


Figura 5: Sappo para Twitter. Ver, Eliminar y Publicar mensajes en el Time-Line

3.- Forzar la cuenta a dejar de seguir otras cuentas
Una de las opciones que tiene Sappo para Twitter es que puede forzar a la cuenta controlada a dejar  de seguir a cualquier cuenta que esté siguiendo en ese momento, con lo que no le llegaría ningún mensaje publicado por ninguna de esas cuentas que ahora seguía. 


Figura 6: Sappo para Twitter. Hacer unfollow a todas las cuentas que se siguen

Además, seguro que alguno de los que sufren el "unfollow" se van a enfadar y ponerle a caldo, que buenos son los twitteros con los "unfollow".

4.- Hacer que la cuenta pierda todos sus followers

Esta es una de las características que más daño puede hacer al dueño de la cuenta, ya que se trata de que pierda todos sus followers. El truco es bastante sencillo. Desde la Sappo, usando la App de Twitter autorizada con el Token, se bloquea y desbloquea a todos los followers. El resultado es que cuando se hace un bloqueo a una cuenta, automáticamente se le fuerza a la cuenta a hacer el unfollow, y aunque luego se hace el desbloqueo de la cuenta, el sistema ya no hace el follow otra vez.


Figura 7: Sappo para Twitter. Eliminar todos los seguidores de una cuenta

Si se quiere rehacer esta operación, cada usuario que ha sido bloqueado y desbloqueado, debería hacer un follow otra vez, con lo que el proceso no sería rápido, ni sencillo, y a una cuenta con muchos followers que haya tardado años en hacerse con sus seguidores, le puede hacer mucho daño.

5.- Ver, Borrar y Enviar Direct Messages

Por supuesto, también se pueden gestionar los mensajes privados que envía y recibe la cuenta, como Direct Messages. El resultado final es que se puede manipular completamente todo desde Sappo.


Figura 8: Sappo para Twitter. Ver, Eliminar y Enviar Direct Messsages

Eliminar Apps aprobadas en tu cuenta Twitter

Al final, si se tiene un Token OAuth autorizado en Twitter se puede hacer de todo, por lo que si tienes una cuenta de Twitter deberías revisar a qué Apps le has dado permiso. Estas se pueden ver en https://twitter.com/settings/applications. Recuerda que un token OAuth en Twitter aprobado puede durar eones... Y con Sappo se le puede dejar sin Tweets publicados, sin cuentas a quién seguir, sin followers y sin Direct Messages. Totalmente en silencio.

Saludos Malignos!

miércoles, mayo 15, 2019

WordPress: Cómo buscar {y encontrar} 0days en plugins con Taint Analysis

Cuando el equipo de Ideas Locas estaba en plena expansión, tocamos un tema derivado de algún trabajo anterior. La idea estaba relacionada con el mundo de la Seguridad en WordPress, el CMS más utilizado del mundo. La idea tenía de fondo el mundo de la seguridad, y la búsqueda de vulnerabilidades en primer plano, algo que nos podía ayudar a mejorar el servicio de Faast for WordPress de ElevenPaths.

Figura 1: WordPress: Cómo buscar {y encontrar} 0days en plugins con Taint Analysis

Me gusta explicar en las charlas que doy, qué es eso de Ideas Locas, pero éste es un claro ejemplo de la parte de: “Conociendo los detalles de nuestros productos y servicios se puede ayudar con alguna idea que los mejora”. El artículo de hoy pretende mostrar un trabajo que llevamos a cabo hace ya un año y algo, y que ahora continúan otros compañeros, en concreto en el centro Tegra de Galicia. Esta semana hemos liberado el artículo del trabajo que hicimos.

Figura 2: Libro de Máxima Seguridad en WordPress

En aquel entonces, Chema Alonso y yo habíamos estado trabajando con Daniel Martín para completar, y dejar como lo dejamos, el libro de Máxima Seguridad en WordPress de 0xWord, para lo que aportamos mucho trabajo de investigación. Dicho trabajo dio sus frutos con nuestro querido WordPress in Paranoid Mode, pero para lo que publicamos muchos artículos de cómo íbamos avanzando. En esta charla, se recogen muchos de lo que fuimos trabajando entonces, y que están incluidos todos en el libro.


Figura 3: Hardening WordPress like a hacker

La idea de este trabajo fue realizar diferentes comprobaciones sobre el código fuente de los diferentes plugins de Wordpress públicos. Este análisis nos puede permitir descubrir nuevas vulnerabilidades que puedan existir en estos plugins de cualquier tipo y que, por alguna razón, no han sido evaluados por sus desarrolladores de forma intensiva.

Encontrar vulnerabilidades en el core de Wordpress se hace cada vez más complejo, pero los sitios que utilizan Wordpress utilizan muchos plugins externos a éste, por lo que son estos plugins los vectores de ataque más utilizados. La idea inicial del estudio pretendía ser una pequeña estimación de lo que se podía lograr, pero acabó, como se verá, siendo otra cosa.

Buscando bugs en código fuente

Un día le enseñé a mi compañero de trabajo, por aquel entonces, Santiago Hernández Ramos, la investigación que hice tiempo atrás sobre búsqueda de vulnerabilidades en repositorios de código abierto. Esto acabó siendo un artículo que publiqué junto al Dr. Alfonso Muñoz - autor del libro de "Cifrado de las comunicaciones digitales: de la cifra clásica a RSA 2ª Edición" - llamado “Detección de funciones inseguras en repositorios de software libre” y que era una formalización del trabajo de OSB-Rastreator que publiqué en este blog.


La idea era ir descargando el código fuente de los paquetes de software accesibles desde una distribución de GNU/Linux como, por ejemplo, Ubuntu. Ese código fuente descargado se iba analizando por patrones con el objetivo de descubrir funciones inseguras en Lenguaje C.


Figura 5: Conferencia en el CyberCamp sobre OSB-Rastreator

Una vez detectadas se buscaba la forma de automatizar la detección de la vulnerabilidad, ya que la función podía ser o no vulnerable. Los resultados se pueden consultar en el artículo y se puede ver alguna vulnerabilidad que se formalizó.

Figura 6: Vulnerabilidad descubierta por OSB-Rastreator

A Santiago, que es una persona con una gran inquietud y con muchas ganas de investigar, le resultó interesante y empezamos a darle una vuelta a una sugerencia del boss. Tras una comprobación que hizo Santiago, vimos que era viable descargar el código fuente de los plugins y, al final, es código PHP que se podría evaluar. Aquí comienza la historia de este trabajo.

Trabajando con los plugins de WordPress: Taint Analysis & Taint Propagation

La idea es sencilla, se propone un sistema de auditoría de código de los plugins existentes en el repositorio oficial de WordPress. Se podría extrapolar a plugins que se encuentren fuera del ‘repo’ oficial, por ejemplo, en Github.

El sistema realiza un recorrido por las extensiones y aplica diferentes técnicas de análisis estático sobre su código fuente. El objetivo principal consiste en la detección de un conjunto de patrones inseguros, los cuales, tal y como ocurría en el anterior trabajo, pueden desembocar en una potencial vulnerabilidad. Lo potente de esto es que descubrir vulnerabilidades en el código sobre versiones públicos y últimas hacían que con mucha probabilidad hablásemos de 0days.

Después de la detección del sistema, nuestra idea era que un experto analizase el resultado. Esto siempre debe ser así, ya que la herramienta automática puede provocar falsos positivos. A continuación, presentamos el artículo del trabajo el cual ha sido publicado recientemente.


En el paper se puede visualizar un apartado de ‘Estado del arte’ en el que se hablan de diferentes estudios sobre esta temática. Los resultados parecen ser en todos los casos más que interesantes. También hay una parte de introducción mostrando diferentes conceptos sobre diferentes análisis que el sistema va ir haciendo antes de lanzar las comprobaciones de seguridad o el análisis de código estático.

Es importante hacer hincapié en el Taint Analysis. Este tipo de técnica permite conocer qué variables dentro de una aplicación tiene interacción directa o indirecta con el usuario. En otras palabras, conocer qué valores puede controlar o manipular un atacante se conoce como Taint Propagation. Es importante conocer cómo la información entra en la aplicación y fluye a través del mismo. De este modo se podrá identificar y validar los datos de entrada de una aplicación. El Taint Analysis es fundamental en esta idea y en este sistema.

Arquitectura del sistema

La arquitectura básica del sistema se puede desglosar en la siguiente imagen. En esta imagen se puede observar diferentes partes. La arquitectura se puede dividir en diferentes subsistemas, como vamos a ir haciendo.

Figura 8: Subsistemas de la arquitectura del sistema creado para el paper

Lo primero es entender la importancia en el sistema del crawler que permitirá recopilar todo el código fuente que habrá que modelar y, posteriormente, analizar. En el sistema completo éste es el subsistema más sencillo, que se encarga de localizar el repositorio y realizar la descarga del plugin.

El segundo susbsitema es el modelado. Éste necesita de un lexer y un parser. El lexer se encargará de generar tokens del código fuente obtenido por el crawler. Cada uno de los tokens devueltos es un array con un identificador, el valor del token y el número de línea.

Además, del lexer se implementa el parser. En este caso, se recorre la liste de tokens producida en el paso anterior, identificando mediante el campo “nombre” los tokens más importantes. Para cada uno de los ficheros analizados, se crea una pila de dependencias que permitirá determinar el ámbito de la función o estructura del lenguaje en la que se encuentran dos variables distintas.

Figura 9: Flujo de ejecución de los subsistemas

Posteriormente, se realiza el análisis de control de flujo y el análisis de flujo de datos. En este último es dónde interviene el Taint Analysis. Eso sí, con algunos matices.

Evaluación y resultados

En el paper se puede encontrar un estudio sobre 60 plugins de Wordpress que han sido analizados a través de este sistema.
Figura 10: Plugins evaluados en el estudiio

Los resultados fueron bastante reveladores encontrando algunas vulnerabilidades. Como solo era un estudio, buscamos ejemplos de las vulnerabilidades en tecnologías web más comunes, que se utilizan en ataques como son SQL Injection, por supuesto, ataques de Client-Side basados en Cross-Site Scripting, y algunos ataques comunes en el Hacking de Web Technologies. Se buscaron de forma automática las siguientes:
• Patrones XSS.
• Patriones SQLi.
• Patrones LFI y RFI.
• Patrones de ejecución de código.
Con este análisis sobre solo un número reducido de plugins, se descubrieron 5 vulnerabilidades de tipo 0day con este motor desarrollado para el estudio, que fuero reportadas para que se corrigieran.

Figura 11: 0days descubiertos durante el estudio

Las vulnerabilidades tienen su CVE, como puede verse en el cuadro anterior. Lo interesante es ver que hay plugins que se encontraban en más de 1 millón de instalaciones de Wordpress. Digo interesante por la ayuda a la mejora de la seguridad que este tipo de sistemas proporciona.

Faast for Wordpress

Como ya sabéis, hace tiempo que en ElevenPaths se lanzó una versión especial de Faast - nuestro servicio de pentesting persistente, para dominios con WordPress al que llamamos Faast For WordPress y del que hablamos por aquí en el blog en el artículo titulado: "Faast for WP: Pentesting as a Self Service para tu WordPress".


Figura 12: Demo de Faast for WordPress

A día de hoy, el trabajo de análisis de plugins de WordPress en búsqueda de 0days se utiliza para alimentar el conocimiento de este producto, y de manera continua reportamos los bugs que vamos descubriendo, por lo que aquel trabajo se ha convertido en algo que sirve no solo para nosotros sino para todos los que usan los plugins con vulnerabilidades que se van parchenado, y eso es reconfortante.

Más Referencias:

[Libro] Máxima Seguridad en WordPress
[Libro] Hardening GNU/Linux
[Paper] WordPress in Paranoid Mode (Parte 1)
[Paper] WordPress in Paranoid Mode (Parte 2)
[Paper] Detección y estimación de vulnerabilidades en WordPress
[Vídeo] Proteger WordPress con Latch
[Vídeo] Proteger WordPress con Latch Cloud TOTP
[Vídeo] MyWordPress in Paranoid Mode (conferencia Chema Alonso)
[Vídeo] MyWordPress in Paranoid Mode (ElevenPaths Talks de Pablo González)
[Vídeo] Ejemplo de uso de Latch en WordPress
[Vídeo] Hardening WordPress like a hacker
[Vídeo] WordPress Demo XSS en WP-UserAgent
[BlogPost] My WordPress in Paranoid Mode
[BlogPost] Máxima Seguridad en WordPress
[BlogPost] Hackear un WordPress con Network Packet Manipulation
[BlogPost] Fortificar comunicación entre WordPress y MySQL
[BlogPost] WordPress Latch Enforcement
[BlogPost] WordPress aún más seguro con Latch Lock After Request
[BlogPost] Fortificar WordPress frente a ataques de fuerza bruta
[BlogPost] Ataques (al corazón) de tu WordPress
[BlogPost] Cómo robarle las contraseñas a los administradores de WordPress
[BlogPost] Agrupar el control de varios WordPress con un solo Latch
[BlogPost] WordPress: Time-Based XSPA (Cross-Site Port Attack)
[BlogPost] Cómo debería ser un WordPress un poco más seguro
[BlogPost] WPHardening: Automatizar fortificación de WordPress
[BlogPost] Protege los borradores de los artículos de tu WordPress
[BlogPost] Registro de cuentas en WordPress públicos
[BlogPost] Riesgos en la ejecución de tareas de Cron
[BlogPost] WordPres: XSS en plugin WP-UserAgent
[BlogPost] Listar los plugins de WordPress en un pentest
[BlogPost] WordPress: SQL Injection en Scarcity Builder Plugin
[BlogPost] Docker WordPress in Paranoid Mode
[BlogPost] Faast for WordPress

Autor: Pablo González Pérez (@pablogonzalezpe), escritor de los libros "Metasploit para Pentesters", "Hacking con Metasploit: Advanced Pentesting" "Hacking Windows", "Ethical Hacking", "Got Root" y “Pentesting con Powershell”, Microsoft MVP en Seguridad y Security Researcher en el equipo de "Ideas Locas" de la unidad CDO de Telefónica.

martes, mayo 14, 2019

Custom Search Engines para hacer Google Hacking "Like a Boss"

Desde hace tiempo Google permite crear lo que se llaman "Custom Search Engines", o lo que es lo mismo, vistas de lo que es el motor de búsquedas completo de Google. Por definición no es que amplíen para nada el contenido que hay en el buscador principal, pero a los usuarios menos diestros en el uso de los parámetros y modificadores de búsqueda, les puede venir que se les ofrezca un Custom Search Engine o CSE pre-cocinado.

Figura 1: Custom Search Engines para hacer Google Hacking "Like a Boss"

La idea es bastante simple. Supongamos que una persona sin conocimientos avanzados de las opciones de búsqueda tiene que buscar, para su trabajo, documentos de un determinado tipo, y siempre acaba perdida en dominios que tienen otros documentos similares, o que por medio de técnicas de SEO se han posicionado mejor.

Esto puede generar un auténtico quebradero de cabeza a la organización, ya que estos usuarios que se "pierden" con las búsquedas, son carne de cañón de las técnicas de BlackSEO para hacer ataques de malware, phishing o cualquier otra amenaza que se pueda colar en el buscador.


Figura 3: Introducción a Google Custom Search Engine

Para evitar eso, un administrador de una empresa puede filtrar con un CSE dónde van a poder buscar esas personas y listo. Así, se puede forzar a que un CSE que va a utilizar un administrativo solo pueda hacer búsquedas de un determinado tipo de documento y en un determinado conjunto de dominios.

Figura 3: Libro de Hacking con Buscadores 3ª Edición

Es decir, un Google "pre-configurado" que puede darse a un usuario, o directamente el dueño de la web puede instalar dentro de su propio sitio. El vídeo de la Figura 2 lo explica bastante bien. Por supuesto, si eres un amante del Hacking con Buscadores, puedes pre-configurarte tus propios CSE para realizar búsquedas de Google Hacking de una manera más cómoda. Y eso es lo que he hecho yo.

Robots.txt y Sitemap.xml

Si lleváis un tiempo en esto del mundo del Hacking de Web Technologies, sabéis que una buena fuente para hacer dorking - es decir, buscar objetivos de forma masiva - es utilizar las técnicas de Google Hacking. Cuando un atacante descubre una vulnerabilidad que afecta a una versión de software concreto, o una debilidad que se puede explotar en muchas webs, como el caso de portales de impresoras, o módulos de estadísticas vulnerables, hacer dorking y localizar objetivos afectados es el camino habitual.

Figura 4: Libro de Hacking Web Technologies de Chema Alonso,
Pablo González, Amador Aparicio, Enrique Rando y Ricardo Martín.

Y como bien se explica en el libro de Hacking Web Technologies, o hemos podido leer en muchas ocasiones por este blog, buscar en los archivos de configuración de los buscadores es una forma muy cómoda de hacer dorking. Es decir, buscar en los ficheros Robots.txt o en los ficheros Sitemaps.xml nombres de ficheros que el propio administrador del sitio ha dicho que no quiere que aparezcan en el buscador.

Podéis leer el artículo de Chema Alonso del año 2013 en el que hablaba exactamente de esto, de cómo buscar en los sitios webs aquellos archivos que estaban prohibo ser encontrados por el buscador, lo cual es un poco contrasentido, ya que es verdad que el fichero en sí no queda - a priori - indexado, pero el nombre de fichero sí porque Google indexa los ficheros robots.txt y sitemap.xml.

Figura 5: Búsqueda en Google para localizar robots.txt indexados

Visto esto, quise hacerme un par de CSE para poder buscar directamente en ficheros Robots.txt y Sitemap.xml. Si ven la consulta de la Figura 5, es fácil personalizar CSEs para que hagan vistas de Google que busquen solo dentro de ficheros Robots.txt de los dominios que nos interesen. Los que yo cree y que pueden usar son para jugar con ellos son:

- Google Custom Search Engine para Robots.txt
- Google Custom Search Engine para Sitemap.xml

A partir de ese momento buscar en estas ubicaciones es muy sencillo. Por ejemplo, buscar rutas de bases de datos como buscaba Chema Alonso en el 2013 dentro de ficheros robots.txt sería algo como usar el CSE de Robots.txt y teclear solo bbdd.

Figura 6: Búsqueda de bbdd en robots.txt usando el CSE de robots.txt

Por supuesto se puede buscar lo que se desee. Cosas como private, privado, bkp, tar, zip, rar, bd, mdb, etcétera, etcétera. Si eres amante del Hacking con Buscadores, seguro que conoces los "juicy files" de las tecnologías web de esos que busca la FOCA.

Y lo mismo sucede si utilizamos el CSE de Sitemap.xml, que nos permite de forma cómoda buscar cualquier tipo de URL que pueda estar en uno de estos archivos, como por ejemplo rutas a documentos en Dropbox.com.

Figura 7: Resultados en el CSE de sitemap.xml

Al final, usar este tipo de Google Custom Search Engines puede ser bueno no solo para evitar riesgos de que usuarios se "pierdan", sino para hacer "dorking like a boss" sobre algún tipo de debilidad concreta o alguna tecnología específica.

Autor: Gustavo a.k.a Rootkit Pentester freelance e-mail:rootkit.redbird@gmail.com

lunes, mayo 13, 2019

Cómo funciona TRITON (TRISIS): Un malware para Sistemas de Control Industrial del que protegerse

Tras Stuxnet en 2010 (Irán) e Industroyer en 2016 (Ucrania), no se habían visto ataques combinados y sofisticados focalizados principalmente para atacar y persistir en Infraestructuras Críticas y Sistemas de Control Industrial, diseñados específicamente para manipular e incluso destruir los sistemas infectados. A fecha de hoy, un año después, auditando algunas infraestructuras SCI, todavía se puede constatar que de la familia de malware TRITON sigue alguna “versión” activa.

Figura 1: Cómo funciona TRITON (TRISIS): Un malware para
Sistemas de Control Industrial del que protegerse

Aunque parece que no ha evolucionado sí que continua contando con persistencia activa en algunos sistemas industriales e incluso sus creadores ha aparecido involucrados en el malware utilizado en ataques realizados en este mes de Abril a Sistemas de Control Industrial en Arabia Saudí que terminaron con explosiones.

Figura 2: Noticia en TechCrunch sobre Triton de Abril de este año

Los sistemas objetivo del malware TRITON, proporcionaron la capacidad de realizar una parada de emergencia totalmente incontrolada con los peligros reales que dicha parada implica, desarrollando una capacidad para causar daño físico en los sistemas y operaciones aleatorias de apagado o interrupción involuntaria de los dispositivos afectados.

Figura 3: "Infraestructuras Críticas y Sistemas Industriales:
Autidoría de seguridad y fortificación"

La familia de malware TRITON, consta de varios componentes ya identificados creados y dirigidos a los Sistemas de instrumentación de Seguridad (SIS) de Triconex. Dicha familia de malware, venía “disfrazada” de Trilogger (un producto de la marca Triconex), software de grabación, análisis de datos operativos de los sistemas Triconex. El malware es altamente destructivo, e implementado principalmente en Python.

Figura 4: Sistema Triconex

Una vez el atacante obtiene acceso al dispositivo, es posible re-programar los controladores SIS, que a su vez provocan la alteración del sistema de control de seguridad y provoca un apagado del Sistema de Control Industrial. Esto le permite al atacante decidir si procede a realizar un apagado controlado, o un apagado disruptivo del sistema y todos sus componentes. Esto altera el funcionamiento normal del ICS, y provoca mensajes de error en cascada de MP (Memory Protection), al acceder a partes de la memoria del sistema de control de Triconex - en este caso provocando incluso destrozos físicos  y en algunos casos poner en peligro los empleados de la factoría o provocar catástrofes ecológicas -.

Dichas modificaciones del SIS, pueden ser moldeables arbitrariamente por el atacante, provocando sistemáticamente apagados incontrolados, y en intervalos de tiempo predefinidos, haciendo que los objetivos infectados sean difíciles de detectar. Vamos a analizar ahora un poco su línea temporal y funcionamiento interno, haciendo un poco de análisis al código del malware.

Timeline:

  • Agosto 2017: Posible fecha de desarrollo y noticia de la primera infección.
  • Septiembre 2017: Segunda infección detectada en industria energética, contrastada con la prueba de malware subida a repositorios para detección de malware.
  • Octubre 2017: Auge de infecciones detectadas en varias factorías.
  • Diciembre 2017: primeros informes de respuestas a incidentes.
Módulo principal TRICONEX
  • Fichero: Trilog.exe
  • Sha-1: dc81f383624955e0c0441734f9f1dabfe03f373c
  • Hash MD5: 6c39c3f4a08d3d78f2eb973a94bd7718
  • Tamaño: 21KB
  • Date-Time: 0x49180192 (11/10/2008 1:40:34 AM)
  • Compilador: Microsoft Visual C/C++ (2008) [msvcrt] / Microsoft Linker (9.0)
Figura 5: Código módulo principal de trilog.exe

Figura 6: Módulo payload adicional
Figura 7: Hex-dump del payload
Figura 8: Tslow, interface de bajo nivel para Tristation

El modulo Tslow, es uno de los principales “activos” del malware y capaz de ejecutar las siguientes instrucciones y procesos dentro el ataque:
  • _init_: inicializar la comunicación con valores por defecto.
  • Close: crear todas las comunicaciones TCM y UDP.
  • detect_ip: detecta la dirección IP enviando un mensaje de ping precargado al 255.255.255.255:1502
  • connect- se conecta a la dirección IP del controlador.
  • udp_close: cierra las conexiones UDP.
  • udp_send - envía paquetes UDP para mantener la conexión en vivo.
  • udp_flush - vacía paquetes UDP.
  • udp_recv - recibe un paquete UDP ficticio.
  • udp_exec – exec la comunicación UDP.
  • udp_result - return el estado de la ejecución de las funciones del protocolo UDP.
  • tcm_ping - envía ping a través de TCM.
  • tcm_connect - se conecta a través de TCM.
  • tcm_disconnect - desconecta la conexión TCM.
  • tcm_reconnect - restablece la conexión TCM.
  • tcm_exec - ejecuta la comunicación TCM.
  • tcm_result: - devuelve el resultado de ejecutar funciones de protocolo TCM.
  • ts_update_cnt - cuenta el número de comandos ejecutados.
  • ts_result - devuelve el estado de ejecutar comandos TS.
  • ts_exec - ejecuta un comando TS.
Además de estos módulos principales, consta de 36 módulos adicionales que le confieren una potencia destructiva de los sistemas muy elevada.

Figura 9: Esquema principal TSAA Triconex

El malware TRITON también esta implementado para comunicarse con los dispositivos utilizando el protocolo propietario Tristation (protocolo que carece de documentación publica). La vulnerabilidad principal en Triconex, es la denegación de servicio, lo que provoca en este tipo de dispositivos la caída de toda la red de intercomunicación OT que depende del Triconex. Dicha vulnerabilidad DDoS se puede desencadenar enviando paquetes TSAA por el puerto UDP 1500.

Mitigación y protección:

Se deben tomar una serie de medidas adicionales para mitigar y controlar un posible ataque dcon malware de la familia TRITON:
Acceso físico: Un buen control al acceso físico a los controladores SIS, así como el resto de componentes hardware , deben mantenerse en espacios cerrados controlados por acceso limitado , monitoreados y accesibles solo para personal autorizado. Asimismo el switch físico en los controladores Triconex debe mantenerse en la posición "Ejecutar" durante las operaciones normales, a fin de limitar accesos o cambios malintencionados de un cambio de configuración no controlada o no autorizada.
Control y segmentación de la red: Mantener les dispositivos SIS en una red aislada y controlada.
Control de acceso remoto/logico:  Mediante cualquier sistema de conexión controladores SIS, ya sea una etehrnet, wifi, ,pendrive, vpn, vnc, teamviewer, etcétera, se debe requerir un sistema e autenticación fuerte y recomendable un Segundo Factor de Autenticación (2FA).
Escaneado permanente de la red: Instalar tecnologías de monitoreo de la red, de forma continua y sistemática con análisis del trafico en la misma. Implementar tecnologías de IA, con el fin de mejorar el análisis automático para detectar flujos de comunicación inesperados entre dispositivos, detección de nuevos dispositivos conectados, escaneo de todos los métodos de intercambio de datos entre la red.
Figura 10: Notificación de seguridad para TRITON de Schneider Electric

Schneider Electric lanzó una Notificación de Seguridad con nivel  "Importante" con pasos de mitigación específicos con respecto a sus controladores de seguridad Triconex. Schneider Electric recomienda verificaciones periódicas para las actualizaciones de la notificación de seguridad, incluidos los requisitos de configuración técnica específica.

Figura 11: Notificación de seguridad de ABB sobre TRITON/TRISIS

Dada esta posibilidad tan peligrosa, la empresa ABB también lanzó una Notificación de seguridad cibernética el 22 de diciembre de 2017 con pasos de mitigación similares para sus controladores de seguridad.

Autoría:

A ciencia cierta se desconoce la autoría del malware, ya que no se han notificado secuestros ni pagos en ninguna de las formas que se conoce hasta ahora el secuestro de sistemas o archivos. Todo indica que los objetivos y el daño a infligir, estaban muy claros, empresas energéticas muy bien definidas, aunque seguramente experimentaron con un objetivo mas amplio (Arabia Saudí, Asia y Europa). Todo este desarrollo, conocimiento del producto, así como de algún protocolo sin documentar a ataques de estado.

Autor: Jordi ubach (@jubachm)

Más referencias de seguridad en Sistemas de Control Industrial e Infraestructuras Críticas

- Infraestructuras Críticas y Sistemas Industriales: Auditorías de Seguridad y Fortificación
- Hacking de Dispositivos IIoT (Industrial Internet of Things)
- Libro de Python para Pentesters en 0xWord
- Libro de Hacking con Python en 0xWord
- PLCs de Allen Bradley envían la password de Administración
- Informe Mandiant sobre APT1
- Ataque de fuerza bruta a PLC Omron CJ2H CPU64-EIP
- Captura de claves en PLCs industriales CP1L-EM de Omron
- Tu industria en mis manos
- Qué fácil es ver las flaquezas de seguridad de algunos ICS (Sistemas de Control Industrial)
- SCADA: Halcones heridos en tus Infraestructuras Críticas
- Otra de passwords por defecto en Honeywell WebStat (Niagara Web Server)
- Concentradores de Telegestión de Contadores PLC de Telecon integran Latch
- Shodan y sistemas SCADA
- Intentan envenenar agua de un planta depuradora en UK
- La historia del carnicero agradecido
- Unidad de (des)cuidados intensivos
- Hundir la flota por computador: Fallos de seguridad en miles de barcos navegando
- AntiDDoS para dispositivos IoT usando un GSM Shield hecho con Stack SMS

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