Saltar al contenido principal
TECHNOLOGY

Aprendizaje automático en ciberseguridad

Todos nuestros métodos de aprendizaje automático (ML) (conjuntos de árboles de decisiones, hash confidencial de las localidades, modelos de comportamiento o agrupamiento en clúster de flujo entrante) están diseñados para cumplir con los requisitos de seguridad del mundo real: bajo índice de falsos positivos, capacidad de interpretación y solidez frente a un posible adversario.

Arthur Samuel, un pionero en la inteligencia artificial, describió el aprendizaje automático como un conjunto de métodos y tecnologías que "ofrecen a las computadoras la capacidad de aprender sin programas explícitos". En un caso particular de aprendizaje supervisado antimalware, la tarea se puede formular de la siguiente manera: dado un conjunto de características de un objeto X y las etiquetas Y de un objeto correspondientes como entrada, cree un modelo que producirá las etiquetas Y correctas para los objetos de prueba X desconocidos hasta entonces. X podría ser algunas funciones que representan el contenido o el comportamiento de un archivo (estadísticas de archivo, lista de funciones de API utilizadas, etc.) y las etiquetas Y podrían ser simplemente "malware" o elementos "benignos" (en casos más complejos, podríamos interesarnos en una clasificación detallada, como virus, descargador de troyanos, adware, etc.). En el caso de un aprendizaje sin supervisión, nos interesa más revelar una estructura oculta de datos, p. ej., encontrar grupos de objetos similares o funciones altamente correlacionadas.



La protección multicapa de última generación de Kaspersky utiliza ampliamente los métodos de aprendizaje automático en todas las etapas del proceso de detección, desde los métodos de agrupación en clúster escalables que se utilizan para el procesamiento preliminar del flujo de archivos entrante en la infraestructura, hasta modelos de red neurales, profundos, resistentes y compactos para la detección del comportamiento que funcionan directamente en las máquinas de los usuarios. Estas tecnologías están diseñadas de un modo que permite abordar varios requisitos importantes para los modelos de aprendizaje automático en aplicaciones de seguridad de la información en el mundo real, es decir, ofrecen una tasa de falsos positivos bajísima, la capacidad de interpretación de un modelo y la resistencia ante un posible adversario.

Consideremos algunas de las tecnologías de aprendizaje automático más importantes que se utilizan en los productos para endpoints de Kaspersky.

Árbol de decisiones

En este enfoque, el modelo predictivo adopta la forma de un conjunto de árboles de decisiones (p. ej., bosques aleatorios o árboles con potenciación del gradiente). Cada nodo sin hojas de un árbol contiene algunas preguntas con respecto a las características de un archivo, mientras que los nodos con hojas contienen la decisión final del árbol en el objeto. Durante la fase de prueba, el modelo recorre el árbol respondiendo las preguntas de los nodos con las funciones correspondientes del objeto en cuestión. En la etapa final, las decisiones de varios árboles se promedian de un manera que aplica algoritmos específicos para proporcionar la decisión final sobre el objeto.

El modelo beneficia la etapa de protección proactiva de ejecución previa en el sitio del endpoint. Una de nuestras aplicaciones de esta tecnología es Cloud ML para Android, que se utiliza para la detección de amenazas móviles.



Hash con similitud (hash sensible a la ubicación)

En el pasado, los hashes utilizados para crear "huellas" de malware eran sensibles a cada minúsculo cambio en un archivo. Los creadores de malware aprovechaban este inconveniente usando técnicas de ofuscación, como el polimorfismo en el servidor: cambios menores en el malware que pasaban inadvertidos. El hash con similitud (o hash sensible a la ubicación) es un método para detectar archivos maliciosos similares. Para ello, el sistema extrae las características del archivo y utiliza aprendizaje de proyección ortogonal para elegir las características más importantes. Luego, la compresión basada en el aprendizaje automático se aplica para que los vectores de valor de características similares se transformen en patrones similares o idénticos. Este método proporciona una buena generalización y reduce en gran medida el tamaño de la base de los registros de detección, ya que un registro ahora puede detectar a toda la familia de malware polimórficos. El modelo beneficia la etapa de protección proactiva de ejecución previa en el sitio del endpoint. Se aplica en nuestro sistema de detección de hash con similitud.



Modelo de comportamiento

Un componente de monitoreo proporciona un registro de comportamiento: la secuencia de eventos del sistema ocurridos durante la ejecución del proceso junto con los argumentos correspondientes. Con el fin de detectar actividad maliciosa en los datos de registro observados, nuestro modelo comprime la secuencia de eventos obtenida en un conjunto de vectores binarios y enseña a la red neuronal profunda a distinguir los registros maliciosos y los limpios. Los módulos de detección estática y dinámica usan la clasificación de objetos realizada por el modelo de comportamiento de los productos Kaspersky del lado del endpoint.



El aprendizaje automático también desempeña un papel importante cuando se trata de crear una infraestructura adecuada de procesamiento de malware en el laboratorio. La utilizamos para los siguientes fines de infraestructura:

Agrupación en clústeres de flujo entrante

Los algoritmos de agrupación en clústeres basados en el aprendizaje automático nos permiten separar eficazmente los grandes volúmenes de archivos desconocidos que ingresan a nuestra infraestructura en una cantidad razonable de clústeres, algunos de los cuales se pueden procesar de forma automática en función de la presencia de un objeto ya anotado en su interior.



Modelos de clasificación a gran escala

Algunos de los modelos de clasificación más potentes (como un gran bosque de decisiones aleatorias) requieren una gran cantidad de recursos (tiempo de procesador, memoria) junto con costosos extractores de funciones (p. ej., el procesamiento a través de sandbox podría ser necesario para obtener registros detallados de comportamiento). Por lo tanto, es más eficaz mantener y ejecutar los modelos en un laboratorio y, luego, convertir el conocimiento obtenido por dichos modelos mediante la capacitación de un modelo de clasificación ligero en las decisiones de salida del modelo más grande.

Seguridad del aprendizaje automático

Una vez liberados de los confines del laboratorio e introducidos en el mundo real, es posible que los algoritmos de aprendizaje automático sean vulnerables a muchas formas de ataques diseñados para forzar a los sistemas de aprendizaje automático a cometer errores deliberados. Un atacante puede contaminar un conjunto de datos de capacitación o aplicar ingeniería inversa en el código del modelo. Además, los hackers pueden forzar modelos de aprendizaje automático con un diseño especial de "inteligencia artificial opositora" para generar automáticamente muchas muestras atacantes hasta descubrir un punto débil del modelo. El impacto de estos ataques en sistemas antimalware basados en el aprendizaje automático podría ser devastador: un troyano no identificado por error significa que se pierden millones de dólares y se infectan millones de dispositivos.

Por este motivo, se deben aplicar algunas consideraciones clave al uso del aprendizaje automático en sistemas de seguridad:

  • El proveedor de seguridad debe comprender y abordar con cuidado los requisitos esenciales para el rendimiento del aprendizaje automático en el mundo real y potencialmente hostil. Estos requisitos presentan capacidad de resistencia ante los posibles adversarios. Las auditorías de seguridad específicas del aprendizaje automático, la inteligencia artificial y “Red Teaming” deben ser un componente clave del desarrollo del aprendizaje automático y la inteligencia artificial.
    • Cuando se evalúa la seguridad de una solución de aprendizaje automático, se debe considerar el grado de dependencia que tiene la solución respecto de datos y arquitecturas de terceros, ya que muchos ataques se originan en datos proporcionados por terceros (hablamos sobre fuentes de inteligencia de amenazas, conjuntos de datos públicos, modelos de aprendizaje automático previamente capacitados y externalizados).
    • Los métodos de aprendizaje automático no se deben considerar como "la respuesta definitiva". Necesitan ser parte del enfoque de seguridad multicapa en el que las tecnologías de protección complementarias y el conocimiento humano trabajan en conjunto para cuidarse las espaldas mutuamente.

Para obtener una descripción más detallada de los ataques más populares en algoritmos de aprendizaje automático y los métodos de protección contra estas amenazas, consulte nuestro informe técnico "IA bajo ataque: cómo asegurar el aprendizaje automático en el sistema de seguridad".

Productos relacionados

Tecnologías relacionadas

Whitepaper

Machine Learning for Malware Detection


Whitepaper

Machine learning and Human Expertise

Whitepaper

AI under Attack: How to Secure Machine Learning in Security System

Resultados de referencia independientes