A principios de abril de 2026, Hackread resumió una revelación de LayerX con un titular que aterrizó con fuerza por una razón: Claude Code podría ser manipulado a través de CLAUDE.md para llevar a cabo un flujo de trabajo de inyección SQL en una configuración de laboratorio controlada. La noticia fue la demostración de SQLi. La historia más importante era el límite de confianza que había detrás. Claude Code no es un chatbot pasivo. Anthropic lo documenta como una herramienta de codificación ágil que puede leer tu código base, editar archivos, ejecutar comandos e integrarse con herramientas de desarrollo. Anthropic también documenta CLAUDE.md como un archivo de instrucciones persistente que se carga en contexto a través de las sesiones. Si unimos estos dos hechos, el repositorio deja de ser sólo código fuente. Se convierte en parte en instrucciones, parte en políticas, parte en superficie de control de herramientas. (hackread.com)
Ese cambio importa más que la frase "inyección SQL" en el titular. SQLi es familiar. Lo que es nuevo es el camino por el que un archivo de repositorio puede influir en un agente de codificación que utiliza herramientas y que tiene acceso a un shell, un directorio de trabajo, rutas de red opcionales y sistemas externos opcionales a través de MCP. La demostración de DVWA controlada de LayerX es un caso de estudio agudo porque muestra el modelo que trata el texto dentro de CLAUDE.md como contexto de autorización, para luego trasladar ese contexto a la selección de acciones prácticas. Los propios materiales de Anthropic dicen que la inyección puntual no es un problema resuelto, especialmente a medida que los modelos realizan más acciones en el mundo real. El informe de LayerX es el aspecto que tiene esa advertencia una vez que llega a la estación de trabajo de un desarrollador. (LayerX)
La cuestión no es que el Código Claude sea únicamente imprudente o que cada repositorio que lo utilice sea automáticamente peligroso. La documentación de Anthropic describe una arquitectura basada en permisos, valores predeterminados de sólo lectura, aprobaciones de comandos, sandboxing, verificación de confianza, ganchos y configuraciones gestionadas. La cuestión es que estos controles sólo tienen sentido si los equipos identifican correctamente cuál es realmente la superficie sensible. Muchos equipos ya revisan Dockerfile, paquete.jsony flujos de trabajo CI como infraestructura ejecutable. Menos equipos revisan CLAUDE.md, .claude/settings.json, .claude/rules/*.mdo .mcp.json con el mismo rigor. En un entorno de codificación agéntica, esa brecha ya no es académica. (Claude)
Claude Code no es sólo chatear con Shell Access

La descripción del producto de Anthropic es más precisa que la popular abreviatura de "asistente de codificación de IA". Claude Code es una herramienta de codificación agéntica. La documentación dice que lee tu código base, edita archivos, ejecuta comandos y se integra con herramientas de desarrollo. La documentación sobre "cómo funciona" va más allá y explica en detalle el contexto de trabajo: los archivos del proyecto, el terminal, el estado de git y la base de datos. CLAUDE.md. La documentación MCP amplía esto de nuevo permitiendo a Claude Code conectarse a herramientas, bases de datos y APIs a través de servidores de Protocolo de Contexto de Modelo. Esa es una superficie operativa más amplia que la de una pestaña de chat de un navegador, y es el punto de partida adecuado para entender por qué un archivo de instrucciones repo-local puede convertirse en un problema de seguridad. (Claude)
Un chatbot web normal puede dar malos consejos. Un agente de codificación puede hacer más que eso. Puede reunir el contexto de un repositorio, decidir sobre una próxima acción, invocar una herramienta de archivo, invocar un comando shell, y potencialmente tocar un servicio conectado. La documentación de seguridad de Anthropic refleja esa diferencia. Describe permisos estrictos de sólo lectura por defecto, aprobaciones explícitas para acciones adicionales, sandboxed bash con aislamiento del sistema de archivos y de la red, verificación de confianza para las primeras ejecuciones del código base y los nuevos servidores MCP, y listas de bloqueo de comandos para herramientas de obtención de red de riesgo como rizo y wget por defecto. Ninguno de esos controles existiría si Claude Code fuera sólo un generador de texto. Existen porque el producto es un sistema de acción. (Claude)
Esta distinción también explica por qué la "inofensiva ingeniería rápida" y el "estado de repositorio sensible a la seguridad" pueden colapsar en el mismo problema. La documentación de Anthropic anima a los desarrolladores a usar CLAUDE.md para instrucciones de proyecto persistentes. También admiten importaciones, carga de instrucciones anidadas, reglas, ganchos, ajustes y configuración MCP que conviven con el código. Cuando la memoria del modelo y las herramientas del modelo se encuentran dentro del mismo árbol de trabajo, el texto deja de ser sólo narrativo. El texto pasa a formar parte de la gobernanza de la ejecución. (Claude)
La siguiente tabla muestra la diferencia práctica entre una superficie de chat general y un tiempo de ejecución de codificación agéntica. No es una tabla comparativa de productos. Es una tabla de límites de confianza.
| Área de capacidad | Típico asistente de chat | Claude Código de tiempo de ejecución |
|---|---|---|
| Conocimiento del repositorio | Sólo lo que el usuario pega | Lectura directa del repositorio, conocimiento de git, contexto del directorio de trabajo |
| Instrucciones de proyecto persistentes | Contexto de conversación generalmente temporal | CLAUDE.mdreglas, memoria local, archivos importados |
| Modificación de archivos | Ninguno por defecto | Herramientas integradas de edición y escritura, además de subprocesos Bash |
| Ejecución de comandos | Ninguno | Herramienta Bash con aprobaciones, sandboxing opcional |
| Sistemas externos | Normalmente ninguno | Servidores MCP, herramientas CLI, WebFetch, flujos de trabajo conectados al navegador |
| Cuestión de confianza | ¿Es correcta la respuesta? | ¿Es fiable el repositorio, la configuración, la ruta de la herramienta y la política de ejecución? |
La propia documentación de Anthropic es lo que hace necesario este encuadre. Cuanto más se permite hacer a Claude Code, más se desplaza la cuestión de la seguridad de "¿Se puede engañar al modelo para que diga algo malo?" a "¿Qué trata el tiempo de ejecución como entrada de confianza cuando decide qué acciones tomar?". (Claude)
Cómo funciona CLAUDE.md
CLAUDE.md es fácil de malinterpretar porque parece markdown. La documentación de Anthropic lo describe más funcionalmente: un archivo de instrucciones persistente que lleva el contexto específico del proyecto a través de las sesiones de Claude Code. La documentación de la memoria dice que cada sesión comienza con una nueva ventana de contexto y que CLAUDE.md es uno de los mecanismos que transporta conocimientos entre sesiones. Los documentos también dejan claro que estos archivos se cargan en su totalidad, a pesar de que los archivos más cortos suelen producir una mejor adherencia. Eso es importante. Un archivo cargado en cada sesión no es una nota para futuros humanos. Es una entrada de instrucciones para el agente. (Claude)
El modelo de carga es más amplio de lo que muchos equipos esperan. Anthropic documenta que Claude Code recorre el árbol de directorios desde el directorio de trabajo actual y carga CLAUDE.md y CLAUDE.local.md que encuentra. Los archivos descubiertos se concatenan en contexto en lugar de anularse unos a otros. Dentro del mismo directorio, CLAUDE.local.md se añade después de CLAUDE.md. Los archivos en subdirectorios también pueden ser recogidos perezosamente cuando Claude lee archivos en esas ubicaciones. Para un gran mono-repo o un árbol de ingeniería compartido, eso significa que la superficie de instrucciones puede cambiar en función de dónde esté operando el agente. Eso es poderoso para flujos de trabajo legítimos y peligroso cuando nadie está rastreando lo que realmente se cargó. (Claude)
El modelo de importación vuelve a ampliar la superficie. Los documentos de memoria de Anthropic dicen CLAUDE.md puede importar archivos adicionales con @ruta/a/importar y los archivos importados se expanden y se cargan en contexto al iniciarse, con soporte para importaciones recursivas de hasta cinco saltos. Esta función es útil para los resúmenes de proyectos, las guías de flujos de trabajo o las normas compartidas por el equipo. También es un recordatorio de que el límite de seguridad no es el único archivo visible que un revisor hace clic en abrir. Un breve e inofensivo CLAUDE.md aún puede extraer más material de instrucción de otras partes del repositorio o incluso de rutas absolutas que el usuario apruebe. (Claude)
En .claude formaliza el resto de la superficie de comportamiento. La documentación del directorio de Anthropic dice que Claude Code lee instrucciones, configuraciones, habilidades, subagentes, reglas, hooks, MCP config, y memoria del directorio del proyecto y de ~/.claude. La tabla de referencia de archivos enumera explícitamente CLAUDE.mdreglas, settings.json, habilidades, comandos, estilos de salida, agentes, memoria persistente y servidores MCP compartidos por el proyecto. Esta es la lección arquitectónica más profunda de toda esta historia. En una herramienta moderna de codificación agéntica, el repositorio no es sólo código. Es código más configuración en tiempo de ejecución más memoria más política más integración de herramientas. (Claude)
La siguiente tabla es un modelo mental mejor para los defensores que "hay un archivo markdown raro al que quizá debería echar un vistazo".
| Archivo o directorio | Para qué sirve | Por qué es importante para la seguridad |
|---|---|---|
CLAUDE.md | Carga las instrucciones en cada sesión | Puede influir en el marco de la tarea, los supuestos de autorización y el comportamiento de las herramientas. |
CLAUDE.local.md | Anulaciones locales de proyectos personales | Puede cambiar silenciosamente el comportamiento de un operador o de un árbol de trabajo. |
.claude/rules/*.md | Instrucciones por temas o rutas | Puede inyectar contexto cuando se tocan archivos específicos |
.claude/settings.json | Permisos, ganchos, variables de entorno, valores por defecto del modelo | Puede alterar el comportamiento de aprobación y las restricciones de ejecución |
.mcp.json | Servidores MCP compartidos en equipo | Puede ampliar los sistemas a los que Claude puede acceder |
.claude/hooks/ | Automatización en tiempo de ejecución y lógica política | Puede permitir, denegar, aplazar o auditar el uso de herramientas |
~/.claude/projects/.../memory/ | Memoria automática para el proyecto | Puede mantener los supuestos operativos en todas las sesiones |
~/.claude/proyectos/.../*.jsonl | Transcripciones completas | Puede capturar el contenido de archivos confidenciales, la salida de comandos y secretos pegados. |
Esta última fila merece más atención de la que recibe. Anthropic documenta que las transcripciones y el historial son texto plano en disco y no están cifrados en reposo. Si una herramienta lee un archivo secreto o un comando imprime una credencial, ese valor puede aterrizar en las transcripciones de sesión. Esto no crea el bypass LayerX, pero aumenta el radio de explosión cuando una sesión ya está operando bajo un contexto contaminado. (Claude)
Lo que LayerX mostró y lo que no mostró
El informe público de LayerX es muy específico sobre el mecanismo central. El post dice que los avisos del sistema en Claude Code se manejan a través de CLAUDE.mdque el archivo se encuentra en el repositorio de código, y que cualquiera con permiso de escritura puede editarlo para todo un proyecto. En la demostración controlada, los investigadores utilizaron DVWA, colocaron tres líneas cortas del estilo de autorización en CLAUDE.mdy, a continuación, pidió a Claude Code que le ayudara a eludir un inicio de sesión y a volcar la base de datos de contraseñas. LayerX dice que Claude citó explícitamente CLAUDE.md como base de autorización para la tarea y procedió a través de una secuencia que incluía múltiples intentos de carga SQLi, peticiones cURL, configuración de la seguridad DVWA a baja, descubrimiento de la base de datos actual, listado de tablas y volcado de nombres de usuario y hashes de contraseñas. (LayerX)
El artículo de Hackread lo condensa en una narrativa mediática, pero el resumen es direccionalmente coherente con el post de LayerX. El artículo de Hackread dice que las normas de seguridad de Claude Code fueron eludidas a través de CLAUDE.md, que el ataque se demostró en un entorno controlado utilizando una aplicación vulnerable, y que el modelo trató el archivo de texto como base para proceder. Para los lectores técnicos, lo importante no es que un medio dijera "inyección SQL". Lo importante es que el resumen mediático identificó correctamente el mecanismo como un problema de confianza en torno a CLAUDE.mdno como una afirmación de que Anthropic incluyera un modo SQLi integrado. (hackread.com)
LayerX también enmarcó el riesgo más allá de una demostración de SQLi. El informe presenta tres vectores: prueba de penetración y exfiltración de datos, repositorio público malicioso y amenaza interna. Ese encuadre es más sólido que el titular porque deja claro que el objeto peligroso no es una cadena de carga útil específica. Es la combinación de un canal de instrucciones de confianza y un tiempo de ejecución con capacidad de acción. Un repositorio público malicioso es especialmente importante porque los desarrolladores clonan habitualmente código que no han escrito. En un modelo mental normal de desarrollador, eso es una preocupación de la cadena de suministro si el repositorio contiene scripts shell peligrosos, dependencias o configuraciones CI. El punto de LayerX es que la propia capa de instrucción puede ser parte de esa misma cadena de suministro. (LayerX)
Lo que la revelación no mostró es igualmente importante. No era una afirmación de que Claude Code siempre puede eludir todos los controles de seguridad. No era una afirmación de que cualquier objetivo arbitrario en la Internet pública puede ser comprometido sin la interacción del usuario. No era un exploit completo contra la infraestructura antrópica. Era una demostración controlada de que un archivo de instrucciones residente en un repositorio puede ser tratado como contexto de autorización de confianza con la suficiente fuerza como para empujar el modelo hacia un comportamiento dañino dentro de un entorno de uso de herramientas. Eso ya es grave. No hace falta exagerarlo. (LayerX)
También hay un matiz de divulgación del proveedor que merece la pena destacar. LayerX dice que presentó el problema a Anthropic a través de HackerOne y fue redirigido a otro canal de notificación de problemas de seguridad del modelo. Los materiales públicos de Anthropic muestran tanto un programa de recompensas por fallos de seguridad de modelos vinculado a HackerOne como otro programa de recompensas por fallos de seguridad de modelos vinculado a HackerOne. usersafety@anthropic.com para los problemas de seguridad del sistema actual y los problemas de tipo jailbreak. En otras palabras, la ruta de notificación de los hallazgos de "seguridad de modelos y jailbreak" no es idéntica a la ruta de las vulnerabilidades de software clásicas. Esta distinción tiene sentido desde el punto de vista operativo, pero también ilustra por qué este tipo de problemas se sitúa entre la seguridad de las aplicaciones, la seguridad de los productos y la seguridad de los modelos. (LayerX)

Por qué apareció la inyección SQL en la demostración
La inyección SQL no es la parte más profunda de la historia de LayerX, pero tampoco es accidental. SQLi es un vehículo de demostración limpio para el mal uso agencial porque es procedimental, comprobable y fácil de narrar. Proporciona al modelo una tarea ofensiva reconocible con hitos intermedios obvios: encontrar la superficie de inicio de sesión, intentar desvíos, inspeccionar el contexto de la base de datos, enumerar tablas y extraer credenciales. Un investigador puede mostrar cada etapa en capturas de pantalla sin tener que publicar el malware completo o una frágil cadena de exploits multi-host. Esto hace que la técnica sea buena para la divulgación y para los titulares. (LayerX)
Y lo que es más importante, SQLi destaca la distinción entre explicación y ejecución. Cualquier LLM capaz puede hablar de inyección SQL en abstracto. Claude Code es diferente porque el tiempo de ejecución puede pasar de la discusión a la acción asistida por shell. La propia documentación de Anthropic dice que la herramienta puede ejecutar comandos, y LayerX dice que la demo utilizó peticiones cURL que Claude generó e intentó ejecutar después de tratar CLAUDE.md como la autorización del proyecto. Ese es el paso que debe preocupar a los equipos de seguridad: cuando un archivo de instrucciones más un aviso más el acceso a una herramienta se convierten en un verdadero bucle de acción. (Claude)
No es necesario reproducir los comandos o cargas útiles de LayerX para comprender la implicación operativa. La lección es general. Cualquier flujo de trabajo ofensivo que pueda descomponerse en "declarar la autorización, generar el siguiente paso, ejecutar a través de herramientas permitidas, inspeccionar el resultado, continuar" se vuelve más plausible una vez que el modelo confía en el texto del repositorio como fuente legítima de permiso. SQLi resultó ser la vía de demostración. El problema de la arquitectura es mucho mayor. (LayerX)
La verdadera causa es una decisión de confianza, no un truco oportunista
La versión estrecha de esta historia es "inyección de prompt en un archivo markdown". La versión más precisa es "un sistema con capacidad de acción se basa en una entrada no fiable al tomar decisiones relevantes para la seguridad". Esa redacción importa porque se alinea tanto con la ingeniería de software como con la historia posterior de CVE en el propio Claude Code. Los documentos de Anthropic dicen CLAUDE.md proporciona instrucciones persistentes. LayerX demostró que el modelo podía tratar esas instrucciones como contexto de autorización. Una vez que un sistema utiliza el texto controlado por el repositorio para ayudar a decidir si las acciones perjudiciales son permisibles, el problema es mayor que la manipulación estilística de las instrucciones. Se convierte en un fallo del modelo de confianza. (Claude)
Los propios documentos de seguridad de Anthropic corroboran esta afirmación. Los documentos dicen que la inyección de comandos es un intento de anular o manipular las instrucciones de un asistente de inteligencia artificial mediante la inserción de texto malicioso, y que Claude Code incluye salvaguardias como la aprobación explícita de las operaciones sensibles, el análisis consciente del contexto, la desinfección de entrada, listas de bloqueo de comandos, ventanas de contexto separadas para WebFetch, y la verificación de confianza para las primeras ejecuciones de código base y los nuevos servidores MCP. No son características cosméticas. Son intentos de limitar lo que el tiempo de ejecución trata como digno de confianza cuando actúa sobre sistemas reales. El caso de LayerX muestra por qué estos límites son difíciles: el archivo de instrucciones no es obviamente un "contenido externo" como lo es una página web. Vive dentro del propio proyecto. (Claude)
Esta es también la razón por la que el repositorio tiene que ser reclasificado en el pensamiento de seguridad. Durante años, los equipos de ingeniería han sido entrenados para ver el repositorio como una mezcla de código, configuraciones, accesorios de prueba, documentos y lógica de construcción. Claude Code añade otra capa: la conformación del comportamiento nativo del repositorio. Anthropic .claude Los documentos de directorio muestran instrucciones, ganchos, habilidades, reglas, subagentes, memoria persistente, ajustes y configuración MCP, todo ello viviendo en o alrededor del proyecto. Una vez que el agente lee y obedece esa capa, el repo se convierte en una superficie de capacidades. Un compromiso de repo ya no es sólo sobre lo que se compila o despliega. También se trata de lo que el agente cree y de lo que se le permite hacer a continuación. (Claude)
Ese encuadre también explica por qué las respuestas estándar "el usuario aún tenía que aprobarlo" son incompletas. La aprobación es un control posterior. La decisión de confianza anterior es ascendente. Si el modelo ya ha interiorizado una afirmación falsa como "este es un pentest autorizado contra nuestro propio sitio" de un archivo de memoria de proyecto de confianza, entonces cada solicitud de herramienta posterior se propone dentro de una interpretación envenenada de alcance y legitimidad. Un humano todavía puede atraparlo. Un humano cansado puede que no. Los documentos de Anthropic reconocen explícitamente que la fatiga del usuario es un problema de diseño y apoyan las listas de permisos y el modo automático en parte para reducir las aprobaciones repetitivas. Es un buen diseño de producto, pero significa que la integridad del contexto anterior es aún más importante. (Claude)
Por qué las indicaciones de permiso no son lo mismo que los límites
Anthropic merece crédito por documentar claramente la distinción entre permisos y sandboxing. La documentación de los permisos dice que los permisos controlan qué herramientas puede usar Claude y a qué archivos o dominios puede acceder, mientras que el sandboxing proporciona una aplicación a nivel de sistema operativo para el sistema de archivos de la herramienta Bash y los límites de la red. Los documentos recomiendan explícitamente el uso de ambos para la defensa en profundidad, porque las restricciones del sandbox pueden bloquear el acceso fuera de los límites definidos, incluso si la inyección puntual compromete la toma de decisiones de Claude. Este es el modelo correcto. Un aviso de permiso es un punto de decisión del usuario. Una caja de arena es una barrera impuesta. No son la misma capa. (Claude)
Los documentos de Anthropic también contienen una sutil pero importante advertencia sobre los controles de red. Dicen que las listas de bloqueo de comandos detienen herramientas de riesgo como rizo y wget por defecto, pero también señalan que los patrones de permisos de Bash que intentan restringir los argumentos de los comandos son frágiles. La documentación sobre permisos ofrece ejemplos concretos que muestran cómo el filtrado de URL basado en la coincidencia de patrones del shell puede fallar debido a la reordenación de argumentos, redireccionamientos, uso de variables o cambios de protocolo. La misma página recomienda denegar herramientas de red genéricas y en su lugar permitir WebFetch para dominios aprobados. También advierte de que el uso de WebFetch por sí solo no impide el acceso a la red si Bash sigue estando permitido. Es una de las notas de seguridad más útiles de todo el conjunto de documentación de Claude Code. (Claude)
Otro malentendido común es el bloqueo de lectura de archivos. La documentación de Anthropic dice Leer Las reglas de denegación se aplican a las herramientas de archivos integradas, pero no a los subprocesos de Bash. Una regla de denegación que bloquea Leer(.env) no se detiene cat .env si se permite el acceso a Bash. Anthropic recomienda el sandboxing para la aplicación a nivel de sistema operativo en ese caso. Esto es importante porque muchos de los escenarios de pesadilla que la gente imagina en torno a la codificación agéntica implican exactamente ese patrón: el modelo decide leer secretos o archivos de configuración a través de comandos de shell en lugar de a través de la herramienta de lectura incorporada. Si un equipo asume que las reglas de negación por sí mismas son una barrera dura, están malinterpretando la arquitectura. (Claude)
El modo automático añade otra capa de matices. Los documentos del modo automático de Anthropic dicen que un clasificador separado puede revisar las acciones, mantener una lista fija de herramientas seguras y bloquear sólo lo que parece arriesgado. Los documentos de los modos de permiso dicen que el modo automático sigue un orden de decisión fijo y retrocede cuando el clasificador bloquea repetidamente. Esto es útil para la productividad y puede reducir los clics sin sentido. No es un reemplazo para la higiene del repositorio, la revisión del archivo de instrucciones o la configuración del sandbox. Un clasificador puede juzgar una acción sólo después de que el sistema ya haya enmarcado la tarea que cree que está haciendo. Si la capa de instrucciones repo-local es engañosa, el clasificador está operando aguas abajo de ese encuadre. (antropic.com)
Lo mismo ocurre con los modos "bypass permissions". La documentación de Anthropic dice que el modo "bypass-permissions" es equivalente a --skip-permissions y sólo debe utilizarse en contenedores o máquinas virtuales aislados. Los administradores de empresa pueden desactivarlo. Esta advertencia debe leerse literalmente. Si un repo, un helper, o un mal hábito operacional deja al agente en un modo de ejecución permisivo sin un fuerte aislamiento externo, las salvaguardas restantes son más delgadas de lo que muchos usuarios asumen. (Claude)
La superficie de ataque de Repo es mayor que un archivo Markdown

Una vez que deje de tratar CLAUDE.md como la historia completa, la superficie de ataque más amplia se hace más fácil de razonar. Antrópico .claude Los documentos de directorio no sólo incluyen instrucciones, sino también configuraciones, ganchos, habilidades, reglas, subagentes, servidores MCP, memoria persistente y transcripciones locales. Cada uno de ellos amplía lo que puede influir un repositorio controlado por un atacante o una cuenta comprometida de un compañero de equipo. CLAUDE.md importa porque es el más visible. .claude/settings.json importa porque puede moldear el comportamiento de los permisos y los ganchos. .mcp.json importa porque puede ampliar con qué sistemas externos puede hablar Claude. Las reglas importan porque pueden cargarse condicionalmente cuando el modelo lee ciertas rutas. Los ganchos importan porque pueden permitir, denegar, modificar o aplazar directamente la ejecución de herramientas. (Claude)
Los ganchos son especialmente importantes porque Anthropic los documenta como comandos shell, puntos finales HTTP o solicitudes LLM que se ejecutan automáticamente en puntos específicos del ciclo de vida. El sitio PreToolUse hook puede permitir, denegar, solicitar o aplazar llamadas a herramientas e incluso puede modificar la entrada de la herramienta antes de su ejecución. El sitio ConfigChange puede bloquear los cambios de configuración para que no surtan efecto durante una sesión en ejecución. La dirección InstruccionesCargado se activa cuando CLAUDE.md o se cargan las reglas, aunque Anthropic señala que ésta es asíncrona y no admite bloqueos. En términos prácticos, eso significa que los defensores pueden construir observabilidad y aplicación de políticas en Claude Code, pero tienen que entender qué etapa del ciclo de vida realmente tiene dientes. InstruccionesCargado es excelente para la tala de árboles. PreToolUse y ConfigChange es donde comienza la aplicación. (Claude)
MCP vuelve a ampliar el radio de explosión. La documentación sobre MCP de Anthropic dice que Claude Code puede conectarse a cientos de herramientas y fuentes de datos externas, y la documentación sobre seguridad dice que Anthropic no gestiona ni audita ningún servidor MCP. Los documentos recomiendan escribir tus propios servidores o utilizar servidores de proveedores en los que confíes. Es una advertencia sensata. También es una clara señal de que las fuentes de datos conectadas son ahora parte de la superficie de ataque. Un contexto de instrucciones contaminado más un servidor MCP con privilegios excesivos es una combinación mucho más peligrosa que un contexto de instrucciones contaminado por sí solo. (Claude API Docs)
Y luego está el residuo de datos. La documentación de Anthropic dice que todo lo que pasa a través de una herramienta puede aterrizar en transcripciones de texto plano en el disco, incluyendo el contenido de los archivos, la salida de comandos y el texto pegado. Incluso en modo no interactivo, --no-session-persistence puede utilizarse con -p evitar por completo la redacción de transcripciones. Este es el tipo de detalle operativo que importa en entornos reales. Una sesión comprometida o manipulada no termina cuando el agente deja de ejecutarse. Puede dejar tras de sí artefactos duraderos que contengan exactamente los secretos que el atacante quería que el agente tocara. (Claude)
Cadena de suministro, amenazas internas y riesgo no interactivo
Los tres escenarios de LayerX merecen ser tratados como una taxonomía de la cadena de suministro más que como una revelación puntual. El primer caso es el repositorio público malicioso. Un desarrollador clona código, inicia Claude Code y hereda instrucciones de las que no es autor y que puede que nunca revise. Los documentos de Anthropic tienen una verificación de confianza para las bases de código de primera vez, pero la pregunta de confianza sólo funciona si el usuario entiende en qué se le está pidiendo que confíe. Muchos desarrolladores leen ese diálogo como "¿confío en que vale la pena trabajar en el código de este repositorio?", no como "¿confío en las instrucciones, políticas y superficies de integración externa que darán forma al comportamiento de mi agente?". El escrito de LayerX expone exactamente ese desajuste. (LayerX)
El segundo caso es la vía de la información privilegiada o la identidad comprometida. LayerX señala explícitamente a los empleados descontentos, las cuentas comprometidas o los contratistas malintencionados que modifican una identidad existente. CLAUDE.md. En muchos equipos de ingeniería, ese cambio no provocaría la misma urgencia de revisión que un cambio en los scripts de construcción, las herramientas de secretos o los flujos de trabajo de despliegue. Los documentos de Anthropic dejan claro que debería. CLAUDE.md se carga en cada sesión, y las configuraciones o ganchos pueden cambiar lo que el agente está autorizado a hacer. Un atacante no necesita ocultar un script de shell si puede ocultar un canal de instrucciones de confianza. (LayerX)
El tercer caso es el uso no interactivo. Los documentos de seguridad de Anthropic indican que la verificación de confianza se desactiva en modo no interactivo con la opción -p bandera. Esto es comprensible desde la perspectiva del flujo de trabajo, pero cambia la postura de seguridad. El humano que podría haber notado un archivo de instrucciones extraño o un repositorio sospechoso ya no está en el bucle al inicio de la sesión. Si ese flujo no interactivo se combina con configuraciones permisivas, reglas de permisos amplias o credenciales de alto valor en el entorno, el margen de error se reduce rápidamente. Los documentos de Anthropic proporcionan mitigaciones defensivas aquí, incluyendo dontAskconfiguración gestionada, sandboxing y --no-session-persistencepero los equipos tienen que convertirlos en política en lugar de dejarlos como notas opcionales a pie de página. (Claude)
El rastro del CVE muestra que se trata de un problema de clase de producto
El LayerX CLAUDE.md La historia se vuelve mucho más fácil de ubicar una vez que se mira el rastro público de Claude Code CVE desde finales de 2025 hasta 2026. No son todos el mismo fallo. Son un mapa de dónde se rompe la confianza en un tiempo de ejecución de codificación agéntica: antes de los diálogos de confianza, dentro de la resolución de permisos, en el análisis sintáctico de comandos, en el comportamiento de carga de proyectos y en la ejecución de ayudantes. Leídos en conjunto, muestran un patrón coherente. El reto no es sólo "prevenir el malware" o "bloquear un exploit". El reto es diseñar un tiempo de ejecución que pueda actuar de forma útil mientras toma decisiones de confianza correctas sobre repositorios, configuraciones, avisos y límites de comandos. (nvd.nist.gov)
Un punto de partida útil es CVE-2025-59536. NVD dice que las versiones anteriores a la 1.0.111 eran vulnerables a la inyección de código debido a un fallo en la implementación del diálogo de confianza de inicio, permitiendo a Claude Code ejecutar código contenido en un proyecto antes de que el usuario aceptara el diálogo de confianza. El significado es sencillo: el momento de la "primera apertura" es crítico para la seguridad. Si el contenido del proyecto puede influir en la ejecución antes de que se establezca la confianza, el diálogo de confianza ya ha perdido parte de su significado. Esa CVE es directamente relevante para la CLAUDE.md discusión porque la revelación de LayerX también trata de lo que ocurre cuando el material repo-controlado se trata como digno de confianza antes de lo que debería. (nvd.nist.gov)
Luego está CVE-2026-21852uno de los casos más claros de repositorios maliciosos en el registro público de Claude Code. NVD dice que las versiones anteriores a la 2.0.65 permitían a los repositorios maliciosos exfiltrar datos, incluyendo las claves de la API de Anthropic, antes de que los usuarios confirmaran su confianza. El mecanismo reportado era un repositorio controlado por el atacante que establecía ANTHROPIC_BASE_URL a un endpoint atacante para que Claude Code emita peticiones antes de mostrar el prompt de confianza. Esto no es lo mismo que CLAUDE.mdpero se trata de la misma lección de seguridad: el estado controlado por el repositorio influye en el comportamiento sensible antes de que se establezca la confianza de forma significativa. (nvd.nist.gov)
CVE-2026-33068 se acerca aún más al tema de los límites de confianza. NVD dice que las versiones anteriores a la 2.1.53 resolvieron el modo de permiso de los archivos de configuración, incluyendo el repo-controlado .claude/settings.jsonantes de determinar si se muestra el diálogo de confirmación de confianza del espacio de trabajo. Un repositorio malicioso podría establecer permissions.defaultMode a bypassPermissionslo que provoca que el diálogo de confianza se salte en la primera apertura y coloca al usuario en un modo permisivo sin consentimiento explícito. Si quisieras un ejemplo de libro de texto de "confianza en una entrada no fiable en una decisión de seguridad", no necesitas inventar uno. NVD ya clasifica la debilidad de esa manera. (nvd.nist.gov)
CVE-2025-54795 muestra por qué "todavía había un prompt de confirmación" no puede ser tratado como una respuesta final. NVD dice que en versiones inferiores a la 1.0.20, un error en el análisis sintáctico de comandos hizo posible eludir el mensaje de confirmación de Claude Code y desencadenar la ejecución de un comando no fiable, dada la posibilidad de añadir contenido no fiable en una ventana contextual de Claude Code. La versión corregida es importante, pero la lección arquitectónica lo es más. Los avisos, los diálogos y las aprobaciones humanas no son garantías estables si el análisis sintáctico y el modelo de confianza del sistema son erróneos. (nvd.nist.gov)
CVE-2026-25723 añade otra pieza importante. NVD dice que las versiones anteriores a la 2.0.55 podían saltarse las restricciones de escritura de archivos a través de canalizaciones sed operaciones con echopermitiendo la escritura en directorios sensibles como .claude y rutas fuera del ámbito del proyecto cuando se activó "aceptar ediciones". Esto es muy relevante para CLAUDE.md y .claude seguridad porque significa que una ruta de contexto o herramienta hostil exitosa no se limita a la lectura de archivos sensibles o a la generación de comandos arriesgados. Bajo algunas condiciones, también puede llegar a ser auto-reforzante al escribirse de nuevo en la superficie de la política que da forma al comportamiento futuro del agente. (nvd.nist.gov)
Dos revelaciones de abril de 2026 sobre la inyección de comandos amplían el panorama más allá de la confianza en los repos y se adentran en las vías de ayuda. CVE-2026-35021 describe la inyección de comandos del sistema operativo en la utilidad de invocación del editor de avisos a través de rutas de archivos manipuladas, y CVE-2026-35022 describe la inyección de comandos en la ejecución de helper de autenticación donde los valores de configuración del helper se ejecutaron con shell=trueque permite el robo de credenciales y la exfiltración de variables de entorno. Se trata de errores diferentes, pero apuntan a la misma verdad operativa: una vez que un agente de codificación acumula editores, binarios de ayuda, envoltorios de shell, configuraciones e integraciones de proveedores, la revisión de seguridad tiene que cubrir todo el tejido de ejecución, no sólo el modelo y no sólo el repositorio. (nvd.nist.gov)
La tabla siguiente es la forma más breve de ver el patrón.
| CVE | ¿Qué falló? | Por qué es importante | Versión fija o estado |
|---|---|---|---|
| CVE-2025-59536 | Un error en el diálogo de confianza de inicio permitía la ejecución de código antes de la aceptación de la confianza | "Untrusted repo" es un límite de ejecución en vivo, no una formalidad | Corregido en 1.0.111 (nvd.nist.gov) |
| CVE-2026-21852 | Las configuraciones controladas por Repo podrían exfiltrar claves API antes de la solicitud de confianza | Los repositorios maliciosos pueden abusar de la configuración antes de que el consentimiento del usuario tenga sentido | Corregido en 2.0.65 (nvd.nist.gov) |
| CVE-2026-33068 | Repo-controlado .claude/settings.json podría establecer bypassPermissions antes del diálogo de confianza | Las decisiones en materia de seguridad no deben basarse en datos controlados antes de que se establezca la confianza. | Corregido en 2.1.53 (nvd.nist.gov) |
| CVE-2025-54795 | Fallo en el análisis de comandos para eludir el aviso de confirmación | Las indicaciones de aprobación no son límites estrictos | Corregido en 1.0.20 (nvd.nist.gov) |
| CVE-2026-25723 | Evasión de la restricción de escritura de archivos en .claude y fuera del ámbito del proyecto | La propia superficie de control del agente puede llegar a ser escribible bajo las condiciones equivocadas | Corregido en 2.0.55 (nvd.nist.gov) |
| CVE-2026-35021 | Inyección de comandos del sistema operativo en la invocación del editor | Las rutas de ejecución de los ayudantes forman parte de la superficie de ataque | Entrada pública NVD publicada el 6 de abril de 2026 (nvd.nist.gov) |
| CVE-2026-35022 | Inyección de comandos OS en la ejecución de auth helper | Los ayudantes de credenciales pueden convertirse en vías de filtración | Entrada pública NVD publicada el 6 de abril de 2026 (nvd.nist.gov) |
La conclusión más general no es que "Claude Code está roto por diseño". Es que esta clase de producto es difícil por diseño. Tiene que decidir en qué confiar mientras actúa dentro de entornos parcialmente fiables. Esa es exactamente la clase de sistema en la que los sutiles errores de secuenciación, la configuración controlada por repositorios y las sorpresas en el modelo de permisos siguen convirtiéndose en verdaderos registros de vulnerabilidades. (nvd.nist.gov)
Un libro de jugadas de triaje defensivo para equipos reales
La forma más rápida de mejorar la seguridad es dejar de preguntarse "¿Usamos Claude Code?" y empezar a preguntarse "¿Qué entradas moldean realmente el comportamiento de Claude Code en este repositorio?". El primer paso del triaje es el inventario. Encuentre cada CLAUDE.md, CLAUDE.local.md, .claude/rules/*.md, .claude/settings*.json, .mcp.jsony el script hook en el proyecto. La documentación de Anthropic también sugiere utilizar /memoria, /contexto, /permisos, /ganchosy /mcp para inspeccionar lo que se ha cargado en la sesión actual. Eso te da tanto una vista estática de lo que existe en disco como una vista en tiempo de ejecución de lo que el agente realmente consumió. (Claude)
Un punto de partida defensivo práctico es una auditoría de repositorio local que trate los archivos de control de agentes como artefactos sensibles:
encontrar . \
\( -name 'CLAUDE.md' -o -name 'CLAUDE.local.md' -o -name '.mcp.json' \) \
-print
find ./.claude -type f \
\( -name 'settings*.json' -o -path './.claude/rules/*.md' -o -path './.claude/hooks/*' \) \
-print 2>/dev/null
rg -n \
'bypassPermissions|ANTHROPIC_BASE_URL|apiKeyHelper|awsAuthRefresh|gcpAuthRefresh|curl|wget|@[^ ]+' \ .
. .
Este tipo de análisis no demostrará intenciones maliciosas, pero sacará a la luz rápidamente los lugares en los que el texto controlado por el repositorio puede influir en los permisos, el enrutamiento de red, la ejecución de ayudantes, las importaciones o el uso de herramientas. Esto es suficiente para pasar de una preocupación vaga a una revisión concreta. La necesidad de este tipo de análisis se desprende directamente de la disposición documentada de los archivos de Anthropic, el modelo de importación, la superficie de configuración y las CVE relacionadas con los ayudantes. (Claude)
El segundo paso es el control de cambios. Ponga estos archivos bajo CODEOWNERS o reglas de aprobación equivalentes. Los documentos de Anthropic dicen explícitamente que los archivos del proyecto en .claude pueden ser enviados a git y compartidos por todo el equipo. Esto convierte el control de versiones en un límite de seguridad, no sólo en una herramienta de colaboración. Si un repositorio ya requiere revisión para los flujos de trabajo de CI, definiciones de contenedores, o configuraciones de despliegue, la misma regla debe aplicarse a CLAUDE.mdreglas, ajustes y .mcp.json. (Claude)
El tercer paso es la instrumentación en tiempo de ejecución. El sistema de ganchos de Anthropic es lo suficientemente fuerte como para imponer una política local significativa. ConfigChange pueden bloquear los cambios de configuración para que no surtan efecto en una sesión en ejecución. PreToolUse Los ganchos pueden denegar o aplazar las llamadas a las herramientas Bash, WebFetch, Lectura, Edición, Escritura, Agente y MCP. InstruccionesCargado Los hooks no pueden bloquear, pero sí pueden registrar y alertar cada vez que un nuevo archivo de instrucciones entra en contexto. Eso significa que un equipo maduro puede detectar "un anidado CLAUDE.md acaba de cargarse porque Claude entró en un subdirectorio" o "una sesión acaba de intentar usar Bash contra un patrón sospechoso". (Claude)
Un hook Bash-deny mínimo para bloquear utilidades de red obvias y escribe en el propio directorio de políticas del agente podría tener este aspecto:
#!/usr/bin/env bash
# .claude/hooks/pretool-guard.sh
INPUT="$(cat)"
TOOL_NAME="$(jq -r '.nombre_herramienta' <<<"$INPUT")"
if [ "$TOOL_NAME" = "Bash" ]; then
CMD="$(jq -r '.tool_input.command // ""' <<<"$INPUT")"
if echo "$CMD" | grep -Eq '(^|[:espacio:]])(curl|wget)([[:espacio:]]|$)'; then
jq -n '{
hookSpecificOutput: {
hookEventName: "PreToolUse",
permissionDecision: "deny",
permissionDecisionReason: "Las utilidades de red directas están bloqueadas. Utiliza dominios WebFetch aprobados o una envoltura revisada".
}
}'
exit 0
fi
if echo "$CMD" | grep -Eq '(^|[[:espacio:]])(cat|cp|mv|sed|tee).*(\.claude/|CLAUDE\.md|\.env)'; then
jq -n '{
hookSpecificOutput: {
hookEventName: "PreToolUse",
permissionDecision: "ask",
permissionDecisionReason: "Política sensible o ruta de credenciales. Se requiere revisión manual".
}
}'
exit 0
fi
fi
exit 0
Esto no es un motor de política universal. Es un recordatorio de que la superficie de gancho documentada de Anthropic es lo suficientemente fuerte como para implementar controles locales, y que esos controles deben centrarse en los archivos y acciones que realmente dan forma al comportamiento del agente. (Claude)
Endurecer el código de Claude sin pretender que el riesgo es nulo
El error más difícil de corregir es organizativo, no técnico. Los equipos deben empezar a tratar las instrucciones de los agentes residentes en repositorios como gobernanza ejecutable. Una vez que se produzca ese cambio, el resto de la ruta de endurecimiento será más clara.
En primer lugar, reforzar la higiene de la confianza en los repositorios. Anthropic ya ha documentado que la verificación de confianza existe para las bases de código de primera vez y los nuevos servidores MCP, pero también documenta que la verificación de confianza está desactivada en los repositorios no interactivos. -p modo. Esto significa que una política debe ser simple: no ejecute Claude Code de forma no interactiva contra repositorios no revisados, y no asuma que en la automatización existe el mismo punto de control humano que en el uso interactivo local. Para CI u otros flujos desatendidos, empareje -p con permisos bloqueados, sandboxing estricto y --no-session-persistence siempre que sea posible. (Claude)
Segundo, imponer el sandboxing como un requisito, no como una conveniencia. La documentación sobre el sandboxing de Anthropic dice que un sandboxing efectivo requiere un aislamiento tanto del sistema de archivos como de la red, y que sin aislamiento de la red un agente comprometido podría filtrar archivos sensibles, mientras que sin aislamiento del sistema de archivos podría acceder a recursos locales para obtener acceso a la red. Los documentos también dicen que la caja de arena puede fallar por defecto si las dependencias faltan, no son compatibles o están restringidas, a menos que sandbox.failIfUnavailable se establece en verdadero. En entornos sensibles a la seguridad, esa configuración no debería dejarse implícita. Si el sandbox es parte del diseño de seguridad, el fallo al iniciarlo debería detener el trabajo, no producir un banner de advertencia que se ignora. (Claude)
Tercero, niega por defecto las herramientas de red directas en Bash. Los propios documentos de permisos de Anthropic son inusualmente explícitos aquí: las reglas URL de Bash basadas en argumentos son frágiles, y los equipos deben bloquear rizo, wgety otras herramientas similares, permita WebFetch(dominio:...) para dominios específicos. Los mismos documentos también advierten que si Bash está permitido, Claude puede seguir utilizando esas utilidades para llegar a URLs arbitrarias a menos que las deniegue o las restrinja a través de sandboxing y hooks. Esto no es un caso aislado. Es una regla básica de diseño para cualquier entorno en el que el agente pueda encontrar contenido no fiable. (Claude)
Un ejemplo de configuración endurecida puede encarnar esa regla:
{
"permisos": {
"deny": [
"Bash(curl*)",
"Bash(wget*)",
"Leer(./.env)",
"Editar(.claude/**)",
"Escribir(.claude/**)"
],
"allow": [
"WebFetch(dominio:docs.antropic.com)",
"WebFetch(domain:code.claude.com)"
]
},
"sandbox": {
"failIfUnavailable": true,
"allowedDomains": [
"docs.anthropic.com",
"code.claude.com"
]
},
"defaultMode": "default"
}
Ningún fragmento estático está completo, y las rutas precisas deben ajustarse a su entorno. Lo importante es la forma de la política: estrechar la capa de red, proteger la superficie de control del agente y cerrar cuando el aislamiento no esté disponible. Los documentos de Anthropic apoyan directamente los tres movimientos. (Claude)
Cuarto, controlar la deriva de la configuración durante las sesiones. Antrópico ConfigChange hook puede bloquear los cambios de configuración para que no surtan efecto. No se trata sólo de una función de auditoría. Puede ser un freno de políticas en vivo. En términos prácticos, un equipo puede rechazar los intentos de cambiar los modos de permiso, añadir hooks arriesgados o reconfigurar la configuración una vez iniciada la sesión. Esto es especialmente útil porque algunos de los CVEs históricos más arriesgados de Claude Code implicaban configuraciones controladas por el repositorio que influían en las decisiones de seguridad demasiado pronto o demasiado ampliamente. (Claude)
Quinto, restringir agresivamente los MCP. La documentación de Anthropic dice que Claude Code puede conectarse a cientos de herramientas externas y que Anthropic no gestiona ni audita los servidores MCP. Esta es una razón de peso para clasificar los puntos finales MCP por sensibilidad. La documentación y los gestores de incidencias son una cosa. Las bases de datos, las superficies de administración de producción, los intermediarios de credenciales en la nube o los sistemas de secretos internos son otra. Si Claude Code no necesita acceso directo al lado del objetivo para un caso de uso determinado, no le dé ese acceso. El mínimo privilegio es tan importante para las herramientas de agente como para las cuentas de servicio. (Claude API Docs)
Sexto, gestionar la exposición de datos locales. La documentación de Anthropic indica que las transcripciones y el historial están en texto plano en el disco y protegidos sólo por los permisos del sistema operativo. También documentan que cualquier cosa que pase por una herramienta puede aterrizar en un archivo de transcripción. El resultado es simple: si su uso de Claude Code afecta a secretos, datos regulados o contexto interno sensible, la política de almacenamiento local es importante. Reduzca las ventanas de retención. Considere estaciones de trabajo o contenedores dedicados. Utilice --no-session-persistence en ejecuciones desatendidas. Y no asuma que una sesión segura permanece segura después de salir si el disco retiene todo lo que el agente vio. (Claude)
Un límite práctico, razonar no es probar

Hay un segundo error que cometen los equipos después de subestimar el riesgo del lado del repositorio: sobrestiman lo que demuestra un agente de codificación. Claude Code puede ser muy eficaz en la lectura de código, el rastreo de la lógica de autenticación, el trazado de límites de confianza, la revisión de parches, la redacción de comprobaciones de regresión y la creación de bucles de validación locales. Los documentos públicos de Anthropic apoyan ese posicionamiento, y el producto está claramente diseñado para el uso de herramientas, el trabajo técnico iterativo. Pero una explicación pulida de un agente de codificación no es lo mismo que un impacto demostrado contra un objetivo real. (Claude)
Esa distinción también importa en esta historia. La demostración de LayerX es convincente porque pasó del razonamiento a la acción dentro de un entorno controlado. La respuesta defensiva correcta no es "no utilizar nunca agentes de codificación para trabajos de seguridad". Es separar el razonamiento de caja blanca de la prueba del lado del objetivo. Claude Code es muy útil en el lado del razonamiento: acotando hipótesis, formalizando comprobaciones, revisando cambios y comprendiendo el sistema local en torno al código. Es más débil como motor de pruebas finales de exposición real, explotabilidad real o radio de explosión real, a menos que un verificador independiente compruebe las afirmaciones. Los propios materiales de seguridad e inyección inmediata de Anthropic apuntan exactamente en esa dirección, haciendo hincapié en los verificadores, las aprobaciones y la acción limitada en el mundo real. (antropic.com)
Ahí es también donde una plataforma de pentest nativa del flujo de trabajo entra de forma natural, sin convertir el debate en una página de ventas. Los materiales públicos de Penligent posicionan la plataforma en torno a la ejecución de tareas, la verificación de resultados y la elaboración de informes contra objetivos reales, y una de sus propias piezas de comparación de Claude Code enmarca la división como auditoría de caja blanca y dirección de parches por un lado frente a prueba de caja negra y re-verificación por el otro. Se trata de una división operativa sensata. Utilice un agente de codificación cuando el acceso al código, las herramientas locales y el razonamiento sobre parches creen ventajas. Utilice un flujo de trabajo orientado al objetivo cuando la pregunta sea "¿Puedo demostrar que esto es real en las condiciones actuales de despliegue y preservar las pruebas?". (penligent.ai)
Lo que los equipos maduros deben cambiar este trimestre
La versión más sencilla de la respuesta es política, revisión y aislamiento.
Comience por clasificar los siguientes como archivos sensibles: CLAUDE.md, CLAUDE.local.md, .claude/settings*.json, .claude/rules/*.md, .mcp.jsony cualquier gancho o script de ayuda que Claude Code pueda invocar. Póngalos detrás de la propiedad del código y la revisión de cambios. Revise las importaciones. Revise las rutas de instrucciones anidadas. Revise las adiciones de MCP. Revise los cambios en los modos de permiso. Revisar cualquier configuración que afecte a la ejecución de helper o al enrutamiento de red. El historial público de CVE ya muestra que no se trata de archivos decorativos. Son entradas relevantes para la seguridad. (Claude)
A continuación, bloquee los valores predeterminados de tiempo de ejecución. Deniegue las herramientas de red genéricas en Bash. Prefiera WebFetch en dominios aprobados. Activa el sandboxing y configúralo como fail closed. Utilice PreToolUse para aplicar políticas adicionales. Utilice ConfigChange para detener la deriva en tiempo de ejecución. Deshabilite o restrinja estrictamente los modos de derivación de permisos. Y tratar el uso no interactivo como un nivel de confianza separado con controles más fuertes, no como "lo mismo pero automatizado". La documentación de Anthropic ya proporciona los elementos básicos. El verdadero trabajo es convertirlos en predeterminados. (Claude)
Por último, reeducar el modelo mental. El repositorio ya no es pasivo. En un entorno de codificación agencial, puede contener instrucciones, reglas, permisos, memoria, integraciones de herramientas y lógica de ayuda que afectan materialmente a lo que el agente ve y a lo que intenta hacer. Esto significa que la confianza en el repositorio es ahora en parte confianza en la ejecución, en parte confianza en las políticas y en parte confianza en los datos. Si los equipos siguen revisando sólo el código que se envía a producción e ignoran los archivos de gobierno del agente que dan forma a la acción local y automatizada, están defendiendo el límite equivocado. (Claude)
La lección principal
La revelación de LayerX es memorable porque utilizó la inyección SQL como vía de demostración. La lección duradera es más amplia. CLAUDE.md es un ejemplo visible de algo más grande: la política repo-nativa se ha convertido en el contexto ejecutable para las herramientas de desarrollo agentic. Los propios documentos de Anthropic muestran cuánto poder vive dentro de ese contexto, desde instrucciones persistentes e importaciones hasta configuraciones, ganchos, servidores MCP y transcripciones locales. El rastro público de CVE muestra con qué frecuencia aparecen problemas de seguridad en esta clase de productos exactamente donde se establece, se omite o se aplica mal la confianza. La respuesta correcta no es el pánico ni la negación. Es tratar el repositorio como parte del tiempo de ejecución, y endurecerlo en consecuencia. (Claude)
Otras lecturas y referencias
Los materiales oficiales de Anthropic sobre Claude Code, memoria, seguridad, permisos, hooks, sandboxing, MCP y modo automático son las mejores fuentes primarias para saber cómo se supone que se comporta el producto, qué archivos moldean el comportamiento y qué guardarraíles existen en el modelo documentado. (Claude)
La revelación original de "Vibe Hacking" de LayerX es la principal fuente pública de la CLAUDE.md de seguridad, la demostración de la DVWA, los tres escenarios de amenaza y la recomendación de tratar CLAUDE.md como código ejecutable. El informe de Hackread es útil como resumen conciso para los medios de comunicación de la misma investigación. (LayerX)
Las entradas NVD para CVE-2025-59536, CVE-2026-21852, CVE-2026-33068, CVE-2025-54795, CVE-2026-25723, CVE-2026-35021 y CVE-2026-35022 son los registros públicos más relevantes para comprender cómo la confianza, los permisos, el comportamiento de inicio, los límites de archivos y la ejecución de ayudantes de Claude Code ya han producido revelaciones de vulnerabilidades reales. (nvd.nist.gov)
Para lecturas relacionadas con Penligent que se acerquen a este tema, las páginas en inglés más relevantes son Investigación sobre la elusión de la seguridad del código Claude, Claude AI para Pentest Copilot, Construyendo un flujo de trabajo basado en la evidencia con Claude Codey Claude Code Security y Penligent, de los hallazgos de caja blanca a las pruebas de caja negra. La página de inicio de Penligent es la referencia más amplia del producto si necesita el contexto general del flujo de trabajo después de leer esas piezas. (penligent.ai)

