Размер ключа
- 1 year ago
- 0
- 0
Атака с переустановкой ключа ( англ. KRACK — Key Reinstallation Attack ) — атака повторного воспроизведения на любую Wi-Fi сеть с шифрованием WPA2 .
Впервые была обнаружена бельгийскими исследователями Мэтти Ванхоефом ( Mathy Vanhoef ) и Франком Писсенсем ( Frank Piessens ) в 2016 году. Результаты исследования опубликованы в октябре 2017. С помощью этой атаки злоумышленник может «прослушивать» данные, а в некоторых случаях, даже «подделывать» данные, передаваемые между клиентом и точкой доступа.
Все защищённые Wi-Fi сети используют схему 4-этапное « » ( англ. 4-way-handshake ) для генерации криптографического ключа. Злоумышленник заставляет жертву переустановить уже используемый криптографический ключ на третьем этапе 4-этапного «рукопожатия».
В силу использования потокового шифра AES-CCMP в протоколе WPA2, переустановка ключа сильно ослабляет шифрование. Таким образом, злоумышленник может провести криптоатаку, узнать ключ и осуществить «прослушку» данных, которыми обмениваются клиент и точка доступа. В Linux -системах [ каких? ] и Android 6.0 в результате атаки переустанавливался нулевой ключ, что значительно облегчало взлом устройства.
При подключении нового клиента к сети Wi-Fi происходит согласование общего ключа шифрования за 4 этапа (4-этапное «рукопожатие»). Согласованный ключ затем служит для шифрования всех «нормальных» пакетов данных. Однако, поскольку отдельные сообщения могут быть потеряны, точка доступа ( англ. Access Point, AP ) может повторно отправлять сообщения третьего этапа пока не получит подтверждение о его получении. Как следствие, клиент может получать это сообщение несколько раз. Каждый раз, получив такое сообщение, клиент устанавливает уже имеющийся ключ шифрования и сбрасывает счётчики ( англ. replay counters ). Исследователям удалось на практике доказать, что злоумышленник способен заставить жертву сбрасывать счётчики путём повторной отправки сообщения 3-го этапа во время 4-этапного «рукопожатия».
Благодаря повторному использованию ключа шифрования появляется возможность атаки на криптографический протокол : воспроизведение пакетов, дешифрование и даже подделка их содержания . Этот метод пригоден для атаки на протоколы Group Key, Fast Basic Service Set (BSS) Transition, PeerKey, Tunneled Direct-Link Setup (TDLS) PeerKey (TPK), или Wireless Network Management (WNM) Sleep Mode .
При определённых условиях злоумышленник может не только «прослушивать» Wi-Fi трафик, но и осуществлять ряд атак типа «человек посередине» : перехватывать сеансы TCP, выполнять вставку информации в сеансы HTTP , воспроизводить адресные или широковещательные пакеты, и осуществлять другие атаки типа спуфинг .
Злоумышленники имеют возможность прослушивать сетевой трафик и похищать из него пароли, HTTP-куки и тому подобное. Злоумышленники также получают возможность дешифровки пакетов TCP SYN , благодаря чему существует возможность установить счётчик пакетов и похитить сеанс TCP. Таким образом, несмотря на использование WPA2, злоумышленник имеет возможность осуществить атаку «человек посередине», а также может вставлять вредоносные модули в данные HTTP. Например, злоумышленник может вставлять вредоносное программное обеспечение в HTTP-данные, которые получает жертва из просмотренных ею веб-сайтов.
Последствия атаки KRACK особо опасны, если в Wi-Fi сети использованы протоколы шифрования WPA-TKIP или GCMP вместо AES-CCMP. Следует отметить, что протокол GCMP лежит в основе стандарта WiGig (IEEE 802.11ad), который должен получить широкое распространение в ближайшие годы.
В таблице показаны действия злоумышленника в результате атаки 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, Android 6.0 и Android Wear 2.0 также содержат эту уязвимость. В результате 31,2 % устройств Android подвержены этой атаке.
В таблице представлено влияние атаки 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-серверы в некоторых конфигурациях могут быть уязвимыми для различных типов атак (например, так называемых англ. Downgrade Attacks , в результате которых пользователей вынуждают перейти на незащищённое соединение по протоколу HTTP).
В таблице представлены исправления для разных устройств, которые устраняют возможность атаки KRACK. Например, в Wi-Fi клиенте wpa_supplicant 2.6 ключ шифрования устанавливается только один раз: после первого приёма сообщения третьего этапа от точки доступа.
Для операционных систем семейства Linux исправления были выпущены в 2017 году.
ОС | Версия | Исправления |
---|---|---|
Android | Все | Уровень безопасности 2017-11-06 |
Chrome OS | Все | 62.0.3202.74 |
iOS | iOS 11 | iOS 11.1 для iPhone >=7, iOS 11.2 для всех iOS устройств под iOS 11. iOS версии ранее 11 не были уязвимы. |
macOS High Sierra | 10.13 | 10.13.1 |
macOS Sierra | 10.12 | Обновление безопасности 2017—001 |
Windows | 7 | KB4041681 и KB4041678 |
Windows | 8.1 | KB4041693 и KB4041687 |
Windows | 10 | KB4042895 |
Windows Server | 2016 | KB4041691 |
{{
cite news
}}
:
Указан более чем один параметр
|accessdate=
and
|access-date=
(
справка
)