CVE-2018-0732: Client DoS due to large DH parameter

Published Jun 12, 2018
·
Updated

All actively supported release lines of Node.js are impacted by this flaw. Patches are included in both OpenSSL 1.1.0i (Node.js 10) and 1.0.2p (Node.js 6 LTS "Boron" and Node.js 8 LTS "Carbon").

This fixes a potential denial of service (DoS) attack against client connections by a malicious server. During a TLS communication handshake, where both client and server agree to use a cipher-suite using DH or DHE (Diffie–Hellman, in both ephemeral and non-ephemeral modes), a malicious server can send a very large prime value to the client. Because this has been unbounded in OpenSSL, the client can be forced to spend an unreasonably long period of time to generate a key, potentially causing a denial of service.

All previous versions of Node.js 6.x (LTS "Boron") are vulnerable

All previous versions of Node.js 8.x (LTS "Carbon") are vulnerable

All previous versions of Node.js 10.x (Current) are vulnerable

Other sources

During key agreement in a TLS handshake using a DH(E) based ciphersuite a malicious server can send a very large prime value to the client. This will cause the client to spend an unreasonably long period of time generating a key for this prime resulting in a hang until the client has finished. This could be exploited in a Denial Of Service attack. Fixed in OpenSSL 1.1.0i-dev (Affected 1.1.0-1.1.0h). Fixed in OpenSSL 1.0.2p-dev (Affected 1.0.2-1.0.2o).

— Ubuntu

OpenSSL is vulnerable to a denial of service, caused by the sending of a very large prime value to the client by a malicious server during key agreement in a TLS handshake. By spending an unreasonably long period of time generating a key for this prime, a remote attacker could exploit this vulnerability to cause the client to hang.

— IBM

OpenSSL versions 1.1.0 to 1.1.0h and 1.0.2 to 1.0.2o allow malicious servers to send very large primes to a client during DH(E) based TLS handshakes. This will cause the client to spend an unreasonably long period of time generating a key for this prime resulting in a hang until the client has finished. This could be exploited in a Denial Of Service attack.

External Reference:

https://www.openssl.org/news/secadv/20180612.txt

Upstream Patches:

https://github.com/openssl/openssl/commit/ea7abeeabf92b7aca160bdd0208636d4da69f4f4 https://github.com/openssl/openssl/commit/3984ef0b72831da8b3ece4745cac4f8575b19098

— Red Hat

Affected Software

44 affected componentsFixes available
IBM Security Verify Governance<=10.0
OpenSSL OpenSSL>=1.0.2<=1.0.2o
OpenSSL OpenSSL>=1.1.0<=1.1.0h
Canonical Ubuntu Linux=12.04
Canonical Ubuntu Linux=14.04
Canonical Ubuntu Linux=16.04
Canonical Ubuntu Linux=17.10
Canonical Ubuntu Linux=18.04
Debian Debian Linux=8.0
Nodejs Node.js>=6.0.0<6.8.1
Nodejs Node.js>=6.9.0<6.14.4
Nodejs Node.js>=8.0.0<8.8.1
Nodejs Node.js>=8.9.0<8.11.4
Nodejs Node.js>=10.0.0<10.9.0
redhat/openssl<1.1.0
1.1.0
redhat/openssl<1.0.2
1.0.2
Node.js Node.js>=10.0.0<10.9.0
10.9.0
Node.js Node.js>=6.0.0<6.14.4
6.14.4
Node.js Node.js>=8.0.0<8.11.4
8.11.4
debian/openssl
3.0.20-1~deb12u23.0.22-1~deb12u23.5.7-1~deb13u23.5.7-1~deb13u33.6.5-1
alpine/libressl<2.7.4-r0
2.7.4-r0
alpine/libressl<2.7.4-r0
2.7.4-r0
alpine/libressl<2.7.4-r0
2.7.4-r0
alpine/libressl<2.7.4-r0
2.7.4-r0
alpine/libressl<2.7.4-r0
2.7.4-r0
alpine/libressl<2.7.4-r0
2.7.4-r0
alpine/libressl<2.7.4-r0
2.7.4-r0
alpine/libressl<2.7.4-r0
2.7.4-r0
alpine/libressl<2.7.4-r0
2.7.4-r0
alpine/libressl<2.7.4-r0
2.7.4-r0
alpine/libressl<2.7.4-r0
2.7.4-r0
alpine/libressl<2.7.4-r0
2.7.4-r0
alpine/libressl<2.7.4-r0
2.7.4-r0
alpine/libressl<2.7.4-r0
2.7.4-r0
alpine/libressl<2.7.4-r0
2.7.4-r0
alpine/libressl<2.6.5-r0
2.6.5-r0
alpine/libressl<2.7.4-r0
2.7.4-r0
alpine/libressl<2.7.4-r0
2.7.4-r0
alpine/openssl>=1.0.2<1.0.2o-r1
1.0.2o-r1
alpine/openssl>=1.0.2<1.0.2o-r1
1.0.2o-r1
alpine/openssl>=1.0.2<1.0.2o-r1
1.0.2o-r1
alpine/openssl>=1.0.2<1.0.2o-r1
1.0.2o-r1
alpine/openssl>=1.0.2<1.0.2o-r1
1.0.2o-r1
alpine/openssl>=1.0.2<1.0.2o-r1
1.0.2o-r1

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade redhat/openssl to a version that resolves this vulnerability.

    Fixed in 1.1.0
  2. Upgrade

    Upgrade redhat/openssl to a version that resolves this vulnerability.

    Fixed in 1.0.2
  3. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 10.9.0
  4. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 6.14.4
  5. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 8.11.4
  6. Upgrade

    Upgrade debian/openssl to a version that resolves this vulnerability.

    Fixed in 3.0.20-1~deb12u2Fixed in 3.0.22-1~deb12u2Fixed in 3.5.7-1~deb13u2Fixed in 3.5.7-1~deb13u3Fixed in 3.6.5-1
  7. Upgrade

    Upgrade alpine/libressl to a version that resolves this vulnerability.

    Fixed in 2.7.4-r0
  8. Upgrade

    Upgrade alpine/libressl to a version that resolves this vulnerability.

    Fixed in 2.6.5-r0
  9. Upgrade

    Upgrade alpine/openssl to a version that resolves this vulnerability.

    Fixed in 1.0.2o-r1
  10. Upgrade

    Upgrade OpenSSL to a version that resolves this vulnerability.

    Fixed in 1.0.2p
  11. Upgrade

    Upgrade OpenSSL to a version that resolves this vulnerability.

    Fixed in 1.1.0i

Event History

Jun 12, 2018
CVE Published
via Ubuntu·12:00 AM
Data Sourced
via Ubuntu·12:00 AM
RemedyDescriptionSeverityAffected Software
CVE Published
via MITRE·01:00 PM
Data Sourced
via MITRE·01:00 PM
DescriptionWeakness
Data Sourced
via NVD·01:29 PM
RemedyDescriptionSeverityWeaknessAffected Software
Data Sourced
via OSV·01:29 PM
DescriptionSeverityAffected Software
Jun 14, 2018
Data Sourced
via Red Hat·05:11 AM
DescriptionSeverityAffected Software
Aug 11, 2018
Data Sourced
via Node.js·11:07 AM
DescriptionSeverity
Aug 16, 2018
Data Sourced
via Node.js·01:53 AM
Affected Software

Peer vulnerabilities

Found alongside the following vulnerabilities.

Frequently Asked Questions

1

What is the vulnerability ID?

The vulnerability ID is CVE-2018-0732.

2

What is the severity of CVE-2018-0732?

The severity of CVE-2018-0732 is high with a severity value of 7.5.

3

What is the affected software?

The affected software includes OpenSSL versions 1.0.2 and 1.1.0, as well as various Ubuntu Linux and Debian versions.

4

How does CVE-2018-0732 work?

During a TLS handshake using a DH(E) based ciphersuite, a malicious server can send a very large prime value to the client, causing the client to spend an unreasonably long time generating a key for this prime and resulting in a hang.

5

Are there any available remedies for CVE-2018-0732?

Yes, there are available remedies provided by Red Hat, Canonical, Ubuntu, and Debian. Please refer to the respective sources for the specific versions and updates.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203