¿Cómo se asegura un pipeline RAG (retrieval-augmented generation)?
Respuesta breve
La seguridad RAG significa tratar cada documento recuperado como entrada no confiable. Riesgos clave: prompt injection indirecta oculta en el contenido recuperado, envenenamiento de la base de conocimiento o los embeddings, y falta de autorización por usuario, de modo que el modelo devuelve datos a los que el usuario no tiene acceso. Las defensas incluyen control de acceso aplicado en la recuperación, procedencia del contenido y verificación en la ingesta, tratar el texto recuperado como datos y no como instrucciones, validación de salidas, y aislar el almacén de vectores por inquilino.
La retrieval-augmented generation ancla un LLM al recuperar documentos relevantes de una base de conocimiento (normalmente un almacén de vectores) e insertarlos en el prompt. Ese contexto adicional es también una nueva y amplia superficie de ataque, y la mentalidad central es: cada fragmento recuperado es entrada no confiable.
Riesgos etapa por etapa
- Ingesta. Todo lo que indexes, el modelo lo leerá después y puede obedecerlo. Un documento envenenado o redactado por un atacante se convierte en una prompt injection indirecta que se dispara en la sesión de confianza de otra persona. Verifica las fuentes, rastrea la procedencia y restringe quién puede contribuir al corpus.
- Almacenamiento / embeddings. Los almacenes de vectores pueden envenenarse (plantando documentos adversarios que siempre puntúan alto) y los embeddings pueden filtrar información mediante ataques de inversión. Aísla los almacenes por inquilino y protégelos como cualquier almacén de datos sensible.
- Recuperación. El mayor fallo práctico es la autorización: si la recuperación no filtra según los permisos del usuario solicitante, el modelo aflora documentos que nunca debería ver. Aplica el control de acceso en el momento de la consulta, acotado al usuario, no como un filtro a posteriori sobre la respuesta.
- Generación. Delimita claramente el contenido recuperado como datos, instruye al modelo a no seguir las instrucciones que contenga, y valida/sanea la salida antes de renderizarla o pasarla a herramientas.
Defensa en profundidad
Combina recuperación con mínimo privilegio, verificación y firma en la ingesta, aislamiento por inquilino, mitigaciones contra la inyección indirecta y validación de salidas. Ningún control aislado basta.
Qué buscan los entrevistadores
El encuadre de que «el contenido recuperado es no confiable», destacar la autorización por usuario en la recuperación, y conciencia de la inyección indirecta y el envenenamiento de la base de conocimiento como amenazas propias del RAG, no solo seguridad genérica de base de datos.
Posibles preguntas de seguimiento
- ¿Cómo puede un documento envenenado en la base de conocimiento atacar a otro usuario?
- ¿Dónde exactamente debería aplicarse la autorización en un flujo RAG?
- ¿Qué es un ataque de inversión de embeddings?