Ir al contenido
Mastering Claude

Inicio / Seguridad y datos

Seguridad y datos9 minApplication

Lo que un agente puede filtrar sin que se lo pidas

Una inyección de prompt indirecta esconde una instrucción en un contenido que el agente lee en vez de en lo que tú escribiste, un archivo generado no tiene un autor que se responsabilice de su contenido, y una regla de configuración que apunta a una ruta de archivo se acepta sin error a la vez que no bloquea nada para la herramienta que ejecuta comandos directos, mientras que una regla que apunta al nombre de esa herramienta sí bloquea de verdad.

Una instrucción oculta en un contenido que Claude lee, una página web recuperada por una herramienta, un archivo adjunto, una línea de comentario en un repositorio, puede hacerle ejecutar algo distinto de lo que tú escribiste. Es la misma inyección de prompt que la lección anterior describe a propósito de una skill de terceros, pero en su forma indirecta: la fuente ya no es un paquete instalado, es cualquier contenido recuperado durante la conversación.

Las protecciones documentadas, y su límite anunciado

La documentación oficial de Claude Code nombra varias protecciones activas contra este riesgo: un sistema de permisos, un análisis contextual, el aislamiento de la ventana de contexto para la herramienta que recupera una página web, y una verificación de confianza en el primer lanzamiento de un repositorio. La misma página plantea ella misma su límite: estas protecciones reducen significativamente el riesgo, sin que ningún sistema quede completamente inmunizado contra todo ataque.

Una regla que se lee como una protección y no lo es

Un parámetro del archivo de configuración personal permite denegar el acceso a rutas precisas para las herramientas que leen o escriben un archivo. Una confusión documentada públicamente muestra por qué este parámetro por sí solo no basta: la herramienta que ejecuta comandos directos solo verifica, en las reglas de permiso, la presencia del nombre de esa herramienta, no las rutas realmente contenidas en el comando escrito.

{
  "deniedPaths": ["/Users/exemple/documents-prives/**"]
}

Este archivo se guarda sin error de sintaxis. Bloquea efectivamente una lectura o una escritura de archivo que pase por las herramientas dedicadas a eso. No bloquea nada en absoluto cuando el mismo dato se alcanza mediante un comando directo, porque la regla apunta a una ruta y no al nombre de la herramienta. Esta constatación, hecha pública, sigue clasificada como un límite de diseño más que como una falla por corregir.

Lo que un archivo generado nunca firma

Un archivo producido automáticamente por una herramienta, un resumen, un grafo de conocimiento, un informe ensamblado a partir de varias fuentes, no tiene un autor en el sentido de una persona que se responsabilice de su contenido. Nadie se siente responsable de verificar lo que republica, incluida una frase sensible que una herramienta recorrió sin distinguir su nivel de confidencialidad del resto. Este riesgo no es propio de un producto concreto: es el defecto general de toda herramienta que ensambla contenido sin indicar su procedencia línea por línea.

Figure 1

Una regla por ruta de archivo, una regla por nombre de herramienta

Apunta a una ruta de archivo
Regla: deniedPaths contiene la carpeta privada.
Comando escrito: cat documents-prives/contrat.txt
Resultado: el contenido del archivo se muestra.
Apunta al nombre de la herramienta
Regla: se deniega el nombre de la herramienta que
ejecuta comandos.
Comando escrito: cat documents-prives/contrat.txt
Resultado: comando denegado, ninguna salida.
La diferencia no está en la sensibilidad de la ruta apuntada sino en lo que el control de permiso verifica realmente: el nombre de la herramienta empleada, nunca las rutas contenidas dentro del comando escrito.
Calíbralo tú mismo

Un responsable añade, en el archivo de configuración de su espacio Claude, una regla que apunta a la ruta de su carpeta de documentos privados. El archivo se guarda y Claude reinicia con esta configuración. Al día siguiente, le pide a Claude que liste el contenido de esa carpeta mediante un comando directo dirigido a la herramienta que ejecuta comandos.

Escribe en una frase lo que esta situación establece, y en una frase lo que no establece.

Lo que hay que recordar
  • Una instrucción oculta en un contenido recuperado durante la conversación, página web, archivo adjunto, comentario de repositorio, actúa como una consigna que Claude no distingue automáticamente de una petición escrita directamente.
  • La documentación oficial anuncia ella misma que sus protecciones reducen el riesgo de inyección de prompt sin eliminarlo.
  • Una regla de configuración que apunta a una ruta de archivo se acepta sin error de sintaxis y sin embargo no bloquea nada para la herramienta que ejecuta comandos directos, solo una regla que apunta al nombre de esa herramienta bloquea de verdad.
  • Este fallo de la regla por ruta sigue clasificado como un límite de diseño conocido más que como una falla corregida, lo que lo vuelve válido para cualquier configuración actual y no solo para una versión antigua.
  • Un archivo ensamblado automáticamente por una herramienta no tiene un autor que se responsabilice de su contenido, lo que explica por qué nadie se siente responsable de verificar lo que republica antes de compartirlo más allá.
Hazlo ahora

Abre tu archivo de configuración personal, añade una ruta sensible a la lista de rutas denegadas, y luego pide a Claude que acceda a esa misma ruta mediante un comando directo en vez de mediante la herramienta de lectura. Anota si el comando pasa o si queda bloqueado: ese es el único testigo que cuenta, nunca la sola aceptación del archivo sin error.

Lo que queda por verificar

Estos puntos dependen de una interfaz o de una regla que puede haber cambiado desde la redacción. Verifícalos en tu propia pantalla antes de fiarte de ellos.

  • El estado cerrado y sin planificación del aviso de GitHub citado en esta lección puede evolucionar: verifica en la página de la issue si desde entonces se ha anunciado una corrección antes de confiar en una regla que apunte a una ruta en vez de a un nombre de herramienta.
Verificar en la fuente

Cada afirmación datable de esta lección remite aquí al texto público que la respalda. Una fuente que no se abre no prueba nada.