Apartados de inteligencia artificial y aprendizaje automático en la barra de errores del Ciclo de vida de desarrollo de seguridad
Por Andrew Marshall, Jugal Parikh, Emre Kiciman y Ram Shankar Siva Kumar
Noviembre de 2019
Este artículo es una entrega del Grupo de trabajo de Prácticas de ingeniería para la inteligencia artifical AETHER de Microsoft. Este artículo funciona como complemento de la barra de errores de SDL existente que se usa para la evaluación de prioridades de las vulnerabilidades de seguridad tradicionales. Está pensado para usarse como referencia para la evaluación de prioridades de errores de seguridad relacionados con la inteligencia artificial y el aprendizaje automático. La clasificación de gravedad de vulnerabilidad para sistemas de inteligencia artificial (publicada por el Centro de respuestas de seguridad de Microsoft), define los tipos de vulnerabilidad comunes y los niveles de gravedad para los sistemas que implican IA.
Esta guía se organiza en torno a la taxonomía de amenazas adversarias de aprendizaje automático creada por Ram Shankar Siva Kumar, David O’Brien, Kendra Albert, Salome Viljoen y Jeffrey Snover, titulada Modos de error en el aprendizaje automático. Si bien la investigación en la que se basa este contenido aborda comportamientos tanto intencionados/malintencionados como accidentales en los modos de error de aprendizaje automático, este complemento de la barra de errores se centra por completo en comportamientos intencionados o malintencionados que darían lugar a un incidente de seguridad o la implementación de una corrección.
Amenaza | Descripción/riesgos empresariales/ejemplos |
---|---|
Envenenamiento de datos | Daños en los datos de entrenamiento: el objetivo final del atacante es contaminar el modelo de la máquina generado en la fase de entrenamiento, de modo que las predicciones de los nuevos datos se modifiquen en la fase de prueba. En los ataques de envenenamiento dirigidos, el atacante desea clasificar erróneamente ejemplos específicos para que se tomen u omitan acciones específicas. Envío de software antivirus como malware para forzar su clasificación incorrecta como malintencionada y eliminar el uso del software antivirus dirigido en los sistemas cliente. Una empresa aprovecha un sitio web conocido y de confianza de datos de futuros para entrenar sus modelos. Entonces, el sitio web del proveedor de datos se pone en peligro a través de un ataque por inyección de código SQL. El atacante puede envenenar el conjunto de datos a su antojo, y el modelo que se está entrenando no tiene idea alguna de que los datos están contaminados. |
Robo del modelo | Recreación del modelo subyacente mediante consultas legítimas. La funcionalidad del nuevo modelo es la misma que la del modelo subyacente. Una vez que se recrea el modelo, se puede invertir para recuperar información de características o hacer inferencias en los datos de entrenamiento. Solución de ecuaciones: Para un modelo que devuelve probabilidades de clase a través de la salida de una API, un atacante puede crear consultas para determinar las variables desconocidas de un modelo. Búsqueda de rutas: un ataque que aprovecha las peculiaridades de una API para extraer las "decisiones" tomadas por un árbol al clasificar una entrada. Ataque de transferibilidad: Un adversario puede entrenar un modelo local —posiblemente mediante la emisión de consultas de predicción al modelo de destino— y usarlo para crear ejemplos adversarios que se transfieran al modelo de destino. Si se extrae su modelo y se descubre que es vulnerable a un tipo de entrada adversaria, el atacante que ha extraído una copia del modelo puede desarrollar completamente sin conexión los nuevos ataques contra el modelo implementado en producción. En los entornos donde un modelo de aprendizaje automático se use para detectar comportamientos adversarios, como la identificación de correo no deseado, la clasificación de malware y la detección de anomalías de red, la extracción del modelo puede facilitar ataques de evasión. |
Inversión del modelo | Las características privadas que se usan en los modelos de Machine Learning se pueden recuperar. Esto incluye reconstruir los datos de entrenamiento privados a los que el atacante no tiene acceso. Esto se logra buscando la entrada que maximiza el nivel de confianza devuelto, sujeto a la clasificación que coincide con el destino. Ejemplo: reconstrucción de datos de reconocimiento facial a partir de nombres supuestos o conocidos y acceso a la API para consultar el modelo. |
Ejemplo adversario en el dominio físico | Estos ejemplos pueden manifestarse en el dominio físico, por ejemplo, se engaña a un coche autónomo para que no se detenga en una señal de stop debido a un determinado color de luz (la entrada adversaria) que brilla en la señal de stop, lo que obliga al sistema de reconocimiento de imágenes a no seguir viendo la señal de stop como tal. |
Ataque de la cadena de suministro de aprendizaje automático | Debido a la gran cantidad de recursos (datos y cálculos) necesarios para entrenar los algoritmos, la práctica actual consiste en reutilizar los modelos entrenados por grandes corporaciones y modificarlos ligeramente según las tareas en cuestión (por ejemplo: ResNet es un modelo popular de reconocimiento de imágenes de Microsoft). Estos modelos se mantienen en un zoológico de modelos (Caffe hospeda modelos conocidos de reconocimiento de imágenes). En este ataque, el adversario ataca los modelos hospedados en Caffe, con lo que envenena el pozo de donde beben todos los otros usuarios. |
Algoritmo de puerta trasera del proveedor de aprendizaje automático malintencionado | Poner en peligro el algoritmo subyacente. Un proveedor malintencionado de aprendizaje automático como servicio presenta un algoritmo de puerta trasera, donde se recuperan los datos de entrenamiento privados. Esto proporciona al atacante la capacidad de reconstruir datos confidenciales, como caras y textos, dado solo el modelo. |
Reprogramación de la red neuronal | Por medio de una consulta diseñada especialmente por parte de un atacante, los sistemas de aprendizaje automático se pueden reprogramar para una tarea que se desvíe de la intención original del creador. Controles de acceso débiles en una API de reconocimiento facial permite a terceros incorporar aplicaciones diseñadas para perjudicar a los usuarios, como un generador de deepfakes. Se trata de un escenario de abuso/ataque a cuentas. |
Perturbación adversaria | En los ataques de estilo perturbación, el atacante modifica de manera furtiva la consulta para obtener una respuesta deseada de un modelo implementado en producción. Se trata de una vulneración de la integridad de entrada del modelo, que conduce a ataques al estilo de las pruebas de vulnerabilidad ante datos aleatorios o inesperados, donde el resultado final no es necesariamente una infracción de acceso ni elevación de privilegios (EOP). En su lugar, pone en peligro el rendimiento de clasificación del modelo. Esto puede manifestarse en forma de trols que usen determinadas palabras de destino de forma que la inteligencia artificial las prohíba, denegando así el servicio a los usuarios legítimos con un nombre que coincida con una palabra "prohibida". Forzar la clasificación de correos electrónicos inofensivos como correo no deseado o provocar que un ejemplo malintencionado no se detecte. También se conocen como ataques de mimetismo o evasión del modelo. El atacante puede diseñar entradas para reducir el nivel de confianza de la clasificación correcta, en especial en escenarios de alta importancia. También puede adoptar la forma de un gran número de falsos positivos destinados a sobrecargar a los administradores o a los sistemas de supervisión con alertas fraudulentas que no se distinguen de las alertas legítimas. |
Inferencia de pertenencia | Inferencia de la pertenencia individual a un grupo usada para entrenar un modelo. Por ejemplo: predicción de procedimientos quirúrgicos según la edad, el sexo y el hospital. |