Hace un tiempo que tenía pendiente contaros un caso con el que he estado jugado un rato con mis compañeros Julián Isla, y Fran Ramírez y que tiene que ver con un Captcha Cognitivo de reconocer sonidos. Y claro, era demasiado jugoso para no acabar de probarlo con los motores de GenAI. Así que aprovecho hoy para contároslo.
Antes de comenzar con esta prueba, os dejo aquí las referencias a todas las pruebas con Captchas Cognitivos que he ido recapitulando durante estos últimos meses, por si os gusta este mundillo.
- ReCaptchav2 de Google con Cognitive Services
- Captcha Cognitivo de Twitter (X) con GPT4-Vision & Gemini
- Captcha Cognitivo de Twitter (X) con Anthropic Claude 3.0 Opus
- Captcha Cognitivo de Twitter (X) con GPT-4o
- Captcha Cognitivo de Administración Pública con ChatGPT
- Captcha Cognitivo de la mano y la plancha en HBO max
- Captcha Story X: I am not a Robot, I am a GenAI Multimodal Agent
- Reto hacking con un Captcha Cognitivo para romper con GenAI
- Solución al Reto de Hacking de un Captcha Cognitivo Visual
- Anthropic Claude 3.5 Sonnet & Cognitive Captchas
En este caso, el Captcha Cognitivo es auditivo para las personas que tengan alguna dificultad con la visión para resolver los clásicos Captchas Cogntivos de agudeza visual o de resolución de puzzles gráficos. En este caso, es de HBO max.
Si os fijáis en la imagen anterior que os publiqué en el artículo de "Captcha Cognitivo de la mano y la plancha en HBO max" se puede ver como está el "Audio Challenge". Donde lo que te hacen es pedir que reconozcas un tipo de sonido, así que nos pusimos a jugar con ello para ver si éramos capaces de resolverlo al estilo de cómo nos saltamos el ReCaptchav2 de Google con Cognitive Services para reconocer los caracteres usando el "Audio Challenge" de accesibilidad.
Figura 3: El Red Team de la empresa de Eduardo Arriols en 0xWord. |
Al final, este tipo de barreras evitan el uso de herramientas de pentesting automático en ejercicios de Red Team, y saber cómo saltarse estos bloqueos de Captcha Cognitivo usando Inteligencia Artificial es siempre una buena práctica. El ejemplo que tenéis aquí es el vídeo que yo grabé del Audio Challenge que me tocó con HBO max el mismo día que tenía que resolver el de la plancha y los dedos. Así que podías elegir cualquiera de los dos.
Figura 4: El Audio Challenge de HBO max
La primera idea fue hacer un procesado manual por nuestra parte, y cortar los sonidos de las tres opciones haciendo un procesado del sonido, reconociendo con un Cognitive Service los sonidos de "Option 1", "Option 2" y "Option 3", para luego hacer una descripción de los audios.
Lo siguiente fue utilizar un clasificador que nos permitiera describir los audios, así que probamos YAMNET que tiene un descriptor de sonidos entrenado con un dataset de 2.1 Millones de sonidos para poder describir los sonidos.
Con esta aproximación nos parecía una solución perfecta basada en un modelo de Machine Learning que ha aprendido a reconocer sonidos, así que iba a ser sencillo resolverlo, así que nada, lanzamos un Python con el fichero de audio que sabíamos que era del sonido de gatos.
Figura 7: Libro de Machine Learning aplicado a Ciberseguridad de Carmen Torrano, Fran Ramírez, Paloma Recuero, José Torres y Santiago Hernández |
El resultado lo tenéis en esta captura, donde se puede ver cómo describe YAMNet el audio donde salen maullando los gatos.
El resultado, aunque prometedor, no nos resolvía el problema de manera fácil y rápida para automatizarlo, así que teníamos que buscar otra alternativa que decidiera si con esa salida sería posible que fuera el maullido de un gato o no.
ChatGPT4-o
Estuvimos probando diferentes opciones, pero al final, nos encamino a lo más sencillo. Es decir, nos estuvimos complicando cuando podía ser más sencillo. En esta captura corte el vídeo de la Figura 4 y le pregunté a ChatGPT si le parecía un gato o no, y respondió que sí.
El juego está en que todos los sonidos podrían ser un gato - en circunstancias curiosas - pero se trataba de que eligiera solo uno de ellos, así que le hicimos el prompt adecuado. Al final, todos estos "Audio Challenge" llevan tres opciones y un. texto descriptivo del reto que se puede leer con IA fácilmente, así que bastaba con describirle bien el proceso.
Y lo hace perfectamente. Dice que el sonido que más se asemeja a maullidos de gatos es la Opción 2. Lo curioso es que hace el proceso completo. Extrae el audio del vídeo, busca los segmentos por las opciones y el número y luego analiza "manualmente" cada segmento para ver cuál se parece más al de los gatos, así que hace un proceso completo.
Reflexión final
Hemos probado mucho con este Captcha Cognitivo con diferentes modelos LLM Multimodales, y los resultados han sido dispares. Desde no puedo analizarlo hasta alucinaciones varias. En el caso de GPT4o vimos que analizaba el audio con herramientas de Machine Learning, y en este caso extrae la pista de audio - procesa el vídeo -, corta el audio en segmentos, analiza los ruidos con el modelo de ML, y da una predicción. Lo que deja claro que en nada de tiempo los Captchas Cognitivos van a tener que evolucionar a algo que no puedan hacer estas herramientas de GenAI, porque se los van a saltar con extrema facilidad.
¡Saludos Malignos!
Autor: Chema Alonso (Contactar con Chema Alonso)
No hay comentarios:
Publicar un comentario