Несколько удивился, не увидев этого в новостях КО. На прошлой неделе была презентована атака, по сути, позволяющая взламывать HTTPS-сессии (естественно, с ограничениями, куда без них). В качестве примера приводится расшифровка cookies и последующий «угон» сессии PayPal за 10 минут! Конец безопасному е-мейлу, онлайн-банкингу и шоппингу?! Паниковать или нет?! Будем разбираться.
Атака построена довольно хитро. Атакующий умудряется вбрасывать пакеты в зашифрованный канал, при этом перехватывая шифрованные пакеты. В результате умелого использования уязвимостей блочного шифрования SSL3.0/TLS1.0 атакующий расшифровывает необходимые ему данные. Потом – делает что хочет. Особенность этой атаки в том, что база для криптоанализа (длинные сеансы связи или интенсивный обмен пакетами) здесь требуется значительно меньшая (за счет умелого вброса правильно сгенерированных пакетов) – утверждается, что сессию можно вскрыть за 10-30 минут.
Для начала несколько интересных и волнительных фактов:
В общем, получилась ситуация «верхи не могут, низы не хотят»: если бы проблема было только на стороне клиента – все бы решилось быстрым обновлением браузеров. Но тут, похоже, придется обновить «весь Интернет». Вот выдержка из новости с красноречивой статистикой:
«Как обнаружили исследователи из компании Opera, только 0.25% сайтов поддерживают TLS 1.1, TLS 1.2 поддерживают 0.02%. Несмотря на то, что спецификации TLS 1.1/1.2 были разработаны достаточно давно, поддержка этих протоколов в некоторых популярных браузерах всё ещё не реализована. Это создаёт проблему для владельцев сайтов, которые хотели бы обновиться, но из-за боязни потерять клиентов делать этого не хотят»
Внизу поста есть секция с подробностями для любопытных, а пока разработчики браузеров, веб-серверов, библиотек SSL/TLS и прочие вебмастеры будут искать способ спасения мира, нам пользователям, необходимо решить важнейший вопрос:
К счастью, особого повода для паники нет. Атака опирается следующие факторы:
С первым фактором сделать ничего нельзя. Как только мы отправили пакет, мы его уже не контролируем. А вот с остальными – можно:
Администраторы веб-сайтов могут оперативно включить поддержку RC4 (или выставить ее более приоритетной, чем всякие блочные режимы). Google, как выяснилось, уже давно использует этот метод, так что GMail, GDocs, G+ и иже с ними – в относительной безопасности.
Аналогично, пользователи могут открутить поддержку всех блочных Cipher Suites (*_CBC_*) в браузере/ОС (и заодно поддержку SSL3/TLS1.0, если браузер позволяет). Правда, при этом некоторые сайты могут отказаться работать, но тут уже пользователю решать: или потенциальный риск, или потерпеть без данного ресурса.
Можно ограничить длительность сессии. С той же почтой можно работать не через браузер, а через почтовый клиент, а там TLS сессии будут покороче. На худой конец – периодически делать logout J.
И самое интересное – возможность вброса данных. Здесь используется всеми любимый XSS, но в новой форме. Как обычно, плагин NoScript для Firefox выручает.
Стараясь сохранить баланс между количеством подробностей, интересностью и краткостью изложения, завершу заметку здесь. Сухой остаток:
В ближайшее время ожидаю всплеска постапокалиптических новостей на тему «конец Интернета», потом волны апгрейдов и глюков на веб-сайтах, потом все вернется на круги своя.
Ситуация на данный момент:
Сравнительно свежий документ, который расписывает, какие браузеры и веб-серверы что поддерживают (заодно приводит краткий экскурс в историю SSL/TLS).
Две подробных статьи с анализом: