Los dispositivos USB son la fuente principal de malware para los sistemas de control industrial, según afirmó Luca Bongiorni de Bentley Systems en su charla en #TheSAS2019. La mayoría de los que estamos involucrados en la seguridad conocemos historias sobre memorias USB que se caen de forma “accidental” en aparcamientos; se trata de una historia que ilustra tan bien el panorama que es imposible no seguir contándola.
Otra historia (real) de memorias USB trata sobre un empleado de una planta industrial que quería ver La La Land, por lo que descargó la película en un dispositivo USB durante la comida. Así comienza la historia de la infección de un sistema aislado en una planta nuclear, una historia demasiado familiar de un caso de infección de una infraestructura crítica que podría haberse evitado fácilmente.
Pero los usuarios suelen olvidar que los dispositivos de USB no siempre son dispositivos de memoria. Los dispositivos de interfaz humana (HID por sus siglas en inglés) como el teclado o el ratón, los cargadores de los smartphones e, incluso, las lámparas de plasma y las tazas térmicas, pueden manipularse para atacar los sistemas de control industrial.
Una breve historia de USB infectados
A pesar de que los usuarios no lo recuerden, los dispositivos USB infectados no son ninguna novedad, de hecho, la primera vez que se escribió sobre este tipo de dispositivos fue en el 2010. Basándose en una pequeña placa programable llamada Teensy y equipados con un conector USB, los cibercriminales pudieron actuar como una HID enviando las pulsaciones del teclado a un ordenador. No tardaron mucho en darse cuenta de que los dispositivos podrían utilizarse para pruebas de penetración y realizaron una versión programada para crear nuevos usuarios, ejecutar programas que añadieran puertas traseras e infectar con malware, ya fuera copiando o descargando la carga maliciosa de un sitio web específico.
La primera versión de la modificación de Teensy recibió el nombre de PHUKD. Kautilya, que era compatible con las placas Arduino más populares, fue la siguiente. Gracias a Mr. Robot apareció Rubberducky, posiblemente la mejor herramienta USB de emulación de pulsaciones y prácticamente igual que una unidad USB corriente. Posteriormente, se utilizó un dispositivo aún más potente llamado Bash Bunny para atacar a los cajeros automáticos.
El inventor de PHUKD tuvo la idea de crear un ratón de troyanos con una placa de una prueba de penetración en su interior, de esta forma, además de funcionar como un ratón normal y corriente, también podía hacer todas las funciones del PHUKD. Desde la perspectiva de la ingeniería social, utilizar HID para penetrar sistemas debería de ser más fácil que utilizar memorias USB para este mismo propósito, porque incluso aquellos que desconfían de insertar una unidad desconocida en su PC, por lo general, no se preocupan por los teclados o ratones.
La segunda generación de estos dispositivos USB infectados se creó durante los años 2014 y 2015 e incluyó a los dispositivos basados en BadUSB. TURNIPSCHOOL y Cottonmouth, presuntamente desarrollados por la Agencia de Seguridad Nacional de Estados Unidos (NSA por sus siglas en inglés), también merecen mencionarse. Eran dispositivos tan pequeños que podrían encajar en un cable USB y utilizarse para extraer datos de ordenadores (incluidos aquellos sin conexión). Un simple cable no resulta muy preocupante, ¿verdad?
El estado actual de los dispositivos USB infectados
La tercera generación de herramientas de pruebas de penetración en USB los ha llevado a un nuevo nivel. Una de estas herramientas es WHID Injector, que se trata básicamente de Rubberducky con conexión wifi. Esta conexión hace posible que no necesite una programación inicial con todo el procedimiento que implica, es decir, un cibercriminal puede controlarla por vía remota, lo que ofrece más flexibilidad y la posibilidad de trabajar con diferentes sistemas operativos. Otra herramienta de tercera generación es P4wnP1, basado en Raspberry Pi y muy similar a Bash Bunny pero con alguna función adicional, incluida la conectividad inalámbrica.
Y, evidentemente, tanto WHID Injector como Bash Bunny son lo suficientemente pequeños como para introducirse en un teclado o ratón. Este vídeo muestra un portátil que no está conectado a ninguna red por USB, Ethernet, ni wifi, pero que está conectado a un teclado con un troyano que permite al cibercriminal ejecutar comandos y acciones en remoto.
https://twitter.com/LucaBongiorni/status/963693468282445824
Los pequeños dispositivos USB como los que hemos mencionado anteriormente incluso se pueden programar para que se parezcan a un modelo HID en concreto, lo que les permite saltarse las políticas de seguridad de esas compañías que solo aceptan ratones y teclados de ciertos proveedores. Las herramientas como WHID Injector también se pueden equipar con un micrófono para establecer un sistema de vigilancia de audio y espiar a los propietarios de los dispositivos. Y lo que es peor, un único dispositivo sirve para comprometer la red entera, a menos que esté correctamente segmentada.
Cómo proteger los sistemas contra los dispositivos USB maliciosos
Además de la vigilancia y de los cables, los ratones y teclados con troyanos son una seria amenaza que se puede utilizar para comprometer sistemas aislados. Actualmente, las herramientas necesarias para estos ataques se pueden comprar por poco dinero y apenas requieren conocimientos de programación, por lo que deberías tenerlas en cuenta.
Para proteger las infraestructuras críticas de tales amenazas, utiliza una estrategia de múltiples capas:
- Verifica primero la seguridad física, para que el personal no autorizado no pueda conectar dispositivos USB aleatorios a los sistemas de control industrial. Además, bloquea físicamente los puertos USB no utilizados en dichos sistemas y evita el retiro de los HID que ya estén conectados.
- Forma a tus empleados para que sean conscientes de los diferentes tipos de amenazas, incluidos los dispositivos USB maliciosos (al estilo del incidente de La La Land).
- Segmenta la red correctamente y administra los derechos de acceso para evitar que los atacantes alcancen los sistemas utilizados para controlar la infraestructura crítica.
- Protege todos los sistemas de la instalación con soluciones de seguridad capaces de detectar todo tipo de amenazas. La tecnología de Kaspersky Endpoint Security no autorizará ningún HID a menos que el usuario ingrese un código con un HID ya autorizado para ello.