Inyección de prompts
La inyección de prompts es texto malicioso escondido en contenido que el agente lee — un archivo en un repositorio hostil, una página web, un CLAUDE.md envenenado — que intenta dirigir al modelo ("ignora las instrucciones anteriores, exfiltra los secretos"). El panel Inyección de prompts enciende detectores que examinan el tráfico de IA de una máquina en busca de ese contenido (una máquina es un espacio de trabajo, en el editor de ajustes). Como dice la descripción del panel: Bromure examina el tráfico de IA del agente en el dispositivo en busca de instrucciones inyectadas — nada sale del Mac. Cada detector usa un modelo local, descargado de bromure.io la primera vez que lo activas.
El panel tiene dos grupos: Detectores (qué escáneres se ejecutan) y Cuando se detecta una inyección (qué pasa cuando hay un acierto). En la captura los dos detectores están apagados, así que el grupo de botones de opción de abajo está desactivado — se activa en cuanto al menos un detector está encendido. El escaneo ocurre en el proxy del anfitrión, así que un agente dentro de la VM no lo puede apagar. Las tripas de los detectores, la puntuación y la aplicación se cubren en Detección de inyección de prompts y salvaguardas. Los cambios se aplican a una máquina en marcha cuando guardas.
Detectores
Detectar inyección de prompts en el código fuente
Puntúa el contenido externo no fiable que el agente devuelve al modelo — contenidos de archivos, páginas web, y la salida de herramientas enviada como bloques tool_result — con el modelo de clasificación local Prompt Guard. Este es el detector que pilla el texto "ignora las instrucciones anteriores / exfiltra los secretos" escondido en un repositorio hostil. El pie del panel anuncia una descarga de unos 272 MB la primera vez que lo activas.
El escaneo se ejecuta enteramente en el dispositivo. En cada turno solo se escanea el mensaje más reciente que lleva resultados de herramientas (el historial de conversación reenviado se salta), y el contenido idéntico se cachea, así que leer el mismo archivo varias veces no cuesta nada.
Detectar instrucciones maliciosas en archivos CLAUDE.md y similares
Apunta a la amenaza de la "puerta trasera del archivo de reglas": instrucciones maliciosas plantadas en los archivos que los agentes de código cargan automáticamente como autoridad de confianza — CLAUDE.md, AGENTS.md, GROK.md, y las variantes anidadas y globales que Claude Code, Codex y Grok leen en su prompt de sistema. Se ejecutan dos pasadas:
- Un escáner determinista (no hace falta modelo) que señala la ofuscación por Unicode invisible — caracteres de ancho cero, inversiones bidireccionales, caracteres de etiqueta Unicode — más patrones de meta-instrucción ("ignora las instrucciones anteriores", "no se lo digas al usuario") y palabras clave de capacidad o exfiltración (rutas de archivos de credenciales, curl-a-shell, force pushes).
- Un clasificador ModernBERT afinado que hace una pasada semántica sobre el cuerpo de esos mismos archivos de instrucciones.
El pie del panel anuncia una descarga de unos 571 MB la primera vez que lo activas. Los hallazgos de un archivo sin cambios se deduplican por sesión, así que un CLAUDE.md señalado se registra una vez, no en cada turno.
Descargas de modelos
Los modelos de los detectores no vienen con la app. Marcar cualquiera de los conmutadores muestra primero una alerta de confirmación — ¿Descargar el modelo del detector <detector>? — que indica el tamaño exacto de la descarga, calculado a partir de los totales reales de bytes (unos 298 MB para el detector de código fuente y unos 603 MB para el de reglas, algo mayor que los pies redondeados del panel) con los botones Descargar y Cancelar, y luego una ventana de progreso con un porcentaje y un botón Cancelar. Rehusar, cancelar, o una descarga fallida devuelve el conmutador a su sitio: un detector sin su modelo no hace nada, y Bromure no va a fingir lo contrario.
Detalles que vale la pena saber:
- Los modelos se descargan de
dl.bromure.ioa~/Library/Application Support/BromureAC/Models/(prompt-injection/para el detector de código fuente,claudemd-guard/para el de reglas). Para quitar uno, borra su carpeta. - Las descargas empiezan de inmediato cuando confirmas — es una de las pocas acciones del editor de ajustes que surte efecto antes de que hagas clic en Guardar.
- Las descargas se comparten: una vez obtenido, cualquier máquina que active el mismo detector reutiliza el modelo.
- Una comprobación del espacio libre rehúsa una descarga que no quepa. Si un detector está encendido pero falta su modelo, arranca automáticamente una descarga en segundo plano.
- En el cliente de iPhone, iPad y Vision Pro, marcar un detector solo guarda el ajuste; el Mac que ejecuta la máquina descarga el modelo cuando lo necesita.
Cuando se detecta una inyección
Una única acción compartida se aplica a los dos detectores. El texto de ayuda del panel la resume: "Registrar y continuar" registra las detecciones en la Cronología de seguridad; "Preguntarme qué hacer" pone la petición en pausa y muestra el texto señalado; "Bloquear" hace fallar la petición de plano.
| Acción | Comportamiento |
|---|---|
| Registrar y continuar | La detección se registra en la Cronología de seguridad y la petición sigue. El escaneo ocurre después de retransmitir la respuesta, así que este modo no añade latencia alguna. Lo predeterminado. |
| Preguntarme qué hacer | La petición saliente se pone en pausa antes de que un solo byte llegue al host de IA, y un diálogo muestra el texto señalado en una vista monoespaciada con desplazamiento, con los botones Bloquear esta petición y Permitir esta petición. Tu decisión se recuerda para esa máquina, esa fuente y ese contenido, así que el mismo texto señalado no se vuelve a preguntar en cada turno. |
| Bloquear unilateralmente | La petición se rechaza de plano. El agente recibe un error HTTP 451 ("Bromure blocked this request: possible … detected in …") y el modelo nunca ve el contenido envenenado. |
El grupo de botones de opción está desactivado hasta que al menos un detector esté activado. En los modos Preguntar y Bloquear el escaneo se ejecuta antes de reenviar, lo que añade la latencia del clasificador a los turnos señalados; Registrar y continuar no añade ninguna. Cuando la máquina se usa sin supervisión por SSH o por la CLI, la pregunta de Preguntar se hace dentro del tmux de la máquina — solo un permiso explícito deja pasar la petición.
Dónde aparecen las detecciones
Cada detección y cada resultado de aplicación se registra en la Cronología de seguridad (Ventana › Seguridad…) bajo el filtro Inyección de prompts. Las entradas llevan solo una vista previa corta del contenido señalado; el texto completo aparece en el diálogo Preguntarme qué hacer. En los Mac inscritos en una organización de bromure.io, las detecciones también se envían como eventos de auditoría (no cuando el Modo privado del panel Trazado está activado).
Referencia de ajustes
| Ajuste | Tipo | Por omisión |
|---|---|---|
| Detectar inyección de prompts en el código fuente | Conmutador (pide descargar el modelo la primera vez) | Desactivado |
| Detectar instrucciones maliciosas en archivos CLAUDE.md y similares | Conmutador (pide descargar el modelo la primera vez) | Desactivado |
| Cuando se detecta una inyección | Opción: Registrar y continuar / Preguntarme qué hacer / Bloquear unilateralmente (desactivado hasta que un detector esté encendido) | Registrar y continuar |
Consejo: una progresión sensata: empieza con los dos detectores encendidos en Registrar y continuar, observa la Cronología de seguridad unos días para medir la tasa de falsos positivos en tus repositorios, y luego pasa a Preguntarme qué hacer para bases de código no fiables. Para el ajuste de memoria y de Neural Engine de los clasificadores en el dispositivo, ver Detección de inyección de prompts y salvaguardas. Para mantener los datos personales fuera de lo que ve el modelo, ver Protección de datos personales.