Clean premaster_secret for GOST
authorMatt Caswell <matt@openssl.org>
Thu, 4 Jun 2015 10:16:16 +0000 (11:16 +0100)
committerMatt Caswell <matt@openssl.org>
Thu, 4 Jun 2015 10:20:51 +0000 (11:20 +0100)
Ensure OPENSSL_cleanse() is called on the premaster secret value calculated for GOST.

With thanks to the Open Crypto Audit Project for reporting this issue.

Reviewed-by: Rich Salz <rsalz@openssl.org>
ssl/s3_srvr.c

index 88e649d3159526c78e87a9d2476ca7ff7eeefe54..90a67d11057455c5c43916b51ce14795a54bfb87 100644 (file)
@@ -2825,6 +2825,7 @@ int ssl3_get_client_key_exchange(SSL *s)
                                                         s->
                                                         session->master_key,
                                                         premaster_secret, 32);
+        OPENSSL_cleanse(premaster_secret, sizeof(premaster_secret));
         if (s->session->master_key_length < 0) {
             al = SSL_AD_INTERNAL_ERROR;
             SSLerr(SSL_F_SSL3_GET_CLIENT_KEY_EXCHANGE, ERR_R_INTERNAL_ERROR);