Imagine you're sitting at your desk, sipping coffee, when a text message pops up: "Your bank account has been locked. Reply with the code to verify your identity." Your heart skips a beat. You just got a code from your bank. You reply, and boom—your account is drained. That's not a hypothetical; that's a SIM-swap attack, a form of social engineering where attackers convince your cellular carrier to transfer your phone number to a SIM card they control (CISA, Implementing Phishing-Resistant MFA). This is why I'm done with SMS codes for MFA. In this head-to-head, I'll compare SMS codes, authenticator apps, and hardware security keys across three concrete criteria: phishing resistance, convenience, and real-world cost. My verdict: authenticator apps win for most people, but hardware keys are the gold standard for high-value accounts.
The Problem with SMS: It's Not Just Annoying, It's Insecure
Let's be blunt: SMS codes are a band-aid on a bullet wound. They're ubiquitous, but they're also the most easily bypassed MFA method. CISA documents four ways traditional MFA gets beaten: phishing, push bombing (where you get spammed with approval requests until you cave), exploitation of SS7 protocol vulnerabilities, and SIM swapping (CISA, Implementing Phishing-Resistant MFA). SMS codes are vulnerable to all four. An attacker who knows your phone number can try to port it out, or they can intercept the SS7 signaling network. And phishing? A fake login page that asks for the code you just received via text is trivial to set up.
Now, I hear the pushback: "But something is better than nothing!" True. Microsoft says enabling MFA blocks over 99.9% of account compromise attacks (Microsoft Security Blog). But that statistic lumps all MFA together. When you choose SMS, you're choosing the weakest form of that protection. CISA's guidance is explicit: SMS or voice codes should only be a last resort (CISA, Implementing Phishing-Resistant MFA). The fact that your bank still sends you a six-digit text isn't a vote of confidence; it's a legacy default.
The Contenders: SMS vs. Authenticator Apps vs. Hardware Keys
Let's lay out the three options I'm comparing. On one side, we have SMS-based one-time passwords (OTPs). On the other, we have authenticator apps like Google Authenticator or Authy, which generate time-based codes on your device. And then there are hardware security keys—FIDO2 or WebAuthn devices like a YubiKey. For this comparison, I'm focusing on phishing resistance, convenience, and cost. I'm also going to make a call on who each option is for.
Here's the head-to-head table:
| Criterion | SMS Codes | Authenticator Apps | Hardware Keys |
|---|---|---|---|
| Phishing resistance | Low (vulnerable to SIM swap, SS7, phishing) | Medium (resistant to remote phishing, but can be phished with real-time relay) | High (phishing-resistant by design) |
| Convenience | High (no setup, works on any phone) | Medium (requires app install and setup per account) | Low to medium (requires carrying a physical device) |
| Cost | Free (but may have carrier fees) | Free (apps are usually free) | $20-$70 per key |
Authenticator Apps: The Sweet Spot for Most People
Authenticator apps are my pick for most people. Why? They strike a balance between security and usability. Unlike SMS, they don't rely on your carrier's network, so SIM swapping won't directly compromise them. They're also free and work offline. CISA recommends app-based OTPs or push with number matching when phishing-resistant MFA isn't available (CISA, Implementing Phishing-Resistant MFA). That's exactly what I do for my email and banking.
But they're not perfect. A determined phisher can still trick you into entering the code on a fake site, and then relay it to the real one in real time. That's a known attack. Still, it's a far higher bar than SMS. For a concrete scenario: if you use SMS, a SIM-swap attacker can reset your password and receive the code themselves. With an authenticator app, they'd need to physically steal your phone or successfully phish you in real time. That's a much harder ask.
Hardware Keys: The Gold Standard for High-Value Accounts
If you're a journalist, a CFO, or anyone with access to data worth millions, don't settle for an app. Get a hardware key. CISA ranks phishing-resistant MFA—FIDO/WebAuthn and PKI-based—as the gold standard (CISA, Implementing Phishing-Resistant MFA). These keys use public-key cryptography, so the website sends a challenge that your key signs with a private key that never leaves the device. Phishing sites can't relay that because the key's response is bound to the domain. It's the only option that's truly resistant to phishing, push bombing, SS7, and SIM swap.
The cost is a few dozen dollars per key, and you should buy two (one as backup). Is it worth it? Consider that the FBI's IC3 received 193,407 phishing complaints in 2024 (FBI IC3). The average reported loss per complaint was $19,372 (FBI IC3). That's a $20 key potentially saving you from a $19,000 loss. The math is trivial.
Bottom Line
I'm not saying ditch SMS if it's your only option. But if you have any choice, switch to an authenticator app today. And if you're a high-value target, buy a hardware key. My single best move: enable authenticator apps on your email and banking accounts right now. It takes five minutes and costs nothing. Do it.
Sources
- CISA (Implementing Phishing-Resistant MFA) - https://www.cisa.gov/sites/default/files/2023-01/fact-sheet-implementing-phishing-resistant-mfa-508c.pdf
- Microsoft Security Blog (MFA) - https://www.microsoft.com/en-us/security/blog/2019/08/20/one-simple-action-you-can-take-to-prevent-99-9-percent-of-account-attacks/
- FBI IC3 (2024 Internet Crime Report) - https://www.ic3.gov/Media/PDF/AnnualReport/2024_IC3Report.pdf
Comments (0)
Please sign in to post a comment.
Don't have an account? Create one
No comments yet. Be the first to comment!