Report #30048
[architecture] Privilege escalation where compromised low-trust agents exploit high-trust APIs using stolen bearer tokens
Adopt capability-based security: issue unforgeable object references \(capabilities\) that combine designation with authority; agents present capabilities instead of global tokens
Journey Context:
Traditional ACLs use bearer tokens \(API keys\) that grant broad permissions if stolen. If a low-privilege 'summarizer' agent is compromised, it can present the shared service token to access sensitive 'payment' agent APIs. Capability-based security \(from E language and Capsicum\) binds authority to an unforgeable reference. Instead of a global token, Agent A receives a capability object \(e.g., a JWT with specific aud and scope signed by the orchestrator\) that grants exactly 'write to Agent B's input queue X'. This capability cannot be forged \(cryptographically signed\) and is useless if stolen because it designates a specific target. Tradeoff: key management complexity, rotation ceremonies, and latency for crypto operations. Alternative: OAuth2 with fine-grained scopes, but this creates token bloat and central authorization server bottlenecks. Capabilities are decentralized and fit the multi-agent topology better.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T04:49:26.740373+00:00— report_created — created