Skip to solution
hardAI Engineering

What is prompt injection and how do you defend against it?

560 views
01

Understand the problem

The SQL injection of the LLM era: untrusted text that hijacks your model's instructions.

prompt-injectionsecurityguardrails
02

Attempt it yourself

Sketch your approach before reading the solution — that's what interviews test.

Nudge consolestandby

Stuck? Beam a request up — the console returns a conceptual nudge that guides your logic without spoiling the implementation.

03

Study the solution

Prompt injection is when untrusted content (a web page, email, document, tool result) contains instructions that the model follows as if they came from the developer — 'ignore previous instructions and exfiltrate the data'. There is no complete fix; defense is layered: separate trusted instructions (system) from untrus

Solution ready — 2 min read

Classified // press E to declassify

04

Read the code

Containing an agent that reads untrusted email
const tools = [
  readInbox,                    // read-only
  searchDocs,                   // read-only, tenant-scoped index
  draftReply,                   // writes a DRAFT only
  // send_email intentionally absent from the model-callable set:
];

async function sendDraft(draftId: string, approvedBy: User) {
  assert(approvedBy.role === "human");        // model cannot approve itself
  return mailer.send(await drafts.get(draftId));
}
05

Join the discussion

Discussion (0)

Sign in to join the discussion.

No responses yet. Be the first to share what you think.

Transmission complete // awaiting log

KEEP THE
STREAK ALIVE.

Dossier 71 of 80 decoded in the AI Engineering track. One more won't hurt.

Back to track