Cryptology ePrint Archive: Report 2016/995

Measuring small subgroup attacks against Diffie-Hellman

Luke Valenta and David Adrian and Antonio Sanso and Shaanan Cohney and Joshua Fried and Marcella Hastings and J. Alex Halderman and Nadia Heninger

Abstract: Several recent standards, including NIST SP 800- 56A and RFC 5114, advocate the use of “DSA” parameters for Diffie-Hellman key exchange. While it is possible to use such parameters securely, additional validation checks are necessary to prevent well-known and potentially devastating attacks. In this paper, we observe that many Diffie-Hellman implementations do not properly validate key exchange inputs. Combined with other protocol properties and implementation choices, this can radically decrease security. We measure the prevalence of these parameter choices in the wild for HTTPS, POP3S, SMTP with STARTTLS, SSH, IKEv1, and IKEv2, finding millions of hosts using DSA and other non-“safe” primes for Diffie-Hellman key exchange, many of them in combination with potentially vulnerable behaviors. We examine over 20 open-source cryptographic libraries and applications and observe that until January 2016, not a single one validated subgroup orders by default. We found feasible full or partial key recovery vulnerabilities in OpenSSL, the Exim mail server, the Unbound DNS client, and Amazon’s load balancer, as well as susceptibility to weaker attacks in many other applications.

Category / Keywords: public-key cryptography / diffie-hellman, small subgroup attack

Original Publication (in the same form): NDSS 2017

Date: received 15 Oct 2016, last revised 28 Feb 2017

Contact author: lukev at seas upenn edu

Available format(s): PDF | BibTeX Citation

Version: 20170228:193544 (All versions of this report)

Short URL:

[ Cryptology ePrint archive ]