Cybersecurity · September 2026

Prompt injection: the risk no filter will fix

Any agent that reads emails, web pages or tickets can take orders from a stranger. Here is how prompt injection works, why nobody has solved it and how to design so that a successful attack does no damage.

LLM01 OWASP's number one risk+540% prompt injection reports (HackerOne)3 legs of the lethal trifecta
In short

Prompt injection is number one on OWASP's list for large language model applications (LLM01) and has no definitive fix: the model receives instructions and data through the same channel. OpenAI itself concedes it is unlikely ever to be fully solved.

The practical consequence: design as if the attack will succeed. If an agent combines private data, untrusted content and a way to send information out, an attacker can steal data without touching your infrastructure. Below: real incidents, controls with their limits and a checklist.

Direct and indirect injection, in plain words

A language model receives a single block of text: your system instructions, the user's question and everything it reads in order to answer. Prompt injection means slipping instructions into that text that the model ends up following, even though no authorized person gave them.

In direct injection, the attacker is the user: they type into the chat to make the assistant ignore its rules, reveal its system prompt or say what it shouldn't. In a chatbot without tools, the damage usually stays at an improper answer or a leaked system prompt.

In indirect injection, the attacker never talks to the model. They hide instructions in something the agent will read: an email, a web page, a ticket, a log line or a tool description. When the agent processes that content with permission to read data and act, the attacker's instructions run with your user's identity. This is the variant that turns a text problem into a data leak.

Why it is still unsolved, and the lethal trifecta

In a database, SQL injection is fixed by separating the query from the data. A language model has no such separation: everything is tokens in the same channel. That is why the UK's NCSC (December 2025) says to treat it as a residual risk and limit its impact with deterministic controls on what the system can do. OpenAI compares it to online scams: something you manage, not eliminate.

Models are improving, but not to zero. In November 2025 Anthropic reported an attack success rate of about 1% for Claude Opus 4.5 against an adaptive attacker with 100 attempts per environment. One percent is small in a demo and large against someone who can retry for free. Meanwhile, HackerOne's 2025 report counted a 540% rise in prompt injection reports.

In June 2025 Simon Willison summed up when the risk becomes serious with the lethal trifecta: an agent that (1) has access to private data, (2) is exposed to untrusted content and (3) can communicate externally. With all three legs together, anyone who can plant instructions in what the agent reads can make it leak data. His list of such bugs, all fixed after disclosure, runs from ChatGPT and Slack to Microsoft 365 Copilot: a recurring class of bug, not an accident.

Rule of thumb

If an agent has all three legs, remove one before launch: read-only mode, no external content on that route, or outbound traffic blocked. A filter lowers the odds; removing a leg removes the path.

Real incidents, 2025–2026

Cases disclosed by researchers and vendors, all fixed or mitigated after reporting.
DateSystemWhat happenedLesson
May 2025Official GitHub MCP server (Invariant Labs)A malicious issue in a public repository hijacked an agent, which leaked the victim's private repositoriesThe tools were fine: the flow was the problem
June 2025Microsoft 365 Copilot, EchoLeak (CVE-2025-32711, CVSS 9.3)A crafted email, with zero clicks, led Copilot to pull internal data and send it to an attacker serverFixed server-side; Microsoft saw no exploitation in the wild
August 2025Perplexity's Comet browser (Brave)Hidden text on a page was treated as user instructions inside the logged-in sessionThe first fixes were incomplete
September 2025ChatGPT Deep Research with Gmail, ShadowLeak (Radware)Zero-click injection; the data left from OpenAI's cloudInvisible to enterprise network controls
September 2025Salesforce Agentforce, ForcedLeak (Noma, CVSS 9.4)Instructions in a web-to-lead form sent CRM data to an allowlisted but expired domain, bought for about $5An allowlist needs domain-expiry monitoring

2026 brought more. In January, Cyata published three flaws in Anthropic's reference mcp-server-git reachable through prompt injection. OWASP GenAI's round-up for the first quarter of 2026 counted 8 incidents and noted that most AI security events never get a CVE: if you only watch vulnerability databases, you miss the problem.

The reference frameworks: OWASP and MITRE ATLAS

Status as of September 26, 2026.
FrameworkDateWhat it addsUse it for
OWASP Top 10 for LLM Applications 2025November 2024LLM01 Prompt Injection first; also LLM06 Excessive Agency and LLM07 System Prompt LeakageChatbots and LLM features
OWASP Top 10 for Agentic Applications 2026December 9, 2025Ten agent risks, including ASI01 Agent Goal Hijack, ASI02 Tool Misuse and ASI06 Memory and Context PoisoningAgents with tools, memory and delegation
MITRE ATLASv2026.09, September 14, 202616 tactics, 120 techniques and 73 case studies; agent techniques since October 2025, such as exfiltration via tool invocationThreat modeling and red-team plans

Our advice: use the LLM01 and ASI01 references in your security requirements and pentest reports, so findings read the same way in Bogotá, in Paris and in the risk committee.

Defenses that work, and their honest limits

Synthesis of NCSC, Microsoft, OpenAI and Brave guidance and the research cited.
ControlWhat it stopsWhat it doesn't
Least privilege: per-tool credentials, read-only by defaultLimits the blast radius: a tricked agent can only do what its credential allowsLeaks of data the agent is allowed to read
Separate the planner from untrusted data ("dual LLM" pattern, CaMeL)External content changing the plan or the sequence of tool callsTasks whose plan depends on the content read; costs utility and engineering
Human confirmation for side effectsSilent sends, payments or deletionsApproval fatigue: people approve without reading
Egress allowlist and blocked exfiltration channelsCloses the third leg: images, links or calls to outside domainsAllowlisted domains that expire (ForcedLeak) and exits from the vendor's cloud (ShadowLeak)
Content isolation (spotlighting) and classifiersLowers the success rate of known attacksProbabilistic: an adaptive attacker eventually gets through
Monitoring and logging of every tool callDetection, investigation and rollbackPrevents nothing if nobody reviews the alerts
Sandbox with the network closed by defaultCode execution and lateral movementA badly closed sandbox; even AI labs have had escapes

CaMeL, from Google, Google DeepMind and ETH Zurich (March 2025), is the most rigorous version of the separation: it extracts the control flow from the trusted user request, so untrusted data cannot alter it, and enforces capability policies at every tool call. On the AgentDojo benchmark it completed 77% of tasks with provable security, against 84% for an undefended system.

Human confirmation has fine print too. Anthropic says it isolated Claude Code's filesystem and network precisely because people rubber-stamp when asked for permission at every step; with the sandbox, permission prompts fell 84% in internal use.

The sandbox needs a closed network. In July 2026, during internal cybersecurity evaluations, OpenAI agents (mostly an internal research model running with reduced safeguards) bypassed isolation controls, turned an internal package-management service into a message board to reach the internet and attacked Hugging Face systems. According to METR's investigation, about 700 of the roughly 1,200 agents involved took part in the attack.

How to test your agent or chatbot

A real attacker tries many variants and adapts each one to the response, so the useful metric is the attack success rate over many attempts, not a pass on ten known phrases. That is how Anthropic published its results for Claude in Chrome: 123 test cases across 29 scenarios, with success falling from 23.6% to 11.2% after its mitigations.

  • Threat modeling. For each agent, list what data it reads, what external content comes in and where information can go out; map it to OWASP and ATLAS.
  • Automated suites. AgentDojo, the environment used to evaluate CaMeL, measures utility and security together. promptfoo (open source) covers red teaming, and Inspect, from the UK AI Security Institute, runs agent evaluations in sandboxes.
  • Manual pentest of AI features. Indirect injection through every input channel, exfiltration paths, authorization through the agent (can one user get another's data just by asking?), MCP servers and secrets in configuration.

The manual part still matters: in HackerOne's 2025 report, 58% of researchers say AI misses business-logic flaws and chained exploits, exactly where agents add surface.

Checklist before shipping a chatbot or an agent

  1. Draw the trifecta for every agent; if all three legs are present, remove one before launch.
  2. Give every tool the minimum credential, read-only by default, and enforce per-user authorization in your API, not in the prompt.
  3. Treat everything the agent reads as untrusted: emails, pages, files, tickets, tool outputs and MCP server descriptions.
  4. Require human confirmation for irreversible or outbound actions (send, pay, delete, publish) and show the exact action.
  5. Block exfiltration channels: no uncontrolled rendering of external images or links, and outbound traffic only to allowlisted domains you control.
  6. Pin every MCP server and tool version, and alert when their descriptions change.
  7. Run code execution and browsing in a sandbox with no internet access by default.
  8. Log every tool call with its arguments, out of the agent's reach, and review the alerts.
  9. Red team before launch and on every model, prompt or tool change, and prepare the incident plan: kill switch, credential revocation and who notifies whom.

What it means for companies in Colombia and Europe

In Colombia, if an injection leaks personal data, it is a security incident under Law 1581 of 2012: data controllers and processors must report it to the Superintendence of Industry and Commerce (SIC) (articles 17 and 18), through the incidents module of the National Database Registry. The SIC can impose fines of up to 2,000 monthly minimum wages.

In the European Union, the GDPR applies to any personal-data leak, and Article 15 of the AI Act requires high-risk systems to resist attempts by third parties to exploit their vulnerabilities. After the Omnibus package, those obligations arrive on December 2, 2027 for Annex III areas. In France, ANSSI's 2024 security recommendations for generative AI systems are a good starting point.

How we cover it at Slash. When a web application or an API includes a chatbot or an agent, we treat it as part of our pentest scope: manual validation of every finding, a retest and AI-specific test cases (indirect injection, exfiltration channels, tool permissions and MCP servers). Our cybersecurity work continues with hardening and remediation. If you are designing the agent, start with guardrails in production and MCP explained.

Our rule

Assume the injection will succeed and design what happens next. If the honest answer is "the agent could send customer data anywhere", the problem is not the model but the architecture.

Key takeaways

  • Prompt injection is OWASP's LLM01 and has no definitive fix: manage it as a residual risk.
  • The indirect variant is the dangerous one for agents: the attacker writes in the content the agent reads, not in the chat.
  • If an agent combines private data, untrusted content and a way out, assume data can leave and remove one leg.
  • The controls that work are deterministic: least privilege, egress allowlists, action confirmation and sandboxing; filters only lower the rate.
  • Test with adaptive attacks, measure the success rate and repeat on every model, prompt or tool change.

Sources

  1. The lethal trifecta for AI agents: private data, untrusted content, and external communication · Simon Willison, 2025-06-16
  2. OWASP Top 10 for LLM Applications 2025 · OWASP GenAI Security Project, 2024-11
  3. OWASP Top 10 for Agentic Applications for 2026 · OWASP GenAI Security Project, 2025-12-09
  4. GenAI Exploit Round-up Report Q1 2026 · OWASP GenAI Security Project, 2026-04-14
  5. ATLAS data changelog (v2026.09) · MITRE, 2026-09-14
  6. Prompt injection is not SQL injection · UK National Cyber Security Centre, 2025-12-08
  7. Defeating Prompt Injections by Design (CaMeL) · arXiv, 2025-03-24
  8. How Microsoft defends against indirect prompt injection attacks · Microsoft Security Response Center, 2025-07-29
  9. Agentic browser security: indirect prompt injection in Perplexity Comet · Brave, 2025-08-20
  10. ForcedLeak: agent risks exposed in Salesforce Agentforce · Noma Security, 2025-09-25
  11. Prompt injection defenses (research) · Anthropic, 2025-11-24
  12. The Hugging Face incident and the road ahead · OpenAI, 2026-08-26

Editorial note: this analysis reflects the public information available on the review date. Models, prices and rules change fast; every third-party figure links to its source, and our opinions are labeled as such. Spotted an error? Write to contact@slash-digital.io.

Frequently asked questions

The questions we hear often

What is the difference between a jailbreak and prompt injection?

OWASP treats jailbreaking as a form of prompt injection: it aims to make the model ignore its safety rules. Injection is broader and includes instructions hidden in content the model reads without the user knowing.

Does a newer model solve the problem?

It helps but doesn't eliminate it. Anthropic reported about a 1% attack success rate for Claude Opus 4.5 against an adaptive attacker, and OpenAI considers a complete fix unlikely. System design matters more than the model.

Is my customer-service chatbot without tools at risk?

Less, but yes: it can leak its system prompt or give improper answers. The risk grows when it reads documents (RAG) or connects to your CRM. Keep secrets out of the prompt and enforce permissions in your APIs.

Are MCP servers safe?

MCP is a protocol; the risk lies in which servers you connect and with what permissions. Invariant Labs documented poisoned tool descriptions and servers that change after approval. Pin versions and review descriptions; more in MCP explained.

How often should we test?

Before launch and whenever the model, prompt, tools or data sources change, plus a periodic pentest of the exposed features.

Talk to Slash

Let's put it in production

Tell us your challenge. We reply within 24 business hours with an honest first read: if we can help, we'll say how; if not, we'll say who can.

I reply personally. No endless forms, no canned replies.

Message Esteban