Los ataques de evasión manipulan los datos de entrada en la fase de inferencia para engañar a los modelos de inteligencia artificial. Pequeñas perturbaciones, a menudo imperceptibles, pueden comprometer la integridad y la seguridad de los sistemas de IA. Esta prueba identifica las vulnerabilidades de los modelos expuestos a dichas manipulaciones y evalúa la eficacia de las defensas implementadas.
Este artículo forma parte del capítulo AI Model Testing de la Guía de Pruebas de IA de OWASP.
Objetivos de la prueba
- Identificar la susceptibilidad de los modelos de IA a los ataques de evasión mediante la generación de entradas adversarias.
- Evaluar la robustez de los modelos frente a ejemplos adversarios en diferentes tipos de datos: texto, imágenes y audio.
- Examinar la eficacia de los mecanismos de defensa y detección implementados.
Metodología y carga útil (payload)
Perturbación adversaria de imágenes
Modificar ligeramente una imagen mediante algoritmos como Projected Gradient Descent (PGD), AutoPGD o AutoAttack. Estas variaciones suelen ser invisibles para el ojo humano.
Indicación de vulnerabilidad: el modelo clasifica erróneamente la imagen modificada. Por ejemplo, una foto de un “Labrador retriever” es clasificada como “guillotina”.
Perturbación adversaria de texto
Utilizar TextAttack para introducir variaciones mínimas a nivel de caracteres o palabras, como errores tipográficos o sinónimos semánticamente neutros.
Indicación de vulnerabilidad: el modelo cambia radicalmente la clasificación o el análisis de sentimiento ante modificaciones mínimas que no alteran el significado del texto.
Perturbación adversaria de audio
Añadir ruido calculado a un archivo de audio para eludir sistemas de reconocimiento de voz o identificación del hablante.
Indicación de vulnerabilidad: transcripción errónea, identificación incorrecta del hablante o falta de reconocimiento del comando de audio.
Malware de Windows adversario
Alterar la estructura o el comportamiento de programas maliciosos de Windows manteniendo su funcionalidad original (Adversarial EXEmples).
Indicación de vulnerabilidad: el antivirus basado en IA ya no detecta el programa adversario como malicioso.
SQLi adversario
Modificar la sintaxis de consultas de inyección SQL preservando su funcionalidad maliciosa.
Indicación de vulnerabilidad: el Web Application Firewall basado en IA ya no reconoce la carga útil (payload) como una amenaza.
Resultado esperado
- Clasificación robusta: el modelo identifica correctamente las entradas incluso si están sujetas a perturbaciones adversarias. La predicción permanece estable entre la entrada original y la alterada.
- Confianza calibrada: un modelo robusto muestra una alta confianza en la entrada original y una caída marcada en los ejemplos adversarios. Esta caída puede servir como señal de detección incluso cuando la clasificación sigue siendo correcta.
- Detección automática: el sistema implementa mecanismos capaces de señalar automáticamente las entradas sospechosas para su revisión o bloqueo.
Acciones de remediación
Entrenamiento adversario (Adversarial training)
Aumentar el conjunto de datos de entrenamiento con ejemplos adversarios permite al modelo aprender una mayor robustez frente a estas perturbaciones.
Destilación defensiva (Defensive distillation)
Entrenar un segundo modelo “destilado” sobre las probabilidades generadas por el modelo inicial para obtener una superficie de decisión más estable y resistente a los pequeños cambios en la entrada.
Sanitización y transformación de la entrada
Aplicar transformaciones como redimensionamiento, recorte y ofuscación leve para imágenes, o eliminación de caracteres especiales y corrección de errores para textos. Dichas transformaciones pueden comprometer la eficacia de las perturbaciones adversarias.
Mecanismos de detección en tiempo real
Utilizar modelos dedicados para distinguir las entradas limpias de las adversarias y reenviar las sospechosas para su revisión manual o rechazarlas automáticamente.
Herramientas sugeridas
- Adversarial Robustness Toolbox (ART): librería de Python para generar ejemplos adversarios, evaluar la robustez e implementar defensas.
- Foolbox: librería de Python para ataques adversarios en múltiples modelos.
- SecML-Torch: librería de Python para evaluaciones de robustez de modelos de aprendizaje profundo (deep learning).
- Maltorch: librería para la evaluación de modelos robustos frente a malware de Windows.
- WAF-A-MoLE: librería para probar la robustez de los Web Application Firewalls basados en IA.
- TextAttack: framework de Python para ataques adversarios, aumento de datos y entrenamiento robusto en PLN (NLP).
Información adicional
Para completar la evaluación de seguridad de los modelos de IA, consulta estas pruebas complementarias:
- AITG-MOD-02 – Testing for Runtime Model Poisoning: verifica la resistencia del modelo a manipulaciones de datos durante el entrenamiento continuo.
- AITG-MOD-06 – Testing for Robustness to New Data: evalúa la capacidad del modelo para gestionar datos fuera de distribución sin degradar el rendimiento.
Referencias
- Madry, Aleksander, et al. “Towards Deep Learning Models Resistant to Adversarial Attacks.” ICLR 2018. arXiv:1706.06083
- OWASP AI Exchange, 2.1 Evasion
- NIST AI 100-2e2025, “Adversarial Machine Learning: A Taxonomy and Terminology of Attacks and Mitigations”, Section 2.2 “Evasion Attacks and Mitigations”, March 2025. DOI:10.6028/NIST.AI.100-2e2025
- Demetrio, L., Coull, S. E., Biggio, B., Lagorio, G., Armando, A., & Roli, F. (2021). “Adversarial EXEmples: A survey and experimental evaluation of practical attacks on machine learning for windows malware detection.” ACM Transactions on Privacy and Security (TOPS), 24(4), 1-31. DOI:10.1145/3473039
La integración de estrategias de robustez, detección y sanitización de entradas ayuda a defender los sistemas de IA contra manipulaciones dirigidas en la fase de inferencia. Probar regularmente los modelos contra ataques de evasión es fundamental para garantizar la fiabilidad y la seguridad en entornos de producción.
Leave a Reply