AdvSim2Real : Training Web Agents Against Adaptive Prompt Injection in a Web World Model

Sarim Hashmi, Mukul Ranjan, Kshitij Mishra, Mikhail Kuznetsov, Praneeth Vepakomma +1 more
10/6/2026
cs.CLcs.AIcs.LG

No official code found. Best implementation: Sarim-MBZUAI/advsim2real (0 stars, last commit 2026-10-06).

Abstract

Web agents complete user requests by reading and acting on pages that third parties write, so an instruction planted on a page can redirect the agent away from the user's goal. The agent cannot simply ignore the page, because the page also holds the values and controls the task requires. Current defenses fine-tune the agent on injections fixed before training, and attackers that adapt to the trained model bypass them. Adversarial training lets the attacker adapt but keeps the tasks fixed, so a task stops teaching once the agent solves it. We introduce AdvSim2Real, which co-evolves a task curriculum, an injection adversary, and the agent inside a frozen web world model. The curriculum is rewarded for tasks the agent solves about half of the time, and the adversary only for a success flip, an injection that turns a judged success into a failure. Training in the simulator makes a 4B agent both more capable and more robust: its completion rises with and without attacks, holds against a frontier-model adversary it never trained against, and its capability gain carries over to a real browser. On 150 web tasks, AdvSim2Real raises completion under this unseen adversary by 33.6\% relative to the base agent.

View on arXivView PDF

Code Implementations(1)

AdvSim2Real: Training Web Agents Against Adaptive Prompt Injection in a Web World Model

00Oct 4, 20262 weeks ago

Similar Papers

Cite this paper

@article{hashmi2026advsimreal,
  title  = {AdvSim2Real : Training Web Agents Against Adaptive Prompt Injection in a Web World Model},
  author = {Sarim Hashmi and Mukul Ranjan and Kshitij Mishra and Mikhail Kuznetsov and Praneeth Vepakomma and Nils Lukas},
  year   = {2026},
  eprint = {2610.08773},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2610.08773v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2610.08773.svg)](https://codeofpaper.com/paper/2610.08773)

Discussion