Internet DRAFT - draft-ietf-curdle-ssh-dh-group-exchange
draft-ietf-curdle-ssh-dh-group-exchange
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,
<https://www.rfc-editor.org/info/rfc2119>.
[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,
<https://www.rfc-editor.org/info/rfc4419>.
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,
<http://eprint.iacr.org/2016/644.pdf>.
[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,
<https://weakdh.org/imperfect-forward-secrecy-ccs15.pdf>.
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]