2016-01-29 3 views
2

Использование встроенного Tomcat 8 с Java 8, и я не могу восстановить протокол SSLv3. Я не могу ударить веб-приложение с помощью параметров «Интернет» -> «Расширенные настройки» с проверкой SSLv3, а все остальные (SSLv2, TLS1.0, TLS1.1, TLS1.2) не отмечены. Я попытался установить протокол SSL следующим образом:Как включить SSLv3 в Tomcat 8 и Java 8

httpsConnector.setAttribute("sslProtocol", "SSLv3"); 

Я также попытался установить протокол SSL следующим образом:

httpsConnector.setAttribute("sslEnabledProtocols", "SSLv3"); 

Я также добавил эту строку в файл deployment.properties, чтобы позволить SSLv3 в JRE 8

deployment.security.SSLv3=true 
+0

См. [Включение SSLv3] (https://docs.oracle.com/javase/8/docs/technotes/guides/security/SunProviders.html#enable-sslv3). – EJP

+3

См. [Никогда не активировать SSLv3 снова] (http://disablessl3.com/). SSLv3 уязвим для * POODLE * атак. –

ответ

4

Последние JREs отключить SSLv3, и это правильно: это сломанный протокол в этой точке, что следует избегать. Однако в некоторых средах абсолютно необходима поддержка SSLv3, и это возможно.

Во-первых, вы никогда не должны отключать протоколы более высокого уровня, такие как TLSv1, TLSv1.1 и TLSv1.2. Вместо этого добавьте SSLv3 в эти протоколы, чтобы клиенты с лучшей безопасностью могли по-прежнему использовать протоколы более высокого уровня.

Для того, чтобы повторно включить SSLv3 в JVM, вам необходимо установить это свойство системы, возможно, в виртуальной машине Java запуска время:

-Djdk.tls.disabledAlgorithms= 

(. Примечание нет значения там)

Вам также нужно будет сделать то же самое, что вы сделали уже выше, где вы установили sslEnabledProtocols и sslProtocol, но, опять же, , пожалуйста, не отключите протоколы более высокого уровня.

UPDATE 2017-06-21

Для Tomcat 8.5 и 9.0, SSLv3 было жестко закодировано быть отключены и требует источника патч и пересобрать для того, чтобы включить его, вплоть до Tomcat 8.5.15 и Tomcat 9.0.0.M21. В настоящее время обсуждается вопрос об удалении этого запрета в Tomcat 8.5 и 9.0.

UPDATE 2017-06-22

SSLv3 больше не будет занесен в черный список, как в Tomcat 8.5.17 and Tomcat 9.0.0.MR23.

+0

Был в состоянии использовать ваше решение в качестве отправной точки, чтобы заставить это работать. 1. обновить файл java.security 2. обновить файл уровня развертывания level.properties 3. обновить системный уровень. Файл deployment.properties –

+1

Ничего из этого не должно было быть необходимо; вы можете запустить один экземпляр JVM с этими настройками без изменения каких-либо файлов системного уровня. Я бы посоветовал вам отменить то, что вы сделали с этими системными файлами, потому что вы будете повторно активировать SSLv3 для запуска любой JVM, а не только один экземпляр Tomcat, который вы хотите изменить. –

+1

И вы также потеряете эти изменения после обновления Java. – EJP

Смежные вопросы