Discussion about this post

User's avatar
amar's avatar

The fire triangle framing works well, and the reader/executor split is the most practical fix I've seen written up. One thing I'd add: the JSON still carries values the attacker chose. If the email says "refund order 4471 to this account", the reader can faithfully extract a valid recipient and amount, and the executor acts on them with its own authority. So the split removes injected instructions but not injected data. I'd pair it with a check, outside the model, that every field is something the requesting user is allowed to do, not just something the agent can do. Have you seen teams enforce that check in practice?

Ready for more?