Microsoft already changed the locks on the apartment building while tenants were asleep
CVE-2026-109469 is an authorization bypass through user-controlled key in Microsoft Entra Device Registration, the cloud service that registers devices into Entra ID. An unauthenticated network attacker could tamper with a device registration key to obtain an unauthorized device identity and elevate privileges over the network. There is no customer-installed version; the vulnerable component was the Microsoft-operated service used by essentially every Entra ID tenant before the fix.
Microsoft assigned a CVSS 10.0 because the theoretical pre-fix chain is network-based, low-complexity, with no privileges and changed scope. That intrinsic score does not reflect the current defender reality: Microsoft completed service-side remediation by 5 November 2026, there is no customer patch or configuration to apply, and no exploitation or public proof of concept has surfaced. For an enterprise patching team, this is a cloud-service incident the vendor has already closed.
5 steps from start to impact.
Obtain target tenant ID and discover Entra device registration endpoint
- Network access to Microsoft Entra ID endpoints
- Target tenant ID
- No customer-controlled exposure; cannot be blocked without breaking legitimate authentication
- Tenant ID alone is not enough; the attacker must know how to trigger the authorization bypass
Submit a crafted device registration request with a user-controlled key
- Knowledge of a valid device key format or a benign device ID
- Reachable registration API
- Microsoft has already patched the service-side authorization check
- No public request payload or reproducer exists to guide exploitation
Receive or reuse a valid device identity in the target tenant
- Successful authorization bypass
- Target tenant permits device registration or has hybrid join configured
- Service-side fix prevents this step
- Modern tenants may require additional registration restrictions or MFA, but CVE vector says no user interaction
Add device events with missing/unexpected initiator; Microsoft 365 Defender abnormal device registration alerts.Authenticate to Entra ID integrated resources as the unauthorized device
- Device object exists in tenant
- Resource allows device-based auth or PRT
- Requires the prior bypass to succeed, which is no longer true post-remediation
- Device-only credentials typically have limited roles unless combined with other misconfigurations
Elevate from device identity to broader tenant access
- Prior bypass completed and device identity accepted
- Victim tenant has valuable roles bound to device identity or weak conditional access
- Microsoft remediated the cloud service; no customer-side residual vulnerability remains
- No evidence attackers ever achieved this path in the wild
Add device events from the last 30 days and look for initiator identities that are missing, unknown, or originate from unexpected geographies. This does not change the patch status but can uncover prior abuse.- Blocking outbound access to Microsoft Entra ID endpoints at the firewall — breaks legitimate authentication and cannot isolate a Microsoft-hosted service.
- Deploying a Windows or Microsoft Entra Connect update — no client-side patch exists; the vulnerability was in Microsoft's cloud service.
- Conditional Access blocking device registration — can disrupt legitimate enrollments and did not target the vulnerable service-side authorization check.
The supporting signals.
| In-the-wild status | No exploitation reported; no IOCs or campaigns tied to CVE-2026-109469 as of 2026-11-06. |
|---|---|
| Proof of concept | None public; no GitHub repos, nuclei templates, or ExploitDB entries identified. |
| EPSS | Not available from configured EPSS source; too soon after publication for a reliable score/percentile. |
| KEV status | Not listed in CISA KEV; no active exploitation evidence. |
| CVSS vector | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H — network, no privileges, changed scope, high C/I/A. |
| Affected versions | Microsoft Entra Device Registration cloud service, all tenants before service-side fix; no customer-installed version. |
| Fixed versions | Service-side remediation completed by Microsoft; no customer patch, update, or version to deploy. |
| Scanning/exposure | Not applicable to external scanners; component is Microsoft-hosted and not part of customer internet attack surface. |
| Disclosure date | 2026-11-05 in Microsoft Security Update Guide; CVE published 2026-11-06. |
| Reporting source | Microsoft Corporation CNA; no independent researcher credited in available records. |
Sources.
Why this verdict
- Service-side fix already shipped: Microsoft reports the vulnerability was remediated on its own infrastructure; there is no customer-installed component, no patch to schedule, and no configuration to change.
- No known exploitation or PoC: CISA KEV does not list it, EPSS is not available, and no public exploit code, nuclei templates, or IOCs have appeared.
- Role multiplier: Entra Device Registration sits in the Entra ID identity plane, so if the chain were still live the impact would be tenant-scale; however the service-side fix means the documented chain can no longer succeed, so the high-value-role floor does not force a HIGH/CRITICAL verdict for defenders.
Why not higher?
Not CRITICAL/HIGH because the vulnerability was a Microsoft-operated cloud service bug that has already been remediated service-side. There is no customer deployment to test, patch, or expose; no KEV listing or active exploitation; and no public PoC. Assigning a high severity would create phantom work for patching teams.
Why not lower?
IGNORE is the lowest action tier and already carries a 0.0 score; there is no lower severity to assign. We retain only a documentation action because the advisory should be recorded in the risk register, not because residual exploitability remains.
Crowdsourced verification payload.
Run this on a Microsoft 365/Entra ID administrator workstation with the Microsoft Graph PowerShell module installed. First authenticate with Connect-MgGraph -Scopes 'AuditLog.Read.All','Directory.Read.All', then execute pwsh -File check-cve-2026-109469.ps1 -DaysBack 30. The script reviews Entra ID directory audit logs for Add device events with missing initiator identity and exits 0 for PATCHED/no-anomaly, 1 for VULNERABLE-suspect, or 3 for UNKNOWN.
#requires -Modules Microsoft.Graph.Authentication
[CmdletBinding()]
param(
[int]$DaysBack = 30
)
$ErrorActionPreference = 'Stop'
function Test-GraphModule {
if (-not (Get-Module -ListAvailable -Name Microsoft.Graph.Authentication)) {
Write-Host 'UNKNOWN - Microsoft.Graph.Authentication module not installed'
exit 3
}
}
function Connect-Check {
$ctx = Get-MgContext
if (-not $ctx) {
Write-Host 'UNKNOWN - Not connected to Microsoft Graph. Run Connect-MgGraph -Scopes ''AuditLog.Read.All'',''Directory.Read.All'' first.'
exit 3
}
}
function Inspect-DeviceRegistrationLogs {
$since = (Get-Date).AddDays(-$DaysBack).ToUniversalTime()
$filter = "activityDateTime ge $($since.ToString('yyyy-MM-ddTHH:mm:ssZ')) and activityDisplayName eq 'Add device'"
try {
$logs = Get-MgAuditLogDirectoryAudit -Filter $filter -All -ErrorAction Stop
} catch {
Write-Host "UNKNOWN - Failed to query Entra audit logs: $($_.Exception.Message)"
exit 3
}
if ($null -eq $logs -or $logs.Count -eq 0) {
Write-Host 'PATCHED - No Add device events in last' $DaysBack 'days'
exit 0
}
$suspicious = @($logs | Where-Object {
$_.InitiatedBy -and -not $_.InitiatedBy.User -and -not $_.InitiatedBy.App
})
if ($suspicious.Count -gt 0) {
Write-Host 'VULNERABLE - Suspicious device registration events with missing initiator found; review these IDs:'
$suspicious | Select-Object Id, ActivityDateTime, TargetResources | Format-List
exit 1
} else {
Write-Host 'PATCHED - Device registration events found, none with missing initiator identity'
exit 0
}
}
Test-GraphModule
Connect-Check
Inspect-DeviceRegistrationLogs