OpenSSL安全重新协商失败

OpenSSL安全重新协商失败,openssl,Openssl,我在客户端和服务器上都使用OpenSSL 1.0.0e进行测试,但在测试安全重新协商时收到一条错误消息 $ openssl s_client -connect 192.168.1.99:443 -tls1 ... Secure Renegotiation IS supported ... R RENEGOTIATING 140501522626208:error:1409E0E5:SSL routines:SSL3_WRITE_BYTES:ssl handshake failure:s3_pkt

我在客户端和服务器上都使用OpenSSL 1.0.0e进行测试,但在测试安全重新协商时收到一条错误消息

$ openssl s_client -connect 192.168.1.99:443 -tls1
...
Secure Renegotiation IS supported
...
R
RENEGOTIATING
140501522626208:error:1409E0E5:SSL routines:SSL3_WRITE_BYTES:ssl handshake failure:s3_pkt.c:591:

为了更详细地了解这个问题,以下是一些相关信息:

The official description:
Microsoft Internet Information Services(IIS)7.0中使用的TLS协议和SSL协议3.0及可能更早版本,Apache HTTP Server 2.2.14及更早版本中使用的mod_SSL,0.9.8l之前的OpenSSL,GnuTLS 2.8.5及更早版本,Mozilla网络安全服务(NSS)3.12.4及更早版本,多个Cisco产品和其他产品,未正确地将重新协商握手与现有连接相关联,这使得中间人攻击者能够通过发送未经验证的请求,将数据插入HTTPS会话,以及可能受TLS或SSL保护的其他类型的会话,该请求由服务器在重新协商后上下文中追溯处理,与“明文注入”攻击有关,又称“项目巨头”问题

因此,总结脆弱性要求,TLS或SSLv3连接易受攻击的先决条件是:

1,服务器确认并接受在连接中间和初始握手

后的完全TLS重新协商。 及

2服务器假定两个TLS会话都是与同一客户端协商的

3服务器将两个会话视为一个会话,并在应用层合并它们

也就是说,根据上述要求,对端口443上的服务器进行的测试表明,不允许重新协商:

易受攻击服务器的一般示例

    Openssl s_client –connect yourserver.com:443
    GET / HTTP/1.0
    Host:yourserver.com
    R (Triggers renegotiation – if this works, the server accepts enegotiations
    within an existing TLS session Req. #1)
    CRLF
    <server responds with content> (server merged both sessions Req. #2)

干杯

为了更详细地理解这个问题,这里有一些相关信息:

The official description:
Microsoft Internet Information Services(IIS)7.0中使用的TLS协议和SSL协议3.0及可能更早版本,Apache HTTP Server 2.2.14及更早版本中使用的mod_SSL,0.9.8l之前的OpenSSL,GnuTLS 2.8.5及更早版本,Mozilla网络安全服务(NSS)3.12.4及更早版本,多个Cisco产品和其他产品,未正确地将重新协商握手与现有连接相关联,这使得中间人攻击者能够通过发送未经验证的请求,将数据插入HTTPS会话,以及可能受TLS或SSL保护的其他类型的会话,该请求由服务器在重新协商后上下文中追溯处理,与“明文注入”攻击有关,又称“项目巨头”问题

因此,总结脆弱性要求,TLS或SSLv3连接易受攻击的先决条件是:

1,服务器确认并接受在连接中间和初始握手

后的完全TLS重新协商。 及

2服务器假定两个TLS会话都是与同一客户端协商的

3服务器将两个会话视为一个会话,并在应用层合并它们

也就是说,根据上述要求,对端口443上的服务器进行的测试表明,不允许重新协商:

易受攻击服务器的一般示例

    Openssl s_client –connect yourserver.com:443
    GET / HTTP/1.0
    Host:yourserver.com
    R (Triggers renegotiation – if this works, the server accepts enegotiations
    within an existing TLS session Req. #1)
    CRLF
    <server responds with content> (server merged both sessions Req. #2)
干杯