Как отключить SSLv3

отключить уязвимую версию протокола sslПротокол SSL и его преемник TLS - это криптографические протоколы, предназначенные для обеспечения безопасности сетевых соединений в интернет. Кроме распространенного HTTPS, предназначенного для веб-соединений, они используются и многими другими приложениями. SSLv1 никогда публично не выпускался, SSLv2 быстро оказался небезопасным. Был создан SSLv3, он все еще используется для защиты транспортного уровня интернет соединений вместе с TLSv1 / 1.1 / 1.2.

Не так давно инженеры Google обнаружили уязвимость протоколе SSLv3, благодаря которой данная версия SSL подвержена ]]>POODLE атаке]]>, и его использование крайне не желательно. Существует патч, но он не решает данную проблему полностью, поскольку исправлены должны быть обе стороны соединения, клиент и сервер.

Протоколу SSLv3 почти 18 лет, тем не менее он все еще очень распространен в сети, не смотря на это, необходимо как можно скорее отказаться от использование данной версии протокола SSL, как на стороне сервера так и клиента. Хотя существует небольшая часть интернет-пользователей, которые используют очень устаревшие системы и вообще не поддерживают TLS, в связи с этим они ограничены в возможности подключения к вашему сайту или сервису.

Основные вопросы и ответы касаемо протокола SSLv3

Почему следует отключить SSLv3 на сервере?

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

Почему нужно отключить SSLv3 на клиенте?

Как пользователь, вы должны отключить SSLv3 в своем браузере, чтобы обезопасить себя при посещении сайтов, которые все еще поддерживают SSLv3. Сделав это, вы можете быть уверены что ваше веб-приложение не будет пытаться установить соединение с SSLv3 и будет использовать более безопасную альтернативу.

Является ли POODLE уязвимостью реализации, такой-же как уязвимость OpenSSL Heartbleed?

Нет, POODLE это уязвимость протокола. Это означает, что это касается внутренней работе SSLv3, и вы не можете ее исправить.

Нужно ли отозвать сертификаты после POODLE?

Нет, вам не нужно выпускать новые сертификаты. Атака POODLE - это не утечка памяти, это атака восстановления данных в открытом тексте, которая нацелена на HTTP заголовки и использует слабость протокола SSLv3 при работе с блочными шифрами.

Отключение SSLv3 в распространенных веб серверах

Отключить SSLv3 на веб сервере Apache

Добавить в файл конфигурации apache, или изменить если уже есть но не соответствует, следующую директиву:

SSLProtocol All -SSLv2 -SSLv3

после чего перезагпустить apache:

service apache2 restart
# или 
apachectl restart

Отключить SSLv3 на веб сервере IIS

Создайте файл реестра disable_ssl3.reg со следующим содержимым:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server]
"Enabled"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Server]
"Enabled"=dword:00000000

и запустите его.

Отключить SSLv3 на веб сервере nginx

Добавьте в файл конфигурации nginx.conf директиву:

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

если такая уже есть и отличается, исправьте, после чего перезагрузите nginx

nginx -s reload

Отключить SSLv3 на веб сервере Lighttpd

Релизы Lighttpd сервера до версии 1.4.28 позволяют отключать только SSLv2. Если вы используете версию 1.4.29 и выше, пропишите в конфиг:

ssl.use-sslv2 = "disable"
ssl.use-sslv3 = "disable"

после чего перезапустите сервер

service lighttpd restart

Отключение протокола SSLv3 в основных веб браузерах

Chrome и Chromium

Если вы используете Chrome 40 и выше, вы в безопасности, поскольку с версии 40 Chrome/Chromium полностью отключил поддержку SSLv3.

В Chrome и Chromium используются параметры, позволяющие пользователю самостоятельно указывать предпочтительный протокол, однако многие ошибочно считают что SSLv3 является более свежей версией нежели TLS 1.0, и по ошибке отключают последний.

Таким образом, пока не был объявлен браузер Google Chrome или Chromium с отключенным по умолчанию SSLv3, необходимо запустить данные браузеры с параметром командной строки --ssl-version-min = tls1 . Для этого можно изменить ярлык приложения, что-бы браузер запускался с нужным параметром.

windows
  1. Щелкните правой кнопкой мыши по ярлыку Google Chrome/Chromium на рабочем столе, вкладка Properties.
  2. В строке объект, после последнего символа двоеточия, добавьте пробел а затем --ssl-version-min=tls1.
  3. Нажмите ОК и подтвердите если будут запрошены права администратора.

Имейте в виду, что данная настройка защитит только сеансы браузера запущенные ярлыком на рабочем столе, на сеансы запущенные нажатием на ссылку в документе или письме данная настройка не влияет. Что-бы это исправить нужно отредактировать параметр реестра HKEY_CLASSES_ROOT/ChromeHTML/shell/open/command, приведя его к такому виду:
"C:\Program Files\Google\Chrome\Application\chrome.exe" --ssl-version-min=tls1 -- "%1"
убедитесь что путь до chrome.exe соответствует вашей системе.

Linux

Изменение символических ссылок рабочего стола и меню приложений зависят от графического окружения. Например в Ubuntu нужно отредактировать файл /usr/share/applications/google-chrome.desktop, дописав параметр --ssl-version-min=tls1 в строчки начинающиеся с "exec=", например до изменения:

Exec=/usr/bin/google-chrome-stable %U

привести к такому виду:

Exec=/usr/bin/google-chrome-stable --ssl-version-min=tls1 %U

теперь нужно сохранить файл и перезапустить браузер.
Только для Chromium на стабильных релизах Debian и Ubuntu, нужно в файл /etc/chromium-browser/default добавить строку:

CHROMIUM_FLAGS="--ssl-version-min=tls1"

На нестабильных версиях Debian нужно создать файл /etc/chromium.d/disable-sslv3, содержащий строку:

CHROMIUM_FLAGS="${CHROMIUM_FLAGS} -ssl-version-min=tls1"

MacOS X

Открыть редактор AppleScript и прописать строку:

do shell script "open '/Applications/Google Chrome.app' --args --ssl-version-min=tls1"

затем сохранить как приложение и добавить в Dock.

Mozilla Firefox

Если версия Firefox ниже 34, в адресной строке браузера набрать about:config и установить значение параметра security.tls.version.min равным 1.

Safari

Apple выпустила обновление безопасности 2014-005, которое отключает шифры CBC по согласованию с SSLv3. Патч доступен для Mac OS Mavericks, Mountain Lion и Yosemite, и после обновления никаких действий с вашей стороны не потребуется.

Internet Explorer

Перейти в меню Пуск >> Свойства обозревателя.
Вкладка Дополнительно.
Снимите флажок Использовать SSL 3.0.
Подтвердите, нажав OK.

Если у вас установлена ​​более старая версия Windows, например Windows XP, убедитесь что установлен пакет обновления 3 (SP3), чтобы иметь доступ к сайтам с отключенным протоколом SSLv3.

Opera

Если вы используете Opera 12.17 или старше:

Нажмите ctrl + f12.
Перейдите на вкладку "Дополнительно".
Нажмите "Безопасность" в меню слева.
Нажмите "Протоколы безопасности".
Снимите флажок "Включить SSL 3".
Нажмите ОК.

Отключение протокола SSLv3 на почтовых серверах

Отключить SSLv3 в Sendmail

Пропишите следующие строки в файл конфигурации sendmail.mc, в секцию LOCAL_CONFIG:

LOCAL_CONFIG
O CipherList=HIGH
O ServerSSLOptions=+SSL_OP_NO_SSLv2 +SSL_OP_NO_SSLv3 +SSL_OP_CIPHER_SERVER_PREFERENCE
O ClientSSLOptions=+SSL_OP_NO_SSLv2 +SSL_OP_NO_SSLv3

после чего перезагрузите sendmail

service sendmail restart

Отключить SSLv3 в Postfix

Пропишите в файл конфигурации postfix или исправьте следующие строки:

smtpd_tls_mandatory_protocols=!SSLv2,!SSLv3
smtp_tls_mandatory_protocols=!SSLv2,!SSLv3
smtpd_tls_protocols=!SSLv2,!SSLv3
smtp_tls_protocols=!SSLv2,!SSLv3

перезагрузите postfix

service postfix restart

Отключить SSLv3 в Dovecot

Пропишите в файл конфигурации /etc/dovecot/local.conf следующую строку, или исправьте если есть:

ssl_protocols = !SSLv2 !SSLv3

перезапустите dovecot

service dovecot restart

Отключить SSLv3 в Courier-imap

Пропишите в файл конфигурации /etc/courier/imapd-ssl, или исправьте если есть:

IMAPDSSLSTART=NO
IMAPDSTARTTLS=YES
IMAP_TLS_REQUIRED=1
TLS_PROTOCOL=TLS1
TLS_STARTTLS_PROTOCOL=TLS1

перезапустите courier-imap

service courier-imap restart

Отключение протокола SSLv3 в некоторых других сетевых сервисах

Отключить SSLv3 для Java

В контрольной панели java перейти: Start -> Java -> Configure Java, вкладка Advanced, прокрутить вниз, снять флажок Use SSL 3.0.

Отключить SSLv3 для NodeJS

Если вы используете NodeJS в качестве веб сервера ( не лучшая идея ), установите secureOptions:

constants.SSL_OP_NO_SSLv3 | constants.SSL_OP_NO_SSLv2

]]>читать подробности]]>

Отключить SSLv3 для OpenVPN

OpenVPN использует TLSv1.0 или, начиная с версии 2.3.3, опционально TLSv1.2, поэтому не подвержен POODLE атаке

]]>источник]]>

Отключить SSLv3 для Puppet

Puppet агенты не подвержены POODLE атаке.
Если-же вы все равно хотите отключить SSLv3, используйте stephenrjohnson/puppetmodule модуль для настройки мастер процесса который не использует SSLv3.

Отключить SSLv3 для HAProxy

Отредактируйте директиву bind в файле конфигурации /etc/haproxy.conf, добавив no-sslv3. Получаем что-то вроде:

bind :443 ssl crt ciphers no-sslv3

Более подробно в ]]>документации по haplroxy]]>.

]]>Онлайн сервисы для тестирования SSL протокола]]>

Комментарии

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
Регистр имеет значение
  o8o   oooooo     oooo   oooooooooooo                  .o.                   
`"' `888. .8' d'""""""d888' .888.
oooo `888. .8' .888P oooo d8b .8"888. .ooooo oo
`888 `888. .8' d888' `888""8P .8' `888. d88' `888
888 `888.8' .888P 888 .88ooo8888. 888 888
888 `888' d888' .P 888 .8' `888. 888 888
o888o `8' .8888888888P d888b o88o o8888o `V8bod888
888.
8P'
"
Введите код, изображенный в стиле ASCII-арт.