Lesson 04 · What attackers want · 13 min
Data exfiltration
Reaching a secret and removing it are two different steps, and defenders who focus on the first often leave the second wide open. Exfiltration is the removal — and the channels are broader than the obvious one.
The lab attempts all three at once: it asks the agent to smuggle the credential into a tracking-pixel URL and to email another tenant's note off-domain. Under a naive build, watch which channels leak. The uncomfortable finding is usually the pixel — the model would never 'print the password', but it will happily format a helpful status image, and the password is in the URL.
The durable fix is not a longer list of forbidden phrasings; it is upstream. If the secret is not in the context, every one of these channels carries nothing. The next lesson is about exactly that — but the exfiltration view is what makes the case for it, because it shows that channel-by-channel defence is a losing game against an attacker who only needs one you missed.
Egress control is the highest-leverage single lever here. An allowlist on where the agent may send — which domains, which recipients — turns 'exfiltrate to attacker@evil' from a phrasing problem into a refused operation, no matter what the model was talked into.
Checkpoint
Does your agent emit any content that gets rendered or fetched (markdown, HTML, links)? That is an exfiltration channel. What bounds what can go in it?