Payroll Pirates (Storm-2755) Abuse Microsoft Graph for HR/Finance Staff Recon After AiTM Account Compromise

Payroll Pirates (Storm-2755) Abuse Microsoft Graph for (TL-2026-1970), also tracked as Payroll Pirates, is a high-severity phishing campaign, first published 2026-08-10. It is attributed to Storm-2755 with medium confidence, affects Microsoft Microsoft 365 / Entra ID (OAuth session and Microsoft Graph, maps to 15 MITRE ATT&CK techniques (T1078.004, T1087.003, T1087.004), and is covered by 9 detection rules and 13 indicators of compromise.

Key facts for TL-2026-1970

Threat ID
TL-2026-1970
Also known as
Payroll Pirates
Severity
HIGH
Status
ACTIVE
Category
PHISHING
First published
2026-08-10
Last reviewed
2026-08-10
Attribution
Storm-2755
Attribution confidence
MEDIUM
Motivation
FINANCIAL
Target sectors
health, education, manufacturing, government administration, professionalservices
Target regions
North America, Europe, united states of america, canada
Detection rules
9
Indicators of compromise
13

Malware and tooling in Payroll Pirates (Storm-2755) Abuse Microsoft Graph for

Malware and tooling: Storm

A widespread, financially-motivated campaign overlapping with Microsoft's Storm-2755 ("Payroll Pirates") activity cluster uses voicemail-themed and SEO-poisoned lures to route Microsoft 365 users through legitimate-service redirect chains into adversary-in-the-middle (AiTM) proxy pages that capture session cookies and OAuth tokens, defeating non-phishing-resistant MFA. Compromised sessions are then used to query Microsoft Graph and enumerate payroll, HR, finance, and administrative staff, collect related financial email, and in some cases redirect employee direct-deposit payments to attacker-controlled accounts.

How Payroll Pirates (Storm-2755) Abuse Microsoft Graph for works

Arctic Wolf researchers are tracking a widespread, active Microsoft 365 account-compromise campaign that shares significant tactical overlap with the "Payroll Pirates" activity cluster Microsoft tracks as Storm-2755, first documented publicly by Microsoft's Security Blog on 2026-04-09 against Canadian organizations and now observed more broadly across the U.S., Canada, and Europe.

Victims receive voicemail-themed phishing emails styled as automated call notifications with Microsoft branding and an "OPEN [Organization] VOICEMAIL PORTAL" call to action, with subject lines following the pattern '[Organization] :ATTN: Review messages. Ref id: [random string]'. Clicking the link routes the victim through a multi-stage redirect chain built entirely from abused legitimate infrastructure: a Google Meet link-redirect URL, Google's outbound-link infrastructure, a Google Ads Campaign Manager /ddm/clk dynamic click tracker, and an Amazon S3-hosted landing page, before finally reaching an attacker-registered adversary-in-the-middle (AiTM) domain. Separately, Microsoft's Storm-2755 reporting describes SEO poisoning and malvertising that ranked the actor-controlled domain bluegraintours[.]com at the top of search results for queries like "Office 365" and common misspellings such as "Office 265", driving victims directly to a spoofed Microsoft 365 sign-in page.

The AiTM infrastructure is newly registered (domains observed less than 10 days old at time of use) and hosted on Hostinger, serving over HTTP/2 with response headers 'server: openresty/1.31.1.1' and 'x-powered-by: Express' at the root, and 'x-powered-by: PHP/8.2.32' on a fingerprinting endpoint at path '/st_58200519/class_identifier.php'. That endpoint collects a browser/device fingerprint (navigator properties, screen dimensions, language, timezone, WebGL vendor/renderer, cookie support) and queries api.country.is for geolocation, storing the result in a 7-day 'rcfh_country' cookie, before serving a reverse-proxied copy of the genuine Microsoft authentication flow. Because the kit proxies the real Microsoft login in real time rather than presenting a static credential-harvesting page, it captures session cookies and OAuth access/refresh tokens as the victim completes an otherwise normal sign-in, including MFA — rendering non-phishing-resistant MFA insufficient. A missing OAuth nonce parameter in the AiTM-initiated flow produces the rare Microsoft Entra sign-in error 90014, and Entra error 50199 has been observed immediately preceding successful token replay; both are high-fidelity indicators when paired with residential-proxy source traffic. Microsoft's Storm-2755 reporting separately documents an Axios/1.7.9 HTTP client used to replay stolen tokens roughly every 30 minutes, keeping sessions alive for up to approximately 30 days until refresh-token expiration.

Post-compromise sign-in activity shows a distinctive pattern: an initial burst of sign-ins from multiple residential-proxy IP addresses within seconds of compromise, often reporting implausible OS/browser combinations (e.g., Mobile Safari reported on Windows 10); recurring "maintenance" sign-ins roughly every 8 hours (11-24 hours after the initial burst) from rotating residential-proxy addresses commonly associated with an "anyIP"-style network; and a single Entra SessionID persisting unchanged across many different source IP addresses, ASNs, and geographic locations. The client consistently claims to be Microsoft Outlook while the actual user-agent string is anomalous — Firefox 131.0, Firefox 151.0, or Python Requests — rather than a genuine Outlook/Edge client.

Once inside a tenant, the actor queries Microsoft Graph (GET https://graph.microsoft.com/v1.0/users with role/department filters for payroll, HR, finance, and administrative terms; GET https://graph.microsoft.com/v1.0/users?$top=999 for broad enumeration; and GET https://graph.microsoft.com/v1.0/me) using the user-agent 'axios/1.18.1', triggering the Microsoft Defender XDR alert "Suspicious Exchange Online Graph Reconnaissance Activity." The actor then reads mailbox content via MailItemsAccessed "Bind" operations (ClientAppId 5d661950-3475-41cd-a2c3-d671a3162bc1 claiming Microsoft Outlook, undocumented APIId c999ed3e-27ae-4cb3-b3a2-46b056af63d3, user-agent 'Client=REST;Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:131.0) Gecko/20100101 Firefox/131.0'), searching for messages containing payroll, invoices, payments, banking, benefits, and internal-documentation keywords. This collection is tightly synchronized across tenants — Arctic Wolf observed 18 MailItemsAccessed events across 3 different tenants within 26 seconds, and 11 events across 2 tenants within 43 seconds — indicating centralized, automated orchestration rather than manual, per-victim browsing.

Most intrusions deliberately avoid classic business-email-compromise indicators (MFA-method changes, password resets, new device registration, outbound lateral phishing, evasive inbox-rule creation) to minimize detection surface while the actor harvests information. In a smaller set of hands-on-keyboard intrusions, the actor does take direct action: creating inbox rules that move messages containing "direct deposit" or "bank" keywords to Deleted Items or Conversation History and mark them read (hiding HR correspondence about fraudulent payroll-change requests from the victim), and in limited cases changing the account password or MFA methods to entrench persistence. This interactive activity originates from a distinct hosting-provider ASN (AS27176, Datawagon LLC) rather than the residential-proxy ranges used for routine token refresh. Storm-2755's documented endgame is direct financial theft: sending an email such as "Question about direct deposit" while impersonating the compromised employee, then socially engineering HR staff into manually changing direct-deposit details, or directly manipulating HR SaaS platforms (e.g., Workday) to redirect the victim's salary to an attacker-controlled bank account.

Targeting spans healthcare, education, manufacturing, government, and professional-services organizations across the United States, Canada, and Europe, with hundreds of organizations affected as of Arctic Wolf's August 2026 reporting.

MITRE ATT&CK techniques used in TL-2026-1970

Persistence

T1078.004 Valid Accounts: Cloud Accounts; T1556.006 Modify Authentication Process: Multi-Factor Authentication

Discovery

T1087.003 Account Discovery: Email Account; T1087.004 Account Discovery: Cloud Account

Command and Control

T1090.002 Proxy: External Proxy

Collection

T1114.002 Email Collection: Remote Email Collection

Credential Access

T1528 Steal Application Access Token; T1539 Steal Web Session Cookie; T1557 Adversary-in-the-Middle

Stealth

T1564.008 Hide Artifacts: Email Hiding Rules

Initial Access

T1566.002 Phishing: Spearphishing Link

Resource Development

T1583.001 Acquire Infrastructure: Domains; T1583.008 Acquire Infrastructure: Malvertising; T1608.006 Stage Capabilities: SEO Poisoning

Impact

T1657 Financial Theft

Affected products and versions in Payroll Pirates (Storm-2755) Abuse Microsoft Graph for

  • Microsoft — Microsoft 365 / Entra ID (OAuth session and Microsoft Graph API)
    Vulnerable versions: all tenants without phishing-resistant MFA and session-lifetime controls

Remediation for Payroll Pirates (Storm-2755) Abuse Microsoft Graph for

Immediate actions

  • Search Entra ID sign-in logs for error code 90014 (missing OAuth nonce) and error code 50199 correlated with subsequent successful sign-ins from residential-proxy ASNs
  • Hunt for a single Entra SessionID observed across multiple distinct IP addresses, ASNs, or geolocations, especially with ~8-hour recurrence
  • Alert on user-agent claiming Microsoft Outlook while the underlying client string is Firefox 131.0/151.0 or Python Requests
  • Alert on Microsoft Graph queries from user-agent 'axios/1.18.1' (or Axios generally) enumerating /users with payroll/HR/finance filters or $top=999
  • Review and remove inbox rules that move messages containing 'direct deposit' or 'bank' to Deleted Items/Conversation History and mark them read
  • Block or sinkhole known AiTM domains (bluegraintours[.]com and any mslogin./msonline./msauth.-pattern impersonation domains) at DNS/proxy
  • Force password reset and full session/refresh-token revocation for any account showing the above indicators

Workarounds

  • Restrict or monitor third-party OAuth app / Graph API access with anomalous user-agents (e.g., axios) against mailbox and directory scopes
  • Restrict outbound email or DLP scanning for subject lines matching '[Organization] :ATTN: Review messages. Ref id:' and 'Question about direct deposit'

Longer-term hardening

  • Deploy phishing-resistant MFA (FIDO2/WebAuthn or certificate-based) for all users with access to payroll, HR, or finance systems
  • Enable Continuous Access Evaluation (CAE) and Conditional Access token-lifetime policies to shorten the window a stolen OAuth session remains usable
  • Apply Conditional Access location/device-compliance policies to reduce the value of a stolen session cookie replayed from unmanaged residential-proxy infrastructure
  • Add SOC monitoring for the Microsoft Defender XDR 'Suspicious Exchange Online Graph Reconnaissance Activity' alert and MailItemsAccessed volume anomalies
  • Require secondary out-of-band verification (phone callback to a known number) for any payroll direct-deposit change request, including changes made directly in HR SaaS platforms such as Workday
  • User awareness training on voicemail-themed phishing lures and SEO-poisoned 'Office 365' search results

Timeline of Payroll Pirates (Storm-2755) Abuse Microsoft Graph for

  • Microsoft Security Blog publishes the first public analysis of Storm-2755 "payroll pirate" attacks, documenting SEO-poisoned/malvertised bluegraintours[.]com AiTM sign-in pages, Axios token-replay, inbox-rule concealment of direct-deposit correspondence, and social-engineering of HR/Workday to redirect Canadian employees' salaries.
  • Arctic Wolf observes a broader wave of the AiTM/Microsoft Graph reconnaissance activity throughout July 2026, expanding beyond the originally reported Canadian scope to hundreds of organizations across healthcare, education, manufacturing, government, and professional services in the U.S., Canada, and Europe.
  • Arctic Wolf publishes "Payroll Pirates: Strange New Tides in Business Email Compromise," detailing the Google Meet/Google Ads/Amazon S3 redirect chain, AiTM kit fingerprinting endpoint, Entra sign-in error codes 90014 and 50199, residential-proxy session-refresh cadence, and cross-tenant synchronized MailItemsAccessed collection.
  • The Hacker News, TechNadu, Tech Times, and Security Online publish coverage summarizing the Arctic Wolf findings and the Storm-2755 overlap for a broader defender audience.
  • Threadlinqs Intelligence Platform completes deep-dive research on the campaign for detection-engineering and SOC-hunting guidance.
  • GBHackers publishes "Payroll Pirates Abuse Microsoft Graph to Find HR and Finance Staff After Account Compromise," the article that triggered this threat's ingestion into the platform.

Sources cited for Payroll Pirates (Storm-2755) Abuse Microsoft Graph for

Threats related to Payroll Pirates (Storm-2755) Abuse Microsoft Graph for

Detection coverage for TL-2026-1970

As of 2026-08-10, Threadlinqs Intelligence publishes 9 detection rule(s) for TL-2026-1970 across Splunk SPL, Microsoft KQL and Sigma, covering 13 indicator(s) of compromise. The whole corpus is readable without an account; a free account unlocks full detection query text in Splunk SPL, Microsoft KQL and Sigma; paid tiers add raw indicator values, correlation and the MCP server. Threadlinqs MCP server · View plans.

Threadlinqs Intelligence — Real-Time Threat Detection Platform

[ 0 threats ] [ 0 det ] [ CRIT: 0 ] [ HIGH: 0 ]
// threat_feed
$ sort --newest
Showing all threats

Latest Threats