Triple Handshakes and Cookie Cutters: Breaking and Fixing Authentication over TLS
Open Access
- 1 May 2014
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- No. 10816011,p. 98-113
- https://doi.org/10.1109/sp.2014.14
Abstract
TLS was designed as a transparent channel abstraction to allow developers with no cryptographic expertise to protect their application against attackers that may control some clients, some servers, and may have the capability to tamper with network connections. However, the security guarantees of TLS fall short of those of a secure channel, leading to a variety of attacks. We show how some widespread false beliefs about these guarantees can be exploited to attack popular applications and defeat several standard authentication methods that rely too naively on TLS. We present new client impersonation attacks against TLS renegotiations, wireless networks, challenge-response protocols, and channel-bound cookies. Our attacks exploit combinations of RSA and Diffie-Hellman key exchange, session resumption, and renegotiation to bypass many recent countermeasures. We also demonstrate new ways to exploit known weaknesses of HTTP over TLS. We investigate the root causes for these attacks and propose new countermeasures. At the protocol level, we design and implement two new TLS extensions that strengthen the authentication guarantees of the handshake. At the application level, we develop an exemplary HTTPS client library that implements several mitigations, on top of a previously verified TLS implementation, and verify that their composition provides strong, simple application security.Keywords
This publication has 28 references indexed in Scilit:
- SoK: SSL and HTTPS: Revisiting Past Challenges and Evaluating Certificate Trust Model EnhancementsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2013
- On the security of TLS renegotiationPublished by Association for Computing Machinery (ACM) ,2013
- A cross-protocol attack on the TLS protocolPublished by Association for Computing Machinery (ACM) ,2012
- The most dangerous code in the worldPublished by Association for Computing Machinery (ACM) ,2012
- Modular code-based cryptographic verificationPublished by Association for Computing Machinery (ACM) ,2011
- The Transport Layer Security (TLS) Protocol Version 1.2Published by RFC Editor ,2008
- Extensible Authentication Protocol Tunneled Transport Layer Security Authenticated Protocol Version 0 (EAP-TTLSv0)Published by RFC Editor ,2008
- SSL/TLS session-aware user authentication – Or how to effectively thwart the man-in-the-middleComputer Communications, 2006
- An unknown key-share attack on the MQV key agreement protocolACM Transactions on Information and System Security, 2001
- An attack on the Needham-Schroeder public-key authentication protocolInformation Processing Letters, 1995