prolis
@prolis
Независимый разработчик BPM

Как удалить поддержку SSLv3?

Сервис SSL Server Test показывает, что есть уязвимость:
This server is vulnerable to the POODLE attack. If possible, disable SSL 3 to mitigate. Grade capped to C.
при следующих настройках nginx для сервера
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS;

Команда
openssl s_client -connect bpsimulator.com:443 -ssl3

Выводит, что SSL3 доступен через ECDHE-RSA-AES256-SHA
Как окончательно избавиться от SSL3 на сервере?
  • Вопрос задан
  • 3573 просмотра
Решения вопроса 1
nazarpc
@nazarpc
Open Source enthusiast
Что у вас за ОС?
В любой современной ОС Nginx уже давно обновился с безопасным конфигом по умолчанию. Уберите все три процитированных параметра из виртуального хоста - начнут использоваться системные, которые (при условии что вы их не меняли, иначе переустановите пакет) будут безопасными.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
Scorpi
@Scorpi
Один добрый человек на хабре выложил замечательный конфиг для nginx, держите:
habrahabr.ru/post/250931/#comment_8287519
listen                      443 ssl spdy;
ssl                         on;
ssl_protocols               TLSv1.2 TLSv1.1 TLSv1;
ssl_session_cache           shared:SSL:20m;
ssl_session_timeout         10m;
ssl_ciphers                 'EECDH+ECDSA+AESGCM:AES128+EECDH:AES128+EDH:!RC4:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS:!CAMELLIA:!ADH';
ssl_prefer_server_ciphers   on;

resolver                    8.8.8.8 8.8.4.4 valid=300s;
resolver_timeout            10s;
add_header                  X-Frame-Options             "DENY";
add_header                  X-Content-Type-Options      "nosniff";
add_header                  Strict-Transport-Security   "max-age=31536000";
add_header                  Public-Key-Pins 'pin-sha256="[SOME_BASE64]"; max-age=5184000;';  #[SOME_BASE64] надо выставлять свое, гуглить как считать Public-Key-Pins
ssl_stapling            on;
ssl_trusted_certificate /etc/nginx/ssl/[SITE]/trustchain.pem;
ssl_certificate         /etc/nginx/ssl/[SITE]/server.crt;
ssl_certificate_key     /etc/nginx/ssl/[SITE]/server.key;
ssl_dhparam             /etc/nginx/ssl/[SITE]/dh.pem;        #openssl dhparam 2048 -out dh.pem
Ответ написан
@Power
Если в конфиге написано ssl_protocols TLSv1 TLSv1.1 TLSv1.2;, то ssl3 отключен. Точка.

Скорее всего, вы просто не перезагрузили конфиг (sudo service nginx reload). А если перезагрузили, то, наверное, в конфиге есть ошибки и он не применился (проверка: sudo service nginx configtest).

Ещё вариант: вы неправильно проверяете. Покажите, что именно выводит команда
openssl s_client -connect ... -ssl3
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы