Открыть сервис

Downgrade attack

Downgrade attack (атака понижением версии, также атака понижения уровня защиты) — это вид кибератаки, при которой злоумышленник принудительно заставляет компьютерную систему, сетевой протокол или программное обеспечение перейти на более старую, менее защищённую версию протокола или алгоритма шифрования. Целью атаки является эксплуатация известных уязвимостей, присутствующих в устаревших версиях, которые были устранены в более новых. Данный тип атак относится к классу атак «человек посередине» (Man-in-the-Middle, MITM) и часто используется для перехвата или модификации трафика.

Принцип действия

В основе downgrade attack лежит нарушение процесса согласования (handshake) между клиентом и сервером, в ходе которого стороны договариваются об используемой версии протокола и параметрах шифрования. В нормальном сценарии клиент и сервер, поддерживающие несколько версий протокола, выбирают самую новую и безопасную из доступных. Злоумышленник, внедрившись в канал связи, перехватывает сообщения о поддерживаемых версиях и подменяет их, сообщая каждой стороне, что другая поддерживает только устаревшую версию. В результате обе стороны вынужденно переключаются на более старый протокол, который злоумышленник может атаковать.

Основные этапы атаки

  1. Перехват трафика: злоумышленник занимает позицию между клиентом и сервером (например, через подделку точки доступа Wi-Fi, ARP-спуфинг или перехват DNS-запросов).
  2. Подмена сообщений: в процессе согласования (например, в TLS handshake) злоумышленник изменяет поля, указывающие на поддерживаемые версии протокола, принуждая стороны к использованию слабой версии (например, SSL 3.0 вместо TLS 1.3).
  3. Эксплуатация уязвимости: после установления соединения по старому протоколу злоумышленник использует известные уязвимости (например, POODLE, BEAST, CRIME) для расшифровки или модификации данных.

История и известные примеры

POODLE (2014)

Одна из самых известных downgrade-атак — POODLE (Padding Oracle On Downgraded Legacy Encryption). Атака была направлена на протокол SSL 3.0. Злоумышленник принудительно понижал версию TLS до SSL 3.0, после чего мог расшифровать куки сессии и другие конфиденциальные данные. Уязвимость затронула миллионы веб-сайтов и браузеров.

BEAST (2011)

Атака BEAST (Browser Exploit Against SSL/TLS) использовала уязвимость в TLS 1.0, позволяя злоумышленнику дешифровать HTTP-заголовки. Для её проведения требовалось понизить версию протокола до TLS 1.0, если клиент и сервер поддерживали более новые версии.

FREAK (2015)

Атака FREAK (Factoring RSA Export Keys) эксплуатировала поддержку экспортных (ослабленных) шифров RSA. Злоумышленник принуждал сервер использовать 512-битный экспортный ключ, который можно было взломать перебором.

Logjam (2015)

Атака Logjam была направлена на протокол Диффи-Хеллмана (DH). Злоумышленник понижал уровень безопасности обмена ключами до 512-битного экспортного DH, что позволяло вычислить общий ключ.

DROWN (2016)

Атака DROWN (Decrypting RSA with Obsolete and Weakened eNcryption) использовала серверы, поддерживающие SSLv2, для расшифровки TLS-соединений. Даже если сервер не использовал SSLv2, но имел общий ключ с другим сервером, поддерживающим SSLv2, атака была возможна.

Классификация

Downgrade-атаки можно классифицировать по нескольким признакам:

По цели понижения

  • Понижение версии протокола: принуждение к использованию старой версии (например, TLS 1.0 вместо TLS 1.3).
  • Понижение алгоритма шифрования: принуждение к использованию слабого или экспортного шифра (например, RC4 вместо AES).
  • Понижение уровня аутентификации: принуждение к использованию менее строгой аутентификации (например, Basic Auth вместо OAuth).

По вектору атаки

  • Активная атака: злоумышленник активно модифицирует трафик (подмена сообщений в handshake).
  • Пассивная атака: злоумышленник не вмешивается в процесс согласования, но использует слабые места протокола, которые становятся доступны при понижении версии (например, атака на устаревшие алгоритмы).

По среде применения

  • Сетевые протоколы: TLS/SSL, SSH, IPsec, Wi-Fi (WPA2 → WPA).
  • Прикладные протоколы: HTTP/2HTTP/1.1, SMTP, IMAP.
  • Программное обеспечение: принудительное использование старой версии API или библиотеки.

Защита от downgrade-атак

На стороне сервера

  • Отключение устаревших протоколов: полное удаление поддержки SSL 2.0, SSL 3.0, TLS 1.0, TLS 1.1.
  • Использование безопасных шифров: отказ от экспортных шифров, RC4, 3DES.
  • Применение расширений TLS: использование расширения supported_versions (RFC 8446) для явного указания поддерживаемых версий.
  • Внедрение механизмов защиты от понижения: например, TLS Fallback SCSV (Signaling Cipher Suite Value) — специальный сигнал, который клиент отправляет при попытке понизить версию, позволяя серверу отклонить соединение.

На стороне клиента

  • Обновление программного обеспечения: использование последних версий браузеров, библиотек и приложений.
  • Настройка политик безопасности: запрет на использование устаревших протоколов в настройках клиента.
  • Использование HSTS: HTTP Strict Transport Security (HSTS) предотвращает понижение версии HTTP до незащищённого соединения.

На уровне сети

  • Мониторинг и обнаружение аномалий: системы обнаружения вторжений (IDS) могут выявлять попытки подмены сообщений в handshake.
  • Использование VPN: шифрование трафика на более низком уровне (например, IPsec) может защитить от атак на прикладные протоколы.

Примеры в современных системах

Wi-Fi (KRACK)

Атака KRACK (Key Reinstallation Attack, 2017) на протокол WPA2 использовала понижение версии протокола для повторной установки ключа шифрования. Злоумышленник принуждал клиента и точку доступа использовать устаревший метод согласования ключей, что позволяло перехватывать трафик.

SSH

В протоколе SSH downgrade-атаки возможны при попытке принудить сервер использовать старую версию протокола (SSH-1 вместо SSH-2), которая имеет известные уязвимости (например, слабый контроль целостности).

HTTP/2

Атака downgrade HTTP/2 может быть использована для принуждения клиента и сервера к использованию HTTP/1.1, который не поддерживает мультиплексирование и может быть подвержен атакам типа «конкуренция потоков» (HTTP/2 Rapid Reset).

Правовые аспекты в Российской Федерации

В Российской Федерации проведение downgrade-атак, как и любых других несанкционированных действий в отношении компьютерной информации, квалифицируется по статьям Уголовного кодекса РФ:

  • Статья 272 УК РФ «Неправомерный доступ к компьютерной информации» — наказывается штрафом до 200 тысяч рублей или лишением свободы до 2 лет.
  • Статья 273 УК РФ «Создание, использование и распространение вредоносных компьютерных программ» — наказывается лишением свободы до 4 лет.
  • Статья 274 УК РФ «Нарушение правил эксплуатации средств хранения, обработки или передачи компьютерной информации» — наказывается лишением свободы до 5 лет.

При этом использование downgrade-атак для перехвата персональных данных (ст. 137 УК РФ) или банковской тайны (ст. 183 УК РФ) влечёт дополнительную ответственность.

Источники

  • RFC 8446 — The Transport Layer Security (TLS) Protocol Version 1.3
  • B. Moeller, A. Langley, «POODLE Attack: SSLv3 Vulnerability», 2014
  • N. J. AlFardan, K. G. Paterson, «Lucky Thirteen: Breaking the TLS and DTLS Record Protocols», 2013
  • M. Stevens et al., «The POODLE Attack: Exploiting the SSL 3.0 Fallback», 2014
  • K. Bhargavan, G. Leurent, «Transcript Collision Attacks: Breaking Authentication in TLS, IKE, and SSH», 2016
  • Уголовный кодекс Российской Федерации, статьи 272–274

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →