Your agent doesn't have a code flaw. It has a judgement flaw.
An agent reads, decides and acts with your credentials. To divert it nobody needs to break anything: it is enough to leave the right instruction where it is going to read it. We put it to the test before someone else does.
Researcher Simon Willison named it the lethal trifecta. An agent becomes exploitable as soon as it combines these three things at once, and almost every useful agent does.
1It accesses private dataYour CRM, your tickets, your code, your clients' documents.
2It reads content you don't controlAn incoming email, a web page, an attached PDF, the response from someone else's API.
3It can communicate externallySend an email, write to a ticket, call an API, publish something.
With all three, the attacker doesn't need to breach anything They just leave an instruction where your agent is going to read it. The agent does the rest: authenticated, with permissions and without triggering a single alarm.
The gap
Why your usual audit doesn't see this
It's not that it's done badly. It's that an agent breaks the three assumptions classic pentesting was built on.
It is not deterministic
The same input doesn't give the same output. A test that passes today can fail on the third attempt. Here you don't validate by running through a checklist once: you validate by insisting, from many angles and with many different heads.
The flaw is in natural language
There is no line of code to underline and no pattern a scanner can look for. The payload is a well-placed sentence in a place your agent considers trustworthy.
The surface changes without deploying
The model changes, you tweak a prompt, you add a tool or connect an MCP server and it is already a different system. An annual snapshot doesn't cover something that transforms every week.
It is exactly the kind of problem a large community of hackers testing continuously is for, and not an auditor with a template.
What we test
The ten risks of the OWASP Agentic Top 10
In December 2025 OWASP published its list of risks for agentic applications, reviewed by more than a hundred specialists. It is the reference standard and it is what we attack, category by category.
ASI01
Goal hijacking
Someone redirects what the agent believes it has to do, with an instruction hidden in content it is going to read. From the outside it looks like it keeps working normally.
For example: an incoming email carries a hidden instruction and the support agent forwards another customer's history.
ASI02
Tool abuse
The agent has access to email, CRM, billing, APIs or a terminal. Even if that access is authorised, it can be led to chain them in destructive or very expensive ways.
For example: it is convinced to run a mass deletion presented as a duplicate clean-up.
ASI03
Identity and privilege abuse
Agents inherit roles, store credentials and call each other. That delegation chain is exactly where escalation happens.
For example: a basic user's request ends up running with the admin agent's permissions.
ASI04
Agentic supply chain
Tools, plugins, prompt templates, MCP servers, RAG connectors and agent registries come from third parties. If one is compromised, it injects instructions from the inside.
For example: a legitimate MCP server updates and the new description of a tool carries hidden instructions.
ASI05
Unintended code execution
Many agents write and execute code. Without solid isolation, a well-placed instruction ends up being code execution inside your infrastructure.
For example: the agent installs a dependency someone suggested in an issue comment.
ASI06
Memory and context poisoning
Summaries, embeddings, internal notes and RAG indexes get reused. If someone contaminates them, the agent decides on false data, and keeps doing so session after session.
For example: a document planted in the knowledge base changes the discount policy the agent applies.
ASI07
Insecure agent-to-agent communication
In multi-agent systems messages travel over buses, APIs or shared memory. Without authenticating and validating them, they can be forged, replayed, or a foreign agent can slip into the mesh.
For example: a fake agent presents itself as the approver and the rest of the flow obeys it.
ASI08
Cascading failures
A poisoned input or a badly set policy propagates between agents that consume each other's output. The error amplifies much faster than anyone reviews it.
For example: one agent misreads a cost threshold and three others act on that conclusion.
ASI09
Exploiting human trust
The agent sounds confident, writes well and presents the action as reasonable. That authority is exploited so a person approves something they shouldn't.
For example: an impeccable summary leads someone to approve a transfer. The log will only show a human approval.
ASI10
Rogue agents
Here the problem is no longer a prompt: it is the agent, which has drifted from its design and pursues its own goals. It behaves like an insider, but with legitimate credentials.
For example: an optimisation agent starts deleting backups to reduce spend.
The two questions we always ask first Does your agent have more autonomy than the business problem justifies? And can you reconstruct afterwards what it did, with what identity and with what tool? Least agency and observability are the two principles OWASP puts ahead of the list, and almost no agent in production meets both.
How we test it
It's not a separate service: it's a scope
Agent security is added to the scope of any of our services. Which one suits you depends on the same thing as always: whether you need a report or you need continuous coverage.
One-off
Agent pentest
A closed window over a specific agent, with a formal report, evidence and retest. For when you have a launch, a client or an audit ahead of you.
Permanent coverage, which is what fits a system that changes when you change a prompt or the provider updates the model. You pay per validated vulnerability.
What tools it has, with what identity it acts, where it reads from, where it stores memory and where it can write to. Almost always this picture already surprises whoever built it.
2
We agree the scope and the limits
Which environment gets touched, which tools stay out, which actions are never executed even if the agent allows them, and what maximum spend is accepted during testing. You decide, and you can revoke access at any time.
3
We attack the ten categories
From the point of view of someone who wants your agent to do something it shouldn't: instructions placed where it is going to read them, tool chaining, identity boundaries, memory persistence and isolation of the execution environment.
4
We report and revalidate
Every finding arrives with the step-by-step reproduction, the real impact on your business and the proposed fix. When you fix it, we test it again.
Reference frameworks
Findings don't arrive loose: they arrive mapped
Every vulnerability is referenced against the frameworks your compliance team already uses, so the report serves both the person fixing it and the person who has to show it.
OWASP Top 10 for Agentic Applications 2026OWASP Top 10 for LLM ApplicationsMITRE ATLASNIST AI RMFISO/IEC 42001EU AI Act
As a CVE Numbering Authority accredited under INCIBE's leadership, when the flaw is in a third-party component we can coordinate its publication in the standard the whole industry follows.
Frequently asked questions
What people ask us about this
We use a model from OpenAI, Anthropic or Google. Isn't that their problem?
The model is theirs. The agent is yours. The risk is almost never in the base model, but in what you have connected to it: what tools you gave it, with what identity it acts, where it reads from and how far its permission reaches. You built that, and that is what gets tested.
Do you need access to the model or the weights?
No. We test the system, not the model. We need to be able to interact with the agent the way a user would, or the way the content the agent consumes would, and to know the map of its tools and permissions.
Can it be tested without touching production?
Yes, and it is usually the recommended way to start: a mirror environment with the same tools connected and synthetic data. If later you want to test in production, we agree beforehand which actions stay blocked and what spending limit is accepted. Nothing out of scope is ever touched.
Our agent only answers questions, it doesn't do anything. Does this still apply?
It applies less, but it applies. If it queries private data and its answer reaches someone outside, you already have two of the trifecta's three legs: leaking information doesn't require the agent to execute anything. And as soon as you connect its first tool, you have all three.
Does this count towards the EU AI Act or ISO 42001?
It serves as technical evidence that you have assessed the security risks of your AI system, which is one of the pieces both frameworks ask for. It doesn't replace the rest: governance, documentation and lifecycle management are separate work. Tell us which framework you're being asked for and we'll tell you exactly which part this covers.
Show us your agent
Tell us what it does, what tools you've connected to it and with what permissions it acts. In one call we'll tell you where someone would get in and how it fits with the security work you're already doing.
No commitment and no jargon. A specialist gets back to you within 24-48 hours.
This site uses cookies
We use cookies to ensure the site works correctly, analyze traffic, and improve your experience. Some are necessary, while others are only activated if you give your consent. You can accept them all, choose by category, or use only the essential ones. Find out more in our Cookie Policy .