- What: AI-powered business email compromise kits discovered
- Impact: Increased risk of targeted phishing attacks
Home AI-powered Phishing-as-a-Service: Inside Two BEC Kits â Return to overview AI-powered Phishing-as-a-Service: Inside Two BEC Kits Jul 28, 2026 By: Jorn Pieterse Business email compromise (BEC) remains one of the most damaging threats we respond to, and the tooling behind it is getting more complex by the day. On a recent investigation, we came across multiple suspicious domains that piqued our interest. These led us to two phishing kits we had not encountered before. Both look, at a glance, like legitimate SaaS products. Both were clearly built with AI, down to the comments and code structure. And both automate the full path from a stolen login to a forged invoice. Neither kit relies on a new technique. Device code abuse, token theft, Windows Hello persistence: all of it is documented, some of it by Microsoftâs own threat intelligence team. What has changed is who can run it and how many victims one operator can run it against at once. A single dashboard now does the work that used to require a skilled attackerâs full attention, all with the help of AI. Here is what we found, in sum: Two new Phishing-as-a-Service kits. Both present as legitimate SaaS products, complete with pricing pages, dashboards, and tiered operator accounts. Both are operator consoles for managing stolen Microsoft 365 identities at scale. Vibe-coded with AI. Both kits show clear signs of AI-assisted development, down to the code structure and the tell-tale AI em dash left in the comments. This is how attackers now build faster, more capable tooling. No new techniques but industrialised scale. Device code phishing, FOCI pivoting, PRT theft, Windows Hello (NGC) persistence, ESTS cookie generation, and CAP bypass are all publicly documented. What is new is that one operator can now run all of it against dozens of victims from a single dashboard. AI-driven fraud was built in. One of the kits uses an AI pipeline to read harvested mailboxes and map an organisationâs payment flows, invoices, and outstanding balances. Persistence that survives a password reset. By registering a synthetic Windows Hello key, the kits can retain access after a password change. One of the kits even displays a âpassword change survival rateâ metric to operators. Attacks from inside the real mailbox. Phishing emails are sent from the victimâs genuine Microsoft 365 account, so they pass SPF and DKIM and are nearly indistinguishable from legitimate internal mail. This is the shift from one skilled attacker targeting one company to Phishing-as-a-Service, where the same capability is packaged, automated, and available to far less skilled operators. These are the phishing kits we found The first kit calls itself TokenVault // 2026 . However, due to its Lovable vibecoded feeling, we have named it TokenLover . At first, it looked like a token management service. Its footer proudly states it is âBuilt on TokenTacticsV2.â It has a pricing page, a feature comparison table, and a live support dashboard. It looks, at first glance, like a legitimate SaaS product. It is not. The other phishing kit we found calls itself Yakhub/Yaksha . When visiting the domain linked to the kit, we were greeted by a login screen and nothing more. However, this kit also has a very vibecoded feeling to the UI (more about that later ;)). And we wanted to keep the running theme in there, so we have dubbed it YaksaLover . How we found the phishing kits TokenLover first came onto our radar during an incident response case. Investigating a device code phishing incident, we traced the IP behind the initial sign-in and ran it through Shodan, which pointed us to a domain hosted on that same IP. The domain served up a page dressed as a legitimate Azure token management service: pricing tiers, marketing copy, the works. Then we lifted the hood. Image 1. The TokenLover phishing kit pretends to be a legitimate service to throw defenders off guard We identified YaksaLover in the exact same way as TokenLover. This phishing kit has a email client built in and is in some aspects more developed than TokenLover, but in some aspects very lacking. When visiting the URL of the kit, we encountered a login screen. But that login screen wouldnât stop us from diving deeper, and diving deeper we did. TokenVault/TokenLover TokenLover is an operator console , the backend that an attacker uses to manage everything from setting up device code phishing campaigns and adding persistence to using AI to exfiltrate data. Think of it as a CRM for stolen Microsoft identities, with a campaign manager, an AI analyst, and a post-exploitation automation engine bolted on. Image 2. A look at the TokenLover console The operator panel supports multiple tiers of users: administrators who manage the platform, operators who run campaigns, and sub-operators (âsubusersâ) who are handed a scoped view of specific captured sessions. Subscription expiry, per-user feature flags, audit logging, and a duplicate-session security alert system are all present. This is professional tooling for a distributed team. Image 3. The session management tab with AI functionality built in Step 1: Device code phishing The entry point is device code authentication abuse. The attacker triggers a legitimate Microsoft OAuth device code request and delivers the resulting user_code to the victim, typically by embedding it in a convincing lure or injecting it into an ongoing conversation. The victim visits the real microsoft.com/devicelogin , enters the code, and completes MFA on the real Microsoft website. Just as we have seen in device code phishing so many times before. TokenLover initiates this flow against three distinct client configurations: Office standard Office family scopes, granting access to mail, calendar, Teams, and OneDrive Admin Full elevated Graph API permissions for directory-level access Broker using client ID 29d9ed98-a469-4536-ade2-f981bc1d605e, the Microsoft Authentication Broker That third variant is the one that matters most. The Broker client ID is not chosen arbitrarily, because it is the one that unlocks device registration in Entra ID, which, in turn, yields a Primary Refresh Token (PRT). And a PRT is like gold for phishers: unlike the app-scoped access tokens the Office and Admin variants produce, it is a long-lived credential (valid for up to 90 days) tied to an attacker-registered device that Entra ID now trusts as a legitimate organisational asset, enabling silent single sign-on across Microsoft 365, survival of password resets and token revocation, and MFA-satisfied sessions the victim already completed on the attackerâs behalf. It is the same client ID that Microsoftâs own Threat Intelligence team called out in their February 2025 Storm-2372 disclosure . The moment a victim completes authentication, their user_code is automatically copied to the attackerâs clipboard and a polling loop starts against /api/v1/auth/device-code/poll . Timing is everything here: device codes typically expire within about 15 minutes. The platform has to lure the victim and capture the resulting tokens inside that narrow window, hence the automation. When the poll returns success, the captured tokens land in the vault and the platform immediately runs the next step. Image 4. Due to us not having an actual account, we canât see the templates. You just have to imagine they are there. Or read the rest of the article to see the templates of YaksaLover ;). Step 2: FOCI pivot to every Microsoft service A single refresh token, when obtained via a FOCI-eligible client (FOCI, Family of Client IDs, is a group of first-party Microsoft apps that share refresh tokens that can be exchanged for access tokens scoped to any other Microsoft service in the same family). TokenLover calls /api/v1/auth/refresh/to-all to perform this exchange in bulk; Outlook, Graph API, Teams, SharePoint, OneDrive, and Azure Management simultaneously. All resulting tokens are stored and labelled by service. This is not a novel technique. The TokenTacticsV2 module that the kit is built on has implemented FOCI pivoting since its earliest releases. What TokenLover adds is the operator UI and the automation that runs everything downstream without manual intervention. Step 3: Windows Hello for business key injection This is where the platform goes further than most published research or publicly known kits. Every time a new token arrives in the vault, autoInjectNewTokens fires. This function silently executes a two-step pipeline against the victimâs Entra ID account: 1. Calls /api/winhello/generate-key to generate a fresh RSA-2048 key pair 2. Calls /api/winhello/{id}/inject-full with the victimâs UPN and tenant ID to register a synthetic Windows Hello for Business NGC (Next-Generation Credential) key against their account Once this key is registered, the platform can mint new Primary Refresh Tokens using the injected key instead of the password. So a password reset alone wonât evict the attacker. It isnât foolproof, though: it depends on the earlier device registration step having succeeded and on the tenant allowing device registration. And it can still be cut off by revoking the device identity or the key, or by a full session/token revocation, just not by a password change on its own. The Admin panel makes no attempt to hide what this is for. It displays a metric called âpassword change survival rateâ on the NGC Protection dashboard. The attacker can see, across their entire victim pool, what percentage of compromised accounts will survive a password reset. Bulk NGC registration is a one-click operation. Image 5. The phishing kit admin panel This technique was documented by Dirk-jan Mollema in October 2023 . Its presence here, automated and integrated into the default capture flow, means victims who change their password after a device code phishing incident may not be fully remediated. Step 4: ESTS cookie generation, browser-level access without MFA PRT-equivalent tokens and NGC keys can be converted int