EDR para agentes de código ya no es un tema futuro. Claude Code, Cursor, Codex y skill packs pueden instalar dependencias, abrir navegadores, descargar herramientas y probar caminos alternativos. Para un motor comportamental de endpoint, parte de eso parece actividad de intruso.

En julio de 2026, Sophos X-Ops analizó siete días de telemetría Windows y mostró que el acceso a credenciales representó 56,2% de los bloqueos ligados a agentes, mientras ejecución representó 28,8% (Sophos X-Ops, "When AI agents look like attackers", 2026). La lección no es "deja de usar agentes". Es "no llames falso positivo a todo".

Resumen práctico

  • EDR debe separar ruido de agente de acciones peligrosas.
  • El acceso a credenciales debe seguir bloqueable, incluso si el agente parece benigno.
  • La allowlist necesita proceso, workspace, destino y comando.
  • CI y runners descartables reducen el impacto de loops agentic largos.

Diagrama abstracto muestra un agente entre paneles de endpoint y alertas sin texto visible.

¿Por qué el EDR empezó a ver agentes como intrusos?

En 2026, Sophos midió bloqueos de agentes por máquina única durante siete días y vio acceso a credenciales en 56,2% de los casos, con ejecución en 28,8% (Sophos X-Ops, "When AI agents look like attackers", 2026). El EDR reacciona porque el comportamiento, no la intención, parece hostil.

Un agente de código no sabe que su comando parecerá una técnica ofensiva. Intenta resolver la tarea: instalar runtime, automatizar navegador, descargar dependencia, ejecutar script o persistir una herramienta local. Los atacantes hacen cosas parecidas cuando operan dentro de una sesión válida.

Esto cambia la conversación entre ingeniería y seguridad. El equipo de plataforma no debería pedir una excepción amplia para claude.exe, cursor.exe o codex. El equipo de seguridad tampoco debería bloquear todo flujo agentic sin triage. El trabajo correcto es clasificar acciones.

Este recorte completa la discusión sobre hooks que frenan agentes antes del daño porque el EDR ve el efecto en el endpoint, mientras el hook intenta impedir la acción antes del comando peligroso.

Cápsula citable: EDR para agentes de código no es una lista de excepciones para herramientas populares. La telemetría de Sophos en 2026 mostró que agentes benignos ya activan reglas de credenciales y ejecución, así que la política debe distinguir contexto operativo de acción peligrosa.

¿Qué debe seguir bloqueado aunque lo haya hecho el agente?

En 2026, Sophos mostró que 42,6% de los bloqueos de acceso a credenciales vinieron de una señal ligada a DPAPI y datos sensibles del navegador (Sophos X-Ops, "When AI agents look like attackers", 2026). Ese alerta no se vuelve seguro porque lo inició IA.

Si el agente intenta descifrar credenciales del navegador, listar Credential Manager o tocar material de sesión, mantén el bloqueo. La intención puede ser automatización legítima, pero el privilegio es demasiado amplio. Un agente que corre con la cuenta del desarrollador hereda acceso que no debería usar libremente.

Lo mismo aplica a persistencia. Sophos observó Cursor escribiendo un script en la carpeta de inicio, y MITRE mantiene una estrategia específica para detectar creación en claves de inicio o startup folder, modificada el 12 de mayo de 2026 (MITRE ATT&CK, "Detect Registry and Startup Folder Persistence", 2026). Ese patrón exige revisión.

Cuando el repositorio de origen no es confiable, la respuesta debe empezar antes del EDR. La cuarentena de repositorio para agentes de código reduce la probabilidad de que README, script o paquete externo empuje al agente hacia una acción que el endpoint tendrá que bloquear.

Diagrama abstracto muestra la triage entre señales benignas y acciones bloqueables sin texto visible.

Cápsula citable: Acceso a credential store y persistencia no deben liberarse por nombre de herramienta. Sophos midió 42,6% de bloqueos de credenciales ligados a DPAPI, y MITRE trata startup folder como superficie de persistencia detectable.

¿Cómo separar ruido de riesgo sin crear una allowlist ciega?

En 2026, Sophos vio reglas silenciosas ligadas a evasión en 38,5% de las señales de agentes y comando y control en 34,0% (Sophos X-Ops, "When AI agents look like attackers", 2026). El volumen muestra que "permitir o bloquear todo" no escala para equipos reales.

Empieza por el origen del proceso. Una excepción aceptable debe atar el ejecutable del agente al workspace esperado, al directorio temporal controlado, al destino de red legítimo y al comando permitido. Si cualquier pieza cambia, la alerta vuelve a revisión. Eso evita una allowlist que se convierte en túnel para código hostil.

Después separa clases. La descarga de un runtime firmado puede volverse una excepción estrecha si dominio, hash y directorio son previsibles. Acceso a credenciales, escritura en inicio y ejecución de material de un repositorio desconocido siguen bloqueados. La regla debe seguir daño potencial, no molestia del desarrollador.

Si la alerta involucra una herramienta externa, trátala también como problema de alcance. La lógica de allowlist de MCP para agentes se aplica al endpoint: herramienta permitida necesita propósito, entrada, salida y límite claros.

Señal del agente Decisión práctica
Descargar runtime de origen conocido Permitir solo con destino y hash verificables.
Probar otro utilitario tras un bloqueo Revisar como comportamiento de pivot, no como error inocente.
Acceder a credenciales locales Bloquear y exigir flujo alternativo sin secreto persistente.
Escribir persistencia en el usuario Bloquear y mover a instalador confiable o runner descartable.

Experiencia práctica: cuando la alerta viene de un agente, pido la cadena completa: proceso padre, workspace, comando, destino, archivo escrito y tarea original. Sin esa cadena, cualquier decisión se vuelve opinión.

¿Dónde Claude Code y Codex necesitan límites diferentes?

En 2026, la documentación de Claude Code dice que bypassPermissions desactiva prompts y chequeos de seguridad, y que el modo solo debe usarse en contenedores, VMs o dev containers sin internet (Claude Code Docs, "Choose a permission mode", 2026). Si ese modo aparece en endpoint común, trátalo como riesgo de plataforma.

En Codex, la documentación de permisos lista tres perfiles integrados: read-only, workspace y danger-full-access (OpenAI Codex Docs, "Permissions", 2026). Esa diferencia ayuda a diseñar política: lectura para investigación, escritura limitada para implementación y acceso amplio solo en ambiente controlado.

Para EDR, el detalle operativo importa. Claude Code con --dangerously-skip-permissions en laptop corporativa no tiene el mismo riesgo que Codex en runner descartable con workspace limitado. El nombre del agente no basta. La política necesita modo, sandbox, red, usuario, directorio y origen del repositorio.

Este modelo también evita repetir el error descrito en Friendly Fire durante revisión de terceros: el agente no debería ganar más autoridad justo cuando está leyendo material que otra persona puede controlar.

Cuando el loop necesita atravesar varios intentos, logs y revisiones, uso RemoteCode como herramienta del autor para extender Claude Code y Codex en flujos agentic con menos desperdicio de contexto. Ayuda a coordinar el trabajo; no sustituye EDR, sandbox ni aprobación para acciones sensibles.

Cápsula citable: El permiso de agente debe evaluarse por modo de ejecución. Claude Code advierte que bypassPermissions pertenece a ambientes aislados, mientras Codex ofrece perfiles de lectura, workspace y acceso amplio; EDR debe ver esas diferencias.

¿Cómo llevar esta política a CI y DevOps?

En 2026, un estudio en arXiv sobre el rollout de Microsoft examinó decenas de miles de ingenieros y encontró cerca de 24% más PRs fusionados entre adoptantes de agentes CLI (arXiv, "Adoption and Impact of Command-Line AI Coding Agents", 2026). Más throughput pide más política automatizada.

Lleva la regla fuera de la laptop. Los runners de CI deben usar cuenta de servicio estrecha, workspace descartable, red negada por defecto y artefacto con comandos ejecutados. Si el agente necesita descargar runtime, el destino debe estar aprobado. Si necesita acceder a un secreto, el job debe fallar y pedir otro diseño.

Diagrama abstracto muestra un pipeline separando agente, política y bloqueo de endpoint sin texto visible.

Un contrato simple puede vivir en el repositorio:

politica_de_agente:
  ambiente: "runner descartable"
  red: "bloqueada por defecto"
  credenciales_locales: "negadas"
  persistencia: "negada"
  descargas:
    exigir_origen_aprobado: true
    exigir_hash_verificado: true
  evidencia:
    registrar_comandos: true
    registrar_workspace: true
    registrar_excepciones: true

Ese contrato conversa con evals de PR para agentes en CI y con cuarentena de repositorio para agentes de código. EDR no debe ser la primera frontera. Debe confirmar que el runner respetó lo que la política ya prometió.

Cápsula citable: CI reduce la fricción entre agente y EDR cuando convierte permiso en artefacto. El estudio de Microsoft en 2026 asoció agentes CLI con cerca de 24% más PRs fusionados, así que la ganancia de flujo necesita prueba automatizada.

Checklist de respuesta cuando la alerta viene de un agente

En 2026, MITRE describe certutil como utilitario que adversarios pueden usar para descargar archivos en Ingress Tool Transfer, y Sophos observó Codex alternando de certutil a bitsadmin al buscar un instalador legítimo (MITRE ATT&CK, "Ingress Tool Transfer", 2026; Sophos X-Ops, 2026). El mismo patrón puede ser benigno o peligroso.

Usa esta secuencia antes de cerrar la alerta:

  • Preserva la alerta original con proceso padre, usuario, workspace y comando.
  • Confirma si el repositorio era confiable o estaba en cuarentena.
  • Separa descarga, ejecución, credenciales, persistencia y red en decisiones distintas.
  • Bloquea acceso a credential store aunque la tarea parezca legítima.
  • Mueve automatización de navegador a un perfil sin credenciales reales.
  • Exige runner descartable para danger-full-access o modo equivalente.
  • Registra excepciones estrechas por origen, ruta, destino y validez.
  • Convierte falso positivo repetido en regla documentada, no en bypass amplio.

El objetivo es preservar señal. Si el equipo pone el agente completo en allowlist, pierde visibilidad justo cuando agentes benignos, agentes comprometidos y atacantes que usan agentes empiezan a producir telemetría parecida. La respuesta madura es más contexto en la alerta, no menos detección.

Después de convertir el incidente en regla, conecta el hallazgo al loop autocorrectivo de agente en CI. El loop solo mejora cuando fallas de endpoint generan restricciones nuevas, no cuando el agente aprende a rodear la alarma.

Preguntas frecuentes sobre EDR y agentes de código

¿Toda alerta de agente es falso positivo?

No. En 2026, Sophos dijo que la actividad no era necesariamente maliciosa, pero también mostró acceso a credenciales en 56,2% de los bloqueos ligados a agentes (Sophos X-Ops, "When AI agents look like attackers", 2026). La alerta puede ser correcta aunque la intención fuera automatización.

¿Puedo poner Claude Code o Codex en allowlist?

Solo de forma estrecha. En 2026, Codex documenta perfiles de permiso que van de read-only a danger-full-access (OpenAI Codex Docs, "Permissions", 2026). Una allowlist segura considera perfil, workspace, red, comando y destino, no solo el nombre del ejecutable.

¿Qué hacer con --dangerously-skip-permissions?

Bloquéalo en endpoints comunes. En 2026, la documentación de Claude Code dice que --dangerously-skip-permissions equivale a bypassPermissions y debe usarse solo en ambientes aislados sin internet (Claude Code Docs, "Choose a permission mode", 2026). En laptop corporativa, es una excepción de alto riesgo.

¿EDR debe bloquear descargas hechas por agente?

Depende del patrón. En 2026, MITRE describe Ingress Tool Transfer como transferencia de herramientas a un ambiente comprometido y cita utilitarios como certutil (MITRE ATT&CK, "Ingress Tool Transfer", 2026). Permite descargas previsibles y verificadas; investiga pivots entre utilitarios y destinos inesperados.

Fuentes

  • Sophos X-Ops, "When AI agents look like attackers: what behavioral telemetry tells us", consultado en 2026-07-15, https://www.sophos.com/en-us/blog/2607_agents_vs_telemetry
  • Claude Code Docs, "Choose a permission mode", consultado en 2026-07-15, https://code.claude.com/docs/en/permission-modes
  • OpenAI Codex Docs, "Permissions", consultado en 2026-07-15, https://developers.openai.com/codex/permissions
  • OpenAI Codex Docs, "Sandbox", consultado en 2026-07-15, https://developers.openai.com/codex/concepts/sandboxing
  • MITRE ATT&CK, "Ingress Tool Transfer", consultado en 2026-07-15, https://attack.mitre.org/techniques/T1105/
  • MITRE ATT&CK, "Detect Registry and Startup Folder Persistence", consultado en 2026-07-15, https://attack.mitre.org/detectionstrategies/DET0365/
  • arXiv, "Adoption and Impact of Command-Line AI Coding Agents", consultado en 2026-07-15, https://arxiv.org/abs/2607.01418