El ASCII smuggling, un bloque Unicode que las personas no pueden ver, se está extendiendo desde los ataques contra la inteligencia artificial hasta la evasión de los filtros de spam. La técnica salió a la luz hace aproximadamente dos años para ocultar ataques de prompt injection dirigidos contra grandes modelos de lenguaje (LLM). El atacante codifica las instrucciones con etiquetas Unicode especiales en lugar de texto normal; U+E0041 representa el carácter «A», mientras que U+E0061 representa «a». Este bloque, compuesto por 128 etiquetas, puede ser leído por los ordenadores, pero permanece casi completamente invisible para las personas.
Microsoft detectó un gran aumento de los mensajes de spam que utilizaban este método a principios de este año. En un día de comienzos de febrero, las firmas de ASCII smuggling detectadas por Microsoft Defender for Office pasaron de aproximadamente 21,000 al día a más de 1,3 millones; en cuatro días alcanzaron los 2,5 millones. El aumento continuó durante meses y cayó bruscamente a mediados de mayo.
Los remitentes de spam dividen con caracteres invisibles las palabras que buscan los filtros, como «credit» y «term», o las cantidades de dinero. Por ejemplo, mientras que la palabra «funding» puede ser interpretada por el filtro como «fun» y «ding», el destinatario sigue viendo la palabra con normalidad. Los espacios de ancho cero y los espacios indivisibles también se utilizan con fines similares desde hace décadas.
El hecho de que algunos filtros no reconozcan estas etiquetas y de que puedan engañar a los clasificadores basados en aprendizaje automático y procesamiento del lenguaje natural puede influir en la preferencia por las etiquetas ocultas. El ataque puede pasar desapercibido a menos que el texto se convierta en una imagen y se le aplique OCR. Microsoft publicó recomendaciones para los desarrolladores con el fin de que los filtros reconozcan mejor el ASCII smuggling.
Por qué es importante
Este método amplía la brecha entre el contenido que ve una persona y el que evalúa el software en la seguridad del correo electrónico; por ello, no solo afecta a los usuarios que consultan la bandeja de entrada, sino también a los equipos que desarrollan sistemas de filtrado y clasificación. Las palabras divididas por caracteres invisibles ponen de manifiesto los límites tanto del análisis tradicional de palabras clave como de los controles basados en aprendizaje automático y procesamiento del lenguaje natural. Dado que la misma técnica también se utiliza en ataques de prompt injection dirigidos contra sistemas de inteligencia artificial, el problema va más allá de la detección de spam y se convierte en una cuestión de interpretación fiable del texto. La pregunta abierta es cómo detectar estos indicadores de manera coherente sin convertir el texto en una imagen y aplicarle OCR, y en qué medida se aplicarán las recomendaciones de Microsoft para desarrolladores en distintos filtros.