Cybersecurity

MFA Fatigue Attacks Exploit the Human, Not the Protocol

Key takeaway: Push-approval MFA reduces a security decision to a single tap made with almost no context. Number matching and phishing-resistant factors restore the context that tap removed.

The Attack Requires No Sophistication

The attacker already has a valid password from a breach or phishing kit. They attempt login, which triggers a push notification to the victim’s phone. The victim declines. The attacker attempts again. And again — sometimes dozens of times over hours, often deliberately at two in the morning.

Eventually someone taps approve. Occasionally out of genuine confusion about whether a legitimate service is misbehaving. Occasionally to stop the noise. Sometimes the attacker escalates by calling the target while posing as IT and saying “we’re troubleshooting your account, please approve the prompt you’re about to see.”

Several widely publicised enterprise breaches began exactly this way. No cryptography was broken. The protocol behaved as designed.

The Design Flaw

A bare push prompt asks a person to make a security decision while giving them nothing to decide with. It says “approve sign-in?” and offers two buttons. It does not meaningfully convey where the request originated, what application requested it, or that the person receiving it is not the person triggering it.

Worse, it trains a reflex. Users approve dozens of legitimate prompts per month. Tapping approve becomes muscle memory rather than an evaluated judgement, which is exactly the condition an attacker needs.

Ranking the Available Factors

Factor Resists fatigue Resists phishing Notes
SMS code No No Also vulnerable to SIM swap
Bare push approval No No The vulnerable default
Number-matched push Yes Partially Cheap, large improvement
TOTP authenticator app Yes No Code is still phishable
Passkey / WebAuthn Yes Yes Origin-bound by design
Hardware security key Yes Yes Strongest, highest friction

Number matching is the pragmatic immediate fix. The login screen displays a two- or three-digit number that the user must type into the app. An attacker who cannot see the victim’s screen cannot supply the number, and the user cannot approve by reflex because approval now requires deliberate input.

Passkeys and hardware keys eliminate both fatigue and phishing, because the credential is cryptographically bound to the origin. A user cannot be tricked into authenticating to an attacker’s domain, since the browser simply will not present the credential there.

Operational Measures That Help

Cap push attempts per account per hour and lock further prompts after repeated denials. Alert the security team on the pattern of repeated denials followed by an approval — that sequence is a near-certain indicator of a successful fatigue attack. Show application name, approximate location and requesting IP inside the prompt so the decision has some basis. And train users that a flood of unexpected prompts means report, not approve.

The Bottom Line

Turn on number matching everywhere today; it costs almost nothing and removes the reflex the attack depends on. Then plan migration to phishing-resistant factors for privileged accounts, because number matching narrows the window while passkeys close it.

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button