Назад | Перейти на главную страницу

Отключение комплектов шифров AES без алгоритма обмена ключами ECDHE

В настоящее время на нашей платформе используются следующие наборы шифров.

AES128-GCM-SHA256

AES128-SHA256

AES128-SHA

ECDHE-RSA-AES128-GCM-SHA256

ECDHE-RSA-AES128-SHA256

ECDHE-RSA-AES128-SHA

После сканирования безопасности команда попросила нас заблокировать следующие статические наборы шифров.

AES128-GCM-SHA256

AES128-SHA256

AES128-SHA

Мы заблокировали вышеупомянутые комплекты шифров через базовый JDK (используемый нашими серверами приложений), обновив раздел алгоритмов tls.disabled в файле java.security.

Это, в свою очередь, также блокирует нижеследующие шифры, так как указанные выше наборы шифров используются в разделе обмена ключами / MAC нижеследующих наборов шифров.

ECDHE-RSA-AES128-GCM-SHA256

ECDHE-RSA-AES128-SHA256

ECDHE-RSA-AES128-SHA

Сообщите, пожалуйста, есть ли способ заблокировать только AES, не блокируя ECDHE с помощью AES.

Вы можете этого не осознавать, но шифровальные наборы, которые OpenSSL для истерических изюминок маркируют с именами, которые не определяют обмен ключами, на самом деле используют обмен ключами RSA (также известный как простой RSA). Эти имена OpenSSL (см. Man-шифры в разделе 1 или, возможно, 1ssl или аналогичные в вашей системе или на сайте) действительно соответствуют этим стандарт имена:

AES128-GCM-SHA256  TLS_RSA_WITH_AES_128_GCM_SHA256
AES128-SHA256      TLS_RSA_WITH_AES_128_CBC_SHA256
AES128-SHA         TLS_RSA_WITH_AES_128_CBC_SHA

Синтаксис для secprop jdk.tls.disabledAlgorithms поддерживает только отдельные алгоритмы, а не комбинации, не говоря уже о таких сложных комбинациях, как «RSA, а не ECDHE». Однако вы можете отключить набор шифров TLS, используя (полное) имя, которое использует Java, которое является стандартным именем, указанным выше. Так что просто поместите эти имена как записи, разделенные запятыми, в secprop.

Обратите внимание, что в TLS1.3 (реализованном в Java 11) набор шифров больше не выбирает методы обмена ключами и аутентификации. Однако 1.3 больше не поддерживает простой обмен ключами RSA без PFS, и, поскольку кажется, что это то, чего ваша «команда» пытается избежать, значения по умолчанию для 1.3 должны вам подойти.