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

CVE-2016-2183

CVE-2016-2183 — это идентификатор уязвимости в криптографических библиотеках, реализующих алгоритм шифрования DES (Data Encryption Standard) и его вариант 3DES (Triple DES, TDEA). Уязвимость связана со слабой стойкостью алгоритмов, позволяющей проводить атаки типа «человек посередине» (MITM) на защищённые соединения (TLS/SSL, SSH, IPsec) при использовании определённых режимов шифрования. В национальной базе данных уязвимостей США (NVD) ей присвоен базовый балл 7.5 по шкале CVSS v3.1, что соответствует высокому уровню опасности.

Суть уязвимости

Уязвимость CVE-2016-2183 относится к классу «слабый криптографический алгоритм» (CWE-327). Она заключается в том, что алгоритмы DES и 3DES с длиной ключа 56 бит (для DES) и 112 бит (для 3DES) не обеспечивают достаточной криптостойкости для современных вычислительных мощностей. В частности, атака на основе подобранного открытого текста с использованием метода «Sweet32» (CVE-2016-2183) позволяет злоумышленнику, имеющему возможность перехватывать и модифицировать сетевой трафик, восстановить ключ шифрования и расшифровать данные.

Механизм атаки Sweet32

Атака Sweet32, описанная исследователями Кираном Паттерсоном и Томасом Портином, эксплуатирует особенности блочного шифрования в режиме CBC (Cipher Block Chaining). При использовании 3DES в режиме CBC злоумышленник может, отправляя большое количество запросов (порядка 2^32 блоков), получить коллизию блоков шифротекста. Это позволяет восстановить содержимое блоков открытого текста, включая конфиденциальные данные, такие как cookie-файлы, пароли или токены аутентификации.

Поражаемые системы и протоколы

Уязвимость затрагивает все реализации, поддерживающие шифрование DES и 3DES в режиме CBC, включая:

Протоколы, уязвимые к атаке:

  • TLS/SSL (все версии, включая TLS 1.0, 1.1, 1.2)
  • SSH (при использовании шифра 3DES-CBC)
  • IPsec (при использовании 3DES в режиме CBC)
  • OpenVPN (при использовании 3DES-CBC)

История и обнаружение

Уязвимость была обнаружена в 2016 году исследователями из компании INRIA (Франция) и Университета Мэриленда (США). Официально идентификатор CVE-2016-2183 был присвоен 24 августа 2016 года. В том же году была опубликована статья «Sweet32: Birthday attacks on 64-bit block ciphers in TLS and OpenVPN», в которой подробно описывался механизм атаки.

Влияние и последствия

Критичность

Уязвимость позволяет злоумышленнику, находящемуся в одной сети с жертвой (например, в общедоступной Wi-Fi сети), перехватывать и расшифровывать защищённый трафик. Для успешной атаки требуется:

  • Возможность перехвата и модификации сетевых пакетов (MITM-позиция)
  • Отправка большого количества запросов (обычно 2^32–2^33 блоков, что при размере блока 8 байт составляет около 32–64 ГБ данных)
  • Время, необходимое для сбора данных (от нескольких часов до нескольких дней в зависимости от пропускной способности)

Практические последствия

  • Компрометация сессионных cookie-файлов HTTPS-сайтов
  • Расшифровка паролей и токенов аутентификации
  • Возможность подмены данных в защищённых соединениях

Меры по устранению

Рекомендации для администраторов

  1. Отключение поддержки 3DES на серверах и клиентах. В конфигурации OpenSSL это достигается удалением строки 3DES из параметра CipherString.
  2. Переход на алгоритмы с 128-битным блоком (AES, ChaCha20) и режимами, устойчивыми к атакам по коллизиям (например, GCM, CCM).
  3. Обновление программного обеспечения до версий, в которых уязвимость исправлена:
  • OpenSSL 1.0.2h и выше
  • LibreSSL 2.4.2 и выше
  • GnuTLS 3.4.14 и выше
  1. Настройка строгих политик шифрования (например, использование только TLS 1.2+ с наборами шифров, не содержащими 3DES).

Рекомендации для пользователей

  • Использовать современные браузеры (Chrome, Firefox, Edge), которые отключают поддержку 3DES по умолчанию.
  • Избегать подключения к незащищённым публичным сетям Wi-Fi без использования VPN.
  • Регулярно обновлять операционную систему и приложения.

Статус в России

На территории Российской Федерации эксплуатация уязвимости CVE-2016-2183 не является отдельным правонарушением, однако использование криптографических средств, не соответствующих требованиям ФСБ России (например, ГОСТ Р 34.10-2012, ГОСТ 28147-89), может быть ограничено. Для государственных информационных систем и критической информационной инфраструктуры РФ рекомендуется использовать только сертифицированные криптографические средства, поддерживающие алгоритмы ГОСТ.

Связанные уязвимости

  • CVE-2016-2183 — основная уязвимость для 3DES (Sweet32)
  • CVE-2016-6329 — уязвимость в OpenVPN, связанная с использованием 3DES
  • CVE-2016-2184 — уязвимость в реализации DES в OpenSSL
  • CVE-2016-2185 — уязвимость в реализации 3DES в GnuTLS

Интересные факты

  • Алгоритм DES, разработанный в 1970-х годах, имеет длину ключа всего 56 бит, что делает его уязвимым к полному перебору (brute-force) с использованием современных вычислительных мощностей (например, FPGA-майнеры могут взломать DES за несколько часов).
  • 3DES, являющийся тройным применением DES, был разработан как временная мера для повышения стойкости, но из-за малого размера блока (64 бита) он подвержен атакам по коллизиям.
  • Атака Sweet32 получила своё название из-за использования 32-битных коллизий (2^32 блоков) и сладкого вкуса успеха для исследователей.
  • После публикации уязвимости в 2016 году большинство крупных интернет-компаний (Google, Microsoft, Mozilla) отключили поддержку 3DES в своих продуктах.

Источники

  • CVE-2016-2183 в базе данных NVD (National Vulnerability Database)
  • Статья «Sweet32: Birthday attacks on 64-bit block ciphers in TLS and OpenVPN» (K. Paterson, T. Portin, 2016)
  • Документация OpenSSL по отключению 3DES
  • Рекомендации ФСТЭК России по защите информации
  • Материалы конференции Black Hat 2016
Заметили ошибку или не согласны с информацией в статье? Напишите нам support@bfometr.ru