Evolution of authentication protocols
Authentication protocols in Microsoft Windows™ have undergone a significant transformation throughout the years, from less secure protocols to more robust and sophisticated mechanisms. The LAN Manager (LM) authentication protocol came first. Due to its limited character set and its use of weak cryptographic algorithm, LAN Manager was fairly easy to crack.
As security concerns mounted, a more formidable approach was introduced with the implementation of New Technology (NT) LAN Manager (NTLM) authentication protocols. NTLM introduced the NT hash, a relatively stronger hashing algorithm than the one used in LM. NTLMv1 (officially Net-NTLMv1) of the protocol uses the NT or LM hash through a challenge-response mechanism between a server and a client. The server authenticates the client by sending an 8-byte random number as the challenge, and the client returns a 24-byte result of the computation using the NT or LM hash and challenge. The server verifies that the client has computed the correct result and, therefore, the authenticity of the client.
However, because of the outdated encryption algorithm and poor implementation of session authenticity validation, NTLMv2 (officially Net-NTLMv2) was introduced in 1996 as an improved version of the NTLMv1 protocol, with the similar challenge-response mechanism but stronger algorithms and two changes. The first change was including a time stamp into the encryption step, and the second change was that the target server would also generate a variable-length challenge instead of providing the 8-byte challenge. Nonetheless, because NTLMv2 still used the challenge-response mechanism, it remained vulnerable by design.
With the launch of Microsoft Windows 2000, Kerberos became the default authentication protocol in the Windows environment. Researchers at the Massachusetts Institute of Technology developed Kerberos in the 1980s. Kerberos is a ticket-based protocol that uses a trusted third-party authentication service that supports multifactor authentication and uses mutual authentication. During authentication, Kerberos looks for tickets instead of passwords to authenticate and authorize, and then it stores specific tickets for each session on the end user’s device. Despite its superiority, however, it still is not yet the de facto standard because of backward compatibility concerns with older systems.
Downgrade attacks
New vulnerabilities emerge every day. However, not all cyberattacks employ the latest techniques and exploits and not all vulnerabilities can be patched.
Downgrade attacks take advantage of a system’s backward compatibility to force it into less secure modes of operation by using deprecated protocols or mechanisms. The older the protocols are, the more effective a downgrade attack can be.
It’s important to keep in mind, however, that balancing security with usability is always a delicate tradeoff. Any backward compatibility mechanism can provide a convenient bridge between legacy systems and modern machines but serve as a time machine for malicious actors to travel back in time to exploit the deprecated protocols.
Supporting NTLM security
Although replaced by Kerberos as the primary authentication protocol, the NTLM suite remains broadly deployed in the Windows environment and includes the LM, NTLMv1, and NTLMv2 protocols. To support any legacy system or solve compatibility issues, Microsoft has provided backward compatibility for authentication protocols via the “LAN Manager authentication level” policy setting, which is used to determine which challenge-response authentication protocol should be used for network logons.
This setting offers five levels, and higher levels require stricter authentication protocols. From zero to five, each level affects the authentication protocol that clients use, the session security level that the computers negotiate, and the authentication level that servers accept.
Downgrade attack mechanics
NTLMv1 downgrade attack methodology is not complex or fancy. The following attack steps are simple below:
- Configure and start a listener tool to receive and capture traffic
- Coerce authentication from the target system
- Negotiate a weaker authentication setting
- Crack the captured downgraded hash
How NTLMv1 downgrade attacks work