Artificer Digital The Artificer's Grimoire

Scout: Lies-in-the-Loop — Consent Integrity for Agent Approval Dialogs

Summary

The human-in-the-loop approval dialog is the control most agent platforms lean on as the final safeguard before a consequential action runs. A formalization published this month names the structural flaw in that control: the dialog is narrated by the agent itself, so a compromised agent can show a benign description while a different action executes. The attack class — Lies-in-the-Loop (LITL), first disclosed by Checkmarx in September 2025 and now cataloged by OWASP — turns the safeguard into the exploit vector. The defensive property the new work proposes, consent integrity, is borrowed almost verbatim from a place practitioners already trust it: hardware-wallet clear-signing, where the device renders the transaction from the real bytes rather than from whatever the host says they are. That distinction matters because it sets consent integrity apart from the two adjacent problems teams are already spending budget on. Guidance-injection work hardens what the agent reads; permission-classifier work tunes how accurately the gate decides. Consent integrity is orthogonal to both: it asks whether the thing the human approved is provably the thing that ran. The Meta AI support-chatbot incident — which Meta reported as up to 20,225 potentially affected accounts, a figure it cautioned could be smaller and may include accounts reached by their legitimate owners — is an operational cousin of the same failure family — a missing binding between requester and account — though its mechanism is a verification bug, not the approved-summary-versus-execution gap the formal work targets.

Key Findings

1. The approval dialog has an unsigned trust path

The structural claim is simple, and obvious once stated. The June 2026 preprint What You Approve Is What Executes: Consent Integrity for Black-Box LLM Agents (Xiaoqi Weng, Bournemouth University) — an arXiv formalization, not yet peer-reviewed — opens on it directly: “Coding agents gate consequential actions behind a human-in-the-loop approval dialog, but the dialog is narrated by the agent itself” (arXiv 2606.02668). The human approves a summary the agent wrote. If the agent is compromised — by prompt injection, by a poisoned tool description, by a malicious skill — the summary it writes and the action it runs are two independent strings with no enforced relationship between them.

This is not a hypothetical the paper invented to justify a defense. The attack was disclosed in the field first. Checkmarx Zero published the Lies-in-the-Loop technique in September 2025, with follow-up coverage later that year, demonstrating it against Claude Code and Microsoft Copilot Chat (Checkmarx, Checkmarx follow-up). OWASP now catalogs it as HITL Dialog Forging, listing three techniques: dialog padding (benign text prepended and appended to push the dangerous command out of the visible window), Markdown/HTML injection (restructuring the dialog so attacker content mimics legitimate UI), and action-descriptor tampering (editing the summary metadata that describes what the agent intends to do) (OWASP). The Copilot variant is the sharpest illustration: per Checkmarx’s analysis, Copilot Chat in VS Code failed to sanitize Markdown in the dialog, letting an attacker close the code block holding the malicious command early, insert explanatory prose, and open a fresh block showing a benign command — a fabricated UI rendered inside the trusted surface.

The practitioner takeaway is that the approval channel inherits the security properties of whatever renders it. When the renderer is the agent, the channel has no independent consent-integrity property.

The defense the paper proposes is named Consent Integrity, and its definition is the central sentence: a system provides it if “the human is shown R(A), a representation of A’s security-relevant semantics computed by the trusted mediator from A itself, not from any agent narration” (arXiv 2606.02668). The mechanism is a Consent-Integrity Mediator (CIM) that sits at the action boundary, intercepts the real action, and renders the dialog from the action’s actual semantics. The agent’s own summary is demoted to clearly-labeled untrusted text alongside the trusted rendering.

Practitioners who have touched hardware wallets will recognize this immediately, because it is the same property under a different name. Clear-signing — the “What You See Is What You Sign” (WYSIWYS) principle the Ethereum Foundation’s security effort is standardizing against blind-signing — works precisely because the transaction details travel from the secure element to the device’s own screen without passing through the potentially-compromised host (Ledger, OneKey on the Ethereum clear-signing standard). Even if your laptop is owned, the truth appears on hardware the malware does not control. The paper imports WYSIWYS and the trusted-path property into the agent approval channel by name. That lineage is the most useful thing to carry out of this work: consent integrity is not a novel cryptographic invention, it is a well-understood property from transaction signing applied to a surface that currently lacks it.

CIM’s analyzer (the paper calls it D) is what computes the rendering. It strips padding and no-ops, recursively peels obfuscation (base64, hex, command substitution), extracts security-relevant facts (network egress, credential reads, privilege escalation, out-of-workspace writes), inspects referenced script bodies when the agent invokes an interpreter, and — critically — flags anything it cannot positively classify as uninspectable rather than silently approving it. Default-deny on ambiguity is the design posture.

3. The trusted mediator only works if it sees everything — and that is the hard part

Two design properties carry the security argument, and both are where production reality will bite.

The first is bind-to-execution, the defense against the time-of-check/time-of-use gap. Approval binds to the canonical hash of the exact action; any execution that does not match the approved hash is refused (arXiv 2606.02668). This closes the window where an agent gets approval for action A and then runs a mutated A′. TOCTOU is not a niche concern here — a separate arXiv paper, Atomicity for Agents (Jiang, Liu, Luo, Lin), exposes the same temporal gap in browser-use agents, where the page state an agent planned against can mutate before the approved click lands (arXiv 2603.00476). Binding approval to a hash of the concrete action is the structural answer to that whole family.

The second property is total mediation, and the paper is honest that it is the central assumption rather than a delivered guarantee. The threat model assumes the adversary “does not control the mediator process, the action-boundary interception that ensures the agent has no un-mediated path to a consequential action, or the trusted-path channel over which approvals are displayed and answered” (arXiv 2606.02668). If the agent has any unmediated path to a side effect, the mediator never sees the action and renders nothing. This is the same lesson the auto-mode stress-testing literature has been hammering: a gate only governs the actions that route through it, and agents are resourceful about finding paths that don’t. A consent-integrity mediator that an agent can route around is a clear-signing display wired to the wrong bus.

4. The same trust list that stops silent passes drives the over-prompting

The paper’s evaluation surfaces the central tension of the whole approach, and the numbers are worth stating precisely. Against GTFOBins — a corpus of 1,330 trusted-tool-abuse commands — the mediator flags 90.0% (405 by an explicit danger fact, 792 as uninspectable) and silently passes 10.0%. Against tldr, a corpus of 28,798 normal-usage commands, it prompts on 95.9%, marks 87.0% uninspectable, and lets only 4.1% pass without a prompt (arXiv 2606.02668). On a controlled 22-case LITL set it fully explained 17, safely flagged 5, and allowed 0 silent passes, with 0/10 false positives on benign workflows and 3/3 TOCTOU swaps prevented. Mediation overhead was negligible — a mean of 0.056 ms (n=4,000).

What matters most is the relationship between the two corpora. The paper states it plainly: shrinking the trust list toward pure default-deny “drives silent passes toward zero but pushes the uninspectable rate on normal usage toward 100%, which is approval fatigue by another name” (arXiv 2606.02668). The same conservatism that suppresses the 10% silent-pass rate on abuse commands is what generates the 87% uninspectable rate on ordinary ones. Consent integrity does not dissolve the safety/usability frontier; it relocates the dial and makes the tradeoff legible.

That tradeoff is not abstract. A companion line of work, Oversight Has a Capacity (Emre Turan, arXiv 2606.08919), models the human reviewer as a fatiguing, finite resource and finds an inverted-U: escalating every decision is less safe than escalating most of them, because a reviewer drowning in prompts rubber-stamps. In the paper’s simulations, full escalation produced higher danger-through rates than a calibrated sub-total escalation rate across every capacity level tested. The interaction with consent integrity is direct and sobering: a mediator that correctly renders 87% of normal commands as “uninspectable” is correct on the integrity axis and counterproductive on the fatigue axis, because a human shown that many flags stops reading them. Getting the rendering honest is necessary but not sufficient; the rendering also has to be sparse enough that the human still attends to it.

5. The Meta incident is the right cautionary tale told the wrong way

The June 2026 Meta breach is the production event most likely to get attached to this paper, and the attachment needs care. Hackers took over high-profile Instagram accounts — Meta’s breach notification to Maine’s Attorney General put the number of potentially affected accounts at 20,225, a figure Meta’s associate general counsel cautioned “could actually be smaller” and that may include some accounts accessed by their legitimate owners rather than hackers, with the takeovers surfacing through late May and the affected set including accounts tied to a former White House official and a senior US Space Force official (SecurityWeek, 404 Media, TechCrunch). The route was Meta’s AI-powered account-recovery support assistant: an attacker, spoofing the victim’s location over a VPN, asked the bot to add an attacker-controlled email to the target account, completed the verification loop with a code sent to that same attacker email, and was handed a “Reset Password” button.

The tempting framing — “a live instance of the approval-dialog-narration attack” — overstates it. Per Meta’s own account, the failure was in a separate code path of its High Touch Support tooling that “did not properly verify that the email address provided by the individual requesting a password reset matched the email address associated with that user’s Instagram account” (SecurityWeek). That is a missing binding between the requester and the account’s verified email — a guardrail-bypass and a confused-deputy problem, not the approved-summary-versus-executed-action gap the consent-integrity work formalizes. The accurate reading is that both failures live in the same family: a human (or a human-facing system) authorized something on the basis of a representation that was never bound to the underlying reality. Meta’s was an identity-binding failure; LITL is an action-binding failure. Treating the Instagram breach as proof of the paper’s exact mechanism would be a citation that does not survive scrutiny. Treating it as evidence that binding gaps in agent-mediated approval flows are already being exploited in production is accurate and is the more useful lesson anyway.

6. This is distinct from guidance injection and from classifier accuracy

The reason consent integrity deserves its own budget line is that it is orthogonal to the two defenses teams are likeliest to already have in flight.

Guidance-injection hardening targets the input surface: the CLAUDE.md, AGENTS.md, SKILL.md, and tool-description channels an agent trusts implicitly. That work reduces the probability the agent is subverted in the first place. It does nothing once the agent is subverted — a compromised agent writes an honest-looking summary regardless of how its instructions got poisoned. Consent integrity assumes the agent is already compromised and asks a different question: can it lie in the dialog? The two compose; neither substitutes for the other.

Permission-classifier work targets decision accuracy: given an action, how reliably does the gate label it dangerous? That is a real and hard problem, and the auto-mode stress-test literature shows the gates are leakier than vendors advertise. But classifier accuracy presumes the classifier is scoring the real action. LITL breaks that presumption upstream — the classifier and the human are both scoring the agent’s narration, not the action. You can have a perfect classifier and still approve a malicious command if what the classifier read was the agent’s benign summary rather than the action bytes. Consent integrity is the property that makes classifier accuracy meaningful, by guaranteeing the classifier and the human are scoring the thing that will actually run. In layering terms: guidance-injection defense reduces compromise probability, the trusted-mediator rendering establishes what is being approved, and the classifier scores it. Skipping the middle layer means the other two are operating on agent-supplied fiction.

Practical Implications

1. Treat the approval dialog as an untrusted surface unless the renderer is independent of the agent

The single most important configuration question is: who computes the text in the approval prompt? If the answer is “the agent,” the dialog provides the feeling of oversight without the property. For any agent acting on production-adjacent surfaces, the rendering of what-will-execute should come from a component the agent cannot author — minimally, surface the concrete action (the literal command, the literal API call with resolved arguments, the literal file path) alongside or instead of the agent’s prose summary. “Show the bytes, not the story” is the deployable version of consent integrity even before a full mediator exists.

2. Bind approval to the concrete action, not to a turn or a description

Where your harness supports it, make approval bind to a hash or canonical form of the exact action, and refuse execution of anything that does not match what was approved. This closes the TOCTOU window that Atomicity for Agents and the CIM bind-to-execution design both target. An approval that authorizes “the next tool call” or “this described intent” rather than “this exact resolved action” is re-exploitable by any mutation between check and use.

3. Audit for unmediated side-effect paths before trusting any mediator

A consent-integrity mediator is worth exactly as much as its total-mediation assumption holds. Before relying on one, enumerate every path by which the agent can produce a side effect — shell, network, file writes, MCP tool invocations, and especially the file-edit path that the auto-mode stress tests showed bypasses classifiers entirely. Any path that does not route through the mediator is a path where the dialog renders nothing and the integrity property silently lapses. This audit is the same credential-and-surface enumeration that production-grade agent deployments already owe themselves; consent integrity just adds “and does the approval renderer see this path?” to the checklist.

4. Budget for the over-prompting, or the integrity gain evaporates into fatigue

An honest mediator that flags 87% of normal commands as uninspectable will train reviewers to rubber-stamp unless something else absorbs the volume. The Oversight Has a Capacity result says the failure mode is predictable: too many honest flags is its own security bug. Pair any consent-integrity rollout with a story for keeping the human’s attention budget intact — narrower trust lists tuned to the actual workload, batching of low-risk renderings, or routing the high-volume uninspectable class to an automated second-stage analyzer so the human only sees what genuinely needs a human. Rendering honesty and prompt sparsity are both required; either alone fails.

5. Don’t let vendor risk-acceptance set your threat model

Per Checkmarx’s disclosure timelines, both vendors that received LITL reports declined to treat them as vulnerabilities. Anthropic classified the report (which Checkmarx dates to August 2025) as informational, with the position that users are responsible for “carefully reviewing all permission prompts (including scrolling up to see the entire prompt) before accepting them” (Checkmarx). Microsoft, per Checkmarx, marked its October 2025 report “Completed without fixing,” determining the behavior “does not meet our classification for a security vulnerability” and invoking a “Workplace Trust” assumption (Checkmarx follow-up). Those are defensible product decisions about where a vendor draws its support boundary. They are not a risk assessment for your deployment. If your agents read attacker-influenced content (issues, PRs, web pages, pulled documents) and act on production-adjacent surfaces, “the user should have scrolled up” is not a control you can build on.

Open Questions

  1. Does total mediation survive contact with real harnesses? CIM’s security argument rests on the agent having no unmediated path to a side effect, but the prototype specifies rather than enforces that. Whether a production harness can actually route every shell, network, file, and tool path through a single mediation point — including the file-edit and MCP surfaces that have repeatedly proven to be the bypass — is the question that determines whether this is a deployable property or a whiteboard one.

  2. Who renders the action, and where does it run? Hardware-wallet clear-signing works because the renderer is physically separate from the compromised host. The agent equivalent has no obvious hardware boundary. Whether the trusted renderer can live in the same process as a potentially-compromised harness, or whether it needs a genuine isolation boundary (a separate process, a separate sandbox, a separate machine), is unresolved and central to the security claim.

  3. Can the uninspectable rate come down without weakening the property? An 87% uninspectable rate on normal usage is a usability cliff. The frontier the paper names — trust-list size trades silent passes against over-prompting — may be improvable with better analyzers (richer static analysis, learned classifiers that fail safe), but no one has shown the curve can be bent rather than slid along. If it can’t, consent integrity is a control for high-stakes surfaces only, not a default.

  4. Does the standardization path run through MCP? MCP’s elicitation mechanism already wrestles with adjacent concerns — clients are advised to clearly display which server is requesting confirmation and to show full URLs for examination. Whether consent integrity gets specified as a protocol-level property (a signed, mediator-rendered action representation in the elicitation/approval flow) or stays a per-harness implementation detail will determine how portable it is across the ecosystem.

  5. What’s the right binding granularity for multi-step plans? Bind-to-execution is clean for a single concrete action. For an approved plan of several actions, binding each step to its own hash re-introduces per-step approval (and the fatigue that comes with it), while binding the plan as a whole re-opens the TOCTOU window between steps. The right granularity for plan-level autonomy with action-level integrity is not yet established.

Sources

  1. Weng, What You Approve Is What Executes: Consent Integrity for Black-Box LLM Agents (arXiv 2606.02668)
  2. arXiv abstract page for 2606.02668
  3. Checkmarx Zero: Bypassing AI Agent Defenses With Lies-In-The-Loop
  4. Checkmarx Zero: Turning AI Safeguards Into Weapons with HITL Dialog Forging
  5. OWASP: HITL Dialog Forging (Lies-in-the-Loop)
  6. Infosecurity Magazine: New “Lies-in-the-Loop” Attack Undermines AI Safety Dialogs
  7. GBHackers: Lies-in-the-Loop — How AI Safety Dialogs Can Be Exploited for Remote Code Execution
  8. Turan, Oversight Has a Capacity: Calibrating Agent Guards to a Subjective, Fatiguing Human (arXiv 2606.08919)
  9. Jiang, Liu, Luo, Lin, Atomicity for Agents: TOCTOU Vulnerabilities in Browser-Use Agents (arXiv 2603.00476)
  10. arXiv: AEGIS — A Pre-Execution Firewall and Audit Layer for AI Agents (2603.12621)
  11. Ledger: Clear-sign your worries away (WYSIWYS / clear-signing)
  12. OneKey: Ethereum Foundation’s Clear Signing Standard
  13. SecurityWeek: Meta Says 20,000 Instagram Accounts Hacked via AI Tool Abuse
  14. 404 Media: Hackers Simply Asked Meta AI to Give Them Access to High-Profile Instagram Accounts
  15. TechCrunch: Hackers hijacked Instagram accounts by tricking Meta AI support chatbot into granting access
  16. TechCrunch: Instagram is alerting users who were targeted by hackers during AI chatbot attacks
  17. The HITL approval step in most agentic workflows is broken (raed.dev)
  18. WorkOS: Understanding URL-mode elicitation in MCP
  19. Embrace The Red: GitHub Copilot RCE via Prompt Injection (CVE-2025-53773)