|Summary:||CVE-2010-4252 openssl: session key retrieval flaw in J-PAKE implementation|
|Product:||[Other] Security Response||Reporter:||Tomas Hoger <thoger>|
|Component:||vulnerability||Assignee:||Red Hat Product Security <security-response-team>|
|Status:||CLOSED NOTABUG||QA Contact:|
|Version:||unspecified||CC:||rcvalle, tmraz, wnefal+redhatbugzilla|
|Fixed In Version:||Doc Type:||Bug Fix|
|Doc Text:||Story Points:||---|
|Last Closed:||2010-12-02 13:06:18 UTC||Type:||---|
|oVirt Team:||---||RHEL 7.3 requirements from Atomic Host:|
|Cloudforms Team:||---||Target Upstream Version:|
Description Tomas Hoger 2010-12-02 13:01:16 UTC
Sébastien Martini discovered a flaw in the OpenSSL's implementation of the J-PAKE authentication protocol. OpenSSL preformed insufficient validation of the public parameters received from the untrusted party, which could use this flaw to make J-PAKE protocol generate predictable session key. Hence an attacker could use this implementation flaw to successfully authenticate (i.e. prove knowledge of the shared secret) to the peer, usually server. Sébastien Martini paper describing this flaw, as well as proof of concept code can be found in the following github repository: https://github.com/seb-m/jpake OpenSSL upstream fix for the issue, which should be included in version 0.9.8q and 1.0.0c: http://cvs.openssl.org/chngview?cn=20098 Note: J-PAKE implementation is considered experimental upstream and is not enabled by default.
Comment 1 Tomas Hoger 2010-12-02 13:04:41 UTC
Created attachment 464242 [details] Reproducer Sébastien Martini reproducer. Source: https://github.com/seb-m/jpake/tree/master/openssl-jpake/ Git repository provides couple of files that should replace original files in openssl 1.0.0a that are needed to build modified client exploiting this flaw. This attachment contains a diff between vanilla 1.0.0a and 1.0.0a with Sébastien's modifications applied.
Comment 2 Tomas Hoger 2010-12-02 13:06:18 UTC
(In reply to comment #0) > Note: J-PAKE implementation is considered experimental upstream and is not > enabled by default. J-PAKE is not enabled in Red Hat Enterprise Linux and Fedora OpenSSL packages either. Statement: Not vulnerable. This issue did not affect the versions of openssl as shipped with Red Hat Enterprise Linux 4, 5, or 6.
Comment 3 Tomas Hoger 2010-12-02 13:10:20 UTC
Same flaws was reported for OpenSSH J-PAKE implementation too and fixed in: http://www.openbsd.org/cgi-bin/cvsweb/src/usr.bin/ssh/jpake.c#rev1.5 As with OpenSSL, OpenSSH code is experimental and not enabled by default or in RHEL / Fedora builds.