[openssl-commits] [openssl] OpenSSL_1_0_2-stable update

Matt Caswell matt at openssl.org
Tue Jun 12 09:33:23 UTC 2018


The branch OpenSSL_1_0_2-stable has been updated
       via  3984ef0b72831da8b3ece4745cac4f8575b19098 (commit)
      from  bd45a8d1ef338027e6892a7c886a373a4fafbf7d (commit)


- Log -----------------------------------------------------------------
commit 3984ef0b72831da8b3ece4745cac4f8575b19098
Author: Guido Vranken <guidovranken at gmail.com>
Date:   Mon Jun 11 19:38:54 2018 +0200

    Reject excessively large primes in DH key generation.
    
    CVE-2018-0732
    
    Signed-off-by: Guido Vranken <guidovranken at gmail.com>
    
    (cherry picked from commit 91f7361f47b082ae61ffe1a7b17bb2adf213c7fe)
    
    Reviewed-by: Tim Hudson <tjh at openssl.org>
    Reviewed-by: Matt Caswell <matt at openssl.org>
    (Merged from https://github.com/openssl/openssl/pull/6457)

-----------------------------------------------------------------------

Summary of changes:
 crypto/dh/dh_key.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/crypto/dh/dh_key.c b/crypto/dh/dh_key.c
index 387558f..f235e0d 100644
--- a/crypto/dh/dh_key.c
+++ b/crypto/dh/dh_key.c
@@ -130,10 +130,15 @@ static int generate_key(DH *dh)
     int ok = 0;
     int generate_new_key = 0;
     unsigned l;
-    BN_CTX *ctx;
+    BN_CTX *ctx = NULL;
     BN_MONT_CTX *mont = NULL;
     BIGNUM *pub_key = NULL, *priv_key = NULL;
 
+    if (BN_num_bits(dh->p) > OPENSSL_DH_MAX_MODULUS_BITS) {
+        DHerr(DH_F_GENERATE_KEY, DH_R_MODULUS_TOO_LARGE);
+        return 0;
+    }
+
     ctx = BN_CTX_new();
     if (ctx == NULL)
         goto err;


More information about the openssl-commits mailing list