stringtranslate.com

атака DROWN

Атака DROWN ( расшифровка RSA с устаревшим и ослабленным eNcryption ) — это кросс-протокольная ошибка безопасности , которая атакует серверы, поддерживающие современные наборы протоколов SSLv3/ TLS , используя их поддержку устаревшего, небезопасного протокола 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 — это аббревиатура от "Decrypting RSA with Obsolete and Weakened eNcryption" (Расшифровка RSA с устаревшим и ослабленным eNcryption). [6] Он использует уязвимость в комбинации используемых протоколов и конфигурации сервера, а не какую-либо конкретную ошибку реализации. По словам первооткрывателей, эксплойт нельзя исправить, внеся изменения в клиентское программное обеспечение, такое как веб-браузеры. [3]

Эксплойт включает атаку с выбранным шифротекстом с использованием сервера SSLv2 в качестве оракула Блейхенбахера . SSLv2 работал, шифруя главный секрет напрямую с помощью RSA, а 40-битные экспортные шифронаборы работали, шифруя только 40 бит главного секрета и раскрывая остальные 88 бит как открытый текст. 48-байтовый зашифрованный SSLv3/TLS RSA-шифротекст «обрезается» до 40-битных частей и затем используется в сообщении SSLv2 ClientMasterKey, которое сервер обрабатывает как 40-битную часть главного секрета SSLv2 (остальные 88 бит могут быть любым значением, отправленным клиентом как открытый текст). Путем подбора 40-битного шифрования сообщение ServerVerify может использоваться как оракул. Атака с целью проверки концепции продемонстрировала, как конфигурации с несколькими GPU и коммерческие облачные вычисления могут выполнять часть вычислений по взлому кода, при стоимости около $18 000 за установку GPU и стоимости атаки в $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. ^ Лейден, Джон (1 марта 2016 г.). «Треть всех HTTPS-сайтов открыты для атаки DROWN». The Register . Получено 2016-03-02 .
  2. ^ Гудин, Дэн (1 марта 2016 г.). «Более 11 миллионов HTTPS-сайтов подверглись опасности из-за новой атаки дешифрования». Ars Technica . Получено 2016-03-02 .
  3. ^ abc Нимрод Авирам, Себастьян Шинцель, Юрай Соморовски, Надя Хенингер , Майк Данкель, Йенс Штойбе, Люк Валента, Дэвид Адриан, Дж. Алекс Халдерман , Виктор Духовни, Эмилия Кеспер, Шаанан Кохни, Сюзанна Энгельс, Кристоф Паар и Ювал Шавитт. DROWN: Взлом TLS с использованием SSLv2, 2016
  4. ^ "Обзор уязвимостей Национальной системы киберосведомленности для CVE-2016-0800". web.nvd.nist.gov . Получено 2016-03-02 .
  5. ^ "DROWN Attack". droppedattack.com . Получено 2016-03-24 .
  6. ^ "Новая атака расшифровки TLS затрагивает каждый третий сервер из-за устаревшей поддержки SSLv2". PCWorld . Получено 2016-03-02 .
  7. ^ "DROWN - Кросс-протокольная атака на TLS с использованием SSLv2 - CVE-2016-0800 - Red Hat Customer Portal". access.redhat.com . Получено 2016-03-02 .
  8. ^ "Атака DROWN". 1 марта 2016 г.
  9. ^ «Кросс-протокольная атака на TLS с использованием SSLv2 (DROWN) (CVE-2016-0800)». OpenSSL. 1 марта 2016 г.

Внешние ссылки