Back to Intelligence

Fake IT Help Desk Phishing Campaign Hits Blackstone, Bridgewater, KKR: Detecting and Defeating MFA Credential Theft

SA
Security Arsenal Team
August 7, 2026
12 min read

A coordinated phishing campaign operating under the aliases Redact, Pink, Falcon, and Helix has built a sprawling infrastructure of credential-harvesting websites impersonating internal IT help desks. The target list reads like a who's who of global finance: Blackstone, Bridgewater Associates, Apollo Global Management, Bain Capital, KKR, TPG, CME Group, Clearlake Capital, and Moody's — among more than 200 organizations in total.

This is not spray-and-pray phishing. These operators are registering lookalike domains modeled on each victim company's internal IT support portals, luring employees into "verifying" their credentials and multi-factor authentication codes on attacker-controlled pages. The result: full account takeover, including the session tokens and MFA factors defenders assumed were the safety net.

If you work in financial services, private equity, or any sector where business email compromise and wire fraud carry nine-figure risk, this campaign is aimed squarely at your help desk workflows. This post breaks down how the attack works, how to hunt for it, and how to harden your environment against IT support impersonation.


Technical Analysis: How the Fake Help Desk Attack Chain Works

The Attack Pattern

While the full technical report is still emerging, the observable tradecraft in this campaign follows the modern adversary-in-the-middle (AiTM) / help-desk-impersonation playbook that has dominated financial-sector intrusions through 2025 and into 2026:

  1. Infrastructure staging. The actors register domains that mimic legitimate corporate IT support portals — typically patterns like company-it-support.com, helpdesk-company.com, company-sso.net, or typosquats of the real SSO domain. These sites are clones of legitimate login flows (commonly Microsoft Entra ID / Okta sign-in pages) and are often fronted by phishing kits acting as reverse proxies.

  2. Lure delivery. Employees receive emails — and in parallel campaigns across the industry, voice calls (vishing) and SMS (smishing) — claiming a password expiration, a suspicious sign-in, or a required MFA re-enrollment. The sender poses as internal IT. The branding, tone, and even employee names are researched from LinkedIn and data broker leaks.

  3. Credential + MFA capture. The victim enters their username and password on the fake portal. In AiTM variants, the phishing kit proxies the real authentication session in real time, prompting the victim for their MFA code or push approval — which the attacker immediately relays to complete the login. The attacker walks away with a valid, authenticated session token, not just a password.

  4. Post-compromise actions on objectives. With a live session, operators typically: register a new MFA device under their control, create inbox rules to hide security alerts, access email and SharePoint/OneDrive for reconnaissance, and pivot toward business email compromise, payment fraud, or internal lateral phishing to expand access.

Why This Works Against MFA

The critical defensive lesson: TOTP codes and push notifications are phishable. If the victim types a six-digit code into an attacker-proxied page, or approves a push that the attacker triggered in real time, MFA provides zero protection. Only phishing-resistant authentication — FIDO2/passkeys, certificate-based authentication, or Windows Hello for Business — cryptographically binds the authentication ceremony to the legitimate origin domain, making the proxy trick fail.

Targeting Profile

  • Sector concentration: Private equity, asset management, hedge funds, and financial data/ratings firms. These organizations hold M&A intelligence, fund flow data, and investor communications — high-value material for both fraud and market-sensitive espionage.
  • Scale: 200+ organizations with dedicated lookalike infrastructure, indicating a well-resourced, organized operation (consistent with Phishing-as-a-Service kit deployment rather than bespoke per-target builds).
  • Exploitation status: Confirmed active, in-the-wild campaign with purpose-built phishing infrastructure. No CVE is associated — this is pure identity-layer attack tradecraft, which is exactly why patch-centric defenses won't help you here.

MITRE ATT&CK Mapping

TacticTechnique
Initial AccessT1566 — Phishing
Credential AccessT1557 — Adversary-in-the-Middle (AiTM)
Credential AccessT1621 — MFA Request Generation
PersistenceT1556 — Modify Authentication Process (rogue MFA registration)
PersistenceT1098.003 — Additional Email Delegate Permissions
Defense EvasionT1078 — Valid Accounts
CollectionT1114 — Email Collection

Detection & Response

The most reliable detection surface for this campaign is the identity layer: sign-in anomalies, MFA method changes, inbox rule creation, and endpoint connections to lookalike domains. Below are field-ready detections.

Sigma Rules

YAML
---
title: Authentication Followed by New MFA Method Registration Within Short Window
id: 3f8a2c14-9b7d-4e61-a3f5-8c1d2e6b9a04
status: experimental
description: Detects a successful sign-in from a new or unusual source immediately followed by registration of a new MFA/strong authentication method — a hallmark of AiTM phishing session theft where attackers enroll their own factor to persist. Observed in help desk impersonation campaigns targeting financial firms (Redact/Pink/Falcon/Helix).
references:
  - https://securityaffairs.com/196800/security/hackers-impersonate-it-support-to-breach-leading-financial-companies.html
  - https://attack.mitre.org/techniques/T1557/
  - https://attack.mitre.org/techniques/T1556/
author: Security Arsenal
date: 2026/02/14
tags:
  - attack.persistence
  - attack.t1556
  - attack.t1557
logsource:
  product: azure
  service: auditlogs
detection:
  selection:
    operationName|contains:
      - 'User registered security info'
      - 'User started registration of security info'
      - 'Add phone authentication method'
      - 'Add FIDO2 security key'
  filter_known_devices:
    initiatedBy.user.userPrincipalName|contains: '@yourdomain.com'
  condition: selection and not filter_known_devices
falsepositives:
  - Legitimate employee onboarding or phone replacement
  - Help desk-assisted MFA resets (correlate with ticket system before closure)
level: high
---
title: Suspicious Inbox Rule Created to Hide Security or IT Notifications
id: 8d4e6f21-5a3c-4b92-b7e1-2f9c8d4a6e15
status: experimental
description: Detects creation of mailbox rules that auto-delete or move messages containing security-alert keywords — a common post-compromise action after session token theft to conceal MFA change notifications and sign-in alerts from the victim.
references:
  - https://securityaffairs.com/196800/security/hackers-impersonate-it-support-to-breach-leading-financial-companies.html
  - https://attack.mitre.org/techniques/T1114/002/
author: Security Arsenal
date: 2026/02/14
tags:
  - attack.defense_evasion
  - attack.t1114.002
logsource:
  product: azure
  service: auditlogs
detection:
  selection:
    operationName: 'New-InboxRule'
  keywords_body:
    parameters|contains:
      - 'sign-in'
      - 'signin'
      - 'security info'
      - 'MFA'
      - 'password'
      - 'IT support'
      - 'help desk'
      - 'helpdesk'
  keywords_action:
    parameters|contains:
      - 'DeleteMessage'
      - 'MoveToFolder'
  condition: selection and keywords_body and keywords_action
falsepositives:
  - Users legitimately filtering noisy notification mailboxes (rare with delete actions on security terms)
level: high
---
title: Outbound Connection to IT Help Desk Lookalike Domain
id: 5b9c3a78-2e6f-4d18-9c42-7a1f5e8b3d29
status: experimental
description: Detects endpoint network connections to domains containing help desk / IT support keywords combined with the organization's brand on non-standard TLDs — indicative of employee interaction with credential-harvesting pages impersonating internal IT, as used in the Redact/Pink/Falcon/Helix campaign.
references:
  - https://securityaffairs.com/196800/security/hackers-impersonate-it-support-to-breach-leading-financial-companies.html
  - https://attack.mitre.org/techniques/T1566/
author: Security Arsenal
date: 2026/02/14
tags:
  - attack.initial_access
  - attack.t1566
  - attack.t1557
logsource:
  category: dns
  product: windows
detection:
  selection_keywords:
    QueryName|contains:
      - 'helpdesk'
      - 'help-desk'
      - 'it-support'
      - 'itsupport'
      - 'it-help'
      - 'password-reset'
      - 'sso-verify'
      - 'mfa-verify'
      - 'okta-verify'
  filter_legit:
    QueryName|endswith:
      - '.microsoft.com'
      - '.okta.com'
      - '.microsoftonline.com'
      - '.yourdomain.com'
  condition: selection_keywords and not filter_legit
falsepositives:
  - Third-party ITSM SaaS providers (whitelist your actual ticketing vendor domains)
level: medium

KQL Hunt — Microsoft Sentinel / Defender

This query hunts the full kill chain: endpoint connections to help-desk lookalike domains, correlated with the anomalous authentication events that follow a successful credential phish. Run both; the first catches the interaction, the second catches the compromise.

KQL — Microsoft Sentinel / Defender
// Hunt 1: Endpoint connections to help-desk impersonation domains
// Tune the brand keyword list to your organization name and common abbreviations
let SuspiciousKeywords = dynamic(["helpdesk", "help-desk", "it-support", "itsupport", "it-help", "password-reset", "sso-verify", "mfa-verify", "account-verify"]);
let LookalikeTLDs = dynamic([".com", ".net", ".org", ".co", ".io", ".us", ".info", ".support", ".app"]);
DeviceNetworkEvents
| where TimeGenerated > ago(30d)
| extend RemoteDomain = tolower(tostring(RemoteUrl))
| where RemoteDomain has_any (SuspiciousKeywords)
| where not(RemoteDomain has_any (dynamic(["microsoft.com", "microsoftonline.com", "okta.com", "yourdomain.com", "servicenow.com"])))
| project TimeGenerated, DeviceName, InitiatingProcessAccountName, InitiatingProcessFileName, RemoteUrl, RemoteIP, ActionType
| sort by TimeGenerated desc;

// Hunt 2: MFA security-info registration events preceded by foreign/new-IP sign-in
// Requires Azure AD Audit Logs ingested into Sentinel (AuditLogs table)
AuditLogs
| where TimeGenerated > ago(14d)
| where OperationName has_any ("User registered security info", "User started registration of security info")
| extend User = tostring(InitiatedBy.user.userPrincipalName)
| extend RegistrationIP = tostring(InitiatedBy.user.ipAddress)
| project RegistrationTime = TimeGenerated, User, RegistrationIP, OperationName, CorrelationId
| join kind=inner (
    SigninLogs
    | where TimeGenerated > ago(14d)
    | where ResultType == 0
    | project SigninTime = TimeGenerated, UserPrincipalName, IPAddress, Location, AppDisplayName, DeviceDetail
) on $left.User == $right.UserPrincipalName
| where RegistrationTime between (SigninTime .. (SigninTime + 30m))
| project SigninTime, RegistrationTime, User, IPAddress, Location, AppDisplayName, OperationName
| sort by SigninTime desc

Velociraptor VQL — Browser Artifact Hunt

If you suspect a specific user interacted with a fake help desk page, hunt browser history across endpoints for visits to lookalike domains. This gives you confirmed exposure lists for targeted resets.

VQL — Velociraptor
-- Hunt Chrome/Edge history for visits to IT help desk impersonation domains
-- Deploy as a hunt; adjust the brand regex to your organization's name variants
LET history_globs = {
  SELECT FullPath FROM glob(globs=[
    'C:/Users/*/AppData/Local/Google/Chrome/User Data/*/History',
    'C:/Users/*/AppData/Local/Microsoft/Edge/User Data/*/History'
  ])
};

SELECT FullPath AS HistoryDB,
       basename(path=FullPath) AS Profile,
       parse_string_with_regex(string=FullPath,
         regex='Users\\(?P<user>[^\\]+)').user AS Username
FROM history_globs
WHERE FullPath =~ 'History$'

-- After collecting History files, query URL artifacts:
-- Run Windows.Forensics.SqliteHunter or copy + parse the History DB for URLs matching:
-- '.*(helpdesk|it-support|itsupport|it-help|sso-verify|mfa-verify|password-reset).*'
-- Filter OUT your legitimate IdP and ITSM domains before escalating hits.

For real-time network validation on live endpoints, pair this with:

VQL — Velociraptor
-- Snapshot active connections to flag sessions communicating with suspicious infrastructure
SELECT Pid, Name, RemoteAddress, RemotePort, Status
FROM netstat()
WHERE Status =~ 'ESTABLISHED'
  AND NOT RemoteAddress =~ '^(10\.|192\.168\.|172\.(1[6-9]|2[0-9]|3[01])\.|127\.)'

Remediation & Hardening Script

The single highest-impact control against this campaign is enforcing phishing-resistant MFA and auditing for rogue authentication method registrations. This PowerShell uses Microsoft Graph to audit registered auth methods and flag users with only phishable factors.

PowerShell
# Requires: Microsoft.Graph PowerShell SDK
# Connect-MgGraph -Scopes "UserAuthenticationMethod.Read.All,Policy.Read.All,AuditLog.Read.All"

Connect-MgGraph -Scopes "UserAuthenticationMethod.Read.All,Policy.Read.All,AuditLog.Read.All" -NoWelcome

# 1. Audit all users' registered authentication methods — flag users with ONLY phishable factors (SMS/voice/TOTP)
$users = Get-MgUser -All -Property "id,displayName,userPrincipalName"
$report = foreach ($u in $users) {
    $methods = Get-MgUserAuthenticationMethod -UserId $u.Id -ErrorAction SilentlyContinue
    $types = $methods.AdditionalProperties.'@odata.type'
    $hasFIDO2 = $types -contains '#microsoft.graph.fido2AuthenticationMethod'
    $hasWHfB  = $types -contains '#microsoft.graph.windowsHelloForBusinessAuthenticationMethod'
    $hasSMS   = $types -contains '#microsoft.graph.phoneAuthenticationMethod'
    [PSCustomObject]@{
        UserPrincipalName = $u.UserPrincipalName
        PhishingResistant = ($hasFIDO2 -or $hasWHfB)
        SMSRegistered     = $hasSMS
        MethodCount       = $methods.Count
    }
}
$report | Where-Object { -not $_.PhishingResistant } | Export-Csv ".\users-phishable-mfa-only.csv" -NoTypeInformation
Write-Host "$(($report | Where-Object {-not $_.PhishingResistant}).Count) users lack phishing-resistant MFA. Review users-phishable-mfa-only.csv"

# 2. Pull recent security-info registration events (rogue MFA enrollment hunt — last 14 days)
$start = (Get-Date).AddDays(-14).ToString("yyyy-MM-ddTHH:mm:ssZ")
Get-MgAuditLogDirectoryAudit -Filter "activityDateTime ge $start" -All |
    Where-Object { $_.ActivityDisplayName -match 'security info' } |
    Select-Object ActivityDateTime,
                  @{N='Actor';E={$_.InitiatedBy.user.userPrincipalName}},
                  @{N='ActorIP';E={$_.InitiatedBy.user.ipAddress}},
                  ActivityDisplayName,
                  @{N='Target';E={$_.TargetResources[0].userPrincipalName}} |
    Export-Csv ".\recent-mfa-registrations.csv" -NoTypeInformation
Write-Host "Exported recent-mfa-registrations.csv — cross-reference ActorIP against help desk ticket records"

# 3. Verify Conditional Access requires phishing-resistant strength for cloud apps
Get-MgIdentityConditionalAccessPolicy -All |
    Where-Object { $_.State -eq 'enabled' } |
    Select-Object DisplayName,
                  @{N='AuthStrength';E={$_.GrantControls.authenticationStrength.displayName}},
                  @{N='GrantControls';E={$_.GrantControls.builtInControls -join ','}}

Action items from script output:

  • Every user in users-phishable-mfa-only.csv at a targeted firm should be prioritized for FIDO2/passkey enrollment.
  • Every entry in recent-mfa-registrations.csv where the source IP does not match corporate egress/VPN — and has no corresponding help desk ticket — is a suspected compromise: revoke sessions, reset credentials, and investigate.

Remediation & Hardening Recommendations

There is no patch for this campaign — the vulnerability is a workflow. Remediation is architectural:

  1. Deploy phishing-resistant MFA immediately for high-value targets. Executives, finance teams, fund administrators, and IR/AR staff at PE and asset management firms must move to FIDO2 security keys or passkeys. Microsoft Entra ID Conditional Access authentication strength policies let you require "Phishing-resistant MFA" per app or per group — enable it for M365, VPN, and any SSO-federated app.

  2. Eliminate SMS and voice as MFA factors. They are the weakest links and the easiest to phish or socially engineer via a fake help desk call. Disable them in your authentication methods policy.

  3. Enforce number matching and disable push-without-context. If push MFA must remain during transition, number matching (Microsoft Authenticator) blunts MFA fatigue and relay pushes — but it is still phishable via AiTM proxies. Treat it as a bridge, not an end state.

  4. Revoke sessions on any suspected exposure. In Entra ID: Revoke-MgUserSignInSession, reset the password, remove any newly registered auth methods not tied to a verified ticket, and review sign-in logs for 30 days prior. Session token theft means a password reset alone is insufficient — you must kill the stolen refresh tokens.

  5. Stand up lookalike-domain monitoring. Subscribe to Certificate Transparency log monitoring and brand-abuse services for domains combining your company name with helpdesk, it-support, sso, verify, and password. This campaign's infrastructure is discoverable at registration time — often days before the lure emails go out. Preemptive blocking at the secure email gateway and DNS layer (protective DNS / DNS firewall) kills the attack before the first click.

  6. Fix the help desk verification gap. Attackers impersonate IT because IT rarely has to prove itself to employees. Publish a canonical IT support URL, communicate that IT will never ask for an MFA code, and establish out-of-band verification (e.g., a callback to a number in the corporate directory) for any credential-related request. Train on this quarterly — the lures in this campaign are researched and convincing.

  7. Alert on MFA registration events. Any "user registered security info" event from a non-corporate IP, or without a matching help desk ticket within a defined window, should page the SOC. This is your highest-fidelity tripwire for this exact attack class.

  8. Tabletop the scenario. Run an exercise: "Employee entered credentials and MFA code on a fake help desk page at 14:00; discovered at 14:45." Time your session revocation and containment. In financial services, the fraud wire attempt typically follows within hours.


Related Resources

Security Arsenal Penetration Testing Services AlertMonitor Platform Book a SOC Assessment vulnerability-management Intel Hub

Is your security operations ready?

Get a free SOC assessment or see how AlertMonitor cuts through alert noise with automated triage.