BookinglyTech News
Inteligencia artificial

Construyó un registro de auditoría para agentes de IA y descubrió cómo forzarlo

El autor diseñó un pasaporte, mandato y journal para agentes de IA, luego intentó falsificar el registro y expuso vulnerabilidades en la verificación.

3 min de lecturaDev.to0 vistas

Half the organisations running AI agents have already had one step outside its permissions. Nearly half of the agents in production have no monitoring at all. Only about a fifth treat an agent as something with an identity of its own. Those are numbers from the Cloud Security Alliance and the 2026 State of AI Agent Security report, and they describe the same gap from three directions: agents act, and nobody can say afterwards what exactly they did. I spent a few weeks building the missing piece, and then spent an afternoon attacking it. This is what survived.

Cuatro componentes para un agente responsable

  1. Pasaporte – una tarjeta JSON que describe la versión del agente, su propósito, lo que nunca hará y su clasificación de riesgo. Cada vez que se lanza una nueva versión se genera una nueva tarjeta y la anterior queda archivada para consultas históricas.
  2. Mandato – un poder notarial legible por máquina que lista acciones permitidas, sistemas autorizados y límites de uso. Todo lo que no esté expresamente permitido se rechaza.
  3. Puerta de control – un único punto de salida donde se evalúan, en orden, la validez del pasaporte, el mandato, la acción, el sistema, los límites y la irreversibilidad. Un error en cualquiera de los pasos implica rechazo.
  4. Journal – un archivo append‑only en formato JSONL donde cada registro incluye el hash del anterior, garantizando una cadena inmutable. El registro nunca almacena datos personales, solo tipos, conteos y hashes.

El proyecto incluye un servidor MCP, una API JSON y un nodo n8n que pueden crear órdenes, consultar permisos y leer el journal, pero ninguno puede confirmar acciones por sí mismo. La confirmación siempre recae en un humano a través de un panel o un bot de Telegram.

El ataque: falsificar el journal

El autor editó un registro cambiando "decision": "deny" por "decision": "allow" y luego ejecutó npx proofbyte-agent-trace verify journal.jsonl. La herramienta detectó la alteración porque el hash encadenado ya no coincidía. Dos problemas surgieron:

  • La cadena de hashes permite identificar el registro alterado, pero solo si el verificador comprueba los hashes.
  • El verificador está escrito en TypeScript mientras que el generador está en Python; una diferencia sutil en la serialización de números ("0.0" vs "0") provocó un hash distinto y una falsificación aparente. El formato ahora incluye una regla de canonicalización para evitar este efecto.

El autor concluye que la verdadera prueba de un framework de agentes es lo que rechaza, no lo que permite. Ninguno de los productos de gobernanza de agentes actuales (Workday Agent Passport, Okta, Credo AI) devuelve información que permita validar un registro alterado.

Enlaces útiles

El experimento muestra que, sin una verificación robusta y una cadena de hashes inmutable, los registros de auditoría de agentes de IA son susceptibles a manipulaciones que pueden pasar desapercibidas. La comunidad necesita estándares de formato y pruebas cruzadas entre lenguajes para que la garantía de integridad sea real.