• M
    Prevent handshake with unseeded PRNG · e1b568dd
    Matt Caswell 提交于
    Fix security issue where under certain conditions a client can complete a
    handshake with an unseeded PRNG. The conditions are:
    - Client is on a platform where the PRNG has not been seeded, and the
    user has not seeded manually
    - A protocol specific client method version has been used (i.e. not
    SSL_client_methodv23)
    - A ciphersuite is used that does not require additional random data
    from the PRNG beyond the initial ClientHello client random
    (e.g. PSK-RC4-SHA)
    
    If the handshake succeeds then the client random that has been used will
    have been generated from a PRNG with insufficient entropy and therefore
    the output may be predictable.
    
    For example using the following command with an unseeded openssl will
    succeed on an unpatched platform:
    
    openssl s_client -psk 1a2b3c4d -tls1_2 -cipher PSK-RC4-SHA
    
    CVE-2015-0285
    Reviewed-by: NRichard Levitte <levitte@openssl.org>
    e1b568dd
s3_clnt.c 115.5 KB