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.

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.
- 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.
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 IntelligenceWhy 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.
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.
| Type | Indicator |
|---|---|
| Sender (Salary Review) | smtp@wekash[.]net, via Amazon SES |
| Subject and attachment | Salary ReviewYour-Q3-Compensation-Summary.docx |
| Phishing URL | hxxps://splace[.]co[.]za/0987643345678908765421234567890987654320987654321223456787654/onedrive/ |
| Sender (Agent Tesla) | contacto06@carloxmextos[.]org |
| Payroll files | Nomina 21.09.2026.xml.001 (RAR)Nomina 21.09.2026.xml.exe |
| SHA-256, Agent Tesla executable | 72966B30BBD87E42C683D2AC7A42BB62021FC14389D508551432FFD70D62F33A |
MITRE ATT&CK mapping 3 techniques
This mapping is AegisAI's own reading of the reported behaviour. Microsoft's report lists no technique IDs.
| ID | Name | Use in this campaign |
|---|---|---|
T1566.001 | Phishing: Spearphishing Attachment | A branded Word file carries the QR code. |
T1204.001 | User Execution: Malicious Link | The recipient scans the code, copies the device code and enters it on Microsoft's page. |
T1528 | Steal Application Access Token | Completing 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
Every email, investigated.
See how AegisAI reads the request inside a message like Salary Review and pulls it from inboxes before anyone scans the code.
Attacks like this one, stopped before the inbox.
Book a demoRelated posts
More from the AegisAI blog.

