Отключение слабых протоколов и шифров в Centos с Apache
Может кто-нибудь помочь мне определить, может ли быть причиной того, что я все еще получаю пробелы ВА от сканера для следующего? На моем сервере размещено несколько веб-приложений, но я использую одинаковые настройки для всех виртуальных хостов.
20007 - обнаружение протоколов SSL версий 2 и 3
ПРИМЕЧАНИЕ. SSLEngine и SSLHonorCipherOrder включены.
Это для протоколов. Все отключено и включены только версии TLS 1.1 и 1.2, однако сканер все еще обнаруживает SSL v3
SSLProtocol -All + TLSv1.1 + TLSv1.2
Я также попробовал этот способ:
SSLProtocol all -SSLv2 -SSLv3
Я попытался проверить следующее: openssl s_client -connect localhost:443 -ssl2 -> подтверждение сбоя (что нормально) openssl s_client -connect localhost:443 -ssl3 -> это работает, и не знаю почему, потому что это было отключено для всех vHosts (настройки аналогичны приведенным выше)
===============
Другие 2 уязвимости:
42873 - Поддерживаемые наборы шифров средней прочности SSL Вот список шифров SSL средней прочности, поддерживаемых удаленным сервером: EDH-RSA-DES-CBC3-SHA Kx = DH Au = RSA Enc = 3DES-CBC (168) Mac = SHA1 ECDHE -RSA-DES-CBC3-SHA Kx = ECDH Au = RSA Enc = 3DES-CBC (168) Mac = SHA1 DES-CBC3-SHA Kx = RSA Au = RSA Enc = 3DES-CBC (168) Mac = SHA1
65821 - Поддерживаемые наборы шифров SSL RC4 (бар-мицва) Список наборов шифров RC4, поддерживаемых удаленным сервером: ECDHE-RSA-RC4-SHA Kx=ECDH Au=RSA Enc=RC4(128) Mac=SHA1 RC4-MD5 Kx=RSA Au=RSA Enc=RC4(128) Mac=MD5 RC4-SHA Kx=RSA Au=RSA Enc=RC4(128) Mac=SHA1
Это CipherSuite. Я выделил жирным шрифтом все шифры, найденные в сканере, и все они были отключены в моей конфигурации, однако они все еще появляются во время сканирования:
SSLCipherSuite "EECDH + ECDSA + AESGCM EECDH + ARSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+ ARSA+SHA25!! 3DES! MD5! EXP! PSK! SRP! DSS!EDH-RSA-DES-CBC3-SHA ! ECDHE-RSA-DES-CBC3-SHA ! DES-CBC3-SHA ! ECDHE-RSA-RC4-SHA ! RC4-MD5 ! RC4-SHA"
ПРИМЕЧАНИЕ. Журнал изменений для имеющейся у меня версии httpd не включает CVE для упомянутых пробелов согласно проверке. Я также знаю, что httpd должен быть перезапущен после каждого изменения конфигурации.
Пожалуйста, сообщите, если у кого-то из вас есть предложения, я могу что-то упустить. Благодарю.
3 ответа
Извиняюсь за беспокойство. Мой товарищ по команде обнаружил, что следующие строки также должны быть обновлены в /etc/httpd/conf.d/ssl.conf:
SSLProtocol -all -TLSv1 + TLSv1.1 + TLSv1.2 -SSLv3
SSLCipherSuite "EECDH + ECDSA + AESGCM EECDH + ARSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+ ARSA+SHA25!!3DES!MD5!EXP!PSK!SRP!DSS!EDH-RSA-DES-CBC3-SHA!ECDHE-RSA-DES-CBC3-SHA!DES-CBC3-SHA!ECDHE-RSA-RC4-SHA!RC4-MD5!RC4-SHA"
После обновления он очистил результат проверки безопасности.
Обратитесь к документации по Apache, это правильная документация, которая сделает оценку A+ на сервере Apache Centos.
https://httpd.apache.org/docs/trunk/ssl/ssl_howto.html
См. Раздел "Как создать сервер SSL, который принимает только надежное шифрование?"
# "Modern" configuration, defined by the Mozilla Foundation's SSL Configuration
# Generator as of August 2016. This tool is available at
# https://mozilla.github.io/server-side-tls/ssl-config-generator/
SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1
# Many ciphers defined here require a modern version (1.0.1+) of OpenSSL. Some
# require OpenSSL 1.1.0, which as of this writing was in pre-release.
SSLCipherSuite ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256
SSLHonorCipherOrder on
SSLCompression off
SSLSessionTickets off
В файле конфигурации Apache я использую:-
SSLCipherSuite HIGH:!MEDIUM:!SSLv3:!kRSA:!SHA1:!SHA256:!SHA384:!DSS:!aNULL;
SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
и это, кажется, позволяет избежать необходимости указывать каждый разрешенный шифр, но по-прежнему дает только самые высокие шифры.