summaryrefslogtreecommitdiffstats
path: root/ssl
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2014-07-25 00:50:06 +0100
committerMatt Caswell <matt@openssl.org>2014-08-06 20:36:41 +0100
commit80bd7b41b30af6ee96f519e629463583318de3b0 (patch)
tree827671d277fa089328058964009069671ead5157 /ssl
parentfb0bc2b273bcc2d5401dd883fe869af4fc74bb21 (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.c7
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;
}