Internet Engineering Task Force L. Velvindron Internet-Draft Hackers.mu Updates: 4419 (if approved) M. Baushke Intended status: Standards Track Juniper Networks, Inc. Expires: March 25, 2018 September 21, 2017 Increase SSH minimum recommended DH modulus size to 2048 bits draft-ietf-curdle-ssh-dh-group-exchange-06 Abstract The Diffie-Hellman (DH) Group Exchange for the Secure Shell (SSH) Transport layer Protocol specifies that servers and clients should support groups with a modulus length of k bits, where the recommended minimum value is 1024 bits. Recent security research has shown that a minimum value of 1024 bits is insufficient against state-sponsored actors, and possibly any organization with enough computing resources. As such, this document formally updates the specification such that the minimum recommended value for k is 2048 bits and the group size is 2048 bits at minimum. This RFC updates RFC4419 which allowed for DH moduli less than 2048 bits. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at https://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on March 25, 2018. Copyright Notice Copyright (c) 2017 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of Velvindron & Baushke Expires March 25, 2018 [Page 1] Internet-Draft Recommended minimum modulus size September 2017 publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. 1. Introduction [RFC4419] specifies a recommended minimum size of 1024 bits for k, which is the modulus length of the DH Group. It also suggests that in all cases, the size of the group needs be at least 1024 bits. This document updates [RFC4419] so that the minimum recommended size be 2048 bits. This recommendation is based on recent research [LOGJAM] on DH Group weaknesses. 1.1. Requirements Language The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119]. 2. 2048 bits DH Group Recent research [LOGJAM] strongly suggests that DH groups that are 1024 bits can be broken by state actors, and possibly any organization with enough computing resources. The authors show how they are able to break 768 bits DH group and extrapolate the attack to 1024 bits DH groups. In their analysis, they show that breaking 1024 bits can be done with enough computing resources. This document provides the following recommendation: SSH Servers and SSH clients SHOULD support groups with a modulus length of k bits where 2048 <= k <= 8192, where it is possible to set k to 3072 should the need arise in the coming years. [RFC4419] specifies a recommended minimum size of 1024 bits for k, which is the modulus length of the DH Group. It also suggests that in all cases, the size of the group needs be at least 1024 bits. This document updates [RFC4419] as described below: o section 3 Paragraph 9: Servers and clients SHOULD support groups with a modulus length of k bits where 2048 <= k <= 8192. The recommended minimum values for min and max are 2048 and 8192, respectively. k SHOULD be able to be set to 3072 by an implementation should the need arise in the coming years. Velvindron & Baushke Expires March 25, 2018 [Page 2] Internet-Draft Recommended minimum modulus size September 2017 o Section 3 Paragraph 11: In all cases, the size of the group SHOULD be at least 2048 bits, with the possibility to be set to 3072 bits should the need arise in the coming years. 3. Interoperability This document keeps the [RFC4419] requirement "The server should return the smallest group it knows that is larger than the size the client requested. If the server does not know a group that is larger than the client request, then it SHOULD return the largest group it knows." and updates the sentence that follows to read: "In all cases, the size of the returned group SHOULD be at least 2048 bits." 4. Security Considerations This document discusses security issues of DH groups that are 1024 bits in size, and formally updates the minimum size of DH groups to be 2048 bits. A hostile or "owned" Secure Shell server implementation could potentially use Backdoored Diffie-Hellman primes using the methods described in [Backdoor-DH] to provide the g,p values to be used. Or, they could just send the calculated secret through a covert channel of some sort to a passive listener. A malicious client could cause a Denial of Service by making multiple connections which are less 2048 bits in size on purpose. Therefore, Operating Systems SHOULD NOT log DH groups less than 2048 bits in size, as it would create an additional attack surface. 5. IANA Considerations This document contains no considerations for IANA. 6. References 6.1. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, . [RFC4419] Friedl, M., Provos, N., and W. Simpson, "Diffie-Hellman Group Exchange for the Secure Shell (SSH) Transport Layer Protocol", RFC 4419, DOI 10.17487/RFC4419, March 2006, . Velvindron & Baushke Expires March 25, 2018 [Page 3] Internet-Draft Recommended minimum modulus size September 2017 6.2. Informative References [Backdoor-DH] Wong, D., "How to Backdoor Diffie-Hellman", Cryptology ePrint Archive Report 2016/644, June 2016, . [LOGJAM] Adrian, D., Bhargavan, K., Durumeric, Z., Gaudry, P., Green, M., Halderman, J., Heninger, N., Springall, D., Thome, E., Valenta, L., VanderSloot, B., Wustrow, E., Zanella-Beguelin, S., and P. Zimmermann, "Imperfect Forward Secrecy: How Diffie-Hellman Fails in Practice", ACM Conference on Computer and Communications Security (CCS) 2015, 2015, . Authors' Addresses Loganaden Velvindron Hackers.mu 88, Avenue De Plevitz Roches Brunes MU Phone: +230 59762817 Email: logan@hackers.mu Mark D. Baushke Juniper Networks, Inc. Email: mdb@juniper.net Velvindron & Baushke Expires March 25, 2018 [Page 4]