Cómo engañar a las apps que usan Deep Learning para la detección de melanomas

Franco Piergallini Guida    Carlos Ávila    9 febrero, 2021
Cómo engañar a las apps que usan Deep Learning para la detección de melanomas

Uno de los grandes logros del deep learning es la clasificación de imágenes por medio de las redes neuronales convolucionales. En el artículo “El Internet de la Salud” vemos un ejemplo claro donde esta tecnología, como la del proyecto -GoogleLeNet- de Google (que originalmente fue diseñado para interpretar imágenes para coches inteligentes o self-driving cars), es ahora utilizada en el campo de análisis de imágenes médicas para la detección de melanomas y cáncer en la piel.  

Realizando una simple búsqueda en las tiendas de aplicaciones móviles con este objetivo, encontramos algunas que, en base a una foto de una mancha o lunar de tu piel, predicen si es un melanoma malicioso o algo totalmente benigno. Como vimos en artículos anteriores, este tipo de algoritmos podría ser vulnerable a alteraciones en su comportamiento. A partir de la selección de algunas de estas aplicaciones, procedimos a realizar un ataque del tipo blackbox con el objetivo de generar estratégicamente ruido a una imagen de un melanoma para observar si es posible invertir la clasificación de las redes neuronales internas de las aplicaciones sobre las cuales no teníamos información. Es decir, en este escenario de investigación, no contábamos con acceso a las redes neuronales internas de las aplicaciones.

Metodología

Ante esta situación, uno de los caminos posibles era recrear nuestros propios modelos entrenados de la forma más intuitiva de encarar este tipo de problemática y generamos ataques para estos que, debido a la propiedad denominada transferibilidad, deberían funcionar en todas las aplicaciones que habíamos seleccionado. Pero encontramos un camino incluso más sencillo: para ahorrarnos el paso de entrenar una red neuronal dedicada a la detección de melanomas en imágenes, simplemente buscamos un proyecto open source que encarase esta problemática y tuviese una red neuronal ya entrenada y lista en Github.

La propiedad de transferibilidad fue descubierta por investigadores que encontraron que las muestras adversarias diseñadas específicamente para causar una clasificación errónea en un modelo, también pueden causar clasificaciones erróneas en otros modelos entrenados de forma independiente, incluso cuando los dos modelos están respaldados mediante algoritmos o infraestructuras claramente diferentes.

Para tratar verificar la teoría utilizando de manera “normal” una de las aplicaciones seleccionadas desde nuestro dispositivo o emulador (Android), procedimos a cargar nuestras imágenes de melanomas aleatoriamente seleccionadas de Google con el fin de ver sus resultados. Efectivamente, pudimos observar que las aplicaciones clasificaron con una alta confidencia como melanomas dichas imágenes, tal como lo vemos en la siguiente imagen:

Imagen 1: Clasificación de imágenes como Melanomas

A partir de ahí, procedimos a recrear un adversarial attack. Intuimos que en todas las aplicaciones victimas se utilizó un approach parecido al propuesto en el repositorio de Github. Por lo tanto, utilizando los pesos de la red neuronal provistas por el repositorio aplicamos la técnica Fast Sign Gradient Method (FSGM), que ya mencionamos en otro post al respecto, generando el “ruido blanco” necesario para engañar a las redes neuronales. Este ruido, casi imperceptible al ojo humano, está específicamente diseñado a partir de los pesos de la red neuronal para tener el mayor impacto a la hora de asignar las probabilidades de clasificación de las imágenes y cambiar totalmente el veredicto de predicción.

Y, efectivamente, la imagen cuidadosamente generada por medio de los pesos de las redes neuronales open source con el FSGM, tienen el impacto deseado en las aplicaciones víctimas destino. Observamos que, claramente, se cumple la propiedad de transferibilidad, ya que no tenemos idea de qué estructura interna ni pesos tienen las redes internas de las aplicaciones. Sin embargo, fuimos capaces de cambiar la predicción de imágenes en las cuales se mostraba un resultado con bastante certeza de que eran melanomas, simplemente añadiéndoles “ruido”.

Imagen 2: Melanomas analizados, pero con una reducción en la clasificación

Este tipo de ataque lo recreamos exitosamente en varias aplicaciones que encontramos en las tiendas de Google y Apple. En algunos casos, se comportaban de una forma similar y no exactamente igual, pero en el final de las pruebas siempre obtuvimos el mismo resultado. Engañar a la red neuronal en su predicción.

En la siguiente imagen mostramos los resultados de una misma imagen de melanoma subida a la misma aplicación, pero a la cual le fuimos aumentando el ruido hasta llegar al momento en el cual la red interna de la aplicación, cambia su predicción.

Imagen 3: Cambio de predicción a medida que se sube el ruido en la imagen

Cabe destacar, que cuando analizamos este tipo de aplicaciones, no solo encontramos potenciales vulnerabilidades relacionadas con las tecnologías de deep learning, sino que a su vez, podemos encontrarnos con las vulnerabilidades típicas como:

  • Inadecuada implementación Webview XSS
  • No aplicación de métodos de ofuscación
  • Conexiones inseguras hacia backends (HTTP)
  • Fuga de datos privados

Al fin y al cabo, son debilidades que ya conocemos y que aún muchas de ellas siguen sin ser corregidas en aplicaciones que manejan información tan delicada como los datos médicos.

Conclusiones

Según Gartner, para el 2022, el 30% de todos los ciberataques a la inteligencia artificial aprovechará el envenenamiento de datos de entrenamiento, el robo de modelos o adversarial attacks. Además, una investigación de Microsoft indica que 22 de 28 organizaciones de Fortune 500 no estarían preparadas con herramientas tácticas y estratégicas para proteger, detectar y responder a ataques en sus sistemas de Machine Learning.

Los hallazgos que hemos encontrado podrían representar una mezcla perfecta para que más adelante, cuando estén desplegadas más aplicaciones de este tipo y las interacciones con otros gadgets o plataformas médicas, se incremente el riesgo tanto a la seguridad de las plataformas y la privacidad de datos.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *