В нашем отчете по аудиту безопасности говорится, что на ряде наших серверов JBoss EAP 5.0 (на RHEL 6.x) включены слабые шифры. Проведя небольшое исследование, я нашел файл .jar
(изhttps://access.redhat.com/solutions/18405), который при запуске с сервера выводит список наборов шифров по умолчанию и поддерживаемых. Я запустил файл и .jar
получил следующий вывод в разделе наборов шифров по умолчанию:
DefaultCipherSuites:
SSL_RSA_WITH_RC4_128_MD5
SSL_RSA_WITH_RC4_128_SHA
TLS_RSA_WITH_AES_128_CBC_SHA
TLS_RSA_WITH_AES_256_CBC_SHA
TLS_DHE_RSA_WITH_AES_128_CBC_SHA
TLS_DHE_RSA_WITH_AES_256_CBC_SHA
TLS_DHE_DSS_WITH_AES_128_CBC_SHA
TLS_DHE_DSS_WITH_AES_256_CBC_SHA
SSL_RSA_WITH_3DES_EDE_CBC_SHA
SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA
SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA
SSL_RSA_WITH_DES_CBC_SHA
SSL_DHE_RSA_WITH_DES_CBC_SHA
SSL_DHE_DSS_WITH_DES_CBC_SHA
SSL_RSA_EXPORT_WITH_RC4_40_MD5
SSL_RSA_EXPORT_WITH_DES40_CBC_SHA
SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA
SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA
TLS_EMPTY_RENEGOTIATION_INFO_SCSV
Я понимаю, что слабые шифры — это те, у которых длина ключа меньше 128 бит. И это из всех перечисленных выше шифров:
- Те, которые содержат в своем названии «128», обозначают шифры с длиной ключа 128.
- Те, которые содержат «256», обеспечивают 256-битное шифрование.
- Те, которые имеют «DES», — это ключи DES с 56-битным шифрованием.
- «RC4_40» означает 40-битное шифрование.
- Те, у которых есть «DES40», снова означают 40-битное шифрование.
- Надпись «3DES» означает тройной DES с ключом шифрования 128/192.
Я знаю, как отредактировать блок соединителя SSL/TLS, server.xml
чтобы включить только некоторые наборы шифров.
Теперь мои вопросы:
Правильно ли я понимаю связь между именами шифров и поддерживаемыми ими длинами бит?
Если ответ на мой вопрос № 1 «да», то означает ли «отключение всех слабых шифров» удаление/отключение всех шифров, в названии которых есть DES, RC4_40 и DES40?
Какова длина ключа TLS_EMPTY_RENEGOTIATION_INFO_SCSV?