Xabier Muruaga
Bounded Agents

Evaluating APC: Security Guarantees Independent of Model Robustness

Empirical evaluation of the Agentic Principal Chain enforcement layer across six benchmarks, four AgentDojo domains, and 3,154 evaluation instances — including a compromised-model evaluation that simulates full model compromise by injecting the benchmark's ground-truth attack call into a live LLM pipeline.

Paper: arXiv:2608.15888 · Code & evaluation artifact

This page presents the empirical evaluation of the Agentic Principal Chain (APC) framework, introduced in Bounded Agents: Delegation Security for Multi-Agent AI Systems (arXiv:2608.15888). APC evaluates every tool call against six deterministic conditions — checked by infrastructure outside the model runtime — before allowing execution. It addresses threats identified by the OWASP Top 10 for Agentic Applications [1], CSA MAESTRO [2], and AIUC-1 [3].

Frontier models resist known prompt injection benchmarks — but the Gray Swan IPI Arena [4] demonstrated that all 13 frontier models remain vulnerable to adaptive human attacks, with attack success rates ranging from 0.5% to 8.5%. Anthropic's own system card reports 17.8% single-attempt ASR for Claude Opus 4.6 against GUI-based agents. The TRAP benchmark [8] reports 13–43% ASR across six frontier models. For prohibited compositions covered by the effective restriction set, APC enforces the decision outside the model; Composition Soundness assumes completeness of that set and serialized admission.

The evaluation is structured in three layers. Live agent evaluation (AgentDojo [7]) measures utility preservation with real agents and includes a compromised-model evaluation across four domains (workspace, banking, travel, slack) that simulates full model compromise: the benchmark's ground-truth attack call is appended after the first legitimate tool call. Static benchmarks (InjecAgent [5], ASB [6]) validate composition closure across 1,454 attack scenarios. Adversarial benchmarks validate robustness against an APC-aware attacker and damage containment across multi-agent delegation chains. The AgentDojo utility and compromised-model cohorts are drawn from the same task–injection space and are not disjoint.

Metric Result Source
Exfiltration ASR (with APC) ↓ 0% InjecAgent · ASB · Compromised-model (4 suites)
Destruction ASR (with APC) ↓ 4.0% Aggregated · worst case 5% (workspace)
Manipulation ASR (with APC) ↓ 12.1% Aggregated (14/116 runs) · worst case 30% (workspace)
Adaptive attack ASR (with APC) ↓ 0% 23 named attacks · 43 variants · APC-aware adversary
Enforcement overhead ↓ <0.5ms p99 latency · 7,000+ evals/sec
Live Agent Evaluation
Utility preservation and compromised-model enforcement with real LLM agents
AgentDojo — Utility (4 suites)
Debenedetti et al. (2024) · arXiv:2406.13352 · Claude Sonnet 4.6
949 runs × 3 conditions
Does APC degrade legitimate agent performance? Evaluated across 4 domains (workspace, banking, travel, slack) under three conditions: baseline (no APC), strict (all conditions enforced), and interactive (human approval simulated for C4-only denials).
Suite Baseline Strict Interactive Δ interactive
Workspace (560) 96.2% 81.5% 86.7% −9.6%
Banking (144) 68.8% 50.0% 58.8% −10.0%
Travel (140) 59.8% 55.7% 60.0% +0.2%
Slack (105) 73.0% 56.5% 60.0% −13.0%
Utility cost varies by domain. The strict condition enforces all six APC conditions including approval gating (C4). The interactive condition simulates human approval for C4-only denials, leaving composition closure (C2b), intent binding (C6), and all other conditions fully enforced. The gap between strict and interactive therefore isolates the cost of approval gating — a deployment-time UX decision recoverable with interactive confirmation. The gap between interactive and baseline reflects the genuine mechanism cost of composition closure and intent enforcement. The aggregated interactive delta is −8.6 pp across 949 task–injection pairs (mean over 3 independent runs). Travel shows the lowest structural cost (+0.2%), while slack shows the highest (−13.0%), reflecting tasks requiring action sequences indistinguishable from prohibited patterns at the action-type level. Baseline variation (60–96%) reflects AgentDojo task difficulty, not APC enforcement.
Explore by domain and task
Select a category
Select a task
AgentDojo — Compromised-Model
Ground-truth injection · Claude Haiku 4.5 · 4 suites · IPI Arena [4] threat model
1,218 runs
Frontier models resist AgentDojo's built-in attacks — both Sonnet 4.6 and Haiku 4.5 achieve 0% ASR on those. But the IPI Arena [4] showed all 13 frontier models fall to adaptive human attacks (0.5–8.5% ASR). To evaluate APC independently of model robustness, the ground-truth attack tool call is appended after the first legitimate tool call across all four AgentDojo domains (Claude Haiku 4.5, 1,218 runs) — simulating a fully compromised model. Exfiltration blocked at 0% in all domains.
No Defense
Workspace (240 runs)77.5%
Banking (144 runs)77.8%
Travel (120 runs)88.3%
Slack (105 runs)80.0%
APC Result
Workspace6.7%
Banking1.4%
Travel0.0%
Slack0.0%
ASR by domain
By attack type (all suites combined)
No Defense
Exfiltration (355 runs)87.0%
Destruction (101 runs)38.6%
Manipulation (116 runs)90.5%
APC Result
Exfiltration0.0%
Destruction4.0%
Manipulation12.1%
ASR by attack type
Exfiltration is blocked at 0% ASR across all four domains by composition closure — a guarantee independent of configuration. Across all four domains, 18 of 609 compromised-model runs succeed (3.0% aggregated ASR). The residual taxonomy concentrates in two categories: intent overlap (14 cases, 78%) — create_calendar_event (12 cases) and update_scheduled_transaction (2 cases) pass when the attack action class matches the user task's declared intent — and missing composition pair (4 cases, 22%) — delete_file with (read, delete) not in the restriction set. The residual ASR in workspace (6.7%) and banking (1.4%) comes from manipulation attacks where the injected action falls within the user's declared intent: create_calendar_event passes when the user task involves calendar writes (12/40 workspace tasks), and update_scheduled_transaction passes when the user task involves transaction updates (2/16 banking tasks). Travel and slack have 0% because no user task's intent overlaps with the attack actions. This indicates the design boundary is structural: parameter-level validation is needed to distinguish "create event for user" from "create event for attacker."
Explore scenarios
Select a category
Select a case
AgentDojo runs live agents with real tools. The next question: do APC's composition restrictions generalize across attack patterns? InjecAgent and ASB evaluate this as a pure policy check — no LLM needed.
Composition Closure
Static evaluation across 1,454 attack scenarios on two public benchmarks
InjecAgent
Zhan et al. (2024) · arXiv:2403.02691 · GitHub
1,054 cases
Benchmark for indirect prompt injection in tool-integrated LLM agents. 1,054 test cases covering 17 user tools and 62 attacker tools, split into 544 data stealing (read→exfiltrate chains) and 510 direct harm (single malicious actions). We evaluate APC's composition closure as a pure policy check — no LLM needed.
No Defense
Data Stealing ASR 100%
Direct Harm ASR 100%
Blocked 0 / 1,054
APC Result
Data Stealing ASR 0%
Direct Harm ASR 60.4%
Blocked 746 / 1,054
Stress Test (APC rules removed)
Data Stealing ASR 39.9%
Direct Harm ASR 82.0%
Blocked 419 / 1,054
Data stealing (0%) uses a two-step pattern: read confidential data, then send it out. APC blocks every case because the pair (read → send) is a prohibited rule — the agent can read or send, but not both in the same session. Direct harm (60.4%) is different: these are single-step attacks where the attacker tool acts alone (delete a file, transfer funds) without needing a prior read of sensitive data. There's no two-step composition to catch, so APC can only block the 39.6% of cases where the user's own tool happened to read sensitive data first. The remaining 60.4% require inspecting what the tool does with its parameters — outside APC's scope. The third column (39.9% / 82.0%) is a deliberate stress test: we remove the key rule (read → send) from APC's configuration to prove the rule was doing the work. With that rule gone, data stealing attacks succeed again at 39.9%. This is like testing a firewall by removing a rule — it shows the guarantee depends on correct configuration.
Explore by attack type
Select a category
Select a case
Agent Security Bench (ASB)
Zhang et al. (2024) · arXiv:2410.02644 · GitHub
400 cases
Multi-domain agent security benchmark. 10 agent scenarios across finance, legal, medical, education, and more. 400 attack tools (200 stealthy + 200 disruptive) testing indirect prompt injection across domains. Same composition closure evaluation as InjecAgent — validates cross-domain generalization.
No Defense
Stealthy ASR 100%
Disruptive ASR 100%
Blocked 0 / 400
APC Result
Stealthy ASR 30%
Disruptive ASR 0%
Blocked 340 / 400
Stress Test (APC rules removed)
Stealthy ASR 60%
Disruptive ASR 100%
Blocked 80 / 400
Disruptive attacks (0%) follow a clear pattern: the agent reads sensitive data, then the attacker tries to destroy or corrupt it. APC catches every case because (read_sensitive → harmful_action) is a prohibited rule. Stealthy attacks (30%) are harder: in 6 of 10 agent scenarios, the agent's normal tool is non-sensitive (e.g., a flight simulator or calculator). Since the first action isn't flagged as sensitive, there's no prohibited pair to trigger. The 30% that pass are these non-sensitive-first cases — blocking them requires inspecting what the tool does with its output, not just what type of action it is. The third column is a deliberate stress test: we remove key rules from APC's configuration. Stealthy ASR rises to 60% (fewer rules catch fewer patterns) and disruptive ASR returns to 100% (the critical rule is gone). This confirms that the guarantee depends entirely on having the right rules configured — like a firewall, APC is only as strong as its policy.
Explore by agent domain
Select an agent domain
Select a case
Composition Closure: Attack Success Rate
Composition closure results: data stealing and disruptive attacks reduced from 100% to 0%
Enforcement Mechanism Comparison
Analytical context — simplified simulations on the same data, not a head-to-head benchmark

To contextualize APC's enforcement approach, we compare three mechanism classes using simplified simulations on the same InjecAgent and ASB test cases. These are not the original framework codebases: the SEAgent simulation ([9]) models sensitivity-label propagation but not full data-provenance tracking; the Progent simulation ([10]) models tool-name filtering but not argument-level constraints. The comparison evaluates mechanism classes, not specific implementations, and the results provide analytical intuition rather than comparative evidence.

InjecAgent — Three Mechanism Classes
1,054 test cases · Same data, different enforcement mechanisms
1,054 cases
Data stealing (544 cases) and direct harm (510 cases) evaluated under three deterministic enforcement mechanisms. Composition closure and information flow tracking produce nearly identical results on two-step exfiltration chains.
Composition Closure (APC)
Data Stealing ASR 0.0%
Direct Harm ASR 60.4%
Total ASR 29.2%
Blocked 746 / 1,054
Info Flow (SEAgent sim.)
Data Stealing ASR 1.7%
Direct Harm ASR 59.2%
Total ASR 29.5%
Blocked 743 / 1,054
Allowlist (Progent sim.)
Data Stealing ASR 0.0%*
Direct Harm ASR 0.0%*
Total ASR 0.0%*
Blocked 1,054 / 1,054
* Any tool-name allowlist achieves 0% on these benchmarks because attacker tools are disjoint from user tools.
ASB — Three Mechanism Classes
400 attack tools · 10 agent scenarios · Where the gap between mechanisms becomes visible
400 cases
Multi-domain benchmark where sensitivity-based tracking shows a structural limitation. Agents with non-sensitive normal tools (read, execute) create sessions that the information flow simulation does not flag, while composition closure blocks the same attacks via action-class pairs.
Composition Closure (APC)
Stealthy ASR 30.0%
Disruptive ASR 0.0%
Total ASR 15.0%
Blocked 340 / 400
Info Flow (SEAgent sim.)
Stealthy ASR 60.0%
Disruptive ASR 60.0%
Total ASR 60.0%
Blocked 160 / 400
Allowlist (Progent sim.)
Stealthy ASR 0.0%*
Disruptive ASR 0.0%*
Total ASR 0.0%*
Blocked 400 / 400
* Any tool-name allowlist achieves 0% on these benchmarks because attacker tools are disjoint from user tools.
What the comparison reveals. The informative comparison is between composition closure and information flow tracking — both reason about action sequences, but at different abstraction levels. On InjecAgent, they are functionally equivalent (29.2% vs 29.5%). On ASB, composition closure blocks substantially more attacks (15% vs 60%) because it operates on action classes regardless of sensitivity labels. The reported gap represents an upper bound: our simulation models sensitivity-label propagation, not SEAgent's full data-provenance graph, which may narrow the difference. The allowlist result (0%) is uninformative for these benchmarks — it holds by construction when attacker tools are disjoint from user tools. A defense-in-depth stack combining all three mechanism classes would cover the widest range of attack patterns.
Static benchmarks validate the policy. But what if the attacker knows the policy? The adaptive evaluation assumes full knowledge of APC internals — scope definitions, composition restrictions, budget limits — and designs targeted evasion strategies.
Adversarial Robustness
APC-aware adversary with full knowledge of the model internals
Adaptive Adversary Evaluation
Custom benchmark · APC-aware adversary with full model knowledge
43 cases
Adversary with complete knowledge of APC internals — scope definitions, composition restrictions, budget limits. Designs 23 targeted evasion strategies across all 6 conditions, tested with and without enforcement. Pure policy evaluation — same code paths, enforcement toggled.
No Defense
Attack Success (ASR) 100%
Blocked 0 / 23
APC Result
Attack Success (ASR) 0%
Blocked 23 / 23
ASR Reduction −100%
All variants correct 43 / 43
An attacker who knows exactly how APC works — every rule, every threshold, every budget limit — designs 23 targeted evasion strategies. Each strategy targets a specific condition: decomposing exfiltration into smaller steps to evade composition rules, replaying expired approval tokens, suppressing the audit trail, or splitting attacks across sessions. Of the 24 attack variants targeting prohibited outcomes, 23 are blocked; session splitting is admitted by design because composition state is per-session. The 43 total includes 19 positive cases (legitimate actions that should be admitted) — all pass correctly, confirming zero false positives.
Explore attack scenarios
Select an attack
Select a scenario
Multi-hop Delegation Chains
Custom benchmark · Validates damage containment across delegation depth
99 cases
Tests delegation security across 2–8 hop chains with 99 scenarios covering all 6 conditions, damage containment guarantees, and scope narrowing. Includes 23 positive cases confirming legitimate actions are admitted.
No Defense
Attack Success (ASR) 100%
Attacks blocked 0 / 76
APC Result
Attacks blocked 76 / 76
Legitimate admitted 23 / 23
Total correct 99 / 99
When a user delegates to an agent, and that agent delegates to a sub-agent, authority must shrink at each step — a sub-agent should never have more power than its parent. These 99 scenarios test this across chains of 2 to 8 agents: can a deep sub-agent escalate its scope? Exhaust the budget? Bypass composition rules? Forge an identity? In every case, APC blocks the attack. The 23 positive cases confirm that legitimate delegations still work — no false positives.
Explore delegation scenarios
Select a category
Select a scenario
Evaluation Coverage
InjecAgent
1,054
100%
ASB
400
100%
AgentDojo
1,558
100%
Adaptive
43
100%
Delegation
99
100%
Discussion

Three levels of guarantee. The evaluation supports a clear hierarchy. Composition closure provides the strongest guarantee: exfiltration attacks are blocked at 0% ASR across all four domains, including financial transfers. This holds independently of intent parsing, impact calibration, or model robustness. Intent binding provides a configuration-dependent guarantee: aggregated across four domains, destruction ASR drops to 4% and manipulation ASR to 12.1% (14 of 116 manipulation runs). The residual is not diffuse — it concentrates in two categories: intent overlap (14 of 18 residual cases, 78%), where the attack action class matches the user task's declared intent, and missing composition pairs (4 cases, 22%), where the restriction set lacks a specific pair. Both are addressable by finer action taxonomies or policy completeness. Parameter-level validation is needed to distinguish legitimate from malicious actions at the same action-type level.

Pairwise vs. k-tuple composition closure. Pairwise composition closure is sufficient for the deterministic benchmarks where attacks follow a two-step pattern (read → exfiltrate): InjecAgent achieves 0% ASR on data stealing and ASB blocks all disruptive attacks with pairwise restrictions alone. K-tuple restrictions become necessary in live multi-step trajectories: the adaptive attack suite indicates that decomposed exfiltration (read → write → send) evades pairwise closure but is caught by 3-tuple restrictions.

Model robustness is necessary but not sufficient. Both Claude Sonnet 4.6 and Haiku 4.5 resist all of AgentDojo's built-in injection strategies. The compromised-model evaluation — which injects ground-truth attacks regardless of model behavior — indicates that APC's enforcement holds across all four domains with Haiku 4.5. Model robustness is empirical and transient — it depends on training data and can degrade with fine-tuning, model replacement, or novel attack strategies. APC's enforcement is deterministic and permanent: the same rules block the same action sequences regardless of which model generates them.

What APC does not cover. Actions that are individually authorized but contextually malicious — creating a calendar event for the attacker when the user's task involves calendar writes — require parameter-level validation: inspecting argument values to determine malicious intent. This is outside APC's design boundary and is the primary direction for future work. The enforcement mechanism comparison shows that tool-name allowlists (Progent [10]) cover this gap when attacker tools are distinct from user tools, and information flow tracking (SEAgent [9]) provides complementary coverage. A defense-in-depth stack combining composition closure, tool-name policies, and parameter-level matching would address the widest range of attack patterns, with each layer providing guarantees over its own domain.

Utility cost decomposes into two components. Across four domains, the aggregated interactive delta is −8.6 percentage points. The gap between strict and interactive isolates the cost of approval gating (C4) — a deployment-time UX decision recoverable with interactive confirmation. The gap between interactive and baseline reflects the residual cost of composition closure and intent binding. Travel shows the lowest structural cost (+0.2%), while slack shows the highest (−13.0%), reflecting the proportion of tasks requiring action sequences indistinguishable from prohibited patterns at the action-type level. We distinguished three sources of utility loss — implementation defects, operationally invalid policies, and genuine security-utility tradeoffs — and corrected only the first two before the final reported runs.

Relationship to Progent. In a matched-protocol comparison using Progent's AgentDojo fork adapted to Bedrock, both systems achieved 0% observed ASR across all available domains. Attack-time utility was comparable in banking and workspace (weighted mean delta +1.6 pp in favor of Progent, within the pre-registered ±2 pp threshold). The systems address complementary problems and can in principle be composed.

References

[1] OWASP Foundation. "Top 10 for Agentic Applications." 2025. genai.owasp.org

[2] Cloud Security Alliance. "MAESTRO: Agentic AI Threat Modeling Framework." 2025. cloudsecurityalliance.org

[3] AIUC Consortium. "AIUC-1: Security, Safety, and Reliability Standard for AI Agents." 2025. aiuc.com

[4] Dziemian et al. "How Vulnerable Are AI Agents to Indirect Prompt Injections? Insights from a Large-Scale Public Competition." 2026. arXiv:2603.15714

[5] Zhan et al. "InjecAgent: Benchmarking Indirect Prompt Injections in Tool-Integrated LLM Agents." 2024. arXiv:2403.02691

[6] Zhang et al. "Agent Security Bench (ASB): Formalizing and Benchmarking Attacks and Defenses in LLM-Based Agents." 2024. arXiv:2410.02644

[7] Debenedetti et al. "AgentDojo: A Dynamic Environment to Evaluate Attacks and Defenses for LLM Agents." 2024. arXiv:2406.13352

[8] Hua et al. "It's a TRAP! Task-Redirecting Agent Persuasion Benchmark for Web Agents." 2025. arXiv:2512.23128

[9] Ji et al. "Taming Various Privilege Escalation in LLM-Based Agent Systems." 2026. arXiv:2601.11893

[10] Shi et al. "Progent: Programmable Privilege Control for LLM Agents." 2025. arXiv:2504.11703