PUBLIC-EVIDENCE AI SECURITY CASE STUDY

Claude-Site Scripting Turns One Email Into Multiple Browser Account Paths

Zenity demonstrated one Claude in Chrome prompt-injection boundary: an attacker-origin email instructed the browser agent to import code via javascript_tool in an authenticated browser session, then read Gmail Atom feed. Slack, X, and Claude.ai account paths are downstream…

Agentic / MCP SystemTier 2Indicative ERS 4.3 (1.2–7.5)Evidence source date 2026-09-13

Use case sources

Source reports and analysis supporting this case are listed below. AITBM interpretation and any indicative scoring are derived from this public evidence.

Zenity demonstrated one Claude in Chrome prompt-injection boundary: an attacker-origin email instructed the browser agent to import code via javascript_tool in an authenticated browser session, then read Gmail Atom feed. Slack, X, and Claude.ai account paths are downstream consequences of that shared agent failure.

ASSESSED SYSTEM

The Zenity controlled Claude in Chrome browser agent with javascript_tool and authenticated Gmail session receiving an attacker-origin email.

OUT OF SCOPE

Three downstream account outcomes are not three independent AI deployments. Real victim account takeover, attacker-side Claude Code CAPTCHA use, and Ro-5/Cn-8 provenance internals are outside this single score.

Architecture: Agentic / MCP System (decision tree Q2) — The source shows a multi-step agent browsing and invoking JavaScript autonomously to complete the injected task. Tier 2: Tier 2 representative public-facing service scenario; the original source does not establish every operator tier.

Documented attack or failure path

  1. An attacker-controlled email entered the Claude in Chrome reading workflow.
  2. The agent treated email-origin instructions as user-directed steps and imported attacker code through javascript_tool.
  3. The authenticated browser session read Gmail Atom data with user cookies; separate controlled chains demonstrated Slack code, X reset, and Claude.ai magic-link consequences.

Layer 1 — Intrinsic Vulnerability Profile

Each sub-metric is placed on its five-level rubric by the evidence quoted beside it. Missing applicable evidence remains unknown. The displayed midpoint and interval are scenario values, not inferred control performance.

Sub-metricScoreRubric basisEvidence
Robustness (Ro) — scenario interval 0.00–1.00 (midpoint 0.50), Tier 2 MVT 0.50 indeterminate
Fairness (Fa) — scenario interval 0.00–1.00 (midpoint 0.50), Tier 2 MVT 0.55 indeterminate
Transparency (Tr) — scenario interval 0.00–1.00 (midpoint 0.50), Tier 2 MVT 0.50 indeterminate
Privacy (Pr) — scenario interval 0.00–1.00 (midpoint 0.50), Tier 2 MVT 0.55 indeterminate
Containment (Cn) — scenario interval 0.00–0.91 (midpoint 0.46), Tier 2 MVT 0.55 indeterminate
Cn-1Scope Enforcement0.00w 0.09The model-controlled browser tool crossed the email-content/user-command and authenticated browser-data scope boundary with no effective restriction on the demonstrated path; Cn-1 0.00.The browser agent accepted injected email-origin instructions, imported code through javascript_tool, and read Gmail Atom with the user session.source: primary report

Unknown, not N/A: 25 applicable sub-metrics lack admissible public evidence. The lower, midpoint, and upper scenarios evaluate each at 0.00, 0.50, and 1.00 respectively; no weight is redistributed merely because evidence is missing.

Layer 2 — Operational Risk Posture

DimensionScoreJustification
AaAutonomy Amplification0.75w 0.25Representative activity level for the documented bounded AI path; deployment-specific autonomy was not measured.
AsAttack Surface Exposure0.75w 0.35Representative exposure of the documented entry path; this is a scenario assumption and not a census of all operators.
CpCascade Potential1.00w 0.20No verified System Dependency Graph or DGC is published, so framework worst-case Cp default applies.GDCP: worst-case default — no verified dependency graph published elevated
RfRemediation Feasibility0.50w 0.20A specific patch or configuration change is documented; repair feasibility is an inferred representative scenario, not measured recovery time.

Nelevated = 1 (dimensions strictly above 0.75) → CRM = 1.00.

Layer 3 — Public-evidence confidence diagnostic

ComponentScoreBasis
Pc — Public provenance evidence0.25Minimal public provenance identifies the affected path but supplies no operator assessment pack, signed configuration inventory, or repeated metric battery.
Ec — Public evaluation coverage0.03coverage 0.04 (1 of 26 applicable sub-metrics) × independence 0.80 × fidelity 0.95. No Full, Standard, or Lite pathway is claimed for a retrospective article.
Tf — Public-evidence freshness0.32Evidence dated 2026-08-05; age 74 days on the workpaper reference date. Components: T_containment 0.32 · T_calendar 0.57 · C_monitor 0.60. Binding term: T_containment. Evidence reference is 2026-10-18, 74 days after earliest substantive public evidence (2026-08-05). C_monitor uses the conservative Tier 2 public-evidence default because usable monitoring-coverage evidence is unavailable; it does not assert no deployment telemetry. No C_event cap is asserted from research or an advisory without a dated victim incident. No generic C_evidence cap is assigned from missing public inputs. Indicative ERS uses normalized ACI = 1.00 for comparison only.

Public-evidence ACI = (Pc × Ec × Tf)1/3 = 0.13 — diagnostic status: Invalid as assessment-of-record evidence. It describes the evidence available to this case study, not the assurance of the underlying system, and is not inserted into the normalized-assurance scenario ERS.

Indicative ERS — normalized-assurance scenario

Worp · ORP0.25(0.75) + 0.35(0.75) + 0.20(1.00) + 0.20(0.50) = 0.750
CRMNelevated = 1 → 1.00
ORPeffective0.750 × 1.00 = 0.750
Wivp · IVP midpoint0.25(0.50) + 0.30(0.50) + 0.15(0.50) + 0.20(0.50) + 0.10(0.46) = 0.495
IVP mitigation0.15 + 0.85(1 − 0.495) = 0.579
Scenario assuranceACI fixed at 1.000 for cross-case comparison; public-evidence ACI 0.133 is diagnostic only
Indicative ERS midpointmin(10, 0.750 × 0.579 × 1/1.000 × 10) = 4.3
Unknown-input interval1.2–7.5; 25 unknown applicable sub-metrics set to 1.00 / 0.00 at the bounds

Published CVSS beside indicative ERS

Each published CVSS record is shown exactly as its scorer published it, one per vulnerability record, with the version, metric group and vector when stated, plus its source and access date. Records are never combined or inferred from a CVE's existence.

INDICATIVE ERS · NORMALIZED-ASSURANCE SCENARIO

4.3 midpoint, interval 1.2–7.5; Low-Moderate scenario band; ACI fixed at 1.00. The published CVSS records do not enter this calculation.

PUBLISHED CVSS

CVSS — no applicable published score verified.

No published CVSS score matching this exact assessed path was verified.

CVSS describes an individual vulnerability as its scorer published it. Indicative ERS describes the assessed AI deployment under the normalized-assurance scenario, so the two values are not direct equivalents and neither replaces the other.

AIDEFEND defences → AITBM sub-metrics

Identifiers are quoted as they appear on the AIDEFEND in Action brief or in the AIDEFEND SecureFlow defense map (audited AIDEFEND dataVersion 2026.10.15); the sub-metric mapping is AITBM's own, from the specification's AIDEFEND tables reconciled at catalogue data version 2026.10.15. AIDEFEND renumbers identifiers between releases, so the data version travels with every mapping and neither side's IDs should be cited without one. A mapping identifies a possible evidence route; a recommendation does not prove that the control was implemented or effective and receives no scoring credit by itself.

TechniqueDefence PriorityEvidences
AID-H-017.007Dual-LLM Isolation PatternExact upstream page defense ID, verified against AIDEFEND dataVersion 2026.10.15. Presence supplies no score credit.Candidate evidence routeCn-5 Cn-7
AID-H-018.003High-Impact Independent Validation & Approval GateExact upstream page defense ID, verified against AIDEFEND dataVersion 2026.10.15. Presence supplies no score credit.Candidate evidence routeCn-1 Cn-6 Cn-7
AID-H-018.005Value-Level Capability Metadata & Data Flow Sink EnforcementExact upstream page defense ID, verified against AIDEFEND dataVersion 2026.10.15. Presence supplies no score credit.Candidate evidence routeCn-1 Cn-6 Cn-7
AID-H-028.004Client Response Parsing, Rendering & Execution Surface HardeningExact upstream page defense ID, verified against AIDEFEND dataVersion 2026.10.15. Presence supplies no score credit.Candidate evidence routeCn-5 Cn-7

WHAT THIS CASE TEACHES

Zenity demonstrated one Claude in Chrome prompt-injection boundary: an attacker-origin email instructed the browser agent to import code via javascript_tool in an authenticated browser session, then read Gmail Atom feed. Slack, X, and Claude.ai account paths are downstream consequences of that shared agent failure.

Sources: Official AIDEFEND in Action brief · AIDEFEND SecureFlow — Claude-Site Scripting: Email-Borne Browser Session Abuse · Zenity original technical deep dive, 2026-08-05

AITBM sub-metrics referenced