Пудель: Отключение SSL V3 на сервере - это действительно решение?


39

Я весь день читал об уязвимости Poodle, и теперь я немного растерялся против безопасности и доходов.

Если я отключу SSL V3 на сервере (SSL V2 и V3 оба будут отключены для Apache), клиенты (браузеры), которые не поддерживают какой-либо протокол, но SSL V3 не смогут подключить HTTPS к серверу.

Таким образом, это ситуация, когда и клиент, и сервер должны взаимодействовать с TLS 1.1 1.2 и т. Д.

Если один из них использует SSL V3, а другой не поддерживает более низкие версии, что произойдет? Нет подключения к SSL.

Я видел несколько обновлений, сделанных в Firefox, возможно, они отключили SSL V3 в том, что мы обычно делаем в настройках. Это заставит все подключения к более низким версиям и TLS

Но действительно ли отключение SSL V3 является решением этой проблемы?


4
Что вы подразумеваете под «Это заставит все подключения к более низким версиям и TLS»? SSLv1 и SSLv2 были отключены в течение длительного времени, потому что они были сломаны. SSLv3 был осужден, но во многих случаях оставался включенным для поддержки устаревшего программного обеспечения. На какую версию вы ссылаетесь? TLSv1.0, v1.1, v1.2, ... являются более поздними стандартами и могут рассматриваться как «более высокая версия SSL», только номера версий были сброшены при изменении имени.
Хокан Линдквист

Привет, теперь я понял, что если я отключу SSL V3 и V2 на сервере в соответствии с рекомендациями Red Hat, безопасное соединение будет по протоколу TLS. И если браузеры делают вызов по TLS с сервером, тогда проблема в безопасных соединениях не возникнет. У меня нет точной информации о разнице между ч / б версиями SSL и TLS.
sandeep.s85

Ответы:


52

Во-первых, давайте немного проясним ситуацию:

  • TLS заменил SSL. TLS 1.0 появился позже и является обновлением SSL 3.0.

    TLS 1.2> TLS 1.1> TLS 1.0> SSL 3.0> SSL 2.0> SSL 1.0

  • Версии SSL до 3.0 имели известные уязвимости безопасности некоторое время и отключены / не поддерживаются современными клиентами и серверами. SSL 3.0, скорее всего, скоро пойдет тем же путем.

  • Из используемых в настоящее время протоколов «Пудель» наиболее сильно влияет на SSL 3.0, где нет способа смягчения. Существует подобная атака против некоторых TLS 1.0 и 1.1 реализациях , что спецификация позволяет - убедитесь , что ваше программное обеспечение в актуальном состоянии .


Теперь причина, по которой «Пудель» представляет собой риск даже для современных клиентов и серверов, заключается в том, что клиенты реализуют резервный механизм. Не все серверы будут поддерживать последние версии, поэтому клиенты будут пробовать каждую версию в порядке от самой последней к наименее последней (TLS 1.2, TLS 1.1, TLS 1.0, SSL 3.0), пока не найдет ту, которую поддерживает сервер. Это происходит до того, как начинается зашифрованная связь, поэтому злоумышленник в середине (MITM) может заставить браузер использовать более старую версию, даже если сервер поддерживает более высокую версию. Это известно как атака понижения протокола.

В частности, в случае «Poodle», если клиент и сервер поддерживают SSL 3.0, злоумышленник MITM может принудительно использовать этот протокол.

Поэтому, когда вы отключаете SSL 3.0, это имеет два эффекта:

  • Клиенты, которые поддерживают более высокие версии, не могут быть обмануты откатом на уязвимую версию ( TLS Fallback SCSV - это новый предложенный механизм предотвращения атаки с понижением версии протокола, но пока не все клиенты и серверы поддерживают ее). По этой причине вы хотите отключить SSL 3.0. Подавляющее большинство ваших клиентов, вероятно, попадают в эту категорию, и это выгодно.

  • Клиенты, которые вообще не поддерживают TLS (как уже упоминали другие пользователи, IE6 на XP в значительной степени является единственным, все еще используемым для HTTPS), вообще не смогут подключаться через зашифрованное соединение. Это, вероятно, незначительная часть вашей пользовательской базы, и не стоит жертвовать безопасностью большинства, которые современны для обслуживания этого меньшинства.


8
Привет Боб, это Алиса здесь. Как ваше объяснение о том, как Маллет может использовать пуделя.
BatteryBackupUnit

+1 Не знал о атаке понижения протокола.
developerwjk

1
ОБНОВЛЕНИЕ: "...everything less than TLS 1.2 with an AEAD cipher suite is cryptographically broken, including many implementations which conform to current specifications." zdnet.com/article/poodle-not-fixed-some-tls-systems-vulnerable
BlueCacti

@GroundZero > Но оказывается, что некоторые реализации TLS все еще не проверяли байты заполнения, несмотря на возможность сделать это. => Конкретно, в то время как TLS 1.0 и 1.1 реализации могут быть разбиты (и спецификация позволяет им быть сломаны таким образом, что не является хорошим), это не так плохо , как SSL 3.0 , где сама спецификация не была нарушена , и не было путь для соответствующей реализации, чтобы обойти это. Кроме того, «отключение» поддержки TLS 1.0 и 1.1 на сервере представляет собой гораздо более сложную задачу, чем отключение SSL 3.0 - это повлияет на гораздо большую долю ваших пользователей.
Боб

Похоже, что уязвимы в первую очередь реализации на стороне сервера (?) - исправьте свою реализацию TLS на сервере, и с вами все будет в порядке (?) , но формулировка в вашей связанной статье и ее источник предполагают, что].
Боб

27

Ваша оценка верна. Клиенты должны будут использовать более новые протоколы для подключения к вашему серверу, как только вы отключите SSL 3. Протокол SSL 3 имеет недостатки, и не будет никакого «патча». Отключение SSL 3 - единственное решение.

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

[fwiw - отчеты о cloudflare 1,12% пользователей являются пользователями IE6 XP в зависимости от SSLv3]


1
Хотя это правда, что SSLv3 имеет недостатки, и единственным реальным решением является отключение SSLv3. Существует также смягчение атаки пуделя, которая не требует отключения SSLv3, если вы можете принять шифр RC4 для клиентов TLS 1.0, поскольку пудель влияет только на шифры режима CBC (AES). Я описал это здесь: serverfault.com/q/637848/249649
cypres

2
TLS_FALLBACK_SCSVне смягчает атаку для старых клиентов, однако. Это просто позволяет старым клиентам продолжать использовать некорректный протокол, в то же время предотвращая нежелательное понижение версии протокола для новых клиентов. В конце концов, если оставить SSLv3 включенным для любых клиентов, это может подвергнуть их трафик злоумышленникам.
Эван Андерсон

RC4 смягчает эту атаку для старых клиентов, а не для scsv. Но мы скорее не используем RC4, поэтому я также рекомендую отключить SSLv3, если это вообще возможно.
cypres

1
@cypres - Да-- TLS_FALLBACK_SCSV не помогает старшим клиентам. Я бы сказал, что использование шифра, который, как было показано, имеет серьезные недостатки, также не помогает. Нам нужно, чтобы это был "день флага", который исключает SSL 3.0 из сети. Конечно, если у вас есть старые устройства, встроенные устройства и т. Д., Которые не поддерживают TLS внутри вашего предприятия, тогда не стесняйтесь использовать SSL 3.0. Я думаю, что безответственно призывать кого-либо продолжать использовать SSL 3.0 в общедоступном Интернете.
Эван Андерсон

Сегодня я отключил SSLv3 в Firefox и разрешил только TLS, и я вижу значительное количество проблем с подключением ssl при просмотре веб-сайтов в Интернете. Я поддерживаю сотни серверов Linux, на которых включен sslv3. Я могу ошибаться, но окончательное решение этой ситуации - до тех пор, пока производители ОС не выпустят патч, чтобы ничего не делалось на стороне клиента. Проблема в том, что вы не можете предсказать влияние.
sandeep.s85

20

Да, отключение SSL3 сделает так, чтобы пользователи, которые не поддерживают TLS, не могли получить доступ к вашему веб-сайту.

Однако с практической точки зрения посмотрите, какие браузеры попадают в эту категорию. Chrome и Firefox поддерживают TLS и даже собираются полностью отказаться от поддержки SSL3 из-за этой ошибки. IE поддерживает его с IE7. Единственный браузер, который не имеет поддержки, но все еще используется в глобальном масштабе, это IE6, и единственная причина, которая все еще используется, это 2 причины:

  1. Любой, у кого есть взломанная версия XP и нет возможности использовать Chrome или Firefox;
  2. Любой на корпоративной или государственной политике с ограничениями относительно выбора браузера.

В обоих случаях используется IE6, потому что это браузер Windows XP по умолчанию, который поставляется с первоначальной установкой. Кроме того, единственная причина, по которой IE6 все еще имеет (небольшую) долю на мировом рынке, заключается в том, что в Китае много пользователей.

Итак, короткая история: вот 3 вопроса:

  1. У вас есть значительная китайская база пользователей?
  2. Поддерживает ли ваш сайт поддержку IE6, даже если он устарел и сломан?
  3. Является ли ваш сайт продуктом, используемым правительством или корпорацией с ограничениями выбора браузеров?

Если какое-либо из этих 3 истинно, вам нужно будет найти альтернативное решение. Если все 3 ложные, просто отключите его и покончите с этим. И если вам нужно альтернативное решение, чертовски трудно убедить ту небольшую часть вашей пользовательской базы, которая все еще использует IE6 для перехода от 13-летнего браузера.


7

Вы упоминаете " Apache " и " браузеры " в своем вопросе, но название носит более общий характер.

Как указывают Эван и другие, проблема HTTPS почти решена. Но есть ряд других протоколов, которые сервер может зашифровать, и поддержка TLS намного хуже среди этой клиентской базы (как я узнал сегодня утром, когда указывалось «нет SSL3» на сервере IMAP / S).

Поэтому я боюсь, что ответ таков: « это зависит от того, какие сервисы вы шифруете, и клиентской поддержки TLS среди вашей пользовательской базы ».

Редактировать : да, это была моя точка зрения, хотя я рад, что вы согласны. Отключение sslv3 выполняется на индивидуальной основе. Например, способ выключить его на dovecot это поставить

ssl_cipher_list = ALL:!LOW:!SSLv2:!SSLv3:!EXP:!aNULL

в dovecot.conf. Большая проблема заключается в том, что, хотя большинство браузеров терпимо относятся к потере sslv3, клиенты других служб выглядят гораздо менее терпимыми. Я сломал около половины своих пользователей этим утром, когда отключил это на dovecot; Телефоны Android с K-9 mail и Outlook на Win7 - это два, о которых я точно знаю, но я вижу по моим журналам, что их было больше.

Отключение SSLv3 по-прежнему не только допустимое решение, это единственное решение; но это будет больно.

Редактирование 2 : спасибо dave_thompson_085 за указание на то, что отключение шифров SSLv3 в dovecot отключает не только протокол SSLv3, но и TLSv1.0 и TLSv1.1, поскольку у них нет шифров, которых нет в предыдущем протоколе. Dovecot (по крайней мере, в более ранних версиях, в том числе в той, что я использую), похоже, не хватает возможности настраивать протоколы, а не наборы шифров. Это, вероятно, объясняет, почему это сломало так много клиентов.


1
Я также прочитал, что это повлияет не только на веб-серверы, но и на любую службу, работающую на сервере, использующую SSL, т.е. веб-серверы, LDAP-серверы, демоны SSH, POP3-серверы, SMTP-серверы. Поэтому для веб-серверов у нас есть конфигурация в Apache. Конфигурационный файл mod_ssl в виде SSLProtocol All -SSLv2 -SSLv3 Нам также нужно посмотреть на другие сервисы, как нам запретить клиенту / серверу использовать SSLv3
sandeep.s85

Фактическая атака POODLE, как описано в рекомендациях по безопасности , основывается на достаточном количестве запросов, сделанных с некоторой способностью контроля со стороны злоумышленника. В контексте HTTPS и браузеров это возможно благодаря написанию сценариев, но в контексте, например, IMAPS, я не уверен, что это практично. Избавление от SSLv3 по всем направлениям, конечно, идеально, но я просто не уверен, что POODLE, в частности, имеет отношение к некоторым из этих других случаев.
Хокан Линдквист

Хокан, со временем я все больше и больше соглашаюсь с тобой.
MadHatter поддерживает Монику

3
Отключение шифров !SSLv3 в openssl фактически отключает все протоколы, кроме TLSv1.2, что может не подойти вашим партнерам. Вот почему отключение протокола лучше, но AFAICS только в dovecot 2.1+. См. Security.stackexchange.com/questions/71872/… .
dave_thompson_085

@ dave_thompson_085: когда вы говорите « отключение ... в openssl », вы имеете в виду « отключение ... в dovecot »? Если это так, я согласен с вами и внесу поправки в мой ответ в свете этой информации, если вы сможете уточнить по запросу.
MadHatter поддерживает Монику

6

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

Если у вас есть специальное требование для SSLv3, возможно, вы обязаны поддерживать IE6 в Windows XP или вам требуется поддержка очень старого программного обеспечения, существует другой способ его смягчения.

Способ смягчить его и сохранить SSLv3 - это использовать RC4 и поддерживать TLS Fallback SCSV, который предоставляется OpenSSL 1.0.1j. В посте qualys о пуделе RC4 - это «определенный небезопасный потоковый шифр, имя которого никто не хочет упоминать».

Это то, что Google делает на mail.google.com, и они также описывают это в своей записи в блоге: http://googleonlinesecurity.blogspot.se/2014/10/this-poodle-bites-exploiting-ssl-30.html


2
Я действительно не уверен, что хуже, оставляя систему открытой для Пуделя или понижающей передачи до RC4 ...
Брайан Ноблаух

Клиенты, которые поддерживают TLS 1.1+, не переключаются на RC4. Я не эксперт, но я считаю, что пудель хуже.
cypres

Разве RC4 по сути не означает Raw Cleartext?
Хаген фон Айцен

1
Конечно, вы шутите, но поднять действительный вопрос. Это не так сильно сломано, это действительно хороший ответ на этот вопрос в безопасности: security.stackexchange.com/a/32498
cypres

2

В разговоре отсутствует одна деталь, основанная на исходном вопросе, и было бы неплохо отметить это. TLS 1.0 также упоминается как SSL 3.1, поэтому оригинальный постер, вы должны взглянуть на ваш конфиг, вы используете v3.0 или v3.1


-3

Как и в большинстве случаев, ответ «это зависит». Единственный браузер любого типа "общего" использования, который не поддерживает TLS, - это IE6. К сожалению, в различных отчетах говорится, что IE6 может составлять до нескольких процентов глобальных HTTP-запросов (см .: http://news.netcraft.com/archives/2014/10/15/googles-poodle-affects-oodles.html ). , Хорошая новость, если вы в Северной Америке, это то, что это относительно редко в США. Чтобы быть в безопасности, вы должны посмотреть статистику агента пользователя из ваших журналов www. В моем случае было так мало отпечатков пальцев IE6 ua, что я предположил, что все они были из инструментов тестирования.

Вы можете проверить свой веб-сайт (ы) с помощью тестера ssllab, чтобы увидеть, как реагируют различные агенты.

https://www.ssllabs.com/ssltest/

TL; DR - SSLv3 мертв; да здравствует TLS.


15
IE6 не последняя версия, совместимая с XP, это версия, с которой поставляется XP. IE8 - последняя версия, совместимая с XP.
Хокан Линдквист

6
-1 из-за фактической некорректности, указывающей, что IE6 - последняя версия на xp.
TomTom

may be as much as a few percent of global HTTP requests, Я хотел бы источник для этого. CloudFlare говорит это об использовании: In other words, even on an out-of-date operating system, 98.88% Windows XP users connected using TLSv1.0+( blog.cloudflare.com/… ). Что намного меньше, чем «несколько процентов» во всем мире.
Факер

1
Я подозреваю, что клиенты cloudflares - это в основном крупные североамериканские компании. Статистика, которую я цитировал, пришла от netcraft: news.netcraft.com/archives/2014/10/15/… «Несмотря на возраст и конец поддержки Microsoft Windows XP, IE6 остается популярным, на него приходится более 3,8% посещений веб-сайтов по всему миру. и 12,5% в Китае. Эта уязвимость может стать сигналом смерти для IE6 и Windows XP ».
Джошуа Хоблитт
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.