#spring-boot #security #cryptography
#весенняя загрузка #Безопасность #криптография
Вопрос:
У меня есть тест безопасности с двумя уязвимостями (aes camellia без aead -> не предлагается, сбой в системе -> УЯЗВИМ)
Проверка безопасности проводилась в приложении Spring boot, и в моем файле конфигурации есть следующая конфигурация:
server:
ssl:
ciphers: EECDH CHACHA20,EECDH AESGCM,EECDH AES SHA384,EECDH AES SHA256,EECDH AES,EDH AES256,!EDH AESGCM,!EDH SHA256,HIGH,!aNULL,!eNULL,!EXPORT,!DES,!MD5,!PSK,!RC4,!ECDHE-RSA-AES256-GCM-SHA384,!SHA1,!SHA256,!SHA384
Я удалил алгоритмы CBC, потому что алгоритмы CBC были сообщены мне как уязвимость.
В тесте мне тоже показали уязвимость logjam, но я следую руководству:
https://geekflare.com/test-logjam-attack-cve-2015-4000-and-fix/
И я включил !ЭКСПОРТ в мои шифровальные наборы
Я не знаю, что мне нужно для решения logjam (потому что на всех страницах я нахожу один и тот же ответ, и AES Camelia, потому что я удаляю алгоритмы CBC, для другой уязвимости).
Ответ №1:
EDH AES256, вероятно, отвечает за обнаружение сбоев в работе, что означает, что ваш JRE использует DH-простое число 1024 бит или меньше. Либо удалите этот набор шифров, либо измените простое число.
Если вы используете Oracle, может сработать следующее (ссылка):
Измените размер ключа по умолчанию в реализациях AlgorithmParameterGenerator и KeyPairGenerator с 1024 до 2048 бит
Это изменение позволит поставщикам JDK использовать 2048 бит в качестве размера ключа по умолчанию для DSA, RSA и DiffieHellman вместо 1024 бит, когда приложения явно не инициализировали
java.security.KeyPairGenerator
иjava.security.AlgorithmParameterGenerator
объекты с размером ключа.
Чтобы протестировать это изменение, загрузите JDK 9.0.1, 8u151, 7u161, 6u171 или более поздние версии и задайте системное свойствоjdk.security.defaultKeySize
с алгоритмом и желаемым размером ключа по умолчанию. Например, чтобы проверить размер ключа DSA по умолчанию 2048, укажите"‑Djdk.security.defaultKeySize=DSA:2048"
в командной строке Java.
В вашем случае добавление "‑Djdk.security.defaultKeySize=DiffieHellman:2048"
в качестве флага командной строки должно сработать.