Наш веб-сервер недавно не прошел тест на соответствие PCI из-за наличия «уязвимости повторного согласования сеанса TLS» (CVE-2009-3555). Однако я не уверен, верны ли эти результаты. Мы используем nginx версии 1.6.2 с openssl версии 1.0.2.
Насколько мне известно, с версии 0.8.23 в nginx отключено какое-либо повторное согласование. Результаты тестирования Qualsys SSL показывают, что «безопасное повторное согласование SSL» включено, но безопасное (и небезопасное) повторное согласование, инициированное клиентом, нет.
Вот как выглядит сессия openssl:
$ openssl s_client -connect 192.0.2.1:443
CONNECTED(00000003)
<blah, blah, blah>
New, TLSv1/SSLv3, Cipher is ECDHE-RSA-AES256-GCM-SHA384
Server public key is 2048 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
SSL-Session:
Protocol : TLSv1.2
<blah blah>
GET / HTTP/1.1
R
RENEGOTIATING
140392261871432:error:1409E0E5:SSL routines:SSL3_WRITE_BYTES:ssl handshake failure:s3_pkt.c:596:
Что мне здесь не хватает? Есть ли способ полностью отключить повторное согласование в nginx?