Am 28.11.15 um 11:38 schrieb Steffan Karger:
> This patch is in response to an off-list report by Sebastian Krahmer of
> the SuSE security team.  Sebastian noticed we do not check the return
> value of RAND_bytes() correctly.
> 
> The RAND_bytes() man page first says "RAND_bytes() returns 1 on success,
> 0 otherwise.", but then a bit later "Both functions return -1 if they are
> not supported by the current RAND method.".  This second case was not
> covered by our return value checking.
> 
> Note that if RAND_bytes() would return -1, it would *always* return -1 and
> fail to generate random.
> 
> Also note that if RAND_bytes() would return -1, it would do so too in the
> openssl internal ssl funtions.  The openssl internal function do check the
> return value properly, and connection setup would fail all together.  If
> that would be at least somewhat common, we would have received a *lot* of
> bug reports.  In other words, the error affects static key setups only,
> and seems highly unlikely to occur in actual setups.
> 
> Only builds using OpenSSL as the crypto backend are affected.
> 
> This patch:
> 1. Changes the behaviour of rand_bytes() in openssl builds to match what
>    the doxygen claims (and polarssl builds already do).
> 2. Adds error reporting for RAND_bytes() failures.
>

ACK. Reasonable change. You cannot be too careful with crypto/RNG.

Arne


Reply via email to