Reviewing Microsoft Copilot Studio agents — three 2026 CVEs and the DLP gap they share
A patched prompt-injection vulnerability still exfiltrated data — because the exfiltration path ran through a legitimate, trusted action that DLP never questioned. What that teaches a review.
Copilot Studio is Microsoft's low-code builder for custom agents across the Microsoft 365 and Power Platform ecosystem — connected to email, calendar, SharePoint, Dataverse, and whatever other systems a maker wires in. That reach is the point of the product, and it's also why three separate 2026 CVEs against Copilot Studio and the wider Copilot surface are worth reading together rather than as three unrelated bugs: each one crossed a different boundary, but all three land in the same place — an agent taking an action, or surfacing content, that the requesting user shouldn't have been able to trigger.
Copilot Studio, briefly
Copilot Studio agents inherit two things by default: broad connector access to Microsoft 365 data, and Microsoft's own Data Loss Prevention (DLP) policy engine sitting in front of that access. DLP is a real control — it's also, as the incidents below show, a control that evaluates actions as legitimate-or-not, not intent as benign-or-malicious. That distinction matters more than it sounds like it should.
Three CVEs and the boundaries behind them
Three 2026 CVEs — what broke, and which trust boundary was missing
| CVE | What it does | Missing boundary |
|---|---|---|
| CVE-2026-21520 — Prompt injection privilege bypass | Crafted content reaching a Copilot Studio agent through an untrusted channel steers it into taking actions beyond what the invoking user was authorized for. | The agent's action authority was bound to the agent's own privileges, not re-checked against the actual requesting user's privileges at execution time. |
| CVE-2026-42824 — "SearchLeak" | A flaw in how Microsoft 365 Copilot's search indexing handled access boundaries allowed content a user shouldn't see to surface in search-grounded agent responses. | Search-grounding trusted the index's own access markers rather than re-verifying the requesting user's permission to the underlying document at query time. |
| CVE-2026-26144 — Excel-to-Copilot XSS | A crafted Excel file, once opened and referenced by Copilot, could execute script content that Copilot's rendering path didn't sufficiently sanitize. | Copilot's document-rendering path trusted formatted content from an untrusted file (an Excel workbook can arrive from anyone) as if it were safe to render as-is. |
None of the three required compromising an account or bypassing authentication. Each found a place where the platform trusted a request — a search-grounded citation, a rendered document, an agent-initiated action — without re-verifying it against the actual requesting user's permission at the moment it mattered.
The lesson: a legitimate action can still be the leak
The sharpest lesson across public research on Copilot Studio incidents isn't any single CVE — it's that DLP policies built to catch unauthorized actions don't catch a legitimate action used for an unauthorized purpose. An agent that's permitted to send an Outlook email is permitted to send an Outlook email; DLP has no reason to block it just because a prompt injection is what decided the email's recipient or content. The exfiltration path runs entirely through functionality the agent was supposed to have.
That reframes the review question. It isn't “does this agent have a dangerous permission” — it's “can content this agent processes, that the agent doesn't control, influence which of its permitted actions it takes and against whom.” A DLP policy that's well-configured for the first question can still fail the second.
Review checklist
For any team building or enabling Copilot Studio agents, a design-time review should be able to answer:
- Are Copilot Studio and the connected Microsoft 365 Copilot components patched past the versions addressed by CVE-2026-21520, CVE-2026-42824, and CVE-2026-26144?
- Does DLP policy account for a legitimate action taken as a result of untrusted content the agent processed, not just the action's inherent permission level?
- Is agent action authority re-verified against the actual requesting user's permissions at execution time, or inherited from the agent's own service identity?
- Are connectors (email, SharePoint, Dataverse) scoped per-agent to what each specific agent's task requires, rather than granted broadly by default?
- Is the tenant patched against CVE-2026-80098, and is that patch status actively tracked given how recently it was disclosed?
- Do public-facing forms (SharePoint, Web-to-Lead, or equivalent) that feed agent-visible fields have input scanning or length limits, given the ShareLeak/PipeLeak precedent applies to any vendor's forms?
See tool-use permission scoping for the framework-agnostic version of the connector-scoping question above.
Sources
Blog
Get new posts in your inbox
AI security review, OWASP Agentic Top 10, ISO 42001 evidence, and what AI Committees actually need. No cadence promises — we publish when there's something worth reading.
Review a Copilot Studio deployment before it ships
Connector scoping, DLP-versus-legitimate-action gaps, and action-authority verification — mapped to a disposition your AI Committee can act on.
A note on scope: Drel reviews assessed systems against documented architecture, configuration and intent. It does not ingest live telemetry from production environments. Dispositions reflect the assessed system at the time of review and the re-assessment triggers that govern when the disposition must be revisited.