TempMail Ninja
//

OAuth Client ID Spoofing Exploited in Mass Cloud Reconnaissance

8 min read
TempMail Ninja
OAuth Client ID Spoofing Exploited in Mass Cloud Reconnaissance

In mid-July 2026, cybersecurity threat researchers issued a urgent warning detailing a sophisticated cloud reconnaissance methodology actively targeting Microsoft Entra ID (formerly Azure Active Directory) tenants worldwide. Termed OAuth Client ID Spoofing, this technique allows threat actors to conduct mass account enumeration and validate stolen user credentials without producing a single successful sign-in event or triggering standard Security Information and Event Management (SIEM) alerts. By exploiting how cloud identity providers process and log unregistered application identifiers, malicious actors have effectively uncovered a major telemetry blind spot in enterprise identity governance.

Recent telemetry from cybersecurity monitoring organizations has revealed that multiple threat clusters have adopted OAuth Client ID Spoofing at an unprecedented operational scale. By probing identity endpoints with fabricated or randomized globally unique identifiers (GUIDs), attackers can quietly distinguish valid user accounts from non-existent ones, test previously leaked password dumps, and construct high-fidelity target lists for follow-on spear-phishing, business email compromise (BEC), and automated account takeover (ATO) attacks—all while remaining invisible to application-centric detection rules.

The Mechanics of OAuth Client ID Spoofing

To understand why OAuth Client ID Spoofing is so effective, security teams must examine the underlying mechanics of modern cloud authentication protocols. In standard OAuth 2.0 and OpenID Connect flows—most notably the Resource Owner Password Credentials (ROPC) grant type—an authenticating client sends an HTTP POST request to the identity provider’s token endpoint. This request includes the user’s credentials alongside a client_id parameter, which is a 36-character GUID assigned to a registered enterprise application (such as Microsoft Exchange Online, Teams, or a custom internal app).

Under normal operational conditions, Microsoft Entra ID inspects the supplied client_id, matches it against its registry of known application objects, and populates the resulting sign-in logs with both the numeric Application ID and its human-readable Application Name (e.g., AppDisplayName). Security Operations Center (SOC) teams rely heavily on these fields to establish baseline authentication patterns, calculate request velocity per application, and enforce rate-limiting or anomaly detection rules.

However, when threat actors intentionally transmit an HTTP authentication payload containing a fake, unregistered, or syntactically generated GUID, the identity processing pipeline behaves differently:

  • The Log Telemetry Void: Because Entra ID cannot map the spoofed GUID to an existing application object within the tenant or multi-tenant catalog, it records the sign-in attempt while leaving the “Application” name field completely blank or null.
  • Evasion of App-Centric Alerts: Standard SIEM detection rules and Web Application Firewalls (WAFs) typically aggregate failed sign-in events by application name to identify brute-force or password-spraying attempts. When the application string is empty, these grouping algorithms fail to attribute requests to a single target app, effectively fragmenting the attack traffic across log queries.
  • Bypassing Scoped Governance: Enterprise security teams frequently implement Conditional Access (CA) policies or rate-limiting controls scoped specifically to high-value applications (such as Microsoft Outlook or SharePoint). Authentication attempts leveraging spoofed Client IDs circumvent these scoped policies entirely, as the identity provider does not recognize the request as targeting those specific assets.

Dissecting the AADSTS Error Code Oracle

The most alarming aspect of OAuth Client ID Spoofing lies in how the identity server communicates authentication failures back to the requester. When processing an ROPC request containing a spoofed Client ID, Microsoft Entra ID evaluates the submitted credentials sequentially before finalizing the application validation step. This creates a functional “error code oracle” that attackers exploit to infer credential validity without issuing an access token or triggering a successful login log entry.

Security researchers analyzing Entra ID Security Token Service (STS) responses identified clear behavioral patterns based on specific Azure Active Directory Security Token Service (AADSTS) response codes:

  • AADSTS50034 (User Account Does Not Exist): Returned when the submitted username is not present in the target directory. Non-existent account lookups typically do not generate entry records in standard sign-in logs, allowing silent account discovery.
  • AADSTS50126 (Invalid Credentials): Returned when the username exists within the target tenant, but the submitted password is incorrect. This response confirms account validity to the attacker while registering a standard failed sign-in attempt.
  • AADSTS700016 (Unrecognized Application Identifier): Returned when the identity provider receives an authentication attempt specifying an unregistered or non-existent client_id. Crucially, Entra ID returns this error only after verifying that the submitted username and password combination is completely valid.

By parsing for error code AADSTS700016, threat actors receive explicit confirmation that a set of tested credentials is correct. Because the application identifier itself is unrecognized, Entra ID rejects the request prior to token issuance, leaving no record of a successful sign-in in the tenant’s audit logs. Consequently, security teams remain unaware that valid credentials for their enterprise users have been confirmed by an external adversary.

Active Campaign Analysis: UNK_pyreq2323 vs. UNK_OutFlareAZ

Threat intelligence reports published by F5 Labs and Proofpoint have highlighted two massive, distinct operational clusters actively leveraging OAuth Client ID Spoofing at scale across thousands of global cloud tenants.

1. Campaign Cluster: UNK_pyreq2323

First observed in mid-January 2026, the UNK_pyreq2323 campaign demonstrated a highly structured approach to cloud enumeration. Operating primarily from Amazon Web Services (AWS) cloud infrastructure, the threat actors utilized custom Python automation tools identified by the HTTP User-Agent header python-requests/2.32.3.

Key operational characteristics of UNK_pyreq2323 include:

  • Scope & Scale: Targeted over 1 million unique user accounts across approximately 4,000 corporate tenants.
  • Spoofing Methodology: Rather than generating entirely random identifiers, the campaign operators took legitimate GUIDs associated with known first-party Microsoft applications (such as Exchange Online) and systematically altered the trailing six digits.
  • Identifier Reuse: Each spoofed Client ID was reused across small clusters of up to 12 target user accounts before being rotated. While designed to evade per-application threshold rules, the high volume of rapid authentication failures ultimately triggered account lockouts for roughly 28% of all targeted users, providing an indirect indicator of compromise.

2. Campaign Cluster: UNK_OutFlareAZ

Surfacing initially in December 2025 and escalating through March 2026, the UNK_OutFlareAZ campaign represented a significantly more advanced implementation of the spoofing technique. Originating almost exclusively from Cloudflare proxy infrastructure, this cluster masked its activity behind legitimate-looking user agent strings, primarily mimicking Microsoft Outlook (Microsoft Office/16.0 ... Microsoft Outlook).

Key operational characteristics of UNK_OutFlareAZ include:

  • Scope & Scale: Probed more than 2 million cloud accounts using over 3.7 million unique spoofed application identifiers across two major waves peaking in late December and mid-March.
  • 1:1 UUIDv4 Randomization: Unlike UNK_pyreq2323, this actor generated a newly synthesized, fully randomized UUIDv4 client ID for every single HTTP POST request. By maintaining a 1:1 ratio between requests and Client IDs, the campaign completely destroyed log correlation capabilities for SOC monitoring systems tracking activity by application GUID.
  • Structured Enumeration: The actors executed systematic, alphabetical account testing across tenants utilizing precompiled, generic username dictionaries (e.g., handles such as jsmith, mbrown, and awilliams), indicating a broad effort to map enterprise account existence across corporate identity domains.

Strategic Implications for Cloud Identity Governance

The widespread adoption of OAuth Client ID Spoofing marks a major shift in adversary tradecraft. Historically, defenders relied on the assumption that pre-access testing—such as password spraying or credential stuffing—would generate visible telemetry in the form of elevated sign-in failure rates tied to well-known endpoints like Office 365 Exchange Online or Azure Portal.

By shifting to spoofed Client IDs and leveraging ROPC endpoints, attackers eliminate this early warning system. Security leaders must recognize the systemic risks introduced by this evasion technique:

  1. Loss of Signal Integrity: SOC telemetry is only as valuable as its completeness. When authentication events register with blank application metadata, automated SIEM correlation rules fail to trigger alert workflows.
  2. Invalidation of App-Scoped Controls: Many organizations enforce multi-factor authentication (MFA) or location-based access rules via Conditional Access policies tied strictly to enterprise applications. Spoofed requests bypass these policy evaluation chains entirely because the application context is unresolved.
  3. Pre-Attack Stealth Reconnaissance: Attackers can validate massive databases of breached credentials offline. Once a working password is confirmed via AADSTS700016, the adversary can strategically execute a single, highly targeted login attempt using legitimate application channels, reducing their footprint to a minimum.

SOC Playbook: Detection, Auditing, and Mitigation Strategies

Mitigating the risk posed by OAuth Client ID Spoofing requires security operations and identity engineering teams to pivot from traditional application-centric monitoring to telemetry-based anomaly hunting. Organizations should immediately deploy the following tactical countermeasures:

1. SIEM Detection Rules for Blank Application Names

Security teams must configure log analytics engines (such as Microsoft Sentinel, Splunk, or Elastic) to continuously audit Microsoft Entra ID sign-in logs (SigninLogs and NonInteractiveUserSignInLogs) for instances where authentication attempts fail while displaying empty application metadata.

Defenders should flag sign-in events where:

  • The AppDisplayName or Application field is null, empty, or whitespace.
  • The request originates from legacy authentication endpoints or the Resource Owner Password Credentials (ROPC) grant flow.
  • A single IP address or subnet generates multiple sign-in failures across varying, non-standard AppId GUID values.

2. Monitoring Specific Error Code Sequences

SOC analysts must monitor identity telemetry specifically for error code AADSTS700016. Rather than treating this error as a benign software misconfiguration or broken third-party script, detection pipelines should classify AADSTS700016 as a high-fidelity indicator of credential validation testing.

Correlation rules should automatically cross-reference instances of AADSTS700016 with preceding AADSTS50126 (bad password) events originating from the same source IP or User-Agent string. When a single host triggers AADSTS700016, the target user account should immediately be flagged for an automated password reset and session revocation.

3. Hardening Identity Policies & Disabling Legacy Authentication

Technical controls remain the most reliable defense against credential-probing methodologies. Organizations should implement the following structural security controls:

  • Completely Disable ROPC and Legacy Auth: The Resource Owner Password Credentials flow inherently lacks support for modern multi-factor authentication and exposes password validation mechanisms directly to HTTP endpoints. Organizations should disable legacy authentication protocols tenant-wide via Conditional Access authentication policies.
  • Enforce Phishing-Resistant MFA: Deploy FIDO2 hardware keys, Certificate-Based Authentication (CBA), or Windows Hello for Business across all corporate accounts. Phishing-resistant MFA renders validated passwords useless to adversaries operating remote account takeover infrastructure.
  • Global Conditional Access Rules: Shift Conditional Access architecture away from application-scoped assignments toward tenant-wide, risk-based policies. Policies should enforce device compliance and Microsoft Entra ID Protection risk signals across all applications, ensuring that spoofed or unregistered client requests are blocked by default.

As cloud identity platforms continue to serve as the primary perimeter for modern enterprise networks, security teams must adapt their detection architectures to look beyond application metadata. By auditing telemetry gaps, tracking error code oracles, and eliminating legacy authentication flows, organizations can effectively close the blind spots exploited by OAuth Client ID Spoofing campaigns.

TN

Written by

TempMail Ninja

Digital privacy and online security expert. Passionate about creating tools that protect users' identity on the internet.