Problema 2349

Algunos miembros de la comunidad de seguridad han promocionado la inteligencia artificial como la bala de plata en la detección de malware. Sus defensores dicen que es superior al antivirus tradicional, ya que puede detectar nuevas variantes y malware nunca antes visto (piense en exploits de día cero) que son el talón de Aquiles de los antivirus. Uno de sus mayores defensores es la empresa de seguridad BlackBerry Cylance, que ha apostado su modelo de negocio por el motor de inteligencia artificial en su sistema de detección PROTECT para terminales, que [dice la empresa](https://threatvector.cylance.com/en_us/home /ais-unique-ability-to-stop-tomorrows-threats-today.html) tiene la capacidad de detectar nuevos archivos maliciosos dos años antes de que sus autores los creen.
Pero los investigadores en Australia dicen que han encontrado una manera de subvertir el algoritmo de aprendizaje automático en PROTECT y hacer que etiquete falsamente el malware ya conocido como "goodware". El método no implica alterar el código malicioso, como suelen hacer los hackers para evadir la detección. En cambio, los investigadores desarrollaron un método de "desvío global" que funciona con casi cualquier malware para engañar al motor Cylance. Implica simplemente tomar cadenas de un archivo no malicioso y agregarlas a uno malicioso, engañando al sistema para que piense que el archivo malicioso es benigno.
Las cadenas benignas que usaron provenían de un programa de juegos en línea, que se negaron a nombrar públicamente para que Cylance tenga la oportunidad de solucionar el problema antes de que los piratas informáticos lo exploten.
"Hasta donde yo sé, este es el primer ataque mundial comprobado en el mecanismo ML [aprendizaje automático] de una empresa de seguridad", dice Adi Ashkenazy, director ejecutivo de la empresa con sede en Sídney [Skylight Cyber](https:/ /skylightcyber.com/2019/07/18/cylance-i-kill-you/), quien realizó la investigación con el CTO Shahar Zini. "Después de alrededor de cuatro años de exageración [sobre la IA], creo que este es un ejemplo aleccionador de cómo el enfoque proporciona una nueva superficie de ataque que no era posible con el [software antivirus] heredado".
El método funciona porque el algoritmo de aprendizaje automático de Cylance tiene un sesgo hacia el archivo benigno que hace que ignore cualquier código malicioso y funciones en un archivo malicioso si también ve cadenas del archivo benigno adjuntas a un archivo malicioso, anulando esencialmente la conclusión correcta. el motor de detección debería hacer lo contrario. El truco funciona incluso si el motor de Cylance concluyó previamente que el mismo archivo era malicioso, antes de que se le agregaran las cadenas benignas.
Los investigadores probaron su ataque contra el ransomware WannaCry que paralizó hospitales y empresas de todo el mundo en 2017, así como contra el ransomware Samsam más reciente, el popular La herramienta de piratería Mimikatz y cientos de otros archivos maliciosos conocidos, agregando las mismas cadenas benignas del programa de juegos a cada archivo malicioso, y en casi todos los casos, pudieron engañar al motor Cylance.
Martijn Grooten, editor de Virus Bulletin, que realiza pruebas y revisiones de programas de detección de malware, calificó la investigación de ingeniería inversa como impresionante y técnicamente interesante, pero los hallazgos no le sorprendieron.
"Así es como funciona la IA. Si hace que parezcan archivos benignos, entonces puede hacerlo", dijo Grooten a Motherboard. "Muestra principalmente que no puedes confiar en la IA por sí sola... La IA no es una panacea... Sospecho que mejorará en este tipo de cosas con el tiempo".
Un experto en aprendizaje automático con el que habló Motherboard está de acuerdo.
"Por lo general, tratas de trabajar con aprendizaje automático para cubrir... cosas que son ampliamente desconocidas o que no puedes hacer manualmente", dijo el experto, quien pidió permanecer en el anonimato porque su empresa no lo autoriza a hablar con los medios. "Y por lo general funciona bastante bien, hasta que tienes algunos casos en los que no puedes simplemente hacer que el modelo [funcione]".
Aunque no culpa a Cylance por cometer un error, sí culpa a la empresa por exagerar la IA en su marketing cuando el sistema contiene un sesgo que esencialmente socava la IA.
"Su crimen no es que codificaron mal la IA. Su crimen es llamar IA a lo que hicieron", le dijo a Motherboard.
Cylance clasifica alrededor de ocho entre las diez principales empresas de seguridad de terminales, después de Symantec, Kaspersky y TrendMicro. Pero el negocio de la empresa está creciendo rápidamente; el año pasado obtuvo $120 millones en financiamiento y este año fue adquirida por BlackBerry en un trato de $ 1.4 mil millones.
PROTECT de Cylance no es el único producto de seguridad que utiliza inteligencia artificial. Otras firmas como Symantec, Crowdstrike y Darktrace también lo usan, pero Ashkenazy y Zini no probaron esos sistemas y no está claro que sufran el mismo sesgo, ya que están diseñados de manera diferente y no dependen tanto de la máquina. aprendiendo a detectar archivos maliciosos como lo hace el sistema Cylance.
"Uno de los argumentos de venta [de Cylance]... dicen que ya no se persiguen las firmas y las actualizaciones. Entrenamos el modelo una vez y... no tendrá que volver a entrenar al modelo durante un par de años. Es muy convincente , si realmente funciona", dijo Ashkenazy.
Pero para solucionar el problema que él y su colega encontraron en el motor Cylance, la compañía tendrá que volver a entrenar el sistema, lo que podría ser un "proceso costoso y complejo", dijo Ashkenazy.
La inteligencia artificial tiene varias ventajas sobre los antivirus tradicionales. En los sistemas tradicionales, el proveedor tiene que analizar cada archivo nuevo y enviar nuevas firmas o heurísticas a sus escáneres para detectarlo. (Las firmas buscan cadenas específicas de código o datos que son exclusivos de una pieza de malware; las heurísticas analizan la actividad en la que participa el código para detectar acciones que son características del malware). Pero, según Cylance, su motor no requieren una actualización cada vez que se descubre nuevo malware o variantes de malware existente. Se supone que los sistemas de detección de aprendizaje automático reconocen no solo los archivos y la actividad maliciosos conocidos, sino también los nuevos.
En una prueba realizada por SELabs y encargada por Cylance, una versión de su software de 2015 tenía la capacidad de detectar variantes del ransomware Cerber y otros programas maliciosos que no aparecieron hasta 2016 y 2018.
Para determinar si un archivo es malicioso o benigno, el motor de Cylance analiza 4 millones de características o puntos de datos diferentes, según Ryan Permeh, fundador y científico jefe de Cylance. Estos incluyen cosas como el tamaño del archivo, los elementos estructurales presentes y la entropía (el nivel de aleatoriedad), etc. Luego, los programadores de Cylance "entrenan" el motor mostrándole alrededor de [mil millones de archivos maliciosos y benignos] (https:// s7d2.scene7.com/is/content/cylance/prod/cylance-web/en-us/resources/knowledge-center/resource-library/data-sheets/AI_ML_DataSheet.pdf) y modifique el sistema para perfeccionar su detección. Pero durante el entrenamiento, el sistema también examina los archivos en busca de patrones para ver cómo evolucionan las variantes de malware con el tiempo para anticipar cómo podría verse el nuevo malware, esencialmente "prediciendo" lo que harán los autores de malware antes de que lo hagan. Los modelos se vuelven a capacitar, dice Permeh, pero solo cada seis meses, y los usuarios solo tienen que actualizar su software si desean las últimas funciones y mejoras de rendimiento.
Pero nada de este entrenamiento y prueba importa si el algoritmo tiene un sesgo que también lo está entrenando para ignorar lo que aprende de ese otro entrenamiento. Eso es esencialmente lo que descubrieron los investigadores de Skylight Cyber.
Compraron una copia del programa Cylance y le aplicaron ingeniería inversa para descubrir qué características o puntos de datos estaba mirando el agente para determinar si un archivo es benigno o malicioso y también estudiaron cómo se sopesan estas características para llegar a la puntuación. programa da cada archivos.
El sistema Cylance analiza cada archivo en función de estos puntos de datos y asigna una puntuación al archivo que oscila entre -1000 y 1000 (siendo -1000 un archivo con la mayoría o las peores características maliciosas o puntos de datos). Las puntuaciones son visibles en el archivo de registro del programa.
Cuando vieron cuántas funciones analiza el programa, a los investigadores les preocupaba inicialmente que les llevaría semanas o meses encontrar las que tenían más peso en el proceso de decisión del algoritmo. Es decir, hasta que descubrieron que Cylance también había incluido en la lista blanca ciertas familias de archivos ejecutables para evitar desencadenar falsos positivos en software legítimo.
Sospechando que el aprendizaje automático podría estar sesgado hacia el código en esos archivos incluidos en la lista blanca, extrajeron cadenas de un programa de juegos en línea que Cylance había incluido en la lista blanca y las agregaron a los archivos maliciosos. El motor Cylance etiquetó los archivos como benignos y movió sus puntajes de números negativos altos a números positivos altos. La puntuación de Mimikatz pasó de -799 a 998. WannaCry pasó de -1000 a 545. Los investigadores lo comparan con ponerse una máscara con pico y tener un sistema de reconocimiento facial que lo identifique como un pájaro, ignorando todas las demás características que lo indican. eres solo una persona que lleva un pico artificial.
Probaron los diez principales programas de malware citados por el Center for Internet Security, luego ampliaron su prueba para incluir 384 archivos maliciosos adicionales tomados de depósitos en línea de malware. El puntaje promedio antes de que agregaran las cadenas benignas del programa de juegos en la lista blanca fue -0.92. Después de agregar las cuerdas, el puntaje promedio fue de 0.63. Alrededor del 84 por ciento de los archivos pasaron por alto la detección una vez que agregaron las cadenas de juegos, aunque algunos archivos todavía se etiquetaron como maliciosos, pero con puntajes significativamente diferentes que antes.
No solo ejecutaron los archivos contra el programa Cylance estático, sino que ejecutaron los archivos maliciosos en una máquina virtual con Cylance PROTECT ejecutándose en ella, para ver si capturaba los archivos maliciosos en acción. La teoría era que incluso si el producto era engañado por las cadenas, Cylance aún detectaría la acción maliciosa del archivo, pero no fue así.
Ashkenazy dijo que el uso de listas blancas en un programa de inteligencia artificial es extraño, pero entiende por qué Cylance lo hizo, si su motor estaba creando falsos positivos en esos programas. El verdadero problema, dijo, era dar a los programas incluidos en la lista blanca más peso en la puntuación del algoritmo, lo que hacía que anularan una decisión que el algoritmo normalmente tomaría si un archivo no tuviera las cadenas benignas adjuntas. También dijo que no usar firmas de respaldo o heurísticas para verificar dos veces la conclusión del algoritmo, y confiar en la IA en su lugar, causó las fallas.
Permeh, quien también es el arquitecto del motor de aprendizaje automático de Cylance, dijo que también usan firmas y heurísticas codificadas en su producto y no confían completamente en el aprendizaje automático, pero la IA tiene prioridad en la detección.
Sin embargo, reconoció a Motherboard el potencial del tipo de derivación que encontraron los investigadores.
"En términos generales, en todos estos escenarios de IA, los modelos son probabilísticos. Cuando entrenas uno, aprendes lo que es bueno y lo que es malo... Al entrenar para lo que es un buen archivo, aprendemos atributos de eso... [y ] es muy posible que sobrestimemos la bondad de eso", le dijo a Motherboard en una llamada telefónica. "Una de las partes interesantes de ser básicamente los primeros en adoptar un enfoque de IA primero es que todavía estamos aprendiendo. Invertimos mucho en investigación adversa, pero esto sigue siendo una evolución".
Al contrario de lo que dijo Ashkenazy, Permeh no cree que lleve mucho tiempo volver a entrenar el algoritmo para solucionar el problema una vez que conozca los detalles del bypass global. Ashkenazy no contactó a Cylance antes de contactar a Motherboard para revelar el problema.
Pero Ashkenazy cree que se necesitará más tiempo para solucionar el problema de lo que cree Permeh.
"El sesgo hacia los juegos y esas características está ahí por una razón", dijo Ashkenazy. "Obtenían falsos positivos para los juegos, por lo que volver a entrenar sin sacrificar la precisión o la tasa de falsos positivos no puede ser tan simple".
Al final, Ashkenzy no cree que Cylance tenga la culpa de usar el aprendizaje automático, solo por promocionarlo y depender tanto de él para la detección.
"De hecho, creo que hicieron un trabajo decente al aplicar la tecnología de inteligencia artificial actual a la seguridad", dijo a Motherboard. "Simplemente tiene fallas inherentes, como la posibilidad de tener un sesgo explotable que se convierte en un bypass global con una solución costosa".