Select Page
NetCAT: otro side-channel de Intel

NetCAT: otro side-channel de Intel

Otra vulnerabilidad de side-channel en procesadores Intel, permite reconstruir sesiones SSH usando Keystroke Dynamics.

Ya habíamos hablado hace tiempo de las vulnerabilidades de side-channels (o Canales laterales). Meltdown y Spectre son los más resonantes ejemplos de dichas vulnerabilidades que afectan a los procesadores Intel.
En ese sentido, investigadores de la universidad de Vrije de Amsterdan publicaron un paper donde presentan un nuevo ataque a procesadores Intel modernos explotando canales laterales.

A partir del descubrimiento, el grupo inició un proceso de publicación de la vulnerabilidad acordado con Intel y el CERT Alemán el 23 de Junio pasado. A la vulnerabilidad se le asignó el código CVE-2019-11184 y además Intel, le asignó el suyo propio: INTEL-SA-00290.

 

Fundamentos:

El grupo de 5 investigadores del Departamento de Ciencias de la Computación de la universidad, señala la dificultad que poseen los procesadores modernos para sostener la alta tasa de transferencia de placas de red modernas. En lugar de transferir esos datos desde y hacia la DRAM, los procesadores Intel modernos realizan operaciones de E/S directamente en la LLC. Esta función se denomina DCA (Direct Cache Access) y se utiliza en lugar de acceder a la memoria vía DMA (Direct Memory Access). La función para acelerar la transferencia de datos con esta técnica se denomina Data-Direct I/O (DDIO).

El problema de utilizar LLC es que esta memoria caché se comparte entre la CPU y el resto de los periféricos, y está implementada por diseño sin medidas de seguridad. Los investigadores de Vrije hicieron foco en uno de los dispositivos, las interfaces de red. De esta forma crearon un ataque denominado NetCAT (abreviatura de Network Cache ATtack) mediante el que explotan información sensible de tiempos en comunicaciones de redes. Particularmente, detectan las teclas oprimidas por otro usuario que comparta la misma CPU en una sesión SSH.

¿Pero cómo hacen para saber qué teclas oprimió un usuario? Esto sería imposible teniendo en cuenta que la vulnerabilidad descubierta es sobre el contenido de información de red (que quedan en la LLC) y a nivel de red, los paquetes SSH viajan cifrados. La forma de obtener esa información es adivinando las teclas que oprimen los usuarios. Y eso lo hacen mediante Keystroke Dynamics.

 

Prueba de concepto

Los investigadores publicaron el detalle de como construyeron el ataque. Éste empieza conectándose a un dispositivo que esté utilizando un procesador intel con DDIO y RDMA habilitados. Si hay un usuario que se conecta al mismo servidor y establece una sesión SSH, es posible registrar la llegada de cada paquete de dicha sesión. Dado que en SSH los caracteres que el usuario tipea se envían de a uno por vez, es posible adivinar los caracteres enviados por la latencia entre ellos. Esta técnica es bastante antigua. Esto ya lo hacía el viejo Chaosreader hace unos 15 años. El que, a su vez, había tomado el concepto de Song en su paper de 2001.
Podemos ver lo que hacía Chaosreader ya que milagrosamente ¡la página de Brendan Gregg sigue viva! La diferencia con NetCAT es que Chaosreader capturaba paquetes de red y trabajaba con ellos para obtener información diversa. Una de las funciones de la herramienta era “adivinar” el contenido de sesiones SSH mediante una herramienta denominada sshkeydata.
En esta página se pueden ver los resultados de procesar paquetes de sesiones SSH. Aquí se puede ver cómo se analizan los paquetes para tratar de reconstruir la sesión.

La gente de Vrije utilizó además que el de Song, otros trabajos más modernos que le permitieron aumentar la precisión. Por otro lado, leer los tiempos de llegada de los paquetes via DDIO es más preciso que usando libpcap por la red. Sin embargo, se enfrentaron con los mismos problemas que todos los que hicimos esto alguna vez: extraer las teclas tipeadas por usuarios no enrolados*. Teniendo en cuenta que todas las personas escriben sobre un teclado con patrones de tipeo diferentes, esta tarea es la más difícil de realizar.

 

Conclusiones

Por un lado, en la eterna pelea performance y usabilidad vs. seguridad, a veces ganan unos y a veces otros. Habilitar DDIO y RDMA sabemos que es poner a los procesadores en modo turbo. Pero el efecto secundario es que se pierde seguridad. En este caso, poder leer datos de la caché de los dispositivos va mucho más allá que reconstruir sesiones SSH. Hay mucha información sensible que puede estar siendo transferida entre dispositivos por un usuario y vista por otro que no tiene privilegios y sólo por estar en el mismo procesador.

Por el otro, ciberseguridad ya tiene tantos años que dejó de ser nueva. Otra vez side-channel attacks… otra vez Intel… otra vez keystroke dynamics.
Los problemas que se encuentran hoy ya no son nuevos, sino viejos que se reciclan.

 

 

*Usuarios no enrolados: usuarios de los cuales no se tiene la información de su patrón de tipeo.

 Usuarios enrolados: usuarios que se los somete a varias pruebas repetitivas, para que tipeen textos conocidos y controlados, y así se puede obtener su patrón de tipeo.

 

Nota por Carlos Benitez

Carlos Benitez es un reconocido experto en seguridad de la información.
Cada vez más cerca

Cada vez más cerca

Un informe publicado el día de hoy, señala que es posible para un atacante alterar datos de sensores en aviones, que podrían desencadenar en desastres aéreos.

El informe de la empresa Rapid7, presenta el resultado del análisis de investigadores de dicha empresa sobre dos implementaciones de redes CAN populares en el mercado.

El bus de redes CAN (Controller Area Network) en un avión, es un medio de transmisión de datos donde viaja la información de todos los sensores del avión. Estos sensores miden parámetros físicos vitales para la operación de la aeronave, tales como los datos de parámetros del motor, o del mismo avión como: actitud, altitud, dirección, etc. Esa información se envía por un bus CAN hacia los diferentes sistemas y panel de instrumentos de la cabina del avión.

Es evidente que los pilotos necesitan esa información para navegar. En medio de la noche y a 10 mil metros de altura, el piloto no tiene idea de si está a 10 mil, 11 mil u 8 mil metros y si se está dirigiendo al Norte o al Nor-Noroeste si no fuera por sus instrumentos.

¿Qué pasaría entonces, si alguien pudiese alterar esa información?, ¿si alguien pudiera hacer que los instrumentos indiquen que está a 8 mil metros cuando en realidad está a sólo mil…? ¿..y con el avión descendiendo..?

Bueno, los investigadores descubrieron que esto es posible, al menos en aviones pequeños. Sin embargo, los buses CAN o variantes de ésta tecnología se utilizan también en aviones grandes y hasta en la industria automotriz. La popularidad de este sistema se debe a su bajo costo. En los buses CAN, TODOS los mensajes se transmiten por el mismo bus desde todos los sensores hacia todos los endpoints.  Esta característica es barata, pero como ya se habrán dado cuenta, no demasiado segura… En algunos casos se utiliza autenticación de mensajes, pero que puede saltearse fácilmente.

Otra condición para que un ataque de este tipo sea “existoso”, es que el atacante tenga acceso físico al avión…. (como por ejemplo… ¿¿¿un pasajero..???).

Por un lado, ya alguna vez hablamos sobre los pobres sistemas de seguridad que poseen las aerolíneas en sus sistemas de gestión de pasajes (1, 2). Por el otro, ya hace algunos años algunos investigadores descubrieron que los sistemas de entretenimiento de los aviones comerciales eran vulnerables. Uno de los defectos de seguridad de estos sistemas es que los dispositivos USB de los sistemas de entretenimiento, permiten conectar dispositivos como teclados o mice que son reconocidos por los sistemas. De esta forma, es posible interactuar tanto con las aplicaciones, como con los sistemas operativos.

Aquí se puede ver un ejemplo de cómo salir de la pantalla de control de un sistema de entretenimiento de un avión de una aerolínea internacional muy importante, simplemente conectando un teclado y probando diferentes combinaciones de teclas:

La pregunta entonces, es: ¿cuánto puede demorar alguien en saltar del sistema de entretenimiento a una red CAN y producir un desastre aéreo?

Tan grave fue el resultado de esta investigación y del informe publicado hoy, que el mismo US-CERT publicó hoy mismo una alerta en su página sobre infraestructuras críticas.

No por nada se están creando desde hace poco más de un año empresas de ciberseguridad que dedicarán sólo a desarrollar soluciones tendientes a mitigar potenciales ciberataques sobre aeronaves.

 

Nota por Carlos Benitez

Carlos Benitez es un reconocido experto en seguridad de la información.
Malboard: Replicando patrones de tipeo

Malboard: Replicando patrones de tipeo

Encuentran la forma de engañar a los sistemas de autenticación por reconocimiento de patrones de tipeo.

 

El Si6:

Fue allá por el 2003 en el Si6 donde iniciamos un conjunto de proyectos relacionados con la identificación de comportamiento de intrusos. Uno de los temas de investigación sobre el que trabajamos durante años, fue el de Keystroke Patterns o Patrones de Tipeo. El objetivo era el de poder identificar a un intruso, que se logueaba de forma interactiva a una shell, analizando su comportamiento de tipeo.

Aprovecho esta nota para nombrar a todos los investigadores que formaron parte del Si6, equipo al que me enorgullezco de haber pertenecido: Sebastián García, Flavio Fernández, Georgina Halladjian, Alejandro Benaben, Maximiliano Bertacchini, Luciano Bello, Verónica Estrada, Pablo Fierens y Carlos Benitez.

El Si6 no existe más, pero como los que estamos en este negocio sabemos que los rastros no se borran nunca en Internet, por si a alguien le interesa:

Como parte de nuestro trabajo, publicamos varios trabajos relacionados con la dinámica de tipeo, como por ejemplo:

Keystroke Dynamics:

Respecto a Keystroke Dynamics, el concepto es sencillo. Todas las personas utilizan sus dedos para oprimir teclas en un teclado. Del mismo modo que cada una de nosotros camina, sonríe o habla de forma diferente, también tipeamos de forma diferente. Por este motivo es posible identificar personas determinando lo que se denomina su “patrón de tipeo” o keystroke pattern.
Además de los trabajos de investigación, también desarrollamos una aplicación para detectar estos patrones en aplicaciones la web. La aplicación se denominaba k-profiler y los resultados de la investigación fue publicada en el paper: User Clustering Based on Keystroke Dynamics

 

El concepto consiste en medir los tiempos de latencia entre diferentes acciones realizada en el teclado (como apretar o soltar una tecla). La medición suele realizarse sobre el tiempo entre dos teclas sucesivas o “digrafos”.

En esa época, habíamos imaginado una némesis para el concepto. Consistía en la posibilidad de que un intruso alterara artificialmente su patrón de tipeo. De esta forma sería identificado como otro atacante y no como él mismo.

 

Malboard:

Pasaron 16 años y nuestro némesis se volvió realidad. Un grupo de investigadores de la universidad Ben-Gurion, descubrió una forma de engañar a los sistemas que autentican a las personas usando sus patrones de tipeo. El ataque, denominado Malboard, fue publicado en mayo pasado. En este caso, no es un usuario que se impersona en otro para falsear su patrón de tipeo. Sino que se utilizan dispositivos USB que se reconocen como teclados para inyectar comandos desde un teclado. Existen varios dispositivos de este tipo en el mercado, tal como el RubberDucky. Lo novedoso de este ataque es que los comandos se inyectan tal como lo haría el usuario al que se trata de impersonar.

Para el ataque, se evaluaron los patrones de tipeo de 30 personas realizando 3 acciones diferentes. A partir de la copia del patrón de tipeo, se inyectaron comandos maliciosos mientras se era monitoreado por diferentes sistemas de detección como TypingDNA o KeyTrac. El resultado fue que se logró evadir los sistemas de detección más del 83% de los casos.
Pero el grupo no se quedó sólo en el ataque. Desarrolló además un sistema que permite su detección. Con esto lograron un 100% de efectividad en la detección, al menos en las pruebas realizadas por ellos.

El método de identificación por patrones de tipeo se utilizó por primera vez con el telégrafo durante la guerra de secesión de Estados Unidos allá por 1860. Es interesante ver cómo técnicas como estas no mueren, sino que se reciclan constantemente evolucionando una y otra vez.

 

Nota por Carlos Benitez

Carlos Benitez es un reconocido experto en seguridad de la información.
El Agente Smith

El Agente Smith

Un nuevo virus denominado Agente Smith, ya ha infectado unos 25 millones de dispositivos Android en todo el mundo.

A los fanáticos de la trilogía Matrix, no hay qué explicarles quién es ni cómo actúa el agente Smith. El personaje vive dentro de la Matrix y es el principal enemigo de Neo.
Por su comportamiento, podría considerarse un virus con la capacidad de replicarse, transformado a culquier otra persona dentro de la Matrix en una copia de sí mismo.
Por este motivo, los investigadores de checkpoint, han denominado así al nuevo virus que actúa exáctamente como el agente Smith.

Ya en el 2015, el Chema Alonso había contado en Segurinfo una forma ingeniosa de infectar smartphones Android. La técnica consistía en dos pasos. El primero era comprar aplicaciones existentes en Google Play, a desarrolladores que se aburrieron de mantenerlas. El segundo consistía en infectar dichas aplicaciones y subir las versiones infectadas al Play, para infectar los celulares cuando los usuarios las actualizaran.

El Agente Smith, utiliza una técnica ligeramente diferente. El detalle técnico de su funcionamiento puede encontrarse en el sitio de checkpoint. A modo de resumen, podemos decir que la técnica consiste en 3 pasos:

  1. Engaña a los usuarios para que se instalen aplicaciones gratuitas (normalmente juegos o apps de adultos) desde sitios como 9Apps. Una vez instalado, el Agente Smith comprueba si el usuario posee instalada alguna aplicación pupular de una lista que trae internamente. Dentro de esa lista, están aplicaciones como Whatsapp u Opera Mini.
  2. Una vez dentro del dispositivo, descifra su payload malicioso que consiste en un archivo apk. Esto lo hace sin intervención del usuario utilizando vulnerabilidades conocidas de Android como por ejemplo: Janus o Man-in-the-disk.
  3. El Agente Smith ataca las aplicaciones del teléfono que estén en su lista, de la misma modo que lo hizo el personaje de Matrix con Morfeo. Descarga los apk’s de dichas aplicaciones de los sitios originales, los modifica inyectando código mailcioso, e instala esta nueva versión infectada replicándose en dichas aplicaciones. Esta técnica es similar a la comentada por el Chema, pero el Agente Smith lo hace dentro del mismo celular. Esta segunda instalación, la efectúa también abusando de las vulnerabilidades ya mencionadas.

Hasta el momento, los investigadores calculan que existen unos 25 millones de celulares infectados con el Agente Smith. Si bien la mayoría de las infecciones se dieron en la India, Bangladesh y Pakistán en el siguiente mapa puede verse que ya está distribuido por todo el mundo.

 

¿Pero cuál es el propósito de la infección? Por el momento es bastante inocente. Simplemente hace que las aplicaciones infectadas desplieguen pop-ups de publicidad. Se cree que el objetivo de estos Ads, es generar ganancias para el grupo desarrollador del malware sumando clics. Sin embargo, la técnica es tan sofisticada y se hizo con tanto cuidado, que podría ser fácimente modificable para llevar otro tipo de payload mucho más peligroso. Por ejemplo, se podría usar para obtener credenciales de acceso o bancarias, o hasta pinchar los teléfonos infectados.

 

Nota por Carlos Benitez

Carlos Benitez es un reconocido experto en seguridad de la información.
Ciberataques a centrales eléctricas… o Godzilla vs King Kong

Ciberataques a centrales eléctricas… o Godzilla vs King Kong

Recientemente, una impactante noticia sobre ciberataques a redes eléctricas recorrió portales en todo el mundo. La posibilidad de atacar centrales eléctricas, paralizando ciudades, estados y hasta países enteros, sería ya una realidad.

Ya habíamos mencionado hace poco más de un año, que los principales blancos de ciberataques a las infraestructuras críticas, eran las centrales eléctricas. Diferentes grupos en todo el mundo vienen intentando ingresar a las redes que controlan los sistemas de producción y distribución de electricidad.

Los principales blancos de ciberataques a las infraestructuras críticas, son desde hace mucho tiempo, las centrales eléctricas.

Estos grupos estuvieron tan activos, que hasta desarrollaron malware específico. Hace algunos años, investigadores de ESET descubrieron  malware como el Crashoverride (también llamado Industroyer), diseñado específicamente para atacar centrales eléctricas. El código fue descubierto dentro de una planta de distribución de energía eléctrica de Ucrania. El halllazgo se produjo luego de la interrupción del suministro eléctrico en la zona norte de la ciudad de Kiev, a varias decenas de miles de usuarios y por poco más de una hora. En ese momento la repercusión mundial fue enorme. La empresa Dragos analizó técnicamente al Crashoverride y los resultados del análisis se pueden ver en su sitio web, o en la charla que dieron en BlackHat en 2016.

 

Godzilla

Si bien esta actividad lleva años, esta semana ocurrió algo nuevo. El New York Times, publicó una serie de notas, que hacen referencia a un informe en el que se deja expuesto otro aspecto del problema. Según el informe, el gobierno de Estados Unidos, desarrolló e implantó un elaborado sistema de malware dentro de las redes del sistema de producción y distribución de energía eléctrica de Rusia. El objetivo parecería ser el de atacar la red eléctrica rusa en caso de que se produjera un conflicto importante entre Moscú y Washington.

 

King Kong

Pero del otro lado, las cosas no parecen ser muy diferentes. Ya el Wall Street Journal informaba muy detalladamente a principio de este año, sobre las actividades de hackers rusos en la infraestructura crítica de Estados Unidos. Al parecer  se fueron detectando rastros de infiltraciones en compañías eléctricas de 24 estados de la Unión. Previamente a esto, el 15 de marzo del año pasado, el gobierno de Estados Unidos, publicó un detallado informe en el que declararon la existencia de una campaña de hacking por parte de Rusia, para infiltrar la infraestructura crítica de Estados Unidos.

 

El G-20

Tanto ha escalado este conflicto silencioso en estos últimos días, que en este momento se está hablando que Putin y Trump se reunirían en privado, durante el próximo capítulo del G-20, sólo para tratar este tema. Lo que está claro es que las redes de energía eléctrica se han convertido recientemente en un campo de batalla internacional. Un nuevo campo de batalla donde, al parecer, dos monstruos decidieron enfrentarse.

 

Las redes de energía eléctrica se han convertido recientemente en un campo de batalla internacional. Un nuevo campo de batalla donde, al parecer, Rusia y Estados Unidos decidieron enfrentarse.

 

La pelea

¿Fue o no fue un ciberataque? Cuando hoy en día se produce un gigantesco apagón, dadas las circunstancias expuestas, lo primero que pensamos es que fue un ciberataque. Si bien puede ocurrir que en algunos casos no lo sea, la verdad es que la probabilidad de que sí lo sea es alta. Las herramientas de ataque están desarrolladas y disponibles. El esfuerzo por protegerse es muy alto mientras que el esfuerzo para atacar es mucho menor.

Para usar términos futbolísticos, los que estamos de este lado, sabemos que estamos perdiendo por goleada. Más o menos 10 a 1. Es 10 veces más facil atacar que defenderse. Se paga a los especialistas en ciberseguridad 10 veces más en el lado oscuro. El costo de las herramientas de ataque es 10 (¿o cien? ¿o mil?) veces más barato que las de defensa. Genera 10 veces más adrenalina atacar que defenderse. Los que estamos de este lado, perdemos en todos los partidos, aunque eso no significa que vamos a darnos por vencidos 🙂 algún día los sistemas serán lo suficientemente robustos como para que estas cosas no ocurran. De todos modos, hay un partido que ganamos, de cada 100 intentos de ataque, sólo uno llega al blanco.

 

En ciberseguridad, es 10 veces más fácil atacar que defenderse. El costo de las herramientas de ataque es 10 (¿o cien? ¿o mil?) veces más barato que las de defensa.

 

La baticueva

Mientras tanto en la baticueva… los diseñadores y programadores de todo este malware, deben probar muy bien el funcionamiento de sus desarrollos. ¿Y dónde probar…? El laboratorio es el laboratorio…, tiene grandes limitaciones. Es imposible reproducir todas las condiciones, escenarios y variables de instalaciones reales. Habrá que probar entonces de otra forma, en un escenario más verdadero, pero sin atacar a Godzilla ni a King Kong. ¿Porqué no hacerlo entonces, en algún pequeño y remoto país, con mínimas o nulas medidas de ciberprotección, y donde no haya demasiadas repercusiones por interrumpir el suministro eléctrico por algunas horas a algunos miles (¿…millones…?) de habitantes?

 

Los diseñadores y programadores de malware para centrales eléctricas, deben probar muy bien el funcionamiento de sus desarrollos.

 

Los monstruos

Cuando de chico veía las películas de Godzilla, siempre me preguntaba sobre la suerte que corrían las personas que quedaban aplastadas cuando los edificios se derrumbaban durante las peleas. Es que cuando pelean gigantes, es imposible no quedar cubiertos por toneladas de escombros como efecto colateral de tan titánica batalla.

 

 

 

Nota por Carlos Benitez

 

Carlos Benitez es un reconocido experto en seguridad de la información.
Teamviewer hackeado

Teamviewer hackeado

Ya la existencia de Teamviewer en nuestras redes era difícil de tragar para quienes trabajamos en ciberseguridad, cuánto más lo será ahora que la empresa reconoce que fueron hackeados.
En una nota publicada en la revista Der Spiegel la empresa reconoce que en el año 2016 fue inflitrada por grupos de hackers probablemente chinos.

La noticia fría, reza que Teamviewer fue ciberatacada en 2016 pero que no se informó del incidente en ese momento, ya que ellos consideraban que no se comprometieron datos de los usuarios. También es cierto que para esa fecha, no estaba todavía en vigencia la GDPR a través de la cual, hubiesen estado obligados a informar el incidente.Como bien se sabe, Teamviewer produce el software homónimo cuyo propósito es el de RDT (Remote Desktop Tool = Herramienta de Escritorio Remoto), que nos permite trabajar en nuestra máquina, desde nuestras casas, como si estuviésemos sentados en nuestro escritorio.

Un dato técnico de importancia es que, según informan los responsables de Temviewer, sus sistemas fueron infectados con el malware Winnti, un troyano tan, pero tan elaborado que se lo considera APT (Advanced Persistent Threat = Amenaza Avanzada Persistente).

Si bien el malware, parece haber nacido en 2010, viene creciendo, desarrollándose y madurando. Esa maduración le permitió saltar de la irresistible plataforma Windows, a Linux. Esto sucedió en el 2015, cuando infectó los sistemas de una empresa de videojuegos. Los grupos que parecen estar detrás de este malware serían los APT10 o APT17. Como se puede ver en las referencias, ambos grupos han sido relacionados con el estado chino.

Ok, ahora ¿cuál la diferencia entre RDTs (Remote Desktop Tools) y RATs (Remote Access Tools -o Trojans-)? Todos tenemos terror a los RATs, pero dejamos que existan los RDTs que nos piden instalar los usuarios, no? Bueno, les cuento que la diferencia es sólo semántica. Todas son herramientas que le dan acceso remoto total a un equipo desde el exterior, para un usuario… o para un intruso. Temviewer entonces, ¿es un RDT… o un RAT? Que un usuario instale y utilice por su cuenta, sin control del administrador, una herramienta como estas, compromete seriamente la seguridad de la red, por lo que realmente no hay diferencias. Es una herramienta tan poderosa como peligrosa.

En algunos sectores, como el de salud, se reconoce que la principal amenaza hoy en día ya no es el ransomware, sino los túneles que abren los intrusos por https para pasar inadvertidos. ¿Y si son los usuarios los que instalan túneles por https sin control de los administradores? ¿Y si además, el software utilizado fue “mejorado” inadvertidamente por alguno de los grupos de APT que mencionamos anteriormente, cuando estuvieron de “visita” en los servidores de Teamviewer en 2016?

Casualmente, en ese momento, muchos usuarios reportaron que sus computadoras (con Teamviewer instalado y activo) fueron accedidas por hackers que intentaron robar dinero de sus cuentas de PayPal o comprar productos desde sus cuentas de eBay. Los responsables de Teamviewer declararon en su momento, que no hubo ninguna intrusión, y que los incidentes fueron producidos porque los atacantes le robaron sus contraseñas a los usuarios. Como la culpa es siempre de los usuarios, esto no pasó a mayores.
Pero Les Luthiers responderían a esto… “Carámba! qué coincidencia…!”

Nota por Carlos Benitez

Carlos Benitez es un reconocido experto en seguridad de la información.