[openssl-commits] [openssl] master update

Matt Caswell matt at openssl.org
Tue Jun 12 09:11:02 UTC 2018


The branch master has been updated
       via  91f7361f47b082ae61ffe1a7b17bb2adf213c7fe (commit)
      from  a21180b70f6372fee836557df187d72f7a91b686 (commit)


- Log -----------------------------------------------------------------
commit 91f7361f47b082ae61ffe1a7b17bb2adf213c7fe
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>
    
    Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre at ncp-e.com>
    Reviewed-by: Viktor Dukhovni <viktor at openssl.org>
    Reviewed-by: Rich Salz <rsalz 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 6901548..752542b 100644
--- a/crypto/dh/dh_key.c
+++ b/crypto/dh/dh_key.c
@@ -78,10 +78,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