Los ataques contradictorios son una de las mayores amenazas para la integridad de la economía emergente centrada en la IA.
por James Kobielus
Gran parte de la investigación anti-adversaria se ha centrado en la posibilidad de alteraciones diminutas, en gran parte indetectables, de las imágenes (los investigadores generalmente las denominan “perturbaciones de ruido”) que hacen que los algoritmos de aprendizaje automático (ML) de AI identifiquen o clasifiquen erróneamente las imágenes. La manipulación adversa puede ser extremadamente sutil y difícil de detectar, incluso hasta los subliminales a nivel de píxel. Si un atacante puede introducir alteraciones casi invisibles en la imagen, el video, el habla u otros datos con el fin de engañar a las herramientas de clasificación impulsadas por la inteligencia artificial, será difícil confiar en esta tecnología sofisticada para hacer su trabajo de manera efectiva.
Amenaza creciente para las aplicaciones de IA implementadas
Esta no es una amenaza vana. Obtener inferencias algorítmicas falsas puede hacer que una aplicación basada en inteligencia artificial tome decisiones incorrectas, como cuando un vehículo autónomo lee mal una señal de tráfico y luego gira en sentido contrario o, en el peor de los casos, se estrella contra un edificio, vehículo, o peatón. Aunque la literatura de investigación se centra en los ataques de ML adversarios simulados que se llevaron a cabo en entornos de laboratorio controlados, el conocimiento general de que estos vectores de ataque están disponibles casi seguramente hará que los terroristas, criminales o partes maliciosas los exploten.
Aunque los ataques adversarios de alto perfil no parecieron afectar el LD que impulsó la campaña presidencial de los Estados Unidos de este año, no podemos negar el potencial de estos en los ciclos electorales futuros. A lo largo de este año devastado por la pandemia, los ataques contra las plataformas de ML han continuado intensificándose en otros sectores de nuestras vidas.
Este año, la Base de Datos Nacional de Vulnerabilidades (parte del Instituto Nacional de Ciencia y Tecnología de EE. UU.) Publicó su primer informe de Vulnerabilidades y Exposiciones Comunes para un componente de ML en un sistema comercial. Además, el Centro de Coordinación CERT del Instituto de Ingeniería de Software emitió su primera nota de vuln señalando hasta qué punto muchos sistemas operativos de ML son vulnerables a ataques de clasificación errónea arbitrarios.
A fines del año pasado, Gartner predijo que durante los próximos dos años, el 30 por ciento de todos los ataques cibernéticos en aplicaciones de inteligencia artificial utilizarían tácticas adversas. Lamentablemente, sería prematuro decir que las mejores prácticas anti-adversarias se están afianzando dentro de la comunidad de IA. Una encuesta reciente de la industria realizada por Microsoft descubrió que pocos profesionales de la industria se toman en serio la amenaza del aprendizaje automático adverso en este momento o utilizan herramientas que pueden mitigar los riesgos de tales ataques.
Incluso si fuera posible identificar los ataques adversarios en curso, las organizaciones objetivo encontrarían un desafío responder a estos ataques en toda su vertiginosa diversidad. Y no se puede decir si las respuestas ad-hoc a las nuevas amenazas se fusionarán en una estrategia preventiva y anti-adversaria de “endurecimiento” de la IA en el corto plazo.
Metodologías de seguridad anti-adversarial ML
A medida que estos ataques surjan en mayor número, los profesionales de la inteligencia artificial clamarán por una metodología de consenso para detectar y hacer frente a los riesgos adversarios.
Recientemente se ha producido un hito importante en las defensas adversas. Microsoft, MITRE y otras 11 organizaciones lanzaron una Matriz de amenazas de ML Adversarial. Este es un marco abierto y extensible estructurado como el marco ATT & CK ampliamente adoptado de MITRE que ayuda a los analistas de seguridad a clasificar las tácticas adversarias más comunes que se han utilizado para interrumpir y engañar a los sistemas de aprendizaje automático.
Desarrollado en conjunto con Carnegie Mellon y otras universidades líderes en investigación, el marco presenta técnicas para monitorear los sistemas de ML de una organización para detectar si tales ataques están en progreso o ya han tenido lugar. Enumera las vulnerabilidades y los comportamientos adversarios que son efectivos contra los sistemas de aprendizaje automático de producción. También proporciona estudios de casos que describen cómo se pueden analizar ataques conocidos, como el envenenamiento de Microsoft Tay y el ataque de evasión de Proofpoint, utilizando este marco.
Como se discutió en el marco, hay cuatro tácticas adversas principales para comprometer las aplicaciones de AA.
La extracción funcional implica la recuperación no autorizada de un modelo ML funcionalmente equivalente mediante la consulta iterativa del modelo con entradas arbitrarias. El atacante puede inferir y generar una copia sin conexión de alta fidelidad del modelo para guiar más ataques al modelo de ML de producción implementado.
La evasión de modelos se produce cuando los atacantes introducen de forma iterativa entradas arbitrarias, como cambios sutiles a nivel de píxeles en las imágenes. Los cambios son prácticamente indetectables para los sentidos humanos, pero hacen que los modelos de AA vulnerables clasifiquen las imágenes u otro contenido manipulado incorrectamente.
La inversión de modelo implica la recuperación no autorizada de las características predictivas que se utilizaron para crear un modelo de aprendizaje automático. Permite a los atacantes lanzar inferencias que comprometen los datos privados que se utilizaron para entrenar el modelo.
El envenenamiento del modelo significa que los datos de entrenamiento se han contaminado para producir subrepticiamente inferencias específicas no autorizadas cuando se introducen datos de entrada arbitrarios en el modelo de ML envenenado en tiempo de ejecución.
Tomadas individualmente o combinadas de diversas formas, estas tácticas podrían permitir a un atacante “reprogramar” subrepticiamente una aplicación de IA o robar propiedad intelectual valiosa (datos y modelos de ML). Todas son herramientas potenciales para cometer fraude, espionaje o sabotaje contra aplicaciones, bases de datos y otros sistemas en línea con algoritmos ML en su corazón.
Herramientas y tácticas fructíferas contra el AA contra adversarios
Las tácticas anti-adversas deben estar profundamente arraigadas en la línea de desarrollo de ML, aprovechando los repositorios de código, CI / CD (integración continua / entrega continua) y otras herramientas e infraestructura de DevOps.
Basando sus recomendaciones en devsecops y prácticas de seguridad de aplicaciones tradicionales, los autores del marco piden una metodología anti-adversarial de múltiples frentes que incluya contramedidas críticas.
Las prácticas de codificación seguras reducirían las vulnerabilidades adversas explotables en los programas de ML y permitirían a otros ingenieros auditar el código fuente. Además, los ejemplos de códigos de cumplimiento de la seguridad en los marcos de aprendizaje automático populares contribuirían a la propagación de aplicaciones de aprendizaje automático reforzadas de forma adversaria. Hasta ahora, TensorFlow es el único marco de aprendizaje automático que proporciona una guía consolidada sobre los ataques de software tradicionales y enlaces a herramientas para realizar pruebas contra ataques adversarios. Los autores del marco recomiendan explorar si contener aplicaciones de AA puede ayudar a poner en cuarentena los sistemas de AA no comprometidos del impacto de los sistemas de AA afectados de manera adversa.
Las herramientas de análisis de código ayudan a detectar posibles debilidades adversas en las aplicaciones de aprendizaje automático codificadas o cuando las aplicaciones ejecutan rutas de código particulares. Las herramientas de ML como cleverhans, secml y Adversarial Robustness Toolbox de IBM admiten diversos grados de pruebas de código de ML estáticas y dinámicas. Los editores de Adversarial ML Threat Matrix piden que dichas herramientas se integren con kits de herramientas de desarrollo de ML con todas las funciones para respaldar la evaluación detallada del código antes de que las aplicaciones de ML se comprometan con el repositorio de código. También recomiendan la integración de herramientas de análisis de código dinámico para ML adversario en canalizaciones de CI / CD. Esta última recomendación respaldaría la automatización de las pruebas de aprendizaje automático adversas en las aplicaciones de aprendizaje automático de producción.
Las herramientas de registro y auditoría del sistema admiten la detección en tiempo de ejecución de procesos adversarios y otros procesos anómalos que se ejecutan en los sistemas de aprendizaje automático. Los editores de la matriz piden que las plataformas de aprendizaje automático utilicen estas herramientas para monitorear, como mínimo, los ataques enumerados en el repositorio seleccionado. Esto permitiría rastrear los ataques adversarios hasta sus orígenes y exportar registros de eventos anómalos a los sistemas de gestión de eventos e incidentes de seguridad. Proponen que los métodos de detección se escriban en un formato que facilite el intercambio entre analistas de seguridad. También recomiendan que la comunidad de investigación de ML adversarial registre las vulnerabilidades adversas en un sistema rastreable como la Base de datos nacional de vulnerabilidades para alertar a los proveedores, usuarios y otras partes interesadas afectados.
Una base de conocimientos en crecimiento
Los autores del nuevo marco anti-adversarial brindan acceso a través de su repositorio de GitHub a lo que ellos llaman un “repositorio curado de ataques”. Cada ataque documentado en este recurso de búsqueda tiene una descripción de la técnica contradictoria, el tipo de amenaza persistente avanzada que se ha observado que usa la táctica, recomendaciones para detectarlo y referencias a publicaciones que brindan más información.
A medida que se den cuenta de los nuevos vectores de ataque de ML adversarios, los profesionales de la seguridad e inteligencia artificial deben registrarlos en este repositorio. De esta manera, la iniciativa puede seguir el ritmo de la creciente gama de amenazas a la integridad, seguridad y confiabilidad de las aplicaciones de ML implementadas.
En el futuro, los desarrolladores de aplicaciones de inteligencia artificial y los analistas de seguridad también deberían:
- Suponga la posibilidad de ataques contradictorios en todas las aplicaciones de aprendizaje automático en producción.
- Realice evaluaciones de amenazas adversas antes de escribir o implementar código vulnerable.
- Genere ejemplos de confrontación como una actividad estándar de mitigación de riesgos en el proceso de capacitación de IA.
- Pruebe las aplicaciones de inteligencia artificial contra una amplia gama de entradas adversas para determinar la solidez de sus inferencias.
- Reutilice el conocimiento de defensa contra adversarios, como el que proporciona la nueva Matriz de amenazas de AA contra adversarios, para mejorar la resistencia de la IA frente a ejemplos de entrada falsos.
- Actualice las defensas de ataques adversarios en curso a lo largo del ciclo de vida de los modelos de IA implementados.
- Asegúrese de que los científicos de datos tengan sofisticadas metodologías anti-adversas para guiarlos en la aplicación de estas prácticas a lo largo del ciclo de vida de desarrollo y operacionalización de la IA.
Para obtener más información sobre la nueva Matriz de amenazas de Adversarial ML, consulte el repositorio de GitHub de la iniciativa, el anuncio de MITRE y la publicación del blog de Carnegie Mellon SEI / CERT . Otros recursos útiles para que los analistas de seguridad desarrollen sus propias estrategias anti-adversas incluyen la taxonomía de los modos de falla de ML de Microsoft , la guía de modelado de amenazas específicamente para sistemas de ML y la barra de errores del ciclo de vida de desarrollo de seguridad para clasificar sistemáticamente los ataques en los sistemas de ML.