Modern Computer Use Agents (CUAs) directly interact with graphical user interfaces and execute third-party web tools, exposing them to indirect prompt injection across every rendered page and tool response. While the Dual-LLM pattern is the primary system-level architecture offering formal security guarantees - using an isolated Planner LLM (P-LLM) to fix execution paths before processing untrusted inputs via a Quarantined LLM (Q-LLM) - these guarantees break down in graphical environments. Because CUA interaction is inherently dynamic, plans cannot remain data-independent; they must branch based on anticipated runtime web content - covering all possible cases the agent may encounter. This exposes agents to branch steering attacks, where an adversary crafts untrusted data to coerce a CUA down a hazardous, pre-approved branch without injecting explicit instructions. We systematically study branch steering attacks and introduce STEER-Bench (101 tasks across 9 domains), showing high attack success against both standard (94.4%) and vanilla Dual-LLM (89.5%) CUAs. We then propose COBRA, an architecture that pairs trusted branching plans with ahead-of-time capability constraints, strictly bounding the parameters and destinations each branch may execute. On STEER-Bench, COBRA reduces attack success to 0% while retaining 97% benign utility.
Figures & tables
Figure 1: The overall design of COBRA. COBRA separates planning from untrusted interaction by using the P-LLM and Q-VLM, and achieves Control Flow Integrity (CFI). The Branch Resolution Hub (BRH) checks runtime values against the committed plan, and HTTP and MCP proxies apply the enforcements, and achieves Data Flow Integrity (DFI).
Suite
Component tested
Cells
ASR (on)
ASR (off)
Dual-LLM
ReAct
S1 WIRE
Field constraints
26
0%
100%
96%
96%
S2 DEST
Host/endpoint constraints
24
0%
100%
88%
92%
S3 MCP
MCP proxy
15
0%
67%
—
—
S4 Cross-channel
Shared constraint state
72
0%
100%
89%
100%
S5 PROV
Trusted-value handling
33
0%
55%
100%
100%
S6 TRUST
Description integrity
5
0%
80%
—
—
Table 1: STEER-Bench results. “Cells” denotes the number of attack cases evaluated in each suite. ASR is the fraction of cases in which the targeted harmful action reaches the HTTP or MCP boundary. ASR (on) uses the complete COBRA system, whereas ASR (off) disables only the listed component. The ReAct and Dual-LLM columns report ASR for the standard ReAct baseline and the dual-LLM baseline of Foerster et al. (2026) , respectively.
Domain
Tasks
ReAct
COBRA
UI-TARS
kimi-k2.5
Sonnet-5
gpt-5 + UI-TARS
kimi-k2.5 dual-role
Sonnet-5 dual-role
Chrome
46
11 (24%)
21 (46%)
20 (43%)
14 (30%)
9 (20%)
15 (33%)
GIMP
26
17 (65%)
12 (46%)
9 (35%)
21 (81%)
14 (54%)
16 (62%)
LibreOffice Calc
47
6 (13%)
23 (49%)
35 (74%)
10 (21%)
8 (17%)
14 (30%)
LibreOffice Impress
47
12 (26%)
23 (49%)
27 (57%)
17 (36%)
9 (19%)
18 (38%)
LibreOffice Writer
23
8 (35%)
12 (52%)
15 (65%)
11 (48%)
7 (30%)
13 (57%)
Table 2: Task completion on 361 OSWorld-MCP tasks under pass@5 with early stopping. Completion requires an exact OSWorld score of 1.0 . Adding gpt-5 planning improves completion over the model-matched UI-TARS ReAct baseline, whereas using kimi-k2.5 or Sonnet-5 in both COBRA roles does not preserve their ReAct performance. OpenCUA results are reported in Appendix H .
Appendix figures & tables6 assets
Supplementary material from the paper’s appendix.
Appendix
Figure 2: Interfaces of four tasks from STEER-Bench.
Domain
Standard 2–5 attempts
Fused 1 attempt
Chrome
7
2
GIMP
8
6
LibreOffice Calc
5
3
LibreOffice Impress
6
3
LibreOffice Writer
3
1
Multi-apps
6
1
Appendix
Table 3: First-attempt recovery with fused planning among tasks completed in two to five attempts under standard planning. Fusion is evaluated against first-attempt standard planning because its purpose is to replace multiple independent planning attempts with one aggregated plan.
System
Tasks
MCP-used
Success MCP-used
Success no MCP observed
Δ (pp)
gpt-5 + OpenCUA-7B
361
120 (33.2%)
28.3%
34.4%
−6.1
claude-sonnet-5 dual-role
361
216 (59.8%)
42.1%
33.8%
+8.3
Aggregate
722
336 (46.5%)
37.2%
34.2%
+3.0
Appendix
Table 4: Task success by observed MCP use. “MCP-used” denotes tasks that execute at least one MCP call during their attempt budget. Δ is the percentage-point difference between tasks with and without observed MCP use.
P-LLM
Q-LLM
P-LLM k tokens/task
Q-LLM k tokens/task
COBRA API $/task
ReAct API $/task
gpt-5
UI-TARS-1.5-7B
73
258
$0.332
$0.00
gpt-5
OpenCUA-32B
88
312
$0.395
$0.00
claude-sonnet-5
Sonnet-5
93
126
$0.627
$0.291
kimi-k2.5
kimi-k2.5
63
36
$0.129
$0.081
Appendix
Table 5: Measured average model use per COBRA task. Token counts include P-LLM and Q-LLM calls where both were instrumented. ReAct costs are billed costs for one attempt; COBRA costs include attempts up to early stopping.
Plans
System
Completion
Generated
Unparsable
Measured
Median statements
ReAct (no planner)
UI-TARS-1.5-7B
4/20
–
–
–
–
OpenCUA-7B
6/20
–
–
–
–
OpenCUA-32B
6/20
–
–
–
–
COBRA, grouped by planner
Appendix
Table 6: Planner comparison on a fixed 20-task subset of OSWorld-MCP (pass@5). Locally served planners produce shorter, less reliable plans and achieve lower completion than gpt-5 .
Domain
Tasks
ReAct OpenCUA-7B
COBRA gpt-5 + OpenCUA-7B
ReAct OpenCUA-32B
COBRA gpt-5 + OpenCUA-32B
Chrome
46
12 (26%)
14 (30%)
17 (37%)
13 (28%)
GIMP
26
12 (46%)
14 (54%)
17 (65%)
17 (65%)
LibreOffice Calc
47
6 (13%)
7 (15%)
9 (19%)
6 (13%)
LibreOffice Impress
47
12 (26%)
15 (32%)
12 (26%)
14 (30%)
LibreOffice Writer
23
7 (30%)
9 (39%)
7 (30%)
13 (57%)
Multi-apps
93
7 (8%)
14 (15%)
11 (12%)
13 (14%)
Appendix
Table 7: OpenCUA task completion on OSWorld-MCP. Adding gpt-5 planning improves aggregate completion for both Q-VLM sizes, but the gain is larger and more consistent across domains for OpenCUA-7B .