Pull to refresh

Comments 41

Исключаем возможность BEAST-атаки CVE-2011-3389:

ssl_prefer_server_ciphers on;



А мне вот что то не помогло. Пишет что BEAST attack Vulnerable INSECURE
Прошу прощения, но релоад вы не забыли сделать?
Добавлю, что ssl_session_cache shared:SSL:10m; следует указывать в http секции. ссылка в nginx форума

Можно, но не обязательно.
Прошу прощения, но релоад вы не забыли сделать?

Я его полностью перезапустил.
Можно, но не обязательно.

У меня только после этого Session resumption проставилось в Yes.
Обновил nginx c 1.2.2 до 1.2.7 и все встало на свои места.
Немного исправил эту часть статьи, спасибо.
А протоколы не в обратном порядке должны идти — от самого предпочитаемого?
В данном случае порядок в конфиге неважен. Это просто опция, которая передаётся в OpenSSL.
UFO landed and left these words here
На том же сайте проверки некоторые смельчаки вообще оставили TLSv1.2 без вариантов.
Еще одна хорошая причина начинать уходить от IE6.
UFO landed and left these words here
HSTS вообще важная штука. Если делать редирект http->https, то HSTS очень желательно ставить. Но у вас max-age 3600, я бы рекомендовал что-нибудь подольше, 31536000, например.
Это делаем, для того, что бы шифрам с CBC-режимом предпочитался RC4-SHA, так как они подвережены уязвимостям.


На самом деле RC4 тоже уязвим из-за того, как он шифрует начало потока, где среди недеров в том числе передаются куки. Пока что в реальных условиях атака трудно воспроизводима, но может проводиться крупными организациями. BEAST и Lucky 13 требуют какого-то хитрого джаваскрипта, а эта атака основана на статистике и «просто» требует несколько миллионов HTTPS-запросов.

Есть workaround — в респонсе сервера передавать HTTP-хедеры в разном порядке и добавлять левае заголовки случайной длинны, чтобы положение куки в теле запроса менялось. Для AJAX-запросов это можно делать на стороне браузера, а вот для простых запросов тут уже нужно, чтобы браузер сам этим занимался. Пока, конечно, ни один браузер такого не делает, но и атака тоже пока в стадии «практически трудно выполнима».

Хмм, действительно помогло. Большое спасибо!

Может стоит это вынести в дефолтный конфиг nginx?
а как насчёт совместимости со старыми браузерами, ваши настройки на это сильно влияют?
Смотря на сколько старые. Тут надо для себя решить минимальные версии, которые надо поддерживать.
Это только часть теста на PCI…
Как-то сервер клиента тестили, насколько я помню там докучи еще всего.
Остальное как правило — это уязвимые формы регистрации, инъекции в них же, открытые порты на веб сервере и т.д. Но все таки это уже «зона отвественности» не Nginx :)
Спасибо, прыгнул с F на A :)
Единственное что смущает в отчете, дык это следующая строчка:
Chain issues Incorrect order, Contains anchor

Никто не в курсе что за беда? Вроде тут описано, но прочитав ничего не понял.
Судя по вашей ссылке — в цепочке, которую передаёт сервер клиенту присутствует коревой (самоподписный ?) сертификат, что не обязательно, так клиент и так должен был его принять.
Это частый случай и весьма нехорошо, т.к. некоторые браузеры без правильной цепочки сертификатов могут откзаться с вами работать.
Дык а в чем-то проблема? Что мне нужно пофиксить, что бы эта ошибка ушла.
Проверил тестом от sslshopper. Цепочка сертификатов следующая:
1. Сертификат домена — Common name: *.domain.com
2. Корневой сертификат startssl — Common name: StartCom Certification Authority
3. Class 2 сертификат startssl — Common name: StartCom Class 2 Primary Intermediate Server CA

Вроде ж все правильно…
Нашел тут более подробное и понятное объяснение. Оказывается нужно что бы был следующий порядок:
1. Сертификат домена — Common name: *.domain.com
2. Class 2 сертификат startssl — Common name: StartCom Class 2 Primary Intermediate Server CA
3. Корневой сертификат startssl — Common name: StartCom Certification Authority
Одно использование стойких шифров и ссл протоколов это не полное PCI Compliance веб сервера.
Там много пунктов которые надо выполнить, что б быть комплайант
Забавно, у меня было 100/85/80/90 (A), но сейчас подтяну, спасибо.
что то у меня только Read timed out возвращает :(
Это то, о чем писал выше alist. Сделал небольшой апдейт.
Сработало. Спасибо!

А как у этого метода в плане совместимости со старыми браузерами? Как минимум интересует IE7
Не тестировал в виста, но под ХР работает.
IE7 это поддерживает без проблем.
С IE6 там некоторые сложности с TLSv1 только.
Вот чему-чему, а RC4 я свою бы безопасность никогда бы не доверил. Жаль, пока что выбирать особо не из чего, а новые победители estream не включены в стандарт (
Only those users with full accounts are able to leave comments. Log in, please.