Emilia Kasper 59a908f1e8 CVE-2016-0798: avoid memory leak in SRP
The SRP user database lookup method SRP_VBASE_get_by_user had confusing
memory management semantics; the returned pointer was sometimes newly
allocated, and sometimes owned by the callee. The calling code has no
way of distinguishing these two cases.

Specifically, SRP servers that configure a secret seed to hide valid
login information are vulnerable to a memory leak: an attacker
connecting with an invalid username can cause a memory leak of around
300 bytes per connection.

Servers that do not configure SRP, or configure SRP but do not configure
a seed are not vulnerable.

In Apache, the seed directive is known as SSLSRPUnknownUserSeed.

To mitigate the memory leak, the seed handling in SRP_VBASE_get_by_user
is now disabled even if the user has configured a seed.

Applications are advised to migrate to SRP_VBASE_get1_by_user. However,
note that OpenSSL makes no strong guarantees about the
indistinguishability of valid and invalid logins. In particular,
computations are currently not carried out in constant time.

Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-02-25 15:44:21 +01:00
..
2015-01-22 09:34:48 +00:00
2007-09-19 14:53:18 +00:00
2012-03-31 11:07:28 +00:00
1999-05-31 21:58:18 +00:00
2009-06-30 14:59:59 +00:00
2005-04-27 08:56:15 +00:00
2015-08-17 18:25:27 +02:00
2005-11-06 17:58:26 +00:00
2015-07-14 01:18:57 +02:00
2015-07-09 16:58:07 +01:00
2015-03-02 13:43:29 +00:00
2010-01-05 17:33:09 +00:00
2005-04-27 08:56:15 +00:00
2009-04-06 14:25:02 +00:00