В настоящее время на нашей платформе используются следующие наборы шифров.
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 должны вам подойти.