УТОНИТЬ атака
Эта статья требует внимания эксперта в области криптографии . Конкретная проблема: новая уязвимость. ( март 2016 г. ) |
Идентификатор(ы) CVE | CVE-2016-0800 |
---|---|
Дата обнаружения | март 2016 г |
Первооткрыватель | Нимрод Авирам, Себастьян Шинцель |
Затронутое программное обеспечение | SSL (v2) |
Веб-сайт | утопленная атака |
Атака DROWN TLS ( расшифровка RSA с устаревшим и ослабленным шифрованием ) — это межпротокольная ошибка безопасности , которая атакует серверы, поддерживающие современные наборы протоколов SSLv3/ используя , их поддержку устаревшего, небезопасного протокола SSL v2 для атаки на соединения, использующие -современные протоколы, которые в противном случае были бы безопасными. [1] [2] DROWN может повлиять на все типы серверов, которые предлагают услуги, зашифрованные с помощью SSLv3/TLS, но при этом поддерживают SSLv2, при условии, что они используют одни и те же учетные данные открытого ключа для двух протоколов. [3] Кроме того, если тот же сертификат открытого ключа используется на другом сервере, поддерживающем SSLv2, сервер TLS также уязвим из-за утечки ключевой информации сервера SSLv2, которая может быть использована против сервера TLS. [3]
Полная информация о DROWN была объявлена в марте 2016 года вместе с патчем, отключающим SSLv2 в OpenSSL; уязвимости присвоен идентификатор CVE — 2016-0800 . [4] Одного исправления будет недостаточно для смягчения атаки, если сертификат можно найти на другом хосте SSLv2. Единственная действенная контрмера — отключить SSLv2 на всех серверах.
По оценкам исследователей, по состоянию на 1 марта 2016 года 33% всех HTTPS- сайтов были подвержены этой уязвимости. [5]
Подробности
[ редактировать ]DROWN — это аббревиатура от «Расшифровка RSA с помощью устаревшего и ослабленного шифрования». [6] Он использует уязвимость в сочетании используемых протоколов и конфигурации сервера, а не какую-либо конкретную ошибку реализации. По словам первооткрывателей, эксплойт невозможно устранить путем внесения изменений в клиентское программное обеспечение, например в веб-браузеры. [3]
Эксплойт включает в себя атаку с использованием выбранного зашифрованного текста с использованием сервера SSLv2 в качестве оракула Блейхенбахера . SSLv2 работал, шифруя главный секрет напрямую с помощью RSA, а 40-битные экспортные шифровальные наборы работали, шифруя только 40 бит главного секрета и раскрывая остальные 88 бит в виде открытого текста. 48-байтовый зашифрованный SSLv3/TLS зашифрованный текст RSA «обрезается» до 40-битных частей и затем используется в сообщении SSLv2 ClientMasterKey, которое сервер рассматривает как 40-битную часть главного секрета SSLv2 (остальные 88 бит могут быть любым значением, отправленным клиентом в виде открытого текста). Путем грубого применения 40-битного шифрования сообщение ServerVerify можно использовать в качестве оракула. Атака, подтверждающая концепцию, продемонстрировала, как как конфигурации с несколькими графическими процессорами, так и коммерческие облачные вычисления могут выполнять часть вычислений по взлому кода, при этом стоимость установки графического процессора составляет около 18 000 долларов США, а стоимость каждой атаки — 400 долларов США для облака. Успешная атака предоставит сеансовый ключ для перехваченного рукопожатия TLS.
Следователи, которые описали атаку выше как общую атаку DROWN, также обнаружили определенную слабость в реализации OpenSSL SSLv2, которая позволила провести то, что они назвали специальной атакой DROWN . Это значительно сократило усилия, необходимые для взлома шифрования, сделав возможными атаки «человек посередине» в реальном времени , требующие лишь скромных вычислительных ресурсов. Реализация OpenSSL SSLv2 до 2015 года не проверяла правильность длины открытого и зашифрованного ключа, что позволяло, например, зашифровать только 8-битный главный секрет. До 2015 года OpenSSL также перезаписывал неправильные байты в главном секрете SSLv2 во время попытки контрмеры Блейхенбахера. До 2016 года OpenSSL также с радостью согласовывал отключенные наборы шифров SSLv2. В отличие от SSLv3 и более поздних версий, в SSLv2 клиент должен был выбирать из списка наборов шифров, предлагаемых сервером, но OpenSSL позволял использовать наборы шифров, не включенные в список.
Первыми, кто сообщил об ошибке, были исследователи безопасности Нимрод Авирам и Себастьян Шинцель. [7]
смягчение последствий
[ редактировать ]Чтобы защититься от DROWN, операторам серверов необходимо убедиться, что их закрытые ключи нигде не используются серверным программным обеспечением, которое разрешает соединения SSLv2. Сюда входят веб-серверы, SMTP-серверы, серверы IMAP и POP, а также любое другое программное обеспечение, поддерживающее SSL/TLS. [8]
Группа OpenSSL выпустила рекомендации по безопасности и набор исправлений, призванных смягчить уязвимость путем удаления поддержки устаревших протоколов и шифров. [9] Однако если сертификат сервера используется на других серверах, поддерживающих SSLv2, он по-прежнему уязвим, как и исправленные серверы.
Многочисленные источники рекомендовали операторам сайта как можно скорее устранить уязвимость.
Ссылки
[ редактировать ]- ^ Лейден, Джон (1 марта 2016 г.). «Одна треть всех HTTPS-сайтов открыта для атаки DROWN» . Регистр . Проверено 2 марта 2016 г.
- ^ Гудин, Дэн (1 марта 2016 г.). «Более 11 миллионов веб-сайтов HTTPS подвергаются опасности из-за новой атаки с расшифровкой» . Арс Техника . Проверено 2 марта 2016 г.
- ^ Перейти обратно: а б с Нимрод Авирам, Себастьян Шинцель, Юрай Соморовски, Надя Хенингер , Майк Данкель, Йенс Штойбе, Люк Валента, Дэвид Адриан, Дж. Алекс Хальдерман , Виктор Духовни, Эмилия Каспер, Шаанан Кони, Сюзанна Энгельс, Кристоф Паар и Юваль Шавитт. DROWN: взлом TLS с использованием SSLv2 ,
- ^ «Сводка уязвимостей Национальной системы киберинформации для CVE-2016-0800» . web.nvd.nist.gov . Проверено 2 марта 2016 г.
- ^ «Атака УТОНИТЕЛЯ» . www.stopattack.com . Проверено 24 марта 2016 г.
- ^ «Новая атака с расшифровкой TLS затрагивает каждый третий сервер из-за устаревшей поддержки SSLv2» . ПКМир . Проверено 2 марта 2016 г.
- ^ «DROWN — Межпротокольная атака на TLS с использованием SSLv2 — CVE-2016-0800 — Портал клиентов Red Hat» . access.redhat.com . Проверено 2 марта 2016 г.
- ^ «Атака УТОНИТЕЛЯ» . 1 марта 2016 г.
- ^ «Межпротокольная атака на TLS с использованием SSLv2 (DROWN) (CVE-2016-0800)» . OpenSSL. 1 марта 2016 г.