La recuperación híbrida BM25 + vectores redujo el envenenamiento RAG del 38 % al 0 %
Un preprint de arXiv del 10 de marzo de 2026 muestra que añadir BM25 disperso a la recuperación densa bloquea toda una clase de envenenamiento de corpus RAG optimizado por gradiente, sin tocar el LLM.
¿Qué es esto?
El 10 de marzo de 2026, un investigador independiente publicó Semantic Chameleon: Corpus-Dependent Poisoning Attacks and Defenses in RAG Systems (arXiv:2603.18034). El resultado central es defensivo: un recuperador híbrido sencillo que combina la búsqueda por palabras clave BM25 clásica con la búsqueda vectorial densa redujo el envenenamiento RAG optimizado por gradiente del 38 % al 0 % de co-recuperación en una evaluación de n = 50, sin modificar el LLM, el prompt del sistema ni la lógica de clasificación.
El envenenamiento RAG figura en el OWASP LLM Top 10 como una debilidad de los vectores y los embeddings. Un atacante capaz de inyectar documentos en una base de conocimiento —mediante contenido generado por usuarios, envíos por API o una canalización de datos comprometida— puede colocar texto que se recupera para consultas objetivo concretas y orienta la respuesta del modelo, sin tocar jamás los pesos. La contribución del artículo es mostrar que la propia arquitectura de recuperación constituye un control potente, barato e inmediatamente desplegable contra la versión optimizada por gradiente de este ataque.
Cómo funciona
El ataque que se defiende es un envenenamiento de doble documento (durmiente–disparador) optimizado con Greedy Coordinate Gradient (GCG), la misma familia de búsqueda por coordenadas que produce los sufijos de jailbreak universales. La optimización maximiza la similitud del coseno en el espacio de embeddings para que el par envenenado se co-recupere ante una consulta elegida mientras permanece latente para el resto. En un recuperador puramente vectorial sobre Security Stack Exchange (67 941 documentos) alcanzó el 38,0 % de co-recuperación.
La defensa consiste en dejar de depender únicamente de la similitud de embeddings:
Modo de recuperacion Exito del ataque por gradiente
------------------------------------ ------------------------------------------
Denso puro (solo vectores) 38,0% de co-recuperacion
Hibrido BM25 + vectores (alpha 0.3-0.7) 0% — clase de ataque eliminada
Hibrido, atacante optimiza tambien BM25 20-44% — parcialmente sorteada
Por qué funciona: un vector de embedding optimizado con GCG está ajustado para el canal denso. BM25 puntúa el solapamiento léxico, que la carga optimizada no controla, de modo que el documento envenenado ya no aflora una vez que se fusiona la señal dispersa. El artículo recomienda un peso de mezcla de alpha ≤ 0,5 (que favorece o equilibra el canal disperso) como valor por defecto. Es honesto sobre el límite: cuando el atacante optimiza conjuntamente ambos canales, la recuperación híbrida se sortea parcialmente (20–44 % de éxito). La recuperación híbrida eleva mucho el listón; no es inexpugnable.
Otros dos hallazgos importan a los defensores. Primero, la susceptibilidad depende del modelo: en cinco LLM, el ataque de extremo a extremo varió del 46,7 % (GPT-5.3) al 93,3 % (Llama 4), con tasas de violación de seguridad del 6,7 % (Claude Sonnet 4.6) al 93,3 % (Llama 4); el entrenamiento de seguridad ayuda pero no cierra la brecha. Segundo, el ataque depende del corpus: un corpus técnico absorbe el vocabulario del ataque y permite el sigilo, mientras que un corpus general (FEVER Wikipedia) expone las mismas cargas como anomalías de vocabulario, con una dificultad de detección que varía entre 13 y 62 veces según el corpus. La misma carga no se transfiere de una base a otra.
Por qué importa
La mayoría de las defensas RAG propuestas hasta la fecha son capas de detección y filtrado añadidas después de la recuperación, y los estudios previos muestran que dejan un riesgo residual. Este resultado va en sentido contrario: un cambio cuyos componentes probablemente ya posee —la fusión disperso + denso es estándar para la calidad de recuperación— funciona también como control de seguridad contra la clase de ataque por gradiente. Es la rara mitigación barata y desplegable hoy.
También reformula el análisis del riesgo RAG. La susceptibilidad no es una cifra única para su pila; es el producto de la arquitectura de su recuperador, el entrenamiento de seguridad de su modelo y la composición de su corpus. Una defensa validada en un corpus puede no sostenerse en otro, así que «lo probamos en el benchmark X» no demuestra que se sostenga en su base de conocimiento de producción. Es la misma lección que la demostración de SilentRetrieval, donde venenos fluidos eluden los filtros de perplejidad: las amenazas de la capa de recuperación exigen pensar en términos de recuperación y de corpus.
Defensas
Los resultados se traducen en una postura por capas y accionable.
-
Despliegue la recuperación híbrida por defecto. Fusione BM25 con su recuperador denso (por ejemplo mediante fusión por rango recíproco) y sesgue hacia el canal disperso; el artículo recomienda un peso alpha ≤ 0,5. Esto eliminó por completo el ataque de un solo canal por gradiente en las pruebas.
-
No trate la recuperación híbrida como el perímetro. La optimización conjunta disperso + denso aún alcanzó el 20–44 %. Añada por encima monitorización del corpus y detección de patrones de consultas; suponga que un atacante decidido que conozca su recuperador todavía puede pasar.
-
Evalúe la susceptibilidad modelo por modelo. Una diferencia de 47 puntos entre familias de modelos significa que la elección del modelo es una decisión de seguridad para el RAG, no solo de calidad. Mida el comportamiento de su modelo bajo contexto recuperado-pero-envenenado antes de pasar a producción.
-
Convierta la ingesta en una frontera de confianza. Filtre el contenido generado por usuarios, los envíos por API y las fuentes de terceros antes de que entren en el corpus. Un veneno persistente que solo se activa ante consultas objetivo es justamente el caso que la revisión manual pasa por alto.
-
Use detección adaptada al corpus. Como la detectabilidad varía entre 13 y 62 veces según el corpus, ajuste la detección de anomalías a su dominio. La puntuación de anomalías de vocabulario funciona en corpus generales pero es débil en corpus técnicos, donde el sigilo es mayor.
-
Añada procedencia y trazabilidad. Registre qué documentos generaron una respuesta para localizar y purgar un registro envenenado, como complemento de las defensas basadas en grafos como Argus.
Estado
| Elemento | Referencia | Fecha | Notas |
|---|---|---|---|
| Preprint Semantic Chameleon | arXiv:2603.18034 | 2026-03-10 | Ataques y defensas de envenenamiento RAG dependientes del corpus |
| Resultado principal | §6.2 | 2026-03-10 | Híbrido BM25+vectores: 38 % → 0 % en n=50 (Security Stack Exchange, 67 941 docs) |
| Elusión de la defensa | §6.2.2 | 2026-03-10 | Optimización conjunta disperso+denso: 20–44 % de éxito |
| Evaluación multimodelo de extremo a extremo | §6.3 | 2026-03-10 | 46,7 % (GPT-5.3) a 93,3 % (Llama 4) de éxito |
| Artefactos (código de defensa + scripts) | GitHub | 2026 | scthornton/semantic-chameleon |
| Contexto OWASP | LLM Top 10 (2025) | 2025 | Las debilidades de vectores y embeddings son un riesgo del top 10 |
El hallazgo no es que el envenenamiento RAG esté resuelto: los ataques de canales conjuntos siguen siendo viables y la susceptibilidad a nivel de modelo se mantiene alta. Es que una técnica estándar de calidad de recuperación es también una defensa barata y desplegable hoy mismo contra la clase de envenenamiento por gradiente, y que todo modelo de amenazas RAG honesto debe considerar conjuntamente la arquitectura del recuperador, la elección del modelo y la composición del corpus.