Secure development lifecycle (SSDLC): what it is and how to put it in place
What the secure development lifecycle is, what happens in each phase, what SAST, DAST and SCA add, and where to start if you have nothing in place today.
Turning on two-factor authentication is still the measure that stops the most attacks for the least money. But not every second factor is worth the same, and some of the most widely recommended ones have been bypassable for years. If you want the short definition, it is on the multi-factor authentication card. This is the other thing: which one to choose, why, and how the ones that are not worth it get bypassed.
Authenticating is proving you are who you say you are, and that is done with three kinds of proof: something you know (a password), something you have (a phone, a physical key) and something you are (a fingerprint, your face).
Two-factor authentication means requiring two of different kinds. Two passwords are not two factors: they are the same thing twice.
What it solves is specific and enormous: it destroys the value of a stolen password. And when an intrusion begins with a valid credential, leaked somewhere else, reused, or lifted by an infostealer, the second factor is what stops that credential from being enough to get in. Without it, a credential stuffing attack turns somebody else’s breach into an account takeover at your company.
What it does not solve is what comes afterwards. And that is the rest of this page.
An earlier version of this guide listed SMS and phone calls as valid methods with no warning attached. That was wrong, and it gets corrected here, because it is the most important thing in the whole article.
A code sent by SMS can be intercepted in three different ways, and none of them is exotic:
Voice calls have the same problems and add one more: a recognisable voice can now be cloned from publicly available material, so "we are calling you to verify" has stopped verifying anything.
That said, and this matters: SMS is better than nothing. If the realistic alternative in a company is no second factor at all, put SMS in and improve it later. What is not acceptable is publishing it as good practice, or leaving it in place where there is something genuinely worth protecting.
Passkeys are the version of this that already ships on the phone and the laptop, with nothing to buy. Underneath they are WebAuthn and FIDO2, which is the standard doing the work, and their important property is this: the credential is bound to the real site’s domain. If the page is a copy, the browser simply does not use it, and the user cannot get it wrong even if they try.
From there to removing the password altogether is one step, which is the passwordless approach.
Three ways, and only the first is genuinely technical.
1. Getting in the middle. This is adversary in the middle, and it is what turns up in phishing today. The fake page does not store your password: it forwards it to the real one in real time, shows you the genuine second factor prompt, you type the correct code, and the attacker keeps the session cookie the site issues afterwards. With that cookie they are already inside, and the second factor is not asked for again because it has already been passed.
This is what makes six digit codes useless against well built phishing, and what makes a passkey work: a passkey cannot be typed into the fake page.
2. Wearing the user down. With the password already stolen, approval prompts are fired off until somebody presses yes to make it stop, usually at night. That is why it matters that approval forces you to type the number from the screen.
3. Going around it. The most frequent and the most boring: stealing the already open session with an infostealer (that is session hijacking), or coming in through an old protocol that does not even know how to ask for a second factor. That is what the next section is about.
Turning the second factor on is the beginning. What decides the outcome is what gets done afterwards, and that usually stops halfway.
In Microsoft 365 environments this is a specific, bounded configuration review: M365 hardening.
In order, and without needing a project:
For how this gets used against a company in fraud, see business email compromise. And if you want a specific case looked at, get in touch.
If any of this looks like a problem you are carrying, half an hour on a call scoping it with a senior pentester is worth more than reading another article.
Talk to a senior pentesterPick a time that suits you. You tell us what you need and where you are, and we explain how we work and how we can help.