Identificación de malware que huele su firma EM

La frase "afirmaciones extraordinarias requieren pruebas extraordinarias" se atribuye con mayor frecuencia a Carl Sagan, específicamente de su serie de televisión. Cosmos. Sagan probablemente no fue la primera persona en hacer tal hipótesis, y el programa ciertamente no afirmó que lo fuera. Pero ese es el poder de la televisión para ti; el término se conoció más tarde como el "estándar de Sagan" y es un aforismo conveniente que resume maravillosamente la importancia del escepticismo y el pensamiento crítico cuando se trata de teorías no comprobadas.

También resulta ser la primera oración que nos vino a la mente cuando escuchamos sobre eso. Detección borrosa: uso de señales electromagnéticas para la clasificación de malware borroso, un artículo presentado en la Conferencia Anual de Aplicaciones de Seguridad Informática (ACSAC) de 2021. Como se describe en el comunicado de prensa principal, el documento detalla un método mediante el cual los investigadores pueden detectar virus y malware que se ejecutan en un dispositivo de Internet de las cosas (IoT) simplemente escuchando las ondas electromagnéticas que provienen de él. Todo lo que se necesitaba era pasar una sonda sobre un dispositivo perturbado, y la técnica pudo identificar qué lo estaba causando con una precisión de casi el 100%.

Estas ciertamente nos suenan como declaraciones extraordinarias. Pero ¿qué pasa con la evidencia? Bueno, resulta que profundizar un poco más en la historia ha descubierto mucho. El documento no solo estuvo disponible de forma gratuita gracias a los patrocinadores de ACSAC, sino que el equipo detrás de él publicó todo el código y la documentación necesarios para recrear sus hallazgos en GitHub.

Desafortunadamente, parece que estamos extraviando temporalmente el osciloscopio USB Picoscope 6407 de 1 GHz de $ 10,000 que su software está escrito para admitir, por lo que no podemos recrear completamente el experimento. Si lo encuentra, por favor envíenos una línea. Pero mientras tanto, aún podemos pasar por el proceso y tratar de separar la realidad de la ficción al estilo clásico de Sagan.

baki malware pi

La mejor forma de entender de lo que es capaz esta técnica, y de qué se trata No capaz de, es examinar la plataforma de prueba del equipo. Además del Picoscope 6407 mencionado anteriormente, la configuración de hardware incluye un amplificador Langer PA-303 y una sonda Langer RF-R H-Field, que descansaba sobre el procesador BCM2837 de Raspberry Pi 2B. La sonda y el amplificador se conectaron al primer canal del osciloscopio, como era de esperar, pero curiosamente, el segundo canal se conectó a GPIO 17 en el Pi para actuar como señal de disparo.

Como se explica en Project Wiki, el siguiente paso fue instalar intencionalmente varios rootkits, malware y virus en la Raspberry Pi. Luego se usó un programa contenedor que primero activaría el Picoscope sobre el pin GPIO y luego ejecutaría el software específico bajo examen durante un período predeterminado. Este proceso se repitió hasta que el equipo acumuló decenas de miles de capturas de varias piezas de malware, incluidas bashlite, mirai, gonnacry, keysniffer, y maK_it. Esto les dio datos sobre cómo se veía la salida electromagnética (EM) del SoC de Pi cuando su sistema operativo Linux estaba infectado.

Pero, de manera crítica, también hicieron la misma adquisición de datos en lo que llamaron una base de datos "benevolente". Estas capturas se realizaron mientras la Raspberry Pi funcionaba normalmente y ejecutaba herramientas que serían comunes para las aplicaciones de IoT. Se recopilaron firmas EM para programas y comandos conocidos, como mpg123, wget, tar, more, grep, y dmesg. Estos datos establecieron una línea de base para las operaciones normales y le dieron al equipo control para comparar.

Crujiendo los números

Como se explica en la sección 5.3 del documento, Análisis y preprocesamiento de datos, las capturas de EM sin procesar deben limpiarse antes de que se puedan extraer datos útiles. Como puede imaginar, la sonda capta una cacofonía de ruido electrónico tan cerca. El objetivo de la etapa de preprocesamiento es filtrar la mayor cantidad posible de ruido de fondo e identificar las fluctuaciones de frecuencia notables y los picos que corresponden a los programas individuales que se ejecutan en el procesador.

Los espectrogramas purificados resultantes se colocaron luego a través de una red neuronal diseñada para clasificar las firmas EM. Similar a un sistema de visión por computadora capaz de clasificar objetos en una imagen en función de su entrenamiento, el software del equipo ha demostrado una capacidad asombrosa para elegir qué software funcionó en el Pi cuando se le presentó una firma EM capturada.

Si se le pedía que clasificara una firma como ransomware, rootkit, DDoS o benigna, la red neuronal tenía una precisión superior al 98 %. Se logró una precisión similar cuando se le encargó al sistema profundizar y determinar el tipo específico de malware que se estaba ejecutando. Esto significaba que el sistema no solo podía detectar si la RasPi estaba comprometida, sino que incluso podía distinguir entre una gonnacry o bashlite infección.

La precisión obtuvo un éxito considerable al intentar identificar la ejecución binaria específica, pero el sistema logró un respetable 82,28 %. Quizás lo más impresionante es que el equipo afirma una precisión del 82,70 % cuando intenta identificar entre varios tipos de malware, incluso cuando se han realizado intentos de ocultar activamente su ejecución, cómo ejecutarlos en un entorno virtualizado.

Expectativas realistas

Aunque los resultados del experimento son ciertamente contundentes, es importante destacar que todo se llevó a cabo en condiciones ideales y controladas. En ningún punto del documento se afirma que esta técnica, al menos en su forma actual, podría usarse en un entorno natural para determinar si una computadora o dispositivo IoT ha sido infectado con malware.

Como mínimo absoluto, los datos deben recopilarse en un conjunto mucho más amplio de dispositivos informáticos antes de que pueda saber si esta idea tiene alguna aplicación práctica fuera del laboratorio. Por su parte, los autores dicen que eligieron el Pi 2B como una especie de dispositivo "repetitivo"; creyendo que era un procesador ARM de 32 bits y un sistema operativo Vanilla Linux proporcionó un reemplazo aceptable para un dispositivo IoT sin marca. Esa es una suposición bastante lógica, pero todavía hay demasiadas variables para decir que cualquiera de las firmas EM recopiladas en la plataforma de prueba Pi sería aplicable a un enrutador inalámbrico aleatorio extraído del estante.

Sin embargo, es difícil no dejarlo impresionado. Si bien es posible que los investigadores no hayan creado el equivalente en TI del Star Trek un tricord médico, un dispositivo que simplemente puede pasar sobre el paciente para ver de inmediato qué enfermedad de la semana le afectó, ciertamente parece que están tentativamente cerca.

  • osmarks dice:

    Quizás un método más fácil y económico sería utilizar los contadores de rendimiento de la CPU. Aunque parece bastante obvio que estaría muy sorprendido si alguien no lo hubiera hecho/intentado ya.

  • Pensador dice:

    Si desea una disección muy accesible del "estándar de Sagan" más allá de Wikipedia y Cit Query, volviendo a Platón, puede encontrarla aquí: https://link.springer.com/article/10.1007/s11406-016-9779 -7

    Para los que dedicamos tiempo a hablar de gestión, desde saltos hasta tecnologías insostenibles, es conveniente tenerlo en el bolsillo.

América Aguilar
América Aguilar

Deja una respuesta

Tu dirección de correo electrónico no será publicada.