Re: [MASSMAIL][Pound Mailing List] openssl/Windows 2003/Secure Renegotiation
Albert <[email protected]>
| Newsgroups | gmane.comp.web.pound.general |
|---|---|
| Message-ID | <[email protected]> |
Correction, I only need to comment out the line with "SSL_OP_LEGACY_SERVER_CONNECT" to make openssl v1.0.1e work with Windows 2003 server. Also, we're using IIS6 as our web server on the windows boxes. On 1/4/2015 11:14 AM, Albert wrote: > I'm trying to migrated pound from an older load balancer to a new > machine, and ran into a problem connecting via HTTPS to a backend > server running Windows 2003. In my log files, I was seeing this error: > > Jan 2 15:28:42 pound: BIO_do_handshake with <Win2003webserver>:443 > failed: error:1412F152:SSL > routines:SSL_PARSE_SERVERHELLO_TLSEXT:unsafe legacy renegotiation disabled > > This error was only happening for Win 2003 servers, and not Win 2008. > Pound versions were the same (2.7d), but CentOS & openssl are > different, as follows: > > Old server: Linux 2.6.18-371.12.1.el5 (CentOS 5.11), OpenSSL > 0.9.8e-fips-rhel5 01 Jul 2008 > New Server: Linux 3.10.0-123.13.2.el7.x86_64 (CentOS 7.0.1406), > OpenSSL 1.0.1e-fips 11 Feb 2013 > > I also ran some diagnostics using openssl command, as follows: > openssl s_client -no_legacy_server_connect -connect <myserver>:443 > > On Linux 2.6, I got "Secure Renegotiation IS supported", and > connection left open. Where on Linux 3.0, I received "Secure > Renegotiation IS NOT supported", and connection closed. If I remove > "-no_legacy_server_connect" from Linux 3.0 call, it keeps the > connection open. Also, running openssl against Win2008 on Linux 3.0 > returns "Secure Renegotiation IS supported", so Win2008 is OK. > > So, this looked like an openssl option, which was introduced in v1.0, > so I tracked down a problem to couple of openssl options being cleared > in config.c (I'm looking at Pound 2.7 branch) : > > SSL_CTX_clear_options(res->ctx, SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION); > SSL_CTX_clear_options(res->ctx, SSL_OP_LEGACY_SERVER_CONNECT); > > I have a 2 part question: > 1. Does anybody know if Win 2003 can support Secure Renegotiation? > 2. Is there a reason why Pound would set these options to a backend > (or at least not make these optional)? I understand that there are > different vulnerabilities with web servers if these setting are set, > but this is being done on internal machines, not client-facing. > Additionally, these can be set when a client connects to pound via > SSLAllowClientRenegotiation in HTTPS Listener (though, as > documentation describes, this might leave your server to DoS exploits > and other vulnerabilities). > > I'd rather find a patch for Win2003 (if there is one), and leave the > pound code the same (currently, I have commented out the 2 lines from > above, and able to connect to Win2003). But if there are none, should > pound allow connections to backends that don't support secure > renegotiations? > > Albert