Comments 74
График невольно ассоциируется с Google Chrome.
*Вернее диаграмма ^)
Несколько моментов:
1. Уязвимости подвержены все версии SSL и TLS 1.0. Только TLS 1.1 и TLS 1.2 остались безопасными. Это означает, что чтобы действительно оставаться в безопасности, нужно в настройках IE или Opera убрать галки для SSL и TLS 1.0 и поставить галки для TLS 1.1 и TLS 1.2. НО: после этого почти весь интернет по HTTPS будет для вас недоступным — я не нашел ни одного крупного сайта, который бы поддерживал последние версии TLS, ни Google, ни Facebook, ни PayPal, ни Microsoft, ни Twitter — никто не поддерживает соединений по этим версиям.
2. Эксплойт работает как Man-in-the-middle в сочетании с внедрением JavaScript-кода на страницу. Злоумышленник слушает https-трафик и вносит на страницу клиента JavaScript. Затем этот скрипт продолжает слать запросы по тому же соединению с известным злоумышленнику содержимым. Зная содержимое тела запроса, злоумышленник может расшифровать HTTP-заголовки, в том числе cookie пользователя.
Это означает, все HTTPS-соединения остаются безопасными, если на странице отключен JavaScript.
Таким образом, у пользователей есть два варианта: либо просто продолжать пользоваться интернетом и надеяться, что их не успеет никто взломать, пока проблему не устранят, либо продолжать пользоваться https, но выключить на защищенных страницах JavaScript. Чего не стоит делать, так это выключать в браузере TLS 1.0, оставляя включенным SSL 3 — так вы делаете себя менее защищенным, т.к. для SSL 3 известны и другие эксплойты, а браузеры оставляют его поддержку включенной только из-за того, что в интернете полно сайтов, которые еще не мигрировали на TLS. При создании соединения браузер пытается использовать самый безопасный протокол, и только потом переключается на более ранние протоколы.
Теперь вопрос, почему никто в интернете не пользуется последними версиями TLS протокола. Ответ: потому что его реализации нет в OpenSSL, которым в свою очередь пользуются все серверы: Apache, Nginx и т.п — и браузеры — Chrome, Safari, Firefox. (см. en.wikipedia.org/wiki/Comparison_of_TLS_Implementations#Protocol_Support) От том, почему ребята из OpenSSL их не реализуют, мне неизвестно. Зато я знаю, что Opera тоже использует OpenSSL (см opera:about), но в ней также есть своя реализация протоколов TLS 1.1 и TLS 1.2 — которые они по всей видимости не могут передать в руки опен-сорс сообщества.
1. Уязвимости подвержены все версии SSL и TLS 1.0. Только TLS 1.1 и TLS 1.2 остались безопасными. Это означает, что чтобы действительно оставаться в безопасности, нужно в настройках IE или Opera убрать галки для SSL и TLS 1.0 и поставить галки для TLS 1.1 и TLS 1.2. НО: после этого почти весь интернет по HTTPS будет для вас недоступным — я не нашел ни одного крупного сайта, который бы поддерживал последние версии TLS, ни Google, ни Facebook, ни PayPal, ни Microsoft, ни Twitter — никто не поддерживает соединений по этим версиям.
2. Эксплойт работает как Man-in-the-middle в сочетании с внедрением JavaScript-кода на страницу. Злоумышленник слушает https-трафик и вносит на страницу клиента JavaScript. Затем этот скрипт продолжает слать запросы по тому же соединению с известным злоумышленнику содержимым. Зная содержимое тела запроса, злоумышленник может расшифровать HTTP-заголовки, в том числе cookie пользователя.
Это означает, все HTTPS-соединения остаются безопасными, если на странице отключен JavaScript.
Таким образом, у пользователей есть два варианта: либо просто продолжать пользоваться интернетом и надеяться, что их не успеет никто взломать, пока проблему не устранят, либо продолжать пользоваться https, но выключить на защищенных страницах JavaScript. Чего не стоит делать, так это выключать в браузере TLS 1.0, оставляя включенным SSL 3 — так вы делаете себя менее защищенным, т.к. для SSL 3 известны и другие эксплойты, а браузеры оставляют его поддержку включенной только из-за того, что в интернете полно сайтов, которые еще не мигрировали на TLS. При создании соединения браузер пытается использовать самый безопасный протокол, и только потом переключается на более ранние протоколы.
Теперь вопрос, почему никто в интернете не пользуется последними версиями TLS протокола. Ответ: потому что его реализации нет в OpenSSL, которым в свою очередь пользуются все серверы: Apache, Nginx и т.п — и браузеры — Chrome, Safari, Firefox. (см. en.wikipedia.org/wiki/Comparison_of_TLS_Implementations#Protocol_Support) От том, почему ребята из OpenSSL их не реализуют, мне неизвестно. Зато я знаю, что Opera тоже использует OpenSSL (см opera:about), но в ней также есть своя реализация протоколов TLS 1.1 и TLS 1.2 — которые они по всей видимости не могут передать в руки опен-сорс сообщества.
Злоумышленник не может внедрить javascript в https-трафик, если он может это сделать, то ему не требуется вскрывать TLS чтобы получить куки.
На самом деле, эксплуатация выглядит чуть-чуть по-другому: злоумышленник вносит javascript в любой нешифрованный трафик (например в результат поиска на google.com), а javascript начинает выдавать запросы к атакуемому сайту (например ebay.com). Злоумышленник анализируя https трафик с этими запросами расшифровывает cookie от ebay.com. То, что пользователь отключит на ebay.com джаваскрипты никак не скажется на его защищенности, т.к. в примере джаваскрипт работает на google.com.
На самом деле, эксплуатация выглядит чуть-чуть по-другому: злоумышленник вносит javascript в любой нешифрованный трафик (например в результат поиска на google.com), а javascript начинает выдавать запросы к атакуемому сайту (например ebay.com). Злоумышленник анализируя https трафик с этими запросами расшифровывает cookie от ebay.com. То, что пользователь отключит на ebay.com джаваскрипты никак не скажется на его защищенности, т.к. в примере джаваскрипт работает на google.com.
Прошу, скажите, что все будет хорошо. :)
Всё будет хорошо. Сайты обновятся до TLS 1.2, пользователи повыкидывают старые браузеры, и наступит счастье.
Расскажите об этом пользователям IE
Windows 7 and Windows Server 2008 R2 поддерживают TLS 1.2 по специфике, данной в RFC5246 с дополнениями из RFC4366 и RFC4681 и дополнительными наборами шифрований из RFC3268, RFC4492, RFC5289© MSDN
Глазам своим не верю я
Я полагаю, речь шла не о пользователях восьмой версии. А о тех дремучих миллионах, которые никак с шестого не могли перейти.
В точку. Про IE6, не знаю чего так взбесились.
По некоторым данным, пользователей интернета около 2,08 млрд. человек на начало 2011 года. Хотя, думаю, что реально уникальных пользователей гораздо меньше. Будем, однако, считать, что их 2 млрд.
По статистике с w3schools, доля IE6 в августе составляла 2.0%:

Несложный расчёт показывает, что дремучих миллионов на самом деле примерно 40.
По статистике с w3schools, доля IE6 в августе составляла 2.0%:

Несложный расчёт показывает, что дремучих миллионов на самом деле примерно 40.
Не лучший источник для статистики, ведь на w3c ходят учится хорошему уже выбрав браузер.
Если смотреть обобщенную статистику из разных источников — en.wikipedia.org/wiki/Usage_share_of_web_browsers то % IE сильно выше, и значит миллионов еще больше.
Если смотреть обобщенную статистику из разных источников — en.wikipedia.org/wiki/Usage_share_of_web_browsers то % IE сильно выше, и значит миллионов еще больше.
Я не думаю, что это статистика только по посещению их сайта, мне казалось, у них другие источники.
Нет, это именно статистика посещения их сайта, причем w3schools не имеет никакого отношения к w3c. Также вы должны понимать, что любое обращение к w3schools — моветон. Рекомендуется к прочтению: w3fools.com/
Проверил сейчас IE8, там и TLS 1.1 и 1.2 присутствуют.
А в последней версии FF кроме TLS 1.0 галочки больше не увидел.
А в последней версии FF кроме TLS 1.0 галочки больше не увидел.
Странно, кажется, Opera версии так с 9.5 не поддерживает SSLv2 — я не помню деталей, но у меня была проблема с ней при использовании некой древней hp-шной вебморды. И никаких тебе user-friendly сообщений, тупо и грубо чистый лист вместо вебморды.
Как и всегда, могу грубо ошибаться и буду рад быть поправленным.
Как и всегда, могу грубо ошибаться и буду рад быть поправленным.
Chrome:
Настройки -> Расширенные -> Убираем галочку «Использовать TLS 1.0»
Настройки -> Расширенные -> Убираем галочку «Использовать TLS 1.0»
Забавный факт. Из всех браузеров, только Opera поддерживает TLS 1.2 по умолчанию.В тексте оригинальной статьи говорится совсем противоположное: «Opera also makes version 1.2 available but not be default in its browser».
В самом конце статьи стоит пометка об исправлении неточности, что опера не поддерживает 1.2 по умолчанию. По крайней мере я так понял.
It was also corrected to reflect the fact that Opera doesn't support TLS 1.2 by default.Перевод:
Статья была откорректирована, чтобы отразить тот факт, что Опера не поддерживает TLS 1.2 по умолчанию.
Согласитесь смысл двоякий. Однако вы меня убедили. Перечитал и вдумался. Будет исправлено.
Я не вижу двоякого смысла. В тексте оригинальной статьи стояло, что есть поддержка по умолчанию. Ошибку исправили, и в конце статьи сделали об этом приписку.
BTW, в почту ещё загляните. Там ещё пара замечаний по переводу.
BTW, в почту ещё загляните. Там ещё пара замечаний по переводу.
На «Ekoparty security conference» в Буэнос-Айресе в конце недели…«Конец недели» — это среда-четверг-пятница, так что можно уже начинать беспокоиться.
Доклад запланирован на 23, 18:30 (судя по всему по местному времени, так что добавьте еще несколько часов на разницу часовых поясов).
В оригинале статьи говорится, что это атака класса chosen-plaintext, для успешной атаки на клиенте работает javascript, который выдает серию запросов с небольшой модификацией, используется тот факт, что куки в этих запросах остается неизменным. Т.е. если я правильно понимаю, речь идет исключительно о возможности дешифровать и перехватить куки, о дешифрации произвольного HTTPS-трафика, а тем более произвольного SSL/TLS-трафика, речи не идет.
И если так, то, видимо, речь идет об активном M-i-t-M, пассивно атака не реализуется. Впрочем, данных пока не достаточно чтобы точно сказать.
Информация интересная, но зачем такой жёлтый заголовок?
«Взломали SSL» в заголовке и «Взломали старую версию SSL» в статье это же совсем не одно и тоже?
Фу.
«Взломали SSL» в заголовке и «Взломали старую версию SSL» в статье это же совсем не одно и тоже?
Фу.
Взломали (если взломали конечно) актуальную версию TLS, использующуюся чуть ли не везде, где используется какой-либо TLS. А по поводу SSL пока не очень понятно, уязвим SSL3 или нет, но явных высказываний о его неуязвимости я не нашел (в отличие от TLS 1.1 и 1.2).
Ну а как же паника? Какая ж паника будет без правильного заголовка? Зачем вообще писать на Хабр, если не кошмарить IT-хомячков? [/irony]
Opera
Инструменты → Общие настройки → Расширенные → Безопасность → Протоколы безопасности
Галочки увидите сами :)
Инструменты → Общие настройки → Расширенные → Безопасность → Протоколы безопасности
Галочки увидите сами :)
>> Пока Mozilla и разработчики OpenSSL должны внедрить TLS 1.2 вовсе, Microsoft имеет достижения чуть больше.
Хороший перевод.
И кстати снова в переводе нет личного мнения переводчика. Что делать-то со взломом? Куда бежать, как спасаться? «Thai Duong и Juliano Rizzo заявили» — кто это вообще такие, им стоит верить?
Хороший перевод.
И кстати снова в переводе нет личного мнения переводчика. Что делать-то со взломом? Куда бежать, как спасаться? «Thai Duong и Juliano Rizzo заявили» — кто это вообще такие, им стоит верить?
Любопытно было бы глянуть на техническое описание атаки. Но что-то мне подсказывает, что это продолжение вот этой истории с уязвимостью в ASP.Net. И в таком случае вероятнее всего что атакующие в очередной раз применили классическую атаку схем дополнений. Если это действительно так, то отличие из-за которого TLS 1.1 невосприимчив к данной угрозе заключается в том, что, если верить wiki, в данной версии протокола была исправленна обработка ошибок дополнений. Во всей этой истории один плюс, сейчас все быстро начную отказываться от устаревшего TLS 1.0
Зачем такие заголовки с зашкаливающей желтизной??
Хакеры ломают что-то конкретное, а в данном случае речь о научном исследовании, которым занимались математики. Математик не обязан быть хакером и наоборот.
Хакеры ломают что-то конкретное, а в данном случае речь о научном исследовании, которым занимались математики. Математик не обязан быть хакером и наоборот.
Убрал в Google Chrome галочку с «использовать TLS 1.0», а к GMail всё равно по TLS 1.0 коннектится. :(
Я как посмотрю все перешли на SSL 3.0, а может они социальные инженеры и этого добивались. И на самом деле взломали не TLS 1.0, а ssl :-)
SSL тоже взломали…
откуда инфо?..
Его почти все поддерживают. Если бы он был неуязвим, никто бы и в ус не дул.
en.wikipedia.org/wiki/Comparison_of_TLS_Implementations#Protocol_Support
en.wikipedia.org/wiki/Comparison_of_TLS_Implementations#Protocol_Support
Объясните кто-нибудь в чем сложность внедрить TLS 1.2 если уже есть TLS 1.0?
ну вот и пришла пора elinks собранного без поддержки ява скрипта )
А как внедряется JS на страницу, если все идет поhttps?
Эммм… ну какбэ очень просто — если мы с вами, например, ведем в каком-то корп. портале переписку, вы ниипический ночальнег ацкого уровня доступа к супер-секретной информации, то я легко могу разместить где-нибудь сообщение с нужным JS-кодом для вас, а вы потом, прочитав его «нечаянно» передадите мне все свои печеньки. Ну а что мне сделать с полученными печеньками я уж разберусь сам, ага.
Не думаю, что хоть одна серьезная система разрешит размещать пользователям выполняемый JS-код в сообщениях, это серьезная уязвимость, даже без учета описанной проблемы. Если можно разместить JS-код и выполнить его в браузере другого пользователя, то незачем запариваться с https, можно просто отправить его куки на свой сервер.
«JavaScript-код не требуется запускать в контексте атакуемого сайта, его достаточно открыть в новой вкладке, например, путем встраивания через iframe в какой-нибудь сторонний сайт» © www.opennet.ru/opennews/art.shtml?num=31797
Но все равно JS-код должен быть размещен на атакуемом сайте, а потом уже с помощью iframe одна из страниц атакуемого сайта внедряется в страницу стороннего. На практике это трудно осуществимо.
А какая разница трудно или нет? Трудно и невозможно абсолютно различные понятия.
Хм, а такой вариант не прокатит: на своём сайте создаём iframe, содержащий произвольный урл атакуемого сайта, потом со вкладки на своём сайте заменяем содержимое iframe на произвольный JS. Или родительский документ не имеет доступа к DOM фрейма?
ИМХО, нужно https-соединение засунуть в sandbox (скажем, в окно incognito). В этом случае его куки не передадутся в атакованное http-соединение и атакующий нифига не получит.
Sign up to leave a comment.
Хакеры взломали SSL шифрование, используемое миллионами сайтов