Русская Википедия:Атака с переустановкой ключа

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Атака с переустановкой ключа (Шаблон:Lang-en — Key Reinstallation Attack) — атака повторного воспроизведения на любую Wi-Fi сеть с шифрованием WPA2.

Впервые была обнаружена бельгийскими исследователями Мэтти Ванхоефом (Mathy Vanhoef) и Франком Писсенсем (Frank Piessens) в 2016 году.[1] Результаты исследования опубликованы в октябре 2017. С помощью этой атаки злоумышленник может «прослушивать» данные, а в некоторых случаях, даже «подделывать» данные, передаваемые между клиентом и точкой доступа.

Все защищённые Wi-Fi сети используют схему 4-этапное «Шаблон:Iw» (Шаблон:Lang-en) для генерации криптографического ключа. Злоумышленник заставляет жертву переустановить уже используемый криптографический ключ на третьем этапе 4-этапного «рукопожатия».

В силу использования потокового шифра AES-CCMP в протоколе WPA2, переустановка ключа сильно ослабляет шифрование. Таким образом, злоумышленник может провести криптоатаку, узнать ключ и осуществить «прослушку» данных, которыми обмениваются клиент и точка доступа. В Linux-системахШаблон:Каких и Android 6.0 в результате атаки переустанавливался нулевой ключ, что значительно облегчало взлом устройства.

Обзор атаки

Файл:4-way-handshake.svg
4-way-handshake

При подключении нового клиента к сети Wi-Fi происходит согласование общего ключа шифрования за Шаблон:S (4-этапное «рукопожатие»). Согласованный ключ затем служит для шифрования всех «нормальных» пакетов данных. Однако, поскольку отдельные сообщения могут быть потеряны, точка доступа (Шаблон:Lang-en) может повторно отправлять сообщения третьего этапа пока не получит подтверждение о его получении. Как следствие, клиент может получать это сообщение несколько раз. Каждый раз, получив такое сообщение, клиент устанавливает уже имеющийся ключ шифрования и сбрасывает счётчики (Шаблон:Lang-en). Исследователям удалось на практике доказать, что злоумышленник способен заставить жертву сбрасывать счётчики путём повторной отправки сообщения Шаблон:S во время 4-этапного «рукопожатия».

Благодаря повторному использованию ключа шифрования появляется возможность атаки на криптографический протокол: воспроизведение пакетов, дешифрование и даже подделка их содержания[2]. Этот метод пригоден для атаки на протоколы Group Key, Fast Basic Service Set (BSS) Transition, PeerKey, Tunneled Direct-Link Setup (TDLS) PeerKey (TPK), или Wireless Network Management (WNM) Sleep Mode[3] .

При определённых условиях злоумышленник может не только «прослушивать» Wi-Fi трафик, но и осуществлять ряд атак типа «человек посередине»: перехватывать сеансы TCP, выполнять вставку информации в сеансы HTTP , воспроизводить адресные или широковещательные пакеты, и осуществлять другие атаки типа спуфинг[3].

Значение

Злоумышленники имеют возможность прослушивать сетевой трафик и похищать из него пароли, HTTP-куки и тому подобное. Злоумышленники также получают возможность дешифровки пакетов TCP SYN, благодаря чему существует возможность установить счётчик пакетов и похитить Шаблон:S Таким образом, несмотря на использование WPA2, злоумышленник имеет возможность осуществить атаку «человек посередине», а также может вставлять вредоносные модули в данные HTTP. Например, злоумышленник может вставлять вредоносное программное обеспечение в HTTP-данные, которые получает жертва из просмотренных ею веб-сайтов.[4]

Последствия атаки KRACK особо опасны, если в Wi-Fi сети использованы протоколы шифрования WPA-TKIP или GCMP вместо AES-CCMP. Следует отметить, что протокол GCMP лежит в основе стандарта WiGig Шаблон:S который должен получить широкое распространение в ближайшие годы.[4]

В таблице показаны действия злоумышленника в результате атаки KRACK по отношению к клиенту и точке доступа (AP) в зависимости от используемого протокола шифрования данных (стрелками показаны направления пересылки пакетов информации):

Протокол Повтор Расшифровка Подделывание
TKIP AP → клиент клиент → AP клиент → AP
CCMP AP → клиент клиент → AP -
GCMP AP → клиент клиент → AP клиент ↔ AP

Подверженность устройств атаке

Атака особенно разрушительна для версий 2.4 и 2.5 wpa_supplicant, Wi-Fi клиента, которые на момент обнаружения уязвимости использовались в некоторых операционных системах семейства Linux. Этот клиент устанавливал нулевой ключ вместо того, чтобы переустановить реальный ключ. Эта уязвимость происходила из-за ошибки в стандарте 802.11, в котором неявно указано очищать память из-под ключа шифрования сразу после его установки. Так как Android использует изменённый wpa_supplicant, Шаблон:S и Android Wear 2.0 также содержат эту уязвимость. В результате 31,2 % устройств Android подвержены этой атаке.[5]

В таблице представлено влияние атаки KRACK на разные типы Wi-Fi клиентов. Во второй колонке отражена информация о том, допускает ли имплементация клиента повторной отправки сообщения третьего этапа в 4-этапном «рукопожатии».

Имплементация Re.Msg3 4-way
OS X 10.9.5 да уязвима
macOS Sierra 10.12 да уязвима
iOS 10.3.1 нет не уязвима
wpa_supplicant v2.3 да уязвима
wpa_supplicant v2.4-5 да уязвима
wpa_supplicant v2.6 да уязвима
Android 6.0.1 да уязвима
OpenBSD 6.1 (rum) да не уязвима
OpenBSD 6.1 (iwn) да уязвима
Windows 7 нет не уязвима
Windows 10 нет не уязвима
MediaTek да уязвима

Противодействие

Пользователям настоятельно рекомендуется использовать VPN и посещать сайты только по протоколу HTTPS. Однако, следует заметить, что VPN шлюзы также имеют полный доступ к сетевому трафику клиентов, а HTTPS-серверы в некоторых конфигурациях могут быть уязвимыми для различных типов атак (например, так называемых Шаблон:Lang-en, в результате которых пользователей вынуждают перейти на незащищённое соединение по протоколу HTTP).[6]

Исправления

В таблице представлены исправления для разных устройств, которые устраняют возможность атаки KRACK. Например, в Wi-Fi клиенте wpa_supplicant 2.6 ключ шифрования устанавливается только один раз: после первого приёма сообщения третьего этапа от точки доступа.[2]

Для операционных систем семейства Linux исправления были выпущены в 2017 году.[7]

ОС Версия Исправления
Android Все Уровень безопасности 2017-11-06[8]
Chrome OS Все 62.0.3202.74[9]
iOS iOS 11 iOS 11.1[10]для iPhone >=7, iOS 11.2[11]для всех iOS устройтв под iOS 11. iOS версии ранее 11 не были уязвимы.
macOS High Sierra 10.13 10.13.1[12]
macOS Sierra 10.12 Обновление безопасности 2017—001[12]
Windows 7 KB4041681 и KB4041678[13]
Windows 8.1 KB4041693 и KB4041687[13]
Windows 10 KB4042895[13]
Windows Server 2016 KB4041691[13]

Примечания

Шаблон:Примечания

Ссылки

Шаблон:Библиоинформация Шаблон:Хакерские атаки 2010-х