Security researchers have developed a new man-in-the-middle attack against the cryptographic protocol TLS – a protocol that is used to encrypt online banking and shopping, and other sensitive connections, to thwart eavesdroppers.
The so-called Triple Handshake attack can, in certain conditions, outwit vital checks carried out to verify the identity of a user connecting to a server over a secure connection.
In other words, it's possible to for a malicious system to intercept a user's login credential (a client certificate in this case) and masquerade as that victim with any server that also accepts the same credential.
The quirky flaw was uncovered by security researchers at the French National Institute for Research in Computer Science and Control (INRIA) and draws from their previous work in the field.
The attack also has implications for the security of SSL (Secure Sockets Layer), the still widely used predecessor to TLS (Transport Layer Security), as the researchers explain on their website:
We have discovered a new class of attacks against applications that rely on the TLS Internet Standard for securing their communications. Essentially, if a user connects to a malicious website and presents a TLS client certificate, the malicious website can then impersonate the user at any other website that accepts the same TLS client certificate. The attacks work with all TLS and SSL versions, as well as the DTLS variant.
As you may have noticed, online websites and similar services typically use usernames and passwords rather than TLS client certificates to log users in. This limits the impact of the attack. In practice the flaw becomes more of a problem when it comes to logging into Wi-Fi access points.
"Variants of our attacks apply to specific scenarios of standard authentication protocols that rely on TLS, such as the PEAP Wi‑Fi authentication mechanism," the researchers explained, adding that their exploit is similar to a previously uncovered cryptographic flaw – the 2009 Ray and Rex TLS renegotiation attack.
The researchers – Karthikeyan Bhargavan, Antoine Delignat-Lavaud, Cédric Fournet, Alfredo Pironti and Pierre-Yves Strub – advocate short‑term application-level mitigations as well as long-term changes to the TLS protocol to strengthen the standard and safeguard its users against this latest attack and other assaults along the same lines.
"Let me stress that the attacks we found exploit a protocol-level issue, and not specific implementation bugs," Pironti told El Reg.
"We also propose short-term application-level mitigation, but we aim at getting the protocol fixed, which would solve the issue at its root."
The French team have already notified major vendors of TLS software implementations (at Microsoft, Google and others) as well as the Internet Engineering Task Force (IETF) about their research. The experts publicly disclosed the attack and possible countermeasures at an IETF meeting in London on Tuesday evening.
'People shouldn't panic'
Infosec professionals and programmers' early reaction to the Triple Handshakes research was cautious.
"In short, the TLS handshake hashes in too little information, and always has. Because of that it's possible to synchronise the state of two TLS sessions in a way that breaks assumptions made in the rest of the protocol," senior Google software engineer Adam Langley explained on his personal website.
"I'd like to thank the researchers for doing a very good job of disclosing this. [They] even included a draft for fixing the TLS key derivation to include all the needed information to stop this attack.
"People shouldn't panic. The impact of this attack is limited to sites that use TLS client-certificate authentication with renegotiation, and protocols that depend on channel binding. The vast majority of users have never used client certificates."
Marsh Ray, an authentication expert at Microsoft, noted: "Criticality is difficult to gauge."
Pironti and other researchers at INRIA previously discovered a way to exploit flaws in Google and Microsoft's web email services using a glitch in the TLS technology. ®