AUGUST 20, 2026
Your security awareness programme has taught people to check the sender, inspect the domain, look for the padlock and never type credentials into an unfamiliar page. A device code phishing attack passes every one of those checks. The victim ends up on the genuine Microsoft login page, at the genuine Microsoft domain, with a valid certificate, and completes multi factor authentication correctly. There is nothing to spot, because nothing about the page is fake.
Attacks using this technique rose 1,380 percent between the second half of 2025 and the first four months of 2026, driven largely by a subscription platform that packaged the method for buyers with no technical skill. By April 2026 defenders were tracking 10 to 15 entirely new campaigns every 24 hours.
The uncomfortable part is not the growth rate. It is that the technique defeats phishing resistant multi factor authentication, including hardware security keys and passkeys, and that almost no awareness curriculum currently mentions it.
| 1,380% growth in device code phishing attacks from H2 2025 to the first four months of 2026 | 10-15 entirely new campaigns launched every 24 hours as of April 2026 | 25+ distinct phishing kits now selling this technique as a standard feature | 90 days how long a harvested refresh token stays valid while renewing itself |
(Sources: public reporting on the EvilTokens platform, 2026)
OAuth 2.0 includes an authorization flow designed for devices that cannot display a usable browser: smart televisions, printers, conference room hardware, command line tools. The device shows a short code, the user types that code into a normal browser on a phone or laptop, approves the request, and the device receives its tokens. The flow exists precisely because typing a password on a television remote is unworkable.
The attack inverts the trust in that design. The attacker plays the role of the device, and the victim unknowingly plays the role of the person authorising it.
| STEP | WHAT HAPPENS |
| 1. Code request | The attacker calls the identity provider’s own device authorization endpoint and receives a short lived user code. This is a legitimate API call and produces no suspicious artifact. |
| 2. Lure delivery | The code is placed in a message that reaches the victim through email, chat, SMS, a calendar invitation or a phone call. The channel does not matter, which is why email centric controls miss it. |
| 3. Redirect to the real page | The victim is sent to the identity provider’s genuine device login page. There is no spoofed domain and no cloned interface anywhere in the chain. |
| 4. Approval | The victim enters the code, signs in with the corporate password and completes multi factor authentication. Every control fires correctly and every control approves. |
| 5. Token collection | The tokens are issued against the device code, which the attacker holds. The access token grants roughly 90 minutes of direct API access to mail, files and chat, with no browser session involved. |
| 6. Persistence | The refresh token remains valid for up to 90 days, renews itself on use, and survives a password reset. Containment that stops at a credential rotation leaves the attacker in place. |
Most anti phishing investment over the last five years has gone into making authentication harder to forge. Hardware security keys, passkeys and phishing resistant factors all solve the same problem: proving that the person signing in is who they claim to be, and that they are signing in to the site they think they are.
Device code phishing does not attack that problem. Authentication is allowed to succeed, correctly and honestly. What the attacker takes is the authorization that follows it, and no authentication factor governs where an authorised token ends up. A passkey makes no difference here, because the passkey worked.
Three consequences follow, and each one removes a detection surface your team currently relies on.
There is no stolen credential, so credential leak monitoring and dark web password matching stay silent throughout. There is no intercepted session cookie, so adversary in the middle detections built around cookie replay have nothing to compare. There is no vulnerability, so there is no CVE to track, no patch to deploy and no version to check, because the abused flow is functioning exactly as its specification requires.
This is the question worth sitting with, because the gap is structural rather than accidental.
Security awareness content is built almost entirely from counterexamples. A training module shows learners a fraudulent page and asks them to find the flaw: the transposed letters in the domain, the certificate warning, the odd sender address, the urgency in the subject line. The whole pedagogy depends on there being something wrong in the picture.
In a device code attack there is nothing wrong in the picture. The domain is correct. The certificate is valid. The login page is the provider’s own. The prompt asking for a code is a legitimate prompt that the provider itself designed. There is no screenshot a trainer can annotate with a red circle, which is a large part of why the topic has not entered curricula.
The second reason is that the action being requested looks like an action users have been taught is safe. Typing a short code into a trusted site is the same gesture as entering a one time passcode, and one time passcodes have been presented for years as the responsible thing to do. The attack borrows the muscle memory that the training itself created.
The third reason is delivery. Awareness programmes are still built around email, and the simulated phishing platforms that measure them almost exclusively send email. A device code lure arrives just as easily through a chat message, a calendar invitation, an SMS or a voice call, so even organisations running mature simulation programmes are not testing the path this attack takes.
Because there is no visual tell, the replacement lesson cannot be a judgement call. It has to be a rule with no interpretation required.
The rule is this: never enter a sign in code that you did not personally generate on a device in front of you. If a code arrives from someone else, in any channel, for any reason, it is an attack. There is no legitimate business situation in which a colleague, a supplier or the IT department needs you to type a code that they produced.
Pair the rule with one concrete piece of context so it is remembered: explain that approving the code hands over a key that keeps working for up to 90 days and keeps working after the password is changed. Users comply with rules far more reliably when the consequence is specific rather than abstract.

This technique did not spread because it became easier to execute. It spread because it became purchasable.
A phishing as a service platform that launched on Telegram in mid February 2026 compromised more than 340 Microsoft 365 organisations within roughly five weeks, sold in monthly tiers ranging from 600 to 1,500 dollars. A single campaign in March 2026 pushed roughly 1.5 million messages to about 179,000 organisations across 43 countries. More than 25 distinct kits now offer device code phishing, and several established phishing frameworks have added it as a standard feature alongside their existing adversary in the middle capabilities.
Two implications matter for defenders. The first is that indicator based defence expires quickly, because kit development is now assisted by generative tooling and new variants appear weekly rather than quarterly. A detection built on a specific kit’s fingerprint has a useful life measured in days. The second is that this is not a Microsoft problem, even though roughly 99 percent of current activity targets Microsoft identities. The device authorization grant is part of OAuth 2.0 itself and is implemented by GitHub, AWS, Salesforce and most other platforms your engineering teams authenticate against. More than a thousand organisations have already been compromised through device code attacks against a single non Microsoft platform.
| SIGNAL | WHY IT IS WORTH AN ALERT |
| Device code grant in a tenant that does not need it | If your organisation provisions no shared kiosks, conference devices or CLI tooling, the legitimate volume of this grant type is close to zero, which makes any occurrence worth investigating. |
| Token issued to an unfamiliar client application | A first party client with broad default scopes appearing for a user who has never authenticated to it before is a strong indicator, particularly outside working hours. |
| Geographic split between approval and use | The user approves from a known corporate network and the first API call arrives from a different country minutes later. The identity is consistent, the geography is not. |
| Activity that outlives a password reset | Continued mailbox or file access after a credential rotation is close to confirmation, because it means refresh tokens were never revoked. |
Detection content built around a named kit, a specific domain pattern or a known redirect chain will decay within weeks, because the kit ecosystem now regenerates faster than indicator catalogues can be maintained. Detection built around the technique itself, the appearance of a device code grant where none belongs, keeps working regardless of which platform sells the campaign next month.
| ACTION | DETAIL |
| Block the grant where it has no business use | Conditional access can restrict the device code flow at tenant or group level. Scope it carefully, because a blanket block will break legitimate CLI tooling, developer workflows and genuinely constrained devices. |
| Alert on the grant type | Even where the flow is permitted, every use should generate a reviewable event. Low volume makes this one of the cheapest high signal alerts available. |
| Add token revocation to the playbook | Incident response for any suspected identity compromise must explicitly revoke refresh tokens and review consented applications, not merely reset the password. |
| Rewrite the awareness module | Replace spot the fake page guidance with the single rule about never entering a code you did not generate, and deliver it outside the email simulation programme. |
| Look beyond Microsoft | Audit the device authorization grant on every other identity provider in use, including source control, cloud consoles and customer relationship platforms. |
| CAPABILITY | WHAT IT ADDRESSES IN THIS ATTACK CHAIN |
| Dark Web Monitoring | Visibility into the closed channels where phishing as a service platforms are marketed and sold, including offerings that name your organisation or your industry as a target set. |
| Cyber Threat Intelligence | Tracking of the actors and kits behind device code campaigns, mapped to observable technique rather than perishable indicators, so detection engineering has something durable to build on. |
| Brand Protection and DRPS | Detection of lookalike domains and impersonation infrastructure used to deliver the lure before the victim ever reaches the legitimate login page. |
| VIP and Executive Security | Monitoring of the executive and privileged identities that make the highest value targets for a technique whose entire payoff is a long lived token. |
| EASM | Identification of exposed and forgotten assets that give an attacker the organisational context needed to make the lure credible. |
RELATED READING
CISO’s Guide to Account Takeover Prevention: Detection, Response, and Recovery: https://brandefense.io/blog/cisos-guide-to-account-takeover-prevention/ The programme level view of the problem this technique feeds into.
How Attackers Use Stolen Credentials: The Complete Account Takeover Lifecycle: https://brandefense.io/blog/account-takeover-lifecycle/ What an attacker does with access once a token or credential is in hand.
Account Takeover vs. Credential Stuffing: What’s the Difference and Why It Matters: https://brandefense.io/blog/account-takeover-vs-credential-stuffing/ Why grouping every identity attack under one label hides gaps like this one.
How Spear Phishing Campaigns Target C-Suite Executives: Tactics, Tools, and Defense: https://brandefense.io/blog/spear-phishing-c-suite-executives/ The targeting research that decides who receives the lure in the first place.
The pattern worth noticing is that this attack did not defeat a control. It walked around the place where controls are installed. Authentication has been hardened for a decade while authorization has been left largely unexamined, and attackers have moved to the unexamined side. Expect more of this shape rather than less, and expect the next example to arrive on a platform nobody was watching.

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