Как прочитать зашифрованный код предупреждения SSL/TLS в эфемерной RSA

Я пытаюсь отлаживать зашифрованные оповещения SSL на своем веб-сервере. Я не уверен, в чем проблема, и кажется, что все работает, но я вижу много зашифрованных предупреждений TLSv1 в Wireshark, которых, как мне кажется, не должно быть.

Протокол предупреждений TLSv1 (http://en.wikipedia.org/wiki/Transport_Layer_Security#Alert_protocol) предоставляет коды ошибок. указывая, что не так, к сожалению, этот код зашифрован.

Wireshark позволяет расшифровывать SSL, предоставляя закрытый ключ (который у меня есть) на странице настроек SSL. Однако у меня это не работает из-за настройки сеанса с помощью Ephemeral RSA (Sharkfest'09 http://sharkfest.wireshark.org/sharkfest.12/presentations/MB-1_SSL_Troubleshooting_with%20_Wireshark_Software.pdf стр. 59).

Я хочу знать, как я могу прочитать этот код предупреждения. Любое из следующего приведет меня к этому:
a) Попросите Wireshark расшифровать SSL с помощью Ephemeral RSA
b) Избегайте использования Ephemeral RSA, чтобы Wireshark мог расшифровать
c) Заставьте SSL использовать нулевое шифрование, чтобы я мог просто прочитайте код, чтобы отладить его


person user1967117    schedule 14.02.2013    source источник


Ответы (1)


б) Избегайте использования Ephemeral RSA, чтобы Wireshark мог расшифровать

Если ваш веб-сервер — Apache, попробуйте следующее:

httpd.conf

SSLProtocol +all -SSLv2 -SSLv3
SSLCipherSuite -kEECDH:-kEDH:+kRSA:+HIGH:+MEDIUM:-LOW:-EXP

c) Заставить SSL использовать нулевое шифрование, чтобы я мог просто прочитать код для его отладки.

Это может быть немного сложнее, но попробуйте переместить eNULL в начало списка. eNULL, вероятно, будет отклонен клиентом, но попробовать стоит. Я подозреваю, что он будет отклонен, потому что клиент не разрешит шифр (или aNULL, если уж на то пошло).

Если у клиента есть eNULL, он все равно может не использоваться. Сервер обычно учитывает шифры клиента, поэтому, если клиент не запрашивает eNull, вам придется найти переопределение в конфигурации сервера.

person jww    schedule 15.10.2013
comment
Сервер всегда «соблюдает шифры клиента». У него нет выбора. См. RFC 2246, 7.4.1.2. - person user207421; 17.12.2013
comment
Сервер всегда «соблюдает шифры клиента». Не на практике. Я регулярно диктую, какой шифр будет использовать клиент, потому что клиенты часто неправильно настроены. Я редко отдаю предпочтение RC4/MD5. Собственно говоря, я не могу взять RC4/MD5, так как отключаю их - оба сломаны. См. SSL_OP_CIPHER_SERVER_PREFERENCE OpenSSL. - person jww; 17.12.2013
comment
Вы регулярно диктуете выбор среди включенных наборов шифров клиента. Вы не можете сделать ничего другого. См. RFC. - person user207421; 17.12.2013