Ir al contenido
← webersheim.de

injection-guard

injection-guard

Un plugin de código abierto para el agente Hermes que detecta inyección de prompts en el contenido web obtenido — para que un agente de IA trate las instrucciones ocultas en una página como datos y no las siga.
https://github.com/gweber/hermes-injection-guard

El problema

En cuanto un agente lee páginas web, una página manipulada puede intentar secuestrarlo: «ignora todas las instrucciones anteriores…», cambios de rol ocultos, peticiones de exfiltración. Hermes incluye defensas sólidas (escaneo de comandos, guardas SSRF/metadatos, bloqueo de dominios homógrafos) — pero ningún escaneo de inyección de prompts a nivel de contenido. El plugin cubre justo esa brecha.

Cómo funciona

– Un hook transform_tool_result se activa cuando una herramienta de contenido (navegador, web_extract …) devuelve texto.
– Clasificador protectai/deberta-v3-base-prompt-injection-v2 (Apache-2.0) — pequeño, CPU, carga diferida.
– Ante una detección: aviso no bloqueante «trátalo como datos» en el resultado (modo de bloqueo opcional).
– Skills, terminal y herramientas de archivos quedan exentos a propósito.

Instalación

pip install transformers torch sentencepiece
hermes plugins install gweber/hermes-injection-guard
hermes plugins enable injection-guard

El modelo (~700 MB) se descarga de Hugging Face en la primera detección y se cachea; se ejecuta en CPU. Si faltan transformers/torch, el plugin carga sin problemas y el hook no hace nada.

Una nota honesta

Los clasificadores de inyección no son perfectos (falsos positivos/negativos, evadibles — sobre todo ante ataques nuevos). Una capa de la defensa en profundidad, no una solución mágica: la ejecución con mínimos privilegios y el prompting «el contenido es dato» van de la mano.

Pruébalo tú mismo

La página de prueba contiene una carga real de inyección de prompts. Si dejas que un agente la consulte, un agente protegido marca el contenido como datos y no lo sigue:
https://www.webersheim.de/injection-guard-test.html

Licencia

MIT · Clasificador: ProtectAI (Apache-2.0) · Código y documentación:
https://github.com/gweber/hermes-injection-guard