Note: This is an archival copy of Security Sun Alert 201126 as previously published on http://sunsolve.sun.com.|
Latest version of this security advisory is available from http://support.oracle.com as Sun Alert 1000845.1.
Solaris 10 Operating System
Date of Workaround Release
Date of Resolved Release
A vulnerability in the OpenSSL (see openssl(5)) toolkit may allow active protocol-version rollback attacks, where an attacker acting as a "man in the middle" can force a client and a server to negotiate the SSL 2.0 protocol even if these parties both support SSL 3.0 or TLS 1.0. The SSL 2.0 protocol is known to have severe cryptographic weaknesses and is supported as a fallback only.
This issue is described in the following OpenSSL Advisory: http://www.openssl.org/news/secadv_20051011.txt
and referenced in CAN-2005-2969 at: http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2005-2969
This issue can occur in the following releases:
Note: Solaris 8 and 9 do not include OpenSSL toolkit, and therefore are not vulnerable to this issue.
Applications that use the option SSL_OP_MSIE_SSLV2_RSA_PADDING (see SSL_CTX_set_options(3)) are affected. This option is implied by use of SSL_OP_ALL, which is intended to work around various bugs in third-party software that might prevent interoperability.
The vulnerability occurs only if the old protocol version SSL 2.0 is enabled both in an OpenSSL server and in any of the clients (OpenSSL-based or not) connecting to it.
There are no reliable symptoms that would indicate the described issue has been exploited.
To work around the described issue:
If Apache or Apache2 in Solaris 10 are configured with SSL service on port 443 (https), the following command can be used to check if the SSL 2.0 protocol is enabled at the server:
$ /usr/sfw/bin/openssl s_client -ssl2 -connect <hostname>:443 -state -debug
If the above command produces output, then SSLv2 is enabled and can be disabled in the Apache and Apache2 web servers as follows:
1. As a privileged user, edit the following file:
Apache: /etc/apache/httpd.conf Apache2: /etc/apache2/ssl.conf
2. Modify the line which begins with:
to change the string '+SSLv2' to '!SSLv2'.
3. Restart the Apache web server:
Apache: # /usr/apache/bin/apachectl restart Apache2: svcadm restart apache2
This issue is addressed in the following releases:
This solution has no attachment