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.
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.
(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.
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.
(In reply to comment #0) > 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 Upstream security advisory: http://openssl.org/news/secadv_20101202.txt