SEPTEMBER 8, 2026
OAuth consent phishing is the attack that no firewall blocks, no patch fixes, and no MFA prompt stops. The attacker does not break into the system. They send a consent request to a legitimate identity provider, the victim approves it, and the identity provider issues a long-lived token that gives the attacker the same API access as any authorized application. No exploit. No malware on the endpoint. No anomalous login. Just one click on an ‘Accept’ button that the victim believed was routine.
Between mid-2025 and mid-2026, a financially motivated extortion group conducted the largest documented SaaS consent abuse campaign on record, breaching more than 1,000 organizations across retail, education, manufacturing, and technology through three distinct OAuth attack paths. They compromised CRM platforms, business intelligence tools, collaboration suites, and the integration networks that connect all of them. They exfiltrated customer data, demanded ransoms under threat of publication, and in several cases published the data anyway. At no point did they need to exploit a software vulnerability. The trust relationships their victims had established with third-party applications were the only keys they needed.
This blog is a technical breakdown of how the OAuth consent abuse attack model works, why the controls most organizations have deployed do not address it, and what a detection and governance program designed for authorization-layer attacks actually looks like.
| 1,000+ organizations breached by a single group through OAuth consent abuse without exploiting a single CVE (mid-2025 to mid-2026) Source: Microsoft Security Blog, July 2026 | 1.5B records claimed across the SaaS extortion campaign spanning Salesforce, Microsoft 365, and downstream integrations Source: Microsoft Security Blog, July 2026 | 760 downstream Salesforce customer organizations exposed through one vendor integration OAuth token compromise in August 2025 Source: industry research note, July 2026 | $0 cost to register a malicious OAuth application with Microsoft, Google, or Salesforce’s developer platforms Source: Microsoft Entra ID and Salesforce developer documentation, 2026 |

To understand why this attack model is so effective, it is necessary to understand what OAuth 2.0 actually does, how consent grants are issued, and what happens to access tokens after they are issued.
OAuth 2.0 is the authorization framework that allows users to grant third-party applications access to their data without sharing their passwords. It is the protocol behind every ‘Sign in with Google,’ every ‘Connect to Microsoft 365,’ and every SaaS integration that reads your calendar or sends emails on your behalf. The protocol is correctly designed for its intended purpose: it keeps passwords out of third-party hands and gives users explicit control over what they share with whom.
The consent grant is the mechanism at the heart of this model. When a user authorizes a new application, they are making an authorization decision: this application is allowed to act as me, within the specified permissions, for as long as the token lasts. The identity provider records that decision and issues tokens accordingly. The critical operational detail is that this authorization decision is made once, at the moment of consent, and then operates automatically thereafter without requiring the user’s further involvement.
OAuth consent grant flow: legitimate protocol, weaponized (Disclaimer: not verified against production)// Standard OAuth 2.0 Authorization Code Flow |
MFA is an authentication control. It answers the question: is this person who they claim to be? OAuth consent phishing does not question that claim. The victim authenticates correctly. The identity provider confirms their identity. MFA passes exactly as designed. The attack operates at the authorization layer, which answers a different question: what is this application allowed to do on this person’s behalf? MFA has no opinion about that question. The consent screen is where the authorization decision is made, and the consent screen is exactly where the attacker’s payload is delivered. By the time MFA has confirmed identity, the authorization decision has already been made in the attacker’s favor.
Not all OAuth scopes carry the same risk. The scopes that appear in documented extortion campaigns share a pattern: they enable bulk data export, persistent access, and organizational intelligence. Understanding which scopes represent high risk is the starting point for any consent governance program.
| Scope | What It Allows | Why Attackers Request It |
| Mail.Read / Mail.ReadWrite | Full mailbox read/write access | BEC intelligence: financial threads, pending wire transfers, executive correspondence |
| Files.ReadWrite.All | All OneDrive and SharePoint files | Complete data exfiltration: strategic documents, financial models, customer data |
| Contacts.Read | All address book and contact data | Contact harvesting for campaign amplification; executive relationship mapping |
| offline_access | Enables refresh token issuance | Persistent access: refresh tokens valid up to 90 days, survives password reset |
| User.Read.All | Enumerate all users in the tenant | Organizational mapping: identify high-value targets for spear phishing or BEC |
| Calendars.Read | Full calendar access | Meeting intelligence: who is meeting whom, when, about what |
| Directory.Read.All | Full Azure AD / Entra ID directory | Tenant structure, group memberships, role assignments |
| Salesforce: full API / bulk API | All CRM object read/write including bulk export | Customer database exfiltration: contact records, deal history, revenue data |
Source: Microsoft Entra ID permission documentation; documented ShinyHunters campaign scope analysis, 2025-2026
The most extensively documented SaaS extortion campaign of this period operated across three distinct intrusion paths, identified by threat intelligence research published in July 2026. Each path represents a different exploitation of OAuth trust relationships. Together they illustrate why perimeter-focused and authentication-focused security controls are structurally insufficient against an authorization-layer attack model.
The first intrusion path combined voice social engineering with a technical consent grant. Operators called employees of target organizations, impersonating IT support staff or platform vendor representatives. The voice call established trust and urgency: there was a problem with the employee’s account, or a required integration needed to be authorized, or a security update required app verification.
The employee was then guided through opening a link and approving a consent screen for what appeared to be a legitimate tool. In the Salesforce campaigns, the application was named to closely resemble Salesforce’s native ‘Data Loader’ utility, which many Salesforce administrators use routinely for data import and export. The employee, believing they were authorizing a legitimate administrative tool under the guidance of a support representative, clicked ‘Accept.’
Playbook 1: Fake Data Loader OAuth registration and API exploitation (Disclaimer: for research purposes only)// Fake 'Salesforce Data Loader Pro' app registration (attacker-controlled) |
The second intrusion path is more architecturally interesting and more difficult to defend against, because it does not require deceiving any employee of the target organization. It requires compromising a vendor that already has legitimate OAuth access to the target’s SaaS environment.
In August 2025, a sales engagement platform’s integration service was compromised. The integration stored OAuth connection secrets that provided API access to the CRM environments of customer organizations. When the integration service was breached, the attacker inherited every stored OAuth token and connection secret for every customer tenant that had configured the integration. Approximately 760 downstream organizations were reached through a single vendor compromise.
Playbook 2: Supply chain token replay (Disclaimer: for research purposes only; reconstructed from documented incident analysis)// Supply chain OAuth token compromise: how downstream access works |
The same pattern repeated in November 2025 through a customer success platform integration, reaching more than 200 Salesforce instances. In June 2026, a market intelligence platform was compromised; its stored credentials were used to pivot into the Salesforce and conversation intelligence environments of downstream customers. Each incident was operationally identical: one vendor breach, hundreds of downstream exposures, all through tokens the customers themselves had authorized.
Source: Microsoft Security Blog July 13, 2026; industry research note, July 16, 2026; documented incident analysis 2025-2026
The third intrusion path required neither social engineering nor vendor compromise. Several Salesforce tenants had misconfigured their Experience Cloud guest access permissions, or exposed their Salesforce Aura framework endpoints in ways that allowed unauthenticated API queries to return significantly more data than intended.
The Aura framework endpoint, /aura, accepts GraphQL-style queries and responds with Salesforce object data. Correctly configured, it returns only what guest users are permitted to see. Misconfigured, it can return entire Contact, Lead, Account, or custom object datasets in response to queries from any unauthenticated HTTP client. No OAuth token required. No authentication. No consent. The data is simply publicly accessible because the guest access permissions and API exposure configuration were not reviewed.
Playbook 3: Aura endpoint guest access exploitation (Disclaimer: for defensive research purposes only)// Salesforce Aura endpoint misconfiguration: unauthenticated data access// Contacts, Leads, Accounts, Opportunities, Cases, custom objects |
Source: Microsoft Security Blog July 13, 2026; independent security research on Salesforce Aura GraphQL exposure patterns

The supply chain attack playbook illustrates a risk architecture that most SaaS security programs have not formally addressed: transitive trust through OAuth integration chains. An organization that carefully reviews every application it directly authorizes may still be exposed through the applications that its vendors have authorized, and the applications that those vendors’ vendors have authorized, extending the trust chain indefinitely.
When an organization installs a vendor integration into their Salesforce or Microsoft 365 environment, they review the vendor’s security posture and make an authorization decision. What they do not review is the vendor’s own OAuth grant inventory: which applications does this vendor’s platform connect to? What access have those connected applications been granted? What happens to the connection credentials if any of those applications or their vendors are compromised?
The 2025-2026 Cascade Pattern
The documented campaign produced cascading compromises through multiple integration chains. One vendor’s breach in August 2025 reached approximately 760 downstream organizations. A second vendor’s compromise in November 2025 reached more than 200 additional organizations. A third vendor breach in June 2026 reached customers spanning multiple sectors and geographies. In each case, the downstream organizations had authorized the vendor directly. They had not authorized the attacker, and they had no mechanism to detect that the authorization they had granted to a trusted vendor was being exercised by an unauthorized party. The pattern produces what industry research has documented as the ‘SaaS supply chain multiplier’: one vendor compromise routinely produces dozens to hundreds of downstream victim organizations, each of which sees normal integration activity in their audit logs right up to the moment of public disclosure.
| Trust Level | Who Authorized It | Visibility to End Organization | Risk If Compromised |
| First-party apps | The organization directly authorized | Full: visible in own tenant’s app registrations and enterprise applications | Organization is responsible and has revocation control |
| Third-party integrations | The organization directly authorized a vendor’s published app | Partial: visible in enterprise applications list, but vendor controls the app registration | Vendor compromise inherits all granted permissions; organization must revoke to terminate access |
| Fourth-party (vendor’s integrations) | The vendor authorized apps in the vendor’s own tenant | None: invisible to end organization; not in their app registry | Vendor’s vendor compromise can produce tokens that are replayed against end organization’s data |
| Guest access permissions | The organization configured Experience Cloud or sharing settings | Configuration-visible but not surfaced in standard security reviews | Misconfigured guest permissions enable unauthenticated data extraction; no token required at all |
The operational consequence of OAuth consent abuse is that it produces very little that standard detection tools recognize as malicious. The attacker’s activity signature is, by design, nearly identical to legitimate application activity.
Log analysis: OAuth consent abuse from attacker vs. SOC perspective (Disclaimer: not verified against production)// What appears in Microsoft 365 / Entra ID sign-in logs: |
| Detection Rule | Why It Fails |
| Impossible travel / location anomaly | OAuth token replay from attacker infrastructure produces Microsoft Graph API IPs, not the attacker’s geographic IP. The API call origin is within Microsoft’s datacenter network. |
| Failed login attempts | No failed logins occur. Token replay produces successful authentication events. Credential stuffing indicators are entirely absent. |
| New device registration | No new device is registered. The token is associated with the original consent grant event, not a new device. |
| Anomalous login hours | Token replay can be timed to occur during the victim’s business hours, matching normal usage patterns. |
| Legacy authentication protocol | OAuth 2.0 is not a legacy protocol. Modern Conditional Access policies that block basic auth and legacy protocols do not apply. |
| Malware / EDR | No executable runs on the endpoint. All activity is API calls from the attacker’s remote server to Microsoft’s or Salesforce’s API. The endpoint is uninvolved. |
| DLP on email traffic | Exfiltration occurs via authenticated Microsoft Graph API calls, not email attachment sending or web upload. Standard DLP rules focused on email and file upload do not apply. |
The Signals That Do Exist
OAuth consent abuse does produce detectable signals, but they are authorization-layer signals rather than authentication or network anomaly signals. The consent grant event itself is logged in Entra ID and Salesforce audit logs. The scope of the granted permissions is visible in enterprise application records. The volume and pattern of API calls made by the application can diverge from legitimate application behavior (a legitimate CRM integration does not read 50,000 contact records in 15 minutes). Detection of this attack model requires monitoring the authorization layer: who consented to what, when, with which scopes, and what that application has done since the grant was issued. This is fundamentally different from monitoring the authentication layer, and most SIEM rules, alert configurations, and security monitoring programs are built entirely around the authentication layer.
One of the most consequential properties of OAuth refresh tokens for this attack model is their persistence. Unlike session cookies that expire when the browser is closed, or access tokens that expire in an hour, refresh tokens are designed to provide long-term application access without requiring the user to re-authenticate.
OAuth refresh token lifecycle and persistence (Disclaimer: for defensive research purposes only)// Microsoft Entra ID default token lifetimes (configurable by tenant admin): |
Source: Microsoft Entra ID token lifetime documentation; MSAL token caching documentation
The technical sophistication required to execute an OAuth consent phishing campaign has decreased significantly through the emergence of purpose-built toolkits that automate the steps that previously required technical skill. ConsentFix, documented by security researchers in 2025 and 2026, is the most thoroughly analyzed of these tools.
ConsentFix automates the registration of malicious OAuth applications across multiple identity providers, generates convincing consent phishing page templates calibrated to specific target platforms, manages the storage and replay of stolen tokens, and provides an operator dashboard for monitoring active compromises. The toolkit is available through underground markets and is regularly updated to incorporate evasion techniques documented in platform security research.
| Capability | Manual Attack (Operator Skill Required) | ConsentFix and Automated Toolkits |
| App registration | Manual registration in developer portal; requires understanding of OAuth app configuration | Automated: scripts register apps across multiple tenants simultaneously |
| Consent page generation | Custom HTML required; must accurately impersonate target application UI | Templated: pre-built consent page templates for major platforms |
| Token capture | Custom server required to receive authorization codes and exchange for tokens | Built-in: automated code exchange and token storage |
| Token replay | Manual API scripting required for each target platform | Automated: scheduled token replay maintains persistent access |
| Evasion | Manual implementation of evasion techniques | Built-in: legitimate domain redirection, Cloudflare challenge, state-parameter encoding |
| Scale | Limited by operator bandwidth for campaign management | Dashboard-managed: hundreds of active compromises tracked simultaneously |
| Campaign analytics | Manual tracking | Real-time: consent grant rates, active tokens, API call volumes per compromised account |
Source: independent security research on ConsentFix toolkit; consent phishing automation analysis, 2025-2026
The evasion capabilities in current automated toolkits are particularly relevant for email security gateways and URL inspection tools. Phishing links in consent phishing campaigns point to legitimate identity provider domains (login.microsoftonline.com, accounts.google.com) rather than attacker-controlled domains. The only attacker-controlled component is the redirect_uri, which receives the authorization code after consent is granted. A URL inspection tool that follows the consent phishing link will reach a real Microsoft or Google login page and classify the link as safe.
Consent phishing evasion chain: why automated scanners miss it (Disclaimer: not verified against production)// Evasion chain used in documented 2026 campaigns: |
The documented campaigns and toolkits of the past eighteen months establish consent-based SaaS extortion as a primary attack category rather than an emerging threat. The scale indicators suggest this is now the dominant attack path for financially motivated actors targeting enterprise SaaS environments.
| Campaign / Data Point | Scale | Source |
| ShinyHunters Salesforce campaign (mid-2025 to mid-2026) | 1,000+ organizations compromised; 1.5 billion records claimed | Microsoft Security Blog, July 2026 |
| Sales engagement platform supply chain (August 2025) | ~760 downstream Salesforce customer organizations | Industry research note, July 2026 |
| Customer success platform integration cascade (November 2025) | 200+ Salesforce instances | Multiple security research sources |
| Analytics platform compromise (2026) | 13+ downstream customers including major cloud platforms | Independent security research, 2026 |
| ConsentFix toolkit scale (2025 campaign) | 900 tenant compromises, 3,000 user accounts in one campaign | Independent security research, 2025 |
| 17,000 app campaign | One campaign: 17,000 malicious apps registered, 927,000 phishing messages sent | Consent phishing threat research, 2025-2026 |
| Storm-2372 (Microsoft 365 device code + consent) | 340+ Microsoft 365 organizations across government, defense, NGO, and energy sectors | Microsoft Threat Intelligence, 2025-2026 |
The financially motivated actors behind the dominant 2025-2026 campaigns use a consistent post-compromise monetization model: pay-or-leak extortion. Data is exfiltrated in bulk using legitimate API access, the victim is contacted with a ransom demand and evidence of the exfiltration, and a deadline is set for payment before public publication.
The SaaS extortion model has two properties that distinguish it from ransomware extortion. First, encryption is not required, which means there is no remediation step the victim can take to recover access to their own data. The data has been copied; the copy cannot be encrypted back. Second, the exfiltration is typically silent and fast. CRM bulk API access allows extraction of hundreds of thousands of records in minutes, not hours. The window between initial access and complete exfiltration is often short enough that monitoring tools do not generate alerts before the exfiltration is complete.
Detection queries: OAuth consent abuse and token replay indicators// Microsoft Entra ID / Microsoft Sentinel KQL |
When an unauthorized or suspicious OAuth grant is identified, the response sequence matters. Password reset alone does not terminate access; the OAuth token must be explicitly revoked.
| Response Step | Platform | Action | Effect |
| 1. Identify all grants | Entra ID | Enterprise Applications > app > Users and Groups > review who has consented | Confirms scope of consent grant and which users are affected |
| 2. Revoke consent | Entra ID | Enterprise Applications > app > Properties > Delete OR revoke individual user consent via PowerShell: Revoke-MgUserOAuth2PermissionGrant | Invalidates the OAuth grant; subsequent token refresh attempts will fail |
| 3. Revoke active tokens | Entra ID | PowerShell: Invoke-MgInvalidateUserRefreshToken -UserId <upn> or via portal: Users > account > Revoke sessions | Terminates all refresh tokens; forces re-authentication for all apps |
| 4. Salesforce token revocation | Salesforce | Setup > Connected Apps OAuth Usage > revoke tokens per Connected App per user, or revoke at Connected App level | Terminates API access for the compromised Connected App |
| 5. Audit API activity | Entra ID / Salesforce | Review Graph API logs and Salesforce API usage logs for data accessed during the window | Establishes scope of exfiltration for notification and regulatory reporting obligations |
| 6. Scope review | All platforms | Review remaining application inventory for similar high-privilege grants | Identifies additional exposure before next incident |
Disclaimer: Token revocation and incident response steps should be tested in a non-production environment and validated with platform-specific documentation before operational deployment. Revocation actions affecting production tokens may impact legitimate application integrations.
SaaS OAuth consent abuse represents a category of risk that operates entirely outside the traditional vulnerability-patch-detect model. The threat is not a vulnerability in a product; it is a property of the authorization architecture itself. Defending against it requires visibility into the authorization layer that most security programs have not built.
| Capability | How It Addresses the OAuth Consent Attack Model |
| External SaaS surface discovery | Finds the internet facing SaaS surfaces tied to your domains, including the misconfigured Experience Cloud sites and exposed API endpoints behind Playbook 3, which need no token at all |
| Integration vendor breach monitoring | Tracks the vendors holding OAuth tokens into your environment and surfaces their breach disclosures and leak site appearances before the customer notification arrives |
| Token and connection secret exposure monitoring | Detects OAuth tokens, refresh tokens and integration connection secrets appearing in dark web listings and threat actor channels after a vendor compromise |
| Consent phishing infrastructure detection | Surfaces newly registered domains and application names built to impersonate your own tools, which is the redirect_uri and app name side of a consent campaign |
| Executive and privileged user targeting intelligence | Flags your high value identities appearing in targeting lists and credential markets tied to SaaS extortion campaigns |
RELATED READING
Phishing-as-a-Service 2.0: The Kits That Bypass MFA Without a Fake Login Page https://brandefense.io/blog/phishing-as-a-service-mfa-bypass-device-code/ : How the same kit economy industrialises the device code and consent abuse techniques described here.
Shadow IT: Why the Assets Your IT Team Doesn’t Know About Are Your Most Dangerous Entry Points https://brandefense.io/blog/shadow-it-hidden-attack-surface/ : How unsanctioned SaaS adoption creates OAuth grants that never enter the security inventory.
Continuous Monitoring vs. Annual Audit: Why the TPRM Calendar Is Broken https://brandefense.io/blog/continuous-vendor-monitoring-vs-annual-audit/ : Why an annual review cycle cannot catch a vendor token compromise that happens between audits.
One Vendor, Eleven Crises: Why Your TPRM Program Has a People Data Blind Spot https://brandefense.io/blog/people-data-vendors-tprm-blind-spot/ : The broader supply chain pattern of which OAuth token cascades are the SaaS specific case.

Take control of your digital security with an exclusive demo of our powerful threat management platform.