What is phishing-resistant MFA
Phishing-resistant Multi-Factor Authentication (MFA) is a highly secure authentication method designed to fortify user accounts against phishing attacks. Unlike traditional MFA, which can still be vulnerable to phishing attempts, this approach incorporates multiple layers of protection to ensure enhanced security. It employs advanced techniques such as biometric authentication, hardware tokens, and push notifications to trusted devices, making it significantly more challenging for attackers to impersonate users.You most likely have been reading about a relatively new term called Phishing Resistant MFA. In fact, we are seeing recent government requirements for phishing-resistant MFA to be implemented. What exactly is it, what are the benefits, and what does it mean to you and your organization? This concept can be a bit daunting at first, so we will start at the beginning – with authentication.
Authentication is the process of confirming someone’s identity. In other words, are you really the person you claim to be? Every time you login into a website with your username and password, you are authenticating. Authentication is often paired with authorization. Once you are authenticated (e.g. your identity has been confirmed), authorization determines what you can and cannot do. What we are talking about today is just the authentication piece.
Traditionally authentication has been a username and password combination. Your username states who you are, and knowledge of your password confirms your identity. The problem with passwords is they are painful and confusing for people to use and relatively easy for cyber attackers to compromise. There are multiple ways a password can be compromised including password-phishing websites that harvest your passwords, keystroke logging malware that records your passwords, people using weak, easy-to-guess passwords, people reusing the same password across multiple accounts, and compromised websites. Passwords have proven to be a weak form of authentication. While they may have been “good enough” ten to twenty years ago, they are no longer good enough for today.
Two-factor authentication
As a result, a far stronger form of authentication was developed, something called two-factor authentication. Two-factor is stronger as its name implies that two factors are required, usually something you know (your password) and something you have (your mobile device) or something you are (biometrics). This way if your password was compromised, then your identity was still safe as a cyber attacker did not have access to the second method (such as your mobile device). This concept is similar to your ATM card when you withdraw money. To successfully withdraw money, you need both your ATM card and the PIN (this is why you never want to write your PIN on your ATM card).
This layered method is a far stronger approach, and one many organizations and websites are adopting. In fact, two-factor authentication is quickly becoming a standard as it is so effective at stopping authentication-based attacks. But there are several problems.
Problems with Two-factor authentication
First, you have to agree on what we want to call this. Originally the most common term was two-factor authentication, as two factors were involved. But other names are often used to include two-step verification, strong authentication, and one-time password (OTP). However, most of the industry seems to be standardizing on the term multi-factor authentication (MFA). Quite often people are confused thinking there are differences in these (and there can be) but in general these terms are referring to the same thing. We will use the term MFA moving forward.
Multi-Factor Authentication (MFA)
Unfortunately, not only do we use different names for the solution, but they are implemented in many different ways. Three of the most common ways at SANS we see MFA implemented are as follows. You first login to your account with your username and password, then . . .
- A unique code is texted to your mobile device.
- A unique code is generated in a mobile app on your mobile device.
- A unique code or request is pushed to your mobile device
There are other variations of MFA, but almost all of them share a weakness, human interaction is required. You have to do something with the code. And where human interaction is required, people can be phished. In other words, a cyber attacker can insert themselves in the authentication process. After a victim logs into a website, and after a victim gets their unique MFA code, that code can then be tricked out of the victim and used by the cyber attacker to gain access to the website. In other words, these approaches to MFA are “phishable”.
Now, before we panic, any one of these MFA methods is exponentially better than just passwords alone. Should we stop using MFA because they are ‘phishable’? Absolutely not, there is huge value to them. But cyber attackers are only going to get better at exploiting the human side of this. So, what is next?
Phishing-Resistant Multifactor Authentication
Phishing-resistant multifactor authentication is nothing more than the same authentication process we just described, but people are removed from the equation. There are several different ways to implement this, but I’ll walk you through the most common approach, something called FIDO.
FIDO is a standard created years ago by the FIDO Alliance, a non-profit team of multiple organizations from around the world. This is a vendor neutral standard being adopted by most of the big players, to include Google, Amazon, Microsoft and Apple. If you hear people talking about “WebAuthn” that is the technology that supports and helps implement the FIDO standard. FIDO and WebAuthn at a high level are referencing the same solution (I bring this up as it always confused me). So how does this work?
When you create an account online (or updated an existing account to use FIDO), you register your device with the website. This device can be a special token (like a YubiKey) or you can use your mobile device (such as your smartphone) as the token. When you register your device, your device and the website create a cryptographic key pair unique for your account (known as asymmetric encryption or public-key cryptography). You don’t need to know the technical details, but what happens is based on this key pair, that website now ‘knows’ and trusts your device. In the future to log into the website you simply log in with your device, quite often no password is required, making it passwordless authentication.
From a user perspective (which will vary from website to website and device to device) all that happens is when you visit a website you have created an account for, it will ask you to verify yourself with the device. Ways you can do this include connecting your device to your computer’s USB port or using wireless technologies such as NFC (near-field communications). To ensure that it’s really you with your device (as opposed to someone stealing your device and trying to log in as you) you will be asked to prove it is really you with biometrics (fingerprint, face scan, etc). From the user perspective, the entire authentication process is nothing more than biometrics.
What makes this so effective is there is no unique code to phish or trick people out of. Almost everything happens between your device and the website. The only human interaction is the biometrics, something people already do every day. So, we have solution that is not only far more secure as it far more resistant to phishing attacks, but also far easier for people to use. Does this technology eliminate all risk? No. As this becomes widely deployed new attacks will be developed, but it will be MUCH harder for the cyber attacker.
Passkey is the name members of the FIDO Alliance have given this new form of authentication, to include Apple, Google and Microsoft. In fact, Apple released passkeys as part of iOS16 and MacOS Ventura, expect other big companies to be announcing these features soon (if they already haven’t). Hopefully this gives you an idea of what ‘phishing resistant’ MFA is. If you are still a bit confused about how this will all work, don’t feel bad. So am I.
PS: As a side note, one key thing I would like to clarify. FIDO is extremely resistant to phishing attacks but adopting FIDO does not mean your organization is secure against phishing. A huge number of phishing attacks have nothing to do with passwords (infected email attachments, BEC, call-this-phone-number attacks, etc). I’m bringing this up as I'm seeing organizations implying "We are adopting FIDO MFA, which means we can't be phished". Some of the most effective phishing emails out there have just one or two sentences and a phone number for the victim to call. So remember, ‘phishing-resistant MFA’ or standards like FIDO are incredibly strong authentication mechanisms that are highly resistant to phishing attacks, but there are a HUGE number of phishing attacks that have absolutely nothing to do with authentication.
Read about Phishing Trends
Learn about SANS Phishing Awareness Training