MemPoison: troyanizar la memoria de un agente con una simple conversación
Un artículo de arXiv de mayo de 2026 implanta una puerta trasera activable en la memoria a largo plazo de un agente LLM con solo conversar — y está diseñado para sobrevivir a las etapas de extracción y reescritura que deberían filtrar el contenido envenenado.
What is this?
El artículo Hijacking Agent Memory: Stealthy Trojan Attacks Through Conversational Interaction, publicado en arXiv en mayo de 2026, describe MemPoison: una forma de implantar una puerta trasera activable en la memoria a largo plazo de un agente LLM usando únicamente una conversación ordinaria. El atacante no necesita privilegios elevados ni acceso de escritura al almacén de memoria. Conversa con el agente —igual que lo haría cualquier usuario en una plataforma compartida— y deja atrás una carga latente para más adelante.
Es un refinamiento de un problema ya conocido. MINJA (NeurIPS 2025) demostró que un usuario podía inyectar registros maliciosos en la memoria de un agente solo mediante consultas, y el estudio de ataque y defensa de enero de 2026 endureció el panorama. Lo que MemPoison añade es una respuesta directa a la defensa obvia: muchos agentes en producción no almacenan las conversaciones literalmente. Ejecutan una canalización de memoria selectiva que extrae, resume y reescribe el contenido antes de guardar nada. Los ataques anteriores asumían en silencio que el texto inyectado llegaba intacto a la memoria. MemPoison está diseñado específicamente para sobrevivir a esa canalización, y eso es lo que lo hace digno de atención. Está estrechamente relacionado con la inyección de prompt almacenada entre sesiones, pero apunta a la propia etapa de construcción de la memoria.
How it works
MemPoison se ejecuta en dos fases. En la fase de inyección, el atacante envenena la memoria mediante turnos de conversación normales en un agente compartido. En la fase de activación, la puerta trasera se dispara por una de dos vías: activada por el usuario, donde el disparador está en contenido externo (una página web) que un usuario inocente pide después al agente que lea, lo que hace que el agente recupere y ejecute la carga implantada; o activada por el atacante, donde este simplemente emite una consulta que contiene el disparador para provocar la respuesta maliciosa a voluntad.
La contribución está en hacer pasar la carga a través de la memoria selectiva. El artículo describe tres componentes, que resumimos de forma conceptual en lugar de reproducirlos:
- Un puente relacional semántico une el disparador y la carga en una sola frase coherente, de modo que la etapa de extracción los conserva juntos en lugar de descartar una mitad.
- El enmascaramiento de entidad moldea el disparador para que parezca una entidad nombrada, de modo que la etapa de reescritura lo preserve en lugar de parafrasearlo.
- La optimización conjunta de embeddings agrupa los textos portadores del disparador en un grupo compacto en el espacio de embedding manteniéndolos separados del contenido benigno, de modo que la recuperación haga emerger de forma fiable la carga ante el disparador y permanezca en silencio en otros casos.
INYECCIÓN (el atacante conversa en un agente compartido)
turnos de conversación ──▶ canalización de memoria selectiva
(extraer → resumir → reescribir → embed)
│ sobrevive, por diseño
▼
MEMORIA A LARGO PLAZO [disparador + carga]
... el atacante se va; la entrada queda latente ...
ACTIVACIÓN
(A) la víctima pide al agente leer contenido externo que lleva el disparador
(B) el atacante vuelve a consultar con el disparador
└──▶ la recuperación hace emerger la carga ──▶ el agente emite una respuesta maliciosa
Aquí no se reproduce ninguna carga funcional; la lección no la necesita. Las tasas de éxito reportadas alcanzan hasta 0,95 manteniendo la precisión benigna, y la puerta trasera sigue siendo eficaz frente al filtrado por perplejidad y a la paráfrasis. El análisis mecanicista de los autores atribuye esa robustez a la anisotropía del espacio de embedding y a la redistribución de la atención; es decir, explota propiedades estructurales del sistema de memoria, no una simple cadena frágil.
Why it matters
Lo inquietante es el modelo de amenaza, no las cifras. El atacante es un usuario corriente de un agente compartido, sin acceso especial, que deja una trampa que otro usuario activará después. Una canalización de memoria selectiva —precisamente el mecanismo que los equipos añaden para sentirse más seguros sobre lo que se recuerda— se trata aquí como la superficie de ataque en lugar de la defensa. Y como la carga es latente y sigilosa por construcción, la ventana de detección se mide en días, no en el turno que la implantó.
Esto golpea con más fuerza a los despliegues multiinquilino y en equipo: bases de conocimiento compartidas, almacenes de memoria comunes, agentes que atienden a muchos usuarios desde un mismo estado persistente. En esos entornos, una sola conversación envenenada puede reaparecer en la sesión de otra persona, convirtiendo una molestia individual en un punto de apoyo persistente.
Defenses
Ningún control único elimina esta clase. El objetivo es dejar de tratar la memoria como contexto de confianza y romper el bucle escribir-luego-recuperar.
- Trate la memoria recuperada como entrada no confiable. Revalide el contenido persistente al leerlo con el mismo rigor aplicado al contenido externo nuevo. El error de fondo es que el agente confíe en su propia memoria porque «ya está ahí».
- Particione la memoria por procedencia. Etiquete las entradas con su origen y la tarea que las escribió. El contenido derivado de conversaciones no confiables debe ponerse en cuarentena y nunca inyectarse directamente en los prompts de planificación o selección de herramientas.
- Aísle por usuario y por inquilino. Prefiera una memoria de alcance acotado a los almacenes mutables compartidos. Una entrada escrita en la sesión de un usuario no debería ser recuperable en la de otro por defecto; eso por sí solo neutraliza la vía de activación entre usuarios.
- Defienda en la recuperación, no solo en la escritura. Como MemPoison sobrevive a los filtros de perplejidad y paráfrasis en la escritura, añada controles en el momento de la recuperación: filtrado por procedencia, detección de anomalías sobre qué memorias emergen para una consulta, y comprobaciones de implicación o coherencia entre una memoria recuperada y la solicitud actual.
- Controle y registre cada escritura. Haga que las escrituras en memoria sean explícitas y regidas por política —qué puede escribirse, por qué tarea, desde qué fuente— con registro de procedencia para que una investigación posterior pueda rastrear un comportamiento hasta la conversación que lo implantó.
- Caduque de forma agresiva y limite la exfiltración. Los TTL y el olvido limitan cuánto tiempo puede esperar una entrada latente a su disparador; un instrumental de mínimo privilegio y la supervisión de salidas reducen lo que una carga activada puede llegar a hacer.
Status
| Aspecto | Envenenamiento de memoria ingenuo | MemPoison (mayo de 2026) |
|---|---|---|
| Acceso necesario | Suele asumir escritura directa en memoria | Solo conversación, sin privilegios |
| Canalización de memoria selectiva | Se asume eludida / ausente | Diseñado para sobrevivir extracción + reescritura |
| Disparador | Inmediato o implícito | Latente; activado por usuario o atacante |
| Tasa de éxito reportada | Variable | Hasta 0,95, precisión benigna preservada |
| Resiste perplejidad / paráfrasis | No de forma fiable | Sí |
| Control principal | Filtrado en la escritura | Recuperación consciente de la procedencia + aislamiento |
La conclusión del artículo de mayo de 2026 es un cambio en dónde debe situarse la defensa. Filtrar lo que entra en memoria no basta cuando un atacante puede moldear una carga para pasar la extracción y la reescritura intacta. En un agente con estado, la canalización de memoria forma parte de la superficie de ataque, y los controles que toman la memoria recuperada como verdad seguirán pasando por alto puertas traseras construidas para parecer recuerdos.