MadApe: A Phishing Kit That Turns PDF Lures Into Microsoft Device Code Sign-Ins
MadApe is a device code phishing kit. Document lures send victims to Microsoft's real sign-in page, and the attacker's client receives the token.

AegisAI Threat Watch · Device code phishing
MadApe: A Phishing Kit That Turns PDF Lures Into Microsoft Device Code Sign-Ins
MadApe sends business-document lures in at least nine languages that walk victims through Microsoft's real device code sign-in. The attacker's client can receive a token, and no password is ever collected.
Analysis based on Group-IB research (published 29 October 2026), cross-checked against The Hacker News (weekly recap, 2 November 2026).
MadApe is a device code phishing kit: document lures in at least nine languages send victims to Microsoft's real sign-in page, and the attacker's client receives the token.
It arrives as business email with a file attached, made to look like a SharePoint file-sharing notice. The file holds a link to an intermediary page. That page shows a device code and opens Microsoft's own device login page, where the victim enters it. Nothing on the last page is fake, and no password is ever asked for.
Source: Group-IB. Domain counts describe infrastructure, not victims: Group-IB says its backend identifiers count records, not confirmed compromises.
Key judgments
- MadApe is new to public reporting. Group-IB searched for the kit and its infrastructure in earlier reporting and found no description of either, and The Hacker News calls it previously undocumented. Group-IB does not compare its internals with other named kits.
- The kit never needs a password. Group-IB describes a flow that reaches Microsoft 365 accounts without collecting a password on any phishing page, because the victim authenticates on Microsoft's own portal. This is a design choice that makes password-focused controls irrelevant to this attack.
- MFA does not settle the question. Group-IB notes that successful authentication may also satisfy MFA requirements during the legitimate sign-in, so a completed device code sign-in can look like a normal, MFA-cleared login.
- The chain adds friction for scanners, not for victims. Group-IB reports that its intermediary pages need a click and a short delay, which may stop a scanner limited to the first URL, and that some pages sit behind client-side human-verification challenges.
- The infrastructure is large and repetitive. A shared decoy site, same-second domain registrations and a self-named operator panel tie 155 root domains together. AegisAI reads this as one operation. Group-IB's report does not name an actor.
How does MadApe turn a PDF into a Microsoft token?
The attachment looks like a SharePoint notice
Group-IB describes a PDF styled as a SharePoint file-sharing notice. It carries an embedded link to an intermediary page. The observed filenames are business documents: payment reports, invoices, contracts, proposals and account statements, and some include organisation-specific names.
The Hebrew-language emails were the first Group-IB identified, and it reports that they target recipients in Israel. The email channel matters for defence: every step that follows starts with a message in an inbox.
The page shows a code and opens Microsoft's login
After the intermediary page, the victim reaches a page that displays a device code. Group-IB reports that clicking the code copies it to the clipboard, and that the Open File button opens Microsoft's own Device Login portal at microsoft[.]com/devicelogin. The kit's pages submit the code to an /api/code/entered endpoint. Group-IB also found logic that checks /api/code/status/<ID> every five seconds, although a conditional check stopped that loop from running in the instances it analysed.
Microsoft's sign-in finishes the job
The device authorization flow was built for devices without a browser. The standard, RFC 8628, has the device show a code and a verification address, and the user completes the sign-in on a second device. The standard also warns that an attacker might send an email telling a target to visit the verification address.
Group-IB reports that if the victim completes the authorization, the attacker-controlled client can receive an access token for the granted permissions, and possibly a refresh token. That is the whole attack. The sign-in is real, the MFA prompt is real, and the token goes to the wrong party. Group-IB adds that this makes the workflow look more trustworthy than conventional credential phishing.
How is the lure built to keep working?
One redirect variable behind the file
Group-IB found that the intermediary page keeps its destination in a single JavaScript variable, targetUrl, and that the destination differs between samples. AegisAI's reading: an operator can point the same attachment at a new phishing host by changing that value, so a flagged host does not mean the lure document is spent. Group-IB's report does not say how often this happens.
Document themes in at least nine languages
Group-IB catalogued filenames in English, Hebrew, German, Portuguese, French, Spanish, Polish, Finnish and Icelandic. Its table shows that not every lure is a PDF: the Finnish and Icelandic examples are Word files.
Six page templates behind one flow
Group-IB documented pages themed as SharePoint, OneDrive, Microsoft Teams, Adobe Acrobat, DocuSign and a generic Microsoft sign-in. Some sit behind human-verification challenges that Group-IB lists as text-based CAPTCHAs, text entry, image selection and press-and-hold controls, all completed on the client side. Group-IB also describes anti-analysis code that blocks browser developer-tool shortcuts. The brand changes. The device code step does not.
How large is the MadApe infrastructure?
155 root domains, 97 with phishing components
Group-IB observed phishing components on 97 of the 155 root domains: on dedicated subdomains only for 33, on URL paths only for 54, and in both places for 10. It found no component on the other 58 during the investigation and treats them as staged infrastructure that had not yet been put to use.
Registration patterns link the domains
Dynadot registered 133 of the 154 domains with a registrar on record, which is 86.4 percent. Separately, 105 of the 152 domains with a full creation timestamp (69 percent) shared that timestamp with at least one other domain. The largest group was ten domains registered on 18 August 2026 at 23:48:21 UTC.
A decoy site and an operator panel
Several root domains serve the same decoy website, branded C2S Logistics, Global Supply Chain Solutions. Group-IB says the decoys are built from the same HTML template. It also found the kit's operator panel, a login page titled Mad Ape with a custom ape logo, on at least five domains. The earliest panel instance it saw was on householdwares[.]co on 19 August 2026.
How can organisations protect Microsoft 365 from device code phishing?
Block the flow where there is no business need
Microsoft's Conditional Access guidance recommends getting as close as possible to a unilateral block on device code flow. It advises auditing existing use first, allowing the flow only for documented, secured cases such as legacy tooling that cannot be updated, and testing the policy in report-only mode before switching it on. Emergency access accounts are excluded from such a policy, and the exclusion list needs regular audit. The setting is the Authentication flows condition, with Device code flow selected and access blocked.
A block is not a clean-up
Group-IB warns that enabling a blocking policy should not be assumed to end existing access at once. For a confirmed compromise it advises revoking sessions and refresh tokens and removing persistence: device registrations, inbox rules and OAuth grants. A password reset alone does not cover those.
Read the sign-in logs for the flow itself
Group-IB advises reviewing Microsoft Entra sign-in logs for unexpected device code authentication and correlating them with phishing link clicks and later mailbox or file activity. Without that correlation, one successful sign-in looks like any other.
MadApe does not break the sign-in. It borrows it, and every control that looks only for a stolen password has nothing to find.
AegisAI Threat IntelligenceWhy standard controls miss it
Password-focused defences have nothing to catch. The device code page has no password to harvest, and the final sign-in is on a real Microsoft address, so a reputation check on that destination comes back clean. Staff trained to check the address bar find the right one.
Link scanning is also weaker than it looks. Group-IB's intermediary pages need a click and a short delay before the next page loads, which may stop a scanner limited to the first URL. A verdict on the first link says little about the page a person reaches three steps later.
The flow is not unique to this kit. Threat Watch has covered it in Wazza and SkyW4lker. Group-IB does not compare MadApe's internals with those kits, so the overlap is in the technique, not shown in the code. What stays constant across them is the abuse of the real sign-in, and that is where the message has to be judged.
How AegisAI protects against it
This is AegisAI's own reading, framed for email delivery because Group-IB's analysis starts from emails with an attachment. The reporting does not describe every campaign's delivery.
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. More on how that works: inbound email security.
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.
What the reporting does not tell us
Victim counts. Group-IB gives no number of compromised accounts or organisations. It treats names found in subdomains, paths and lures as intended targets, not confirmed compromises, and says its backend identifiers count records, not victims.
Sending infrastructure. The coverage reviewed for this article describes the attachment, the redirect and the pages, not the sending domains or mail providers. Sender-based detection cannot be built from it.
Attribution. The reporting ties the domains together by shared template, registration pattern and panel. It names no threat actor.
First seen. The Hacker News recap gives a first-observed date of 7 January 2026 that Group-IB's report does not state. Group-IB's earliest panel sighting is 19 August 2026. This article uses neither as a start date.
Indicators published by Group-IB
These come from Group-IB's indicator list and code samples. They are written with [.] so they cannot be clicked. Infrastructure churns, so treat them as historical context and hunting leads, not a live blocklist.
| Type | Indicators |
|---|---|
| Domains hosting the operator panel | itencrypted[.]cohouseholdwares[.]co (earliest instance seen, 19 August 2026)liva-fit[.]comuouso[.]netwbconnecticut[.]net |
| Phishing hosts by page theme | SharePoint: secure-docs.liveoakfarmsllc[.]netOneDrive: durakdisplay[.]comAdobe Acrobat: neottdesign[.]comDocuSign: cumminslogistic.kemalradio[.]comMicrosoft Teams voicemail: lvborses[.]comMicrosoft sign-in: nxinet[.]com |
| Redirect target in one sample | securelogin.qimmxn[.]icu (shown in a targetUrl code sample, not in the indicator list) |
| Backend paths | /api/code/entered/api/code/status/<ID> |
MITRE ATT&CK mapping
This mapping is AegisAI's own reading of the reported behaviour. Group-IB's page lists no technique IDs.
| ID | Name | Use in this campaign |
|---|---|---|
T1583.001 | Acquire Infrastructure: Domains | 155 root domains, most registered in bulk through one registrar, some in the same second. |
T1566.001 | Phishing: Spearphishing Attachment | Business-document files in nine languages carry the first lure. |
T1204.001 | User Execution: Malicious Link | The victim follows the file's embedded link and then the on-page steps to Microsoft's login. |
T1497 | Virtualization/Sandbox Evasion | A click, a short delay and client-side human-verification challenges stand between a scanner and the final page. |
T1528 | Steal Application Access Token | The victim authorizes the device code, and the attacker-controlled client can receive an access token and possibly a refresh token. |
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.
- Treat a confirmed device code compromise as a token and session incident: revoke sessions and refresh tokens, then remove device registrations, inbox rules and OAuth grants. Do not close it with a password reset.
- Review Entra sign-in logs for device code authentication and correlate each hit with earlier phishing link clicks and later mailbox or file activity.
- Inspect attachments and their embedded links through the full redirect chain, including pages that wait for a click, rather than judging the first URL.
- Hunt the listed domains and backend paths in DNS and proxy logs, and submit confirmed phishing URLs for takedown.
- Add device codes to awareness material and to the reporting channel: an unexpected request to enter a code on a Microsoft page is a report, and the application named on the confirmation prompt is worth checking.
FAQ
How do I protect Microsoft 365 from device code phishing?
Block device code flow with Entra Conditional Access unless a documented use needs it, and test the policy in report-only mode first. Blocking does not end tokens already issued, so also revoke sessions and refresh tokens after a confirmed compromise and review sign-in logs for device code events. Group-IB and Microsoft's guidance both start from restricting the flow.
How do I spot a hijacked mailbox when MFA didn't stop the attacker?
Start from the sessions, not the password. Group-IB notes that a device code sign-in may satisfy MFA, so look in Entra sign-in logs for device code authentication the user did not start, then correlate it with phishing link clicks and later mailbox or file activity. Check for new inbox rules, OAuth grants and device registrations, and revoke sessions and refresh tokens.
What is the MadApe phishing kit?
MadApe is a Microsoft device code phishing kit that Group-IB described on 29 October 2026. Business-document lures lead to a page that shows a device code and opens Microsoft's own login. If the victim completes it, the attacker's client can receive an access token, and no password is collected. Group-IB tied 155 root domains to the cluster, 97 with phishing components.
What languages and lures does MadApe use?
Group-IB catalogued filenames in English, Hebrew, German, Portuguese, French, Spanish, Polish, Finnish and Icelandic. The themes are payment reports, invoices, contracts, proposals and account statements. The Hebrew samples were identified first and target recipients in Israel. Not every lure is a PDF: the Finnish and Icelandic examples are Word files.
References
- Group-IB (29 Oct 2026). MadApe: The Code That Opens the Door. group-ib.com
- The Hacker News (2 Nov 2026). Weekly Recap: Critical CVEs, Linux DDoS Botnet, Device-Code Phishing, Android Spyware and More. thehackernews.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 T1583.001, T1566.001, T1204.001, T1497 and T1528. attack.mitre.org
Every email, investigated.
Related posts
More from the AegisAI blog.
