Las etiquetas falsificadas pueden convertir texto de herramientas en instrucciones del usuario
En palabras sencillas
A veces, los agentes de programación acortan conversaciones largas y sustituyen los mensajes por un resumen que usan como memoria. El artículo estudia si esto puede hacer que un texto de un archivo o una página web parezca una instrucción del usuario.
En algunos sistemas evaluados, los roles de los mensajes se convierten en etiquetas de texto como [User]:, que el texto no confiable puede imitar. Los resúmenes de cinco sistemas de ese tipo trataron con frecuencia una aprobación falsificada como una instrucción del usuario; cuatro sistemas que guardaban los roles en campos separados no lo hicieron.
Una prueba pequeña con un agente real también mostró que la aprobación falsa podía llevar a ejecutar un comando.
La investigación
Cuando un agente de programación acorta una conversación, puede descartar los mensajes originales y usar un resumen como memoria. ¿Podría entonces un texto leído en un archivo o una página web pasar por ese resumen como si el usuario hubiera dado una instrucción?
El artículo compara cómo nueve sistemas para agentes de programación resumen etiquetas de usuario falsificadas y evalúa si una comprobación de código puede detectar atribuciones falsas.
Los autores probaron la misma aprobación falsificada con el serializador y la instrucción de compresión reales de cada sistema. Un evaluador basado en un LLM determinó si los resúmenes la presentaban como una instrucción permanente del usuario; una revisión independiente comprobó una muestra de las etiquetas.
Cinco sistemas que aplanan los roles tuvieron tasas de atribución fraudulenta de entre el 87 y el 100% por sistema; cuatro con roles tipados tuvieron una tasa del 0%.
Este contraste respalda la explicación de que, en los sistemas evaluados, aplanar los mensajes permite falsificar las etiquetas de rol, mientras que los mensajes tipados conservan esa información. Otra prueba en vivo mostró que el recuerdo falso podía llevar a la ejecución en una sesión real, aunque solo en algunas ejecuciones envenenadas.
La demostración en vivo incluyó un sistema de pruebas, un modelo y pocas ejecuciones, por lo que sus proporciones no son estimaciones precisas.
La mayoría de las pruebas de ejecución usaron un ciclo genérico de agente sin solicitud de aprobación ni aislamiento del sistema operativo; muestran lo que hizo el modelo en esa configuración, no lo que ejecutaría cualquier agente protegido.
Análisis
Detalles
- Autores del paper original
- Arshan Dabirsiaghi
- Enviado a arXiv
- Licencia
- CC BY 4.0