Security2 publishers3 min readPublished
Weizman's BragJack hijacks five Chromium AI assistants from a single installed extension
Gal Weizman showed that one malicious extension can take over the AI agents in Chrome, Comet, Edge, Neon and Claude in Chrome, with bounties from all five vendors to show for it. Installation is the only precondition.
The Watch · Security desk
_Pattara_Alamy.jpg?disable=upscale&width=1200&height=630&fit=crop)
What happened
- Gal Weizman of Forever Security demonstrated BragJack against five Chromium targets: Chrome's Gemini Live, Perplexity Comet, Microsoft Edge, Opera Neon and Anthropic's Claude in Chrome.
- One extension worked on all five, relying on Chromium's declarativeNetRequest rules, which let it change response headers and redirect the resources those privileged AI components load.
- The extension has to be installed first, but after that the abuse runs with no user interaction and inherits the agent's existing privileges to read data or act as the victim.
- Chrome's finding, CVE-2026-0628, drew a $7,000 bounty and reached local files, web content, screenshots and potentially the browser's camera and microphone.
- In Comet, Weizman drove the built-in agent to visit Perplexity, summarize the victim's emails and send the results to another address.
Compiled by The WatchSomething wrong?How this is made
Why it matters
- capability The permissions a user approves no longer bound what an extension can reach: a rule-based network-request extension ends up exercising file reads, screenshots and agent instructions it never requested.
- decision Fleets that turn on in-browser agents have to treat the extension allowlist as the control separating an attacker from agent privileges, because installation is the whole precondition.
- exposure Users of Comet, Neon and Claude in Chrome hold the residual risk, since three of the five findings have neither a public identifier nor a reported fix.
- precedent Claude for Chrome has produced three disclosures of the same origin-trust class, so a single patch is a weak basis for assuming the agent-extension boundary now holds.
Extensions were blocked from touching the privileged chrome://glic component and from injecting scripts into Google's Gemini site, but declarativeNetRequest rules could still intercept the requests the embedded Gemini web app made [10]. Weizman weakened security headers and redirected a JavaScript resource [11]. His code then ran inside the Gemini context and spoke to Chrome's privileged AI component directly, skipping Gemini's normal request flow [11]. Weizman says that access could read local files, reach web content, take screenshots and potentially reach the browser's camera and microphone [12].
Comet's built-in agent extension trusted several Perplexity domains, one of them a testing domain that had not been given the protections applied to the primary perplexity.ai site [14]. Removing a redirect to that domain with a DNR rule was enough to load it and inject a content script able to talk to the agent [14].
Microsoft had already built a defence against this shape of abuse: it split the Edge agent into "Think" and "Do" modes so the agent could not take arbitrary instructions and actions at the same time [16]. Weizman found a race condition that briefly disables the restriction while a prompt is forced, then re-enables the action capability before the agent checks its state [17]. Microsoft assigned CVE-2026-55945 [17].
The five vendors paid more than $20,000, in a range from $600 to $7,000 [3]. Chrome's CVE-2026-0628 drew the top of that range at $7,000 [13], leaving more than $13,000 across the other four, better than $3,250 each [22]. Two CVEs came out of five vendor findings [3]. The report says Google and Microsoft have resolved the flaws they were assigned [6]; the other three findings carry no public identifier and no reported fix [23].
Claude in Chrome is the one target that is itself an extension [18], and it has history here. LayerX disclosed ClaudeBleed in April: the extension trusted the claude.ai origin instead of checking which script was actually driving it [20]. The author of the BleepingComputer account, who reported a related weakness while working at Manifold Security, says the extension ran its built-in AI workflows on synthetic clicks without verifying they came from a real user, and that the flagged code was still reproducible eight releases later [19].
Weizman calls the seizure technique Prompt Forcing and distinguishes it from conventional prompt injection [21]. In his writeup he describes these systems as having a "brain" and a "body", with the model deciding what should happen and a privileged browser component accessing tabs, reading content, taking screenshots and interacting with sites [7].
All five chains start with the extension already installed in the victim's browser [4], and after that nothing requires the user to click [5]. So the install decision settles the outcome. Where Chrome or Edge policy limits installs to an allowlist, the technique has no starting point; where users install what they like, an extension whose declared job is rewriting network requests [9] can end up reading local files, taking screenshots and issuing instructions to an agent that acts on the victim's behalf [5].
What to watch
- Whether Perplexity, Opera and Anthropic ship fixes for the three findings that have no published CVE.
- Whether Chromium restricts what DNR rules can do to requests issued by privileged in-browser AI components.
- Whether Microsoft adds a state check that closes the Think/Do race in Edge, or regates the action capability entirely.