The AppSec Acceleration: Why Your Security Tools Can't See Agent Vulnerabilities
Updated March 12, 2026

Your SAST scanner just gave your agent codebase a clean bill of health. Every check passed. No critical findings. The dashboard is green.
The dashboard is wrong.
Not because the tool is broken. Because the tool was designed for a different kind of software. Static analysis tools scan for SQL injection, cross-site scripting, buffer overflows, and insecure deserialization — vulnerability classes defined by decades of web application security research. They are very good at finding those things.
They have no idea how to find the vulnerabilities that matter in agent-first architectures.
A green dashboard is not the same thing as a secure system. It just means your tools found nothing they were designed to find.
The structural blind spot
In February 2026, Endor Labs published research disclosing six new vulnerabilities in an agentic AI platform — CVEs with CVSS scores up to 7.6, three with public exploit code already available. The findings were significant on their own. But buried in the analysis was something more important than any single CVE: Endor Labs explicitly stated that existing SAST tools designed for web applications cannot identify these vulnerability classes.
Read that again. Not "struggle to identify." Cannot.
The reason is architectural, not incidental. Traditional application security tools are built around a mental model of software that looks like this:
Request → Processing → Response
A user sends input. The application processes it. The application returns output. Security tools trace data flow through that pipeline, looking for points where untrusted input reaches a dangerous sink — a database query, a system call, an HTML template.
Agent-first architectures don't work this way. An agent receives a prompt, reasons about it, decides which tools to call, executes those calls with real credentials, processes the results, decides whether to call more tools, and eventually produces output. The "processing" layer is not a deterministic function. It is a probabilistic reasoning system that makes decisions based on the aggregate of all its context — including context that may have been poisoned hours or days earlier.
You can't trace a data flow through a decision that happens in weights, not in code.
The vulnerability classes that emerge from this architecture have no equivalent in the SAST/DAST playbook:
| Vulnerability Class | Why Traditional Tools Miss It |
|---|---|
| LLM-to-tool data flows | SAST traces code paths, not natural language reasoning chains. The decision to call a tool happens in the model's weights, not in a parseable function call graph. |
| Conversation state manipulation | There is no static code path for "an attacker poisons the conversation history three turns ago and the agent acts on it now." State flows through context windows, not through variables. |
| Agent trust boundary violations | Traditional tools model trust boundaries at the network and application layer. Agent trust boundaries include configuration values, LLM outputs, tool parameters, and inter-agent communication — none of which appear in a call graph. |
| Emergent behavior from prompt composition | Two safe prompts can produce unsafe behavior when combined. There is no static analysis technique that models compositional effects in natural language. |
This is not a tooling gap that will be closed by a plugin or an update. It is a structural mismatch between the assumptions baked into every SAST, DAST, and SCA tool on the market and the architecture of the systems they are being asked to secure.
The numbers make it concrete
The tooling gap is not theoretical. A separate audit by Kaspersky found 512 total vulnerabilities in the same agentic platform, including 8 critical flaws. This is a platform that requires access to email, calendars, messaging, and system-level commands — exactly the kind of broad-permission agent architecture that enterprises are deploying.
512 vulnerabilities. Not in a prototype. Not in a hobby project. In a production agentic platform with access to the systems that run a business.
We've watched this pattern before. A new architecture ships faster than the security tooling can adapt. The confidence gap — the distance between what teams believe is covered and what actually is — widens silently.
The most dangerous vulnerability is the one your tools were never designed to look for.
Meanwhile, the threat landscape is accelerating in the other direction. According to research covered in The Hacker News, 32% of vulnerabilities are now exploited as zero-days — before patches are available. Attackers are using AI agents to automatically chain low and medium-severity vulnerabilities in seconds, work that previously took human researchers weeks. The gap between "vulnerability disclosed" and "vulnerability exploited" is compressing toward zero.
Your security tools cannot see the vulnerabilities. Attackers are exploiting them faster than ever. The denominator is growing while the numerator stays fixed.
That math doesn't get better on its own.
What changed and what didn't
It would be easy to frame this as an entirely new problem. It isn't. The underlying vulnerability classes — injection, privilege escalation, data leakage, resource abuse — are familiar. What changed is where they manifest and what tools can detect them.
The attacks aren't new. The surfaces are. And your scanners are still pointed at the old ones.
In The Interface Security Imperative, we mapped six attack surfaces that emerge in agent-first architectures: prompt injection via API responses, credential theft, context poisoning, rate limit bypass, interface manipulation, and output exfiltration. Every one of those surfaces exists at the integration layer — the boundary between the agent and the systems it touches.
The OWASP Top 10 for Agentic Applications formalized these risks into an industry framework: ASI01 through ASI10, covering goal hijack, tool misuse, privilege compromise, knowledge poisoning, and more.
Both of these frameworks describe risks that traditional AppSec tools were never designed to evaluate. SAST can tell you whether your code sanitizes user input before passing it to a database. It cannot tell you whether your agent's tool invocation chain creates an implicit privilege escalation when a poisoned API response changes the agent's reasoning about what tool to call next.
The Endor Labs research confirms what the frameworks predicted: the vulnerability classes are real, they are exploitable, and the existing toolchain does not detect them.
That last part is the one that should keep you up at night.
The new trust model
Here's the core shift, and it's a big one: what counts as "untrusted input" just got a lot wider.
In traditional AppSec, the trust model is relatively clear: user input is untrusted, everything else is trusted (or at least higher-trust). Security tools enforce that boundary by tracing data from untrusted sources to sensitive operations.
In agent-first architectures, the trust model expands dramatically. Untrusted input now includes:
-
LLM outputs. The model's own reasoning is probabilistic. It can be influenced by prompt injection, context poisoning, or subtle patterns in training data. Treating model outputs as trusted is treating a probabilistic system as deterministic.
-
Tool parameters and responses. When an agent calls an external API, the response becomes part of its context. That response may contain adversary-controlled content. When the agent constructs parameters for the next tool call based on that response, the data flow crosses a trust boundary that no SAST tool currently models.
-
Configuration values. System prompts, tool definitions, and MCP server configurations define what an agent can do and how it behaves. If these can be modified — through a supply chain compromise, a configuration management vulnerability, or a deployment pipeline issue — the agent's entire behavior envelope changes.
-
Inter-agent communication. In multi-agent architectures, agents exchange context, delegate tasks, and share results. A compromised agent can poison the reasoning of every agent it communicates with.
When the system's own outputs can't be trusted, you're not securing an application anymore. You're securing a reasoning process.
This is not a security model that traditional tools were built to evaluate. It requires treating every input — including the system's own intermediate outputs — as potentially untrusted. That is a fundamentally different assumption than anything in the SAST/DAST/SCA paradigm.
What to do about it
The gap between what your tools can see and what your agents expose will not be closed by buying a new scanner. It requires adapting your security practices to the architecture you are actually running.
Better tools will come. The question is what you do in the meantime.
1. Map your agent trust boundaries. Go beyond the network perimeter and the application layer. Identify every point where untrusted data enters your agent's context: API responses, tool outputs, shared memory, configuration sources, inter-agent messages. Each of these is a trust boundary. Your ROBOT framework Boundaries specification should enumerate them explicitly.
2. Trace data flow through reasoning, not just code. SAST traces data through function calls. Agent security requires tracing influence through reasoning chains: which inputs affected which decisions, which decisions triggered which tool calls, and which tool responses changed subsequent behavior. This is an Observability requirement that goes beyond traditional logging.
3. Test for compositional effects. A single prompt or tool response may be benign in isolation but dangerous in combination with other context. Design test scenarios that evaluate multi-turn interactions, not just single-input/single-output cases.
4. Validate tool invocations against policy, not just schema. Schema validation catches malformed requests. Policy validation catches requests that are well-formed but inappropriate — a correctly formatted API call that the agent should not be making given its current role and objectives.
5. Treat conversation state as a security-relevant artifact. Conversation history, memory stores, and shared context are not just UX features. They are attack surfaces. Implement integrity controls, provenance tracking, and access controls on stored context with the same rigor you apply to databases.
6. Build agent-specific security assessments. Do not rely on your existing AppSec program to cover agent risks. Run targeted assessments that specifically test for prompt injection through tool responses, privilege escalation through reasoning chains, and data exfiltration through agent outputs. The OWASP Agentic AI Top 10 provides a starting checklist.
The window is open
The AppSec tooling gap for agent architectures is a transient condition. Vendors will adapt. New tools will emerge. The Endor Labs research itself used AI-assisted data flow analysis to find vulnerabilities that traditional SAST missed — a preview of what purpose-built agent security tools will look like.
But the window between "agents are deployed in production" and "security tools can evaluate those deployments" is open now. In that window, organizations are operating with false confidence — dashboards showing green while real vulnerabilities go undetected.
False confidence is worse than no confidence. At least uncertainty makes you cautious.
The teams that will navigate this window successfully are not the ones waiting for better tools. They are the ones adapting their practices today: mapping agent-specific trust boundaries, building observability into reasoning chains, and running security assessments designed for the architecture they actually have — not the architecture their tools assume.
We've seen this movie before — new architecture outpaces existing security tooling. The organizations that came out ahead were the ones that didn't wait for the tooling to catch up. They built the discipline first.
Evaluate your own agent systems. The Safe Autonomy Readiness Checklist covers 43 items across 8 sections — from role definition to governance.
If your team is deploying AI agents and your security program still assumes request-response architectures, that gap is a liability. If this resonates, we should talk.
Related Posts
Safe Autonomy for AppSec: Where AI Agents Actually Help
How the Safe Autonomy framework applies to vulnerability triage, alert correlation, compliance evidence, and security testing. AI agents can multiply your security team—if you build the right guardrails.
Your Token Budget Is a Security Control
Most teams treat token spend limits as cost management. They are blast radius containment. An autonomous agent with no spending ceiling is not a productivity tool — it is an uncontrolled liability.
Specification as Attack Surface: Why Ambiguity Is a Vulnerability in Agent-First Architectures
Ambiguous specifications aren't just a project management problem anymore. In agent-first architectures, every gap in a spec is a potential security boundary violation — and the agent won't tell you it's guessing.