SignorCrypto note · AI
AI Browser Agents: Why Prompt Defenses Are Not Enough
A practical 2026 checklist for prompt injection, permissions and human approval

Browser agents should be treated as untrusted operators with access to a user’s authenticated session—not as chatbots with a better interface. Model-level prompt-injection defenses help, but they cannot establish a complete security boundary. The safer 2026 pattern is defense in depth: narrow origin and data permissions, isolate the runtime, gate consequential actions, keep secrets outside the model’s reach, log every step, and test multi-step attacks before production.
Why browser agents change the threat model
A text assistant can produce a bad answer. A browser agent can navigate, read private pages, fill forms, download files, send messages, or prepare a payment. It may also see content the user did not intentionally provide as an instruction: advertisements, comments, embedded documents, tool descriptions, redirects and dynamic data.
Google’s Chrome security guidance describes two attack vectors for WebMCP agents: malicious tool manifests, where hidden instructions appear in tool names or descriptions, and contaminated outputs, where trusted sites return attacker-controlled text such as user comments. Chrome says the probabilistic nature of large language models makes it impossible to guarantee safety inside the model itself.
That is a design constraint, not a reason to abandon browser agents. The browser, identity layer and action policy must limit what a compromised planner can do.
What the current evidence says
The evidence points to progress, not closure. Anthropic reports a 1% attack success rate for Claude Opus 4.5 in its internal Best-of-N browser evaluation and says that even this level still represents meaningful risk. This is a vendor-specific result, not a universal score: its attacker, environment, model and mitigations are not directly comparable with other studies. Anthropic’s broader conclusion is clearer than the number: no browser agent is immune to prompt injection.
The August 6, 2026 StepJack preprint tests multi-step indirect prompt injection rather than a single malicious page. Its benchmark contains 480 examples across six computer-use agents. Among the five agents that reliably followed the reference chain, average attack success rose from 31.3% for single-step attacks to 36.9% for three-step attacks. One reported GPT-5.4-mini result rose from 41.7% to 72.9%.
StepJack is a research preprint, not a production certification. Its value is methodological: a test that checks one page at a time can miss an attack whose harmless-looking instructions are distributed across several pages. Security testing should reflect the real loop: observe, plan, navigate, read, call tools and act again.
The security boundary belongs around the model
Restrict origins and capabilities
Do not give a browser agent unrestricted access to the web by default. Define which sites it may read and which it may change.
Google describes separate read-only and read-writable origin sets. An agent might read a public catalogue but write only to an approved commerce or procurement system. A compromised agent should not be able to turn a legitimate task into arbitrary cross-site browsing.
Use task-specific policy decisions. Treat redirects and newly proposed URLs as new authorization decisions. Assume a tool can mutate state unless it is explicitly designed and verified as read-only. Keep separate permissions for retrieval, drafting, submission, deletion and payment.
| Action | Control |
|---|---|
| Read public content | Approved origins, limited tokens and scope |
| Read a private account | Explicit scope and dedicated session |
| Draft a message or order | Visible preview and field validation |
| Send, publish or submit | Confirmation, policy gate and audit log |
| Pay, delete or change access | Block by default; human takeover |
| Send data to a new URL | Verify the exact URL or require user action |
A policy engine—not only the model—should be able to reject payment, publication, deletion or external transfer.
Keep credentials and URLs under policy
An agent can operate a session without receiving raw passwords or long-lived secrets. Google’s Chrome architecture describes confirmation before sign-in through Google Password Manager and says the model does not have direct access to stored passwords.
For enterprise deployments, use short-lived credentials, scoped tokens, isolated profiles and a broker that performs only the approved operation. Do not paste secrets into prompts, page content or tool outputs. Rotate and revoke access without redeploying the whole agent.
A URL is also a data-exfiltration boundary: query parameters, fragments and path segments can carry private data to a server that records requests. OpenAI describes using an independent web index to distinguish exact URLs previously observed as public from unverified URLs. Its goal is narrow—reduce quiet leakage through the URL itself—not to make the destination trustworthy or eliminate prompt injection.
For a business agent, inspect the exact URL, strip unnecessary parameters, block sensitive data in outbound requests, follow redirects under policy, and require meaningful user action for unverified destinations.
Separate untrusted content from trusted instructions
Page text, tool descriptions, search results, comments and documents should be passed to the model as data, not as a peer instruction source. Chrome recommends spotlighting techniques such as delimiters or Base64 encoding, with trade-offs in token cost and resistance to structural evasion.
This helps the planner interpret content, but it is not a permission system. Combine it with input-size limits, classifiers, output validation and a trusted critic that sees the task and proposed action—not the raw hostile page.
Google describes a User Alignment Critic that checks a proposed action after the planning model has made its decision. The critic is isolated from untrusted web content and focuses on whether the action serves the user’s stated goal. It is a useful second decision point, not a guarantee: a critic can misunderstand intent or approve a valid but harmful action.
Use deterministic rules for allowed origins, transfer limits, payment limits and prohibited destinations. Use model-based critics for ambiguity, and keep the roles separate where possible.
Human approval must be meaningful
A confirmation dialog is valuable only when it tells the user what they are approving. “Continue?” is weak. “Send this document to [email protected], including the attached customer export” is reviewable.
Pause before actions that are costly, irreversible, externally visible or privacy-sensitive: signing in to a sensitive service; sending or publishing; completing a purchase; downloading or uploading files; changing permissions or deleting records; and transmitting data to a new origin.
Give the user a visible work log, a stop button and a takeover path. Do not train users to approve every warning. Block actions when the system cannot explain the destination and payload clearly.
A production checklist for teams
Before giving a browser agent access to real accounts or business workflows, verify that:
- Its task and authority are narrow enough to describe in one sentence.
- Read-only and write-capable origins are separated.
- Credentials and durable secrets are outside the planner’s direct context.
- Page content, tool metadata, URLs and user-generated text are untrusted.
- A deterministic policy can block payment, deletion, publication and external transfer.
- Consequential actions show destination, scope and payload before approval.
- A user can pause, stop or take over without waiting for the model.
- Calls, denials, approvals, redirects and outputs are logged with task and identity.
- Red-team tests include multi-step and cross-origin prompt injection.
- Rollback, revocation and incident response have been tested.
Start with a narrow workflow and a verifiable outcome. Measure task success, human corrections, denied actions, data-transfer attempts, latency and cost. A more capable agent that requires broad permissions and produces opaque logs may be worse than a smaller agent with constrained tools.
FAQ
What is indirect prompt injection?
It is an attack in which instructions placed inside content the agent reads—such as a web page, email, document or tool output—try to change its behavior. The user may never have written or seen those instructions.
Are browser agents safe if they use an allowlist?
An allowlist reduces exposure but is not sufficient. Redirects, compromised allowed sites, contaminated outputs and excessive permissions can still create risk. Check the exact action, destination and data flow.
Should an AI browser agent handle payments automatically?
Usually not. Payment and other irreversible actions should have a deterministic policy gate and meaningful human approval, or be delegated to a separate workflow designed for that consequence level.
Sources
- Agent security considerations for WebMCP — Chrome for Developers
- Architecting Security for Agentic Capabilities in Chrome — Google Security Blog
- Mitigating the risk of prompt injections in browser use — Anthropic
- StepJack: Benchmarking Computer-Use Agent Safety Against Multi-Step Indirect Prompt Injection — arXiv
- Keeping your data safe when an AI agent clicks a link — OpenAI
For a broader implementation starting point, see the SignorCrypto Toolkit. If your team is evaluating a governed agent workflow, contact SignorCrypto.