Downgrade Resilience in Key-Exchange Protocols - Bhargavan, Karthikeyan; Brzuska, Christina; Fournet, Cédric; Green, Matthew; Kohlweiss, Markulf; Zanella-Béguelin, Santiago (2016 IEEE Symposium on Security and Privacy, 2016)
Key-exchange protocols such as TLS, SSH, IPsec, and ZRTP are highly conﬁgurable, with typical deployments supporting multiple protocol versions, cryptographic algorithms and parameters. In the ﬁrst messages of the protocol, the peers negotiate one speciﬁc combination: the protocol mode, based on their local conﬁgurations. With few notable exceptions, most cryptographicanalysesofconﬁgurableprotocolsconsiderasingle mode at a time. In contrast, downgrade attacks, where a network adversary forces peers to use a mode weaker than the one they would normally negotiate, are a recurrent problem in practice. How to support conﬁgurability while at the same time guaranteeing the preferred mode is negotiated? We set to answer this question by designing a formal framework to study downgrade resilience and its relation to other security properties of keyexchange protocols. First, we study the causes of downgrade attacks by dissecting and classifying known and novel attacks against widely used protocols. Second, we survey what is known about the downgrade resilience of existing standards. Third, we combine these ﬁndings to deﬁne downgrade security, and analyze the conditions under which several protocols achieve it. Finally, we discuss patterns that guarantee downgrade security by design, and explain how to use them to strengthen the security of existing protocols, including a newly proposed draft of TLS 1.3.