CVE-2017-3732: BN_mod_exp may produce incorrect results on x86_64

Published Jan 26, 2017
·
Updated

Last updated 24 July 2024

Other sources

There is a carry propagating bug in the x8664 Montgomery squaring procedure in OpenSSL 1.0.2 before 1.0.2k and 1.1.0 before 1.1.0d. No EC algorithms are affected. Analysis suggests that attacks against RSA and DSA as a result of this defect would be very difficult to perform and are not believed likely. Attacks against DH are considered just feasible (although very difficult) because most of the work necessary to deduce information about a private key may be performed offline. The amount of resources required for such an attack would be very significant and likely only accessible to a limited number of attackers. An attacker would additionally need online access to an unpatched system using the target private key in a scenario with persistent DH parameters and a private key that is shared between multiple clients. For example this can occur by default in OpenSSL DHE based SSL/TLS ciphersuites. Note: This issue is very similar to CVE-2015-3193 but must be treated as a separate problem.

There is a carry propagating bug in the x8664 Montgomery squaring procedure. No EC algorithms are affected. Analysis suggests that attacks against RSA and DSA as a result of this defect would be very difficult to perform and are not believed likely. Attacks against DH are considered just feasible (although very difficult) because most of the work necessary to deduce information about a private key may be performed offline. The amount of resources required for such an attack would be very significant and likely only accessible to a limited number of attackers. An attacker would additionally need online access to an unpatched system using the target private key in a scenario with persistent DH parameters and a private key that is shared between multiple clients. For example this can occur by default in OpenSSL DHE based SSL/TLS ciphersuites.

Note: This issue is very similar to CVE-2015-3193 but must be treated as a separate problem.

OpenSSL 1.0.2 users should upgrade to 1.0.2k

External References:

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

Red Hat

Affected Software

40 affected componentsFixes available
redhat/jbcs-httpd24-apache-commons-daemon<0:1.1.0-1.redhat_2.1.jbcs.el6
0:1.1.0-1.redhat_2.1.jbcs.el6
redhat/jbcs-httpd24-apache-commons-daemon-jsvc<1:1.1.0-1.redhat_2.jbcs.el6
1:1.1.0-1.redhat_2.jbcs.el6
redhat/jbcs-httpd24-apr<0:1.6.3-14.jbcs.el6
0:1.6.3-14.jbcs.el6
redhat/jbcs-httpd24-apr-util<0:1.6.1-9.jbcs.el6
0:1.6.1-9.jbcs.el6
redhat/jbcs-httpd24-httpd<0:2.4.29-17.jbcs.el6
0:2.4.29-17.jbcs.el6
redhat/jbcs-httpd24-nghttp2<0:1.29.0-8.jbcs.el6
0:1.29.0-8.jbcs.el6
redhat/jbcs-httpd24-openssl<1:1.0.2n-11.jbcs.el6
1:1.0.2n-11.jbcs.el6
redhat/jbcs-httpd24-apache-commons-daemon<0:1.1.0-1.redhat_2.1.jbcs.el7
0:1.1.0-1.redhat_2.1.jbcs.el7
redhat/jbcs-httpd24-apache-commons-daemon-jsvc<1:1.1.0-1.redhat_2.jbcs.el7
1:1.1.0-1.redhat_2.jbcs.el7
redhat/jbcs-httpd24-apr<0:1.6.3-14.jbcs.el7
0:1.6.3-14.jbcs.el7
redhat/jbcs-httpd24-apr-util<0:1.6.1-9.jbcs.el7
0:1.6.1-9.jbcs.el7
redhat/jbcs-httpd24-httpd<0:2.4.29-17.jbcs.el7
0:2.4.29-17.jbcs.el7
redhat/jbcs-httpd24-nghttp2<0:1.29.0-8.jbcs.el7
0:1.29.0-8.jbcs.el7
redhat/jbcs-httpd24-openssl<1:1.0.2n-11.jbcs.el7
1:1.0.2n-11.jbcs.el7
redhat/java<1.8.0-ibm-1:1.8.0.5.20-1jpp.1.el6_10
1.8.0-ibm-1:1.8.0.5.20-1jpp.1.el6_10
redhat/java<1.8.0-ibm-1:1.8.0.5.20-1jpp.1.el7
1.8.0-ibm-1:1.8.0.5.20-1jpp.1.el7
redhat/openssl<1.0.2
1.0.2
redhat/openssl<1.1.0
1.1.0
debian/openssl
1.1.1w-0+deb11u11.1.1w-0+deb11u23.0.15-1~deb12u13.0.14-1~deb12u23.4.1-1
OpenSSL OpenSSL=1.0.2
OpenSSL OpenSSL=1.0.2-beta1
OpenSSL OpenSSL=1.0.2-beta2
OpenSSL OpenSSL=1.0.2-beta3
OpenSSL OpenSSL=1.0.2a
OpenSSL OpenSSL=1.0.2b
OpenSSL OpenSSL=1.0.2c
OpenSSL OpenSSL=1.0.2d
OpenSSL OpenSSL=1.0.2e
OpenSSL OpenSSL=1.0.2f
OpenSSL OpenSSL=1.0.2h
OpenSSL OpenSSL=1.0.2i
OpenSSL OpenSSL=1.1.0a
OpenSSL OpenSSL=1.1.0b
OpenSSL OpenSSL=1.1.0c
Nodejs Node.js>=4.0.0<=4.1.2
Nodejs Node.js>=4.2.0<4.7.3
Nodejs Node.js>=5.0.0<=5.12.0
Nodejs Node.js>=6.0.0<=6.8.1
Nodejs Node.js>=6.9.0<6.9.5
Nodejs Node.js>=7.0.0<7.5.0

Event History

Jan 26, 2017
CVE Published
12:00 AM
Data Sourced
via Red Hat·03:44 PM
DescriptionSeverityAffected Software
May 4, 2017
CVE Published
via MITRE·07:00 PM
Data Sourced
via MITRE·07:00 PM
DescriptionWeakness
Jan 11, 2024
Data Sourced
via Launchpad·10:37 PM
Description
Sep 16, 2024
Data Sourced
via Ubuntu·01:19 AM
RemedyDescriptionSeverityAffected Software

Parent advisories

This vulnerability appears in the following advisories.

Frequently Asked Questions

1

What is the severity of CVE-2017-3732?

CVE-2017-3732 is considered to have low severity due to its complex exploitation requirements.

2

How do I fix CVE-2017-3732?

You can fix CVE-2017-3732 by upgrading to OpenSSL version 1.0.2k or 1.1.0d or later.

3

Which software is affected by CVE-2017-3732?

CVE-2017-3732 affects OpenSSL versions prior to 1.0.2k and 1.1.0d.

4

Does CVE-2017-3732 affect EC algorithms?

No, CVE-2017-3732 does not affect EC (Elliptic Curve) algorithms.

5

What types of attacks could CVE-2017-3732 enable?

CVE-2017-3732 may potentially enable difficult-to-execute attacks against RSA and DSA, but practical exploitation is challenging.

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