THREAT-EntraID-MFAFatigue Splunk · SPL

Detect Multi-Factor Authentication Fatigue (MFA Bombing) Attack in Splunk

MFA fatigue (also called MFA bombing or push flooding) is a social engineering technique where an attacker who has obtained valid credentials uses repeated MFA push notifications to wear down the victim into approving an authentication request out of annoyance or confusion. Scattered Spider pioneered this at scale, compromising MGM Resorts, Caesars Entertainment, and numerous UK-based organisations. The attacker sends dozens of Authenticator app push notifications in rapid succession, sometimes at 3am to catch sleeping victims, until one is approved. Some variants include calling the victim while bombing, claiming to be IT support (vishing), and guiding them to approve the 'legitimate' request. NCSC and CISA issued a joint advisory on this technique in 2023. With valid M365 credentials available from password spray or phishing, MFA fatigue is the primary way Scattered Spider bypasses MFA.

MITRE ATT&CK

Tactic
Credential Access

SPL Detection Query

Splunk (SPL)
spl
index=azure sourcetype="azure:aad:signin"
properties.authentication_requirement="multiFactorAuthentication"
properties.status.error_code IN (0, 50074, 50076, 500121, 500133)
| eval user=properties.user_principal_name
| eval mfa_result=case(
    properties.status.error_code=0, "SUCCESS",
    properties.status.error_code=500121, "DENIED",
    properties.status.error_code=500133, "NO_RESPONSE",
    true(), "PROMPTED"
  )
| bin _time span=10m
| stats
    count AS TotalPrompts,
    sum(eval(if(mfa_result="SUCCESS",1,0))) AS Approvals,
    sum(eval(if(mfa_result="DENIED",1,0))) AS Denials,
    sum(eval(if(mfa_result="NO_RESPONSE",1,0))) AS NoResponses,
    dc(properties.ip_address) AS UniqueSourceIPs
  BY user, _time
| where TotalPrompts >= 5
| eval FatigueSuccess=if(Approvals >= 1 AND (Denials + NoResponses) >= 3, "YES", "NO")
| eval Severity=if(FatigueSuccess="YES", "CRITICAL", "HIGH")
| eval ThreatType="MFA_Fatigue_PushBombing"
| eval ThreatActors="Scattered Spider, Lapsus$, 0ktapus"
| sort - TotalPrompts
high severity high confidence

SPL MFA fatigue detection: aggregates MFA prompt events by user in 10-minute bins, flags users with 5+ prompts, and escalates to Critical when there's a success following multiple denials/non-responses (fatigue compromise confirmed).

Data Sources

Azure AD Sign-In Logs via Splunk Add-on for Microsoft Cloud Services

Required Sourcetypes

azure:aad:signin

False Positives & Tuning

  • Users with slow mobile network causing delayed MFA delivery and re-sends
  • Help desk-initiated password reset flows that trigger MFA multiple times
  • Conditional Access policies with conflicting requirements causing MFA loops
Download portable Sigma rule (.yml)

Other platforms for THREAT-EntraID-MFAFatigue


Testing Methodology

Validate this detection against 1 adversary technique from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.

  1. Test 1Simulate MFA Push Bombing via Microsoft Authentication Library

    Expected signal: Azure AD Sign-in logs record 10 MFA prompts for the target user within a 5-minute window, each showing error code 50076 (MFA required) or 500133 (not completed).

Unlock Pro Content

Get the full detection package for THREAT-EntraID-MFAFatigue including response playbook, investigation guide, and atomic red team tests.

Response PlaybookInvestigation GuideHunting QueriesAtomic Red Team TestsTuning Guidance

Related Detections