Book a demo →
← All posts
Threat Watch

Salary Review: A QR Code in a Word File That Ends at Microsoft's Device Code Sign-In

A Word file with a QR code sent law firm staff to Microsoft's real device code sign-in, where no password reaches the attacker.

Salary Review: A QR Code in a Word File That Ends at Microsoft's Device Code Sign-In

AegisAI Threat Watch · Device code phishing

Salary Review: A QR Code in a Word File That Ends at Microsoft's Device Code Sign-In

A Word file with a QR code sent law firm staff to Microsoft's real device code sign-in, where no password reaches the attacker.

TL;DR
What
A Salary Review lure hid a QR code in a Word file that led to Microsoft's real device code sign-in.
Who it hits
More than 10,000 users at 4,800+ organizations, almost all in the US, mostly law firms.
Why filters miss it
The link sits inside an image in an attachment, and the final page is a genuine Microsoft address where no password reaches the attacker.
Do today
Block device code flow in Entra Conditional Access where there is no business need, after auditing use in report-only mode.

The Salary Review campaign hid a QR code inside a Word file that led law firm staff to Microsoft's real device code sign-in, where no password reaches the attacker.

Threat Watch has covered several device code phishing kits, including MadApe and Wazza. This campaign adds four things those posts did not have: a QR code inside a Word attachment instead of a link, a salary review lure, a sector focus on law firms, and Microsoft's own reporting on a single run.

10,000+
users targeted by the Salary Review emails
4,800+
organizations, almost exclusively in the United States
72.1%
of intended targets in professional services, specifically law firms and legal organizations
13 hours
of sending, 13:27 UTC on 19 August to 2:59 UTC on 20 August 2026

The counts describe targeting, not compromises. No number of accounts taken over is reported.

Key judgments

  • The link never appeared as text. Microsoft reports that the QR code moved the phishing URL out of the email body and into an image, bypassing email gateway controls.
  • The last step was genuine. The fake OneDrive page requested a real device code before the recipient arrived, and the recipient signed in on Microsoft's own device login page.
  • The goal was a token, not a password. Microsoft says completing the sign-in would have transferred a valid session token with persistent access, without re-triggering MFA.
  • The targeting was narrow for a phishing run. In Microsoft's breakdown of intended targets, professional services account for 72.1 percent, technology and software 22.5 percent and other sectors 5.4 percent.
  • QR codes are falling overall but rising inside Word files. Microsoft counts QR code attacks down 67 percent from Q2, while Word attachments grew from 14 to 20 percent of them.

See a lure like this caught: watch the explainer, or book a demo.

How did a salary email turn a QR code into a Microsoft sign-in?

The email had no text, only a Word file

Microsoft's researchers observed messages with the subject Salary Review and no visible body text. The only content was a Word attachment, Your-Q3-Compensation-Summary.docx, made to look as if it came from the recipient's employer: company branding, the recipient's name, and a claim that pay had been revised after a Q2 performance review. A QR code in the document was offered as the way to see the details.

The QR code led to a fake OneDrive page with a real code

Scanning the code opened a page at splace[.]co[.]za that impersonated a OneDrive sign-in portal. Microsoft reports that the page had already made an authentication request to Microsoft's device authentication service before the recipient arrived. It showed the resulting code, told the recipient to copy it and continue, and ran a countdown timer that signalled each code had a limited validity window.

Microsoft's own page finished the flow

The recipient was then sent to the legitimate microsoft.com/devicelogin portal, entered the code and signed in. The flow behind that page is a standard: RFC 8628 lets a device without a browser show a code that the user enters on a second device, and it warns that an attacker can send a target the address and code by email. Microsoft says completing the sign-in would have transferred a valid session token to the attacker, granting persistent access to the Microsoft 365 account without exposing the password and without re-triggering MFA.

Who did the Salary Review campaign target?

Microsoft reports that the campaign targeted the professional services sector, specifically law firms and legal organizations, and that the organizations were almost exclusively located in the United States. Its chart of intended targets by industry puts professional services at 72.1 percent, technology and software at 22.5 percent and the rest at 5.4 percent, so this was a law firm campaign with a sizeable technology tail, not a legal-only one.

The messages went out between 13:27 UTC on 19 August and 2:59 UTC on 20 August 2026, a 13-hour period, to more than 10,000 users across more than 4,800 organizations. They came from smtp@wekash[.]net through Amazon Simple Email Service. A salary review is a message an employee expects to be private and personal, which is AegisAI's reading of why the lure arrived as a branded document rather than as a link.

Why did the attacker put the QR code in a Word file?

Microsoft's explanation is direct: the QR code moved the phishing URL out of the email body and into an image. A filter that reads links in text has nothing to read. AegisAI's addition: the code is also inside an attachment, so the image is one layer further from the message body, and the scan happens on a phone that may sit outside the mail controls altogether.

The quarter's numbers point the same way. Microsoft counted approximately 12.1 million QR code attacks in Q3, down 67 percent from Q2, with monthly volume 86 percent below its March peak. Within that smaller total, Word attachments accounted for 14 percent of QR code attacks in July and August and 20 percent in September. The same report notes that CAPTCHA-gated phishing began to recover while QR code attacks kept falling.

A second Q3 campaign used payroll lures for malware

Microsoft's report pairs Salary Review with a Spanish-language campaign on 21 September 2026 that reached more than 56,000 users across more than 8,100 organizations, led by Colombia (15 percent), the United States and Mexico (12 percent each). It was sent from carloxmextos[.]org, which passed SPF, DKIM and DMARC, and used purchase order and payroll lures. The payroll file, Nomina 21.09.2026.xml.001, was a RAR archive holding an Agent Tesla executable with a double extension. The two campaigns ran a month apart on separate infrastructure; the common thread is familiar business paperwork as the lure.

How can organisations protect Microsoft 365 from device code phishing?

Block the flow where there is no business need

Microsoft Learn recommends getting as close as possible to a unilateral block on device code flow. The steps: audit current use first, create a Conditional Access policy for all users with emergency access accounts excluded, target all resources, set the Authentication flows condition to Device code flow, grant Block access, and run it in report-only mode before switching it on.

Strengthen sign-in for the accounts that matter most

Microsoft's own recommendations for this campaign include passwordless sign-in and Conditional Access policies that require phishing-resistant MFA for privileged accounts, alongside awareness training and phishing simulations. Its report also publishes a hunting query that matches the sender address. That finds this run, but a new sender would pass it.

The QR code hid the link and Microsoft's own page took the code. Neither step gave a filter anything to catch.

AegisAI Threat Intelligence

Why standard controls miss it

Link scanning has nothing to scan. The email body is empty and the URL lives in an image inside a Word file, so a control that extracts links from text sees a clean message with an attachment.

Password-focused defences have nothing to catch either. The only sign-in screen that matters is the real microsoft.com/devicelogin, so the address bar is correct, and the fake OneDrive page never asks for a password. What the attacker wants is a session token, and that request only becomes visible once someone has acted on the message.

How AegisAI stops this

Aegis does not classify infrastructure. It classifies intent. A lure with no attacker-owned infrastructure still has to ask the recipient to do something on the attacker's behalf, and that request is what gets classified, independent of how clean the destination URL is.

AegisAI's agents evaluate the message and the destination it points to together, and pull a malicious message out of mailboxes before users see or click it.

When a lure or a compromised session is caught, the response compounds: the message is withheld at classification, copies already delivered are retracted, rewritten links refuse a late visit, the account's outbound and internal mail gets rescanned, and lateral phishing attempts to colleagues are blocked at the same bar rather than treated as a fresh, unrelated message.

How AegisAI stops credential phishing, 48 second video

How AegisAI stops credential phishing, 48 seconds

Recommendations for defenders

  • Block Entra device code flow through Conditional Access for all users and resources: audit current use first, allow only documented cases, exclude emergency access accounts, and run the policy in report-only mode before enforcing it.
  • Require phishing-resistant MFA for privileged accounts through Conditional Access, and move staff who handle client matters and payroll to passwordless sign-in.
  • Decode QR codes in inbound images and attachments, including Word files, and judge the decoded address the same way as any link in the message.
  • Review Entra sign-in logs for device code authentication and correlate each hit with a recent message that carried a QR code or an unexpected HR document.
  • Search mail logs for the sender, subject and attachment name in the indicators below, and DNS and proxy logs for the phishing host.
  • Add the pattern to awareness training and the reporting channel: an HR message that asks staff to scan a code and then enter a code on a Microsoft page is a report.

FAQ

How do I protect Microsoft 365 from device code phishing?

Block device code flow with an Entra Conditional Access policy unless a documented use needs it, and test the policy in report-only mode first, as Microsoft Learn describes. Pair it with phishing-resistant MFA for privileged accounts and with checks on QR codes inside attachments, since this campaign started from a Word file.

How do I detect QR code phishing in email?

Treat the QR code as a link: decode it, including codes inside Word files and other attachments, and judge where it goes. In the Salary Review campaign the code did not end at a fake password page but at Microsoft's real device code sign-in, so the warning sign is being asked to copy a code and enter it on a Microsoft page.

Why were law firms targeted by the Salary Review phishing email?

Microsoft does not say why. It reports that the campaign targeted professional services, specifically law firms and legal organizations, with 72.1 percent of intended targets in that sector and 22.5 percent in technology and software, and that the organizations were almost exclusively in the United States.

What was the Salary Review phishing campaign?

A campaign Microsoft observed between 19 and 20 August 2026 that sent emails with the subject Salary Review to more than 10,000 users at more than 4,800 organizations. A Word file with a QR code led to a fake OneDrive page and then to Microsoft's real device code sign-in, which would have handed the attacker a session token.

For researchers

What the reporting does not tell us 4 gaps

Victims. Microsoft gives the number of users and organizations targeted, not how many scanned the code, entered it or lost an account.

Attribution. The report names no actor for the Salary Review campaign.

Indicator life. Microsoft lists wekash[.]net and splace[.]co[.]za as seen only on 19 and 20 August 2026. It does not say whether either was reused or taken down.

Why law firms. The report describes the sector focus but gives no reason for it.

Indicators published by Microsoft Salary Review and Agent Tesla

These come from Microsoft's indicator table. Domains are written with [.] so they cannot be clicked. Infrastructure churns, so treat them as historical context and hunting leads, not a live blocklist.

TypeIndicator
Sender (Salary Review)smtp@wekash[.]net, via Amazon SES
Subject and attachmentSalary Review
Your-Q3-Compensation-Summary.docx
Phishing URLhxxps://splace[.]co[.]za/0987643345678908765421234567890987654320987654321223456787654/onedrive/
Sender (Agent Tesla)contacto06@carloxmextos[.]org
Payroll filesNomina 21.09.2026.xml.001 (RAR)
Nomina 21.09.2026.xml.exe
SHA-256, Agent Tesla executable72966B30BBD87E42C683D2AC7A42BB62021FC14389D508551432FFD70D62F33A
MITRE ATT&CK mapping 3 techniques

This mapping is AegisAI's own reading of the reported behaviour. Microsoft's report lists no technique IDs.

IDNameUse in this campaign
T1566.001Phishing: Spearphishing AttachmentA branded Word file carries the QR code.
T1204.001User Execution: Malicious LinkThe recipient scans the code, copies the device code and enters it on Microsoft's page.
T1528Steal Application Access TokenCompleting the sign-in would hand the attacker a session token.
References 4 sources
  • Microsoft (5 Nov 2026). Email threat landscape: Q3 2026 trends and insights. microsoft.com
  • Microsoft Learn (updated 7 Apr 2026). Block authentication flows with Conditional Access policy. learn.microsoft.com
  • IETF (Aug 2019). RFC 8628: OAuth 2.0 Device Authorization Grant. rfc-editor.org
  • MITRE ATT&CK. Techniques T1566.001, T1204.001 and T1528. attack.mitre.org

Attacks like this one, stopped before the inbox.

Book a demo