diff options
author | Dr. Stephen Henson <steve@openssl.org> | 2014-07-25 00:50:06 +0100 |
---|---|---|
committer | Matt Caswell <matt@openssl.org> | 2014-08-06 20:36:41 +0100 |
commit | 80bd7b41b30af6ee96f519e629463583318de3b0 (patch) | |
tree | 827671d277fa089328058964009069671ead5157 /ssl | |
parent | fb0bc2b273bcc2d5401dd883fe869af4fc74bb21 (diff) |
Fix SRP ciphersuite DoS vulnerability.
If a client attempted to use an SRP ciphersuite and it had not been
set up correctly it would crash with a null pointer read. A malicious
server could exploit this in a DoS attack.
Thanks to Joonas Kuorilehto and Riku Hietamäki from Codenomicon
for reporting this issue.
CVE-2014-2970
Reviewed-by: Tim Hudson <tjh@openssl.org>
Diffstat (limited to 'ssl')
-rw-r--r-- | ssl/t1_lib.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/ssl/t1_lib.c b/ssl/t1_lib.c index 749d88d1a9..3616c0a11e 100644 --- a/ssl/t1_lib.c +++ b/ssl/t1_lib.c @@ -1088,6 +1088,13 @@ void ssl_set_client_disabled(SSL *s) c->mask_k |= SSL_kPSK; } #endif /* OPENSSL_NO_PSK */ +#ifndef OPENSSL_NO_SRP + if (!(s->srp_ctx.srp_Mask & SSL_kSRP)) + { + c->mask_a |= SSL_aSRP; + c->mask_k |= SSL_kSRP; + } +#endif c->valid = 1; } |