Simultaneous Authentication of Equals
Simultaneous Authentication of Equals (SAE, буквально — «одновременная аутентификация равных») — метод аутентификации и согласования ключа на основе пароля, который, согласно стандарту IEEE 802.11-2020, представляет собой протокол обмена с аутентификацией по паролю (PAKE)[1][2]. Поддержка SAE является обязательным требованием для сертификации устройств стандартов Wi-Fi 6E и Wi-Fi 7[3].
Механизм работы
Simultaneous Authentication of Equals (SAE) является вариантом протокола обмена ключами Dragonfly, определённого в RFC 7664, основанного на обмене ключами Диффи — Хеллмана с использованием конечных циклических групп — которыми могут быть либо простые циклические группы, либо эллиптические кривые[2]. Проблема применения обмена ключами Диффи — Хеллмана заключается в отсутствии механизма аутентификации. Поэтому итоговый ключ формируется с учётом предварительно согласованного пароля (pre-shared key, PSK) и MAC-адресов обоих узлов для решения проблемы аутентификации[2]. Изначально для преобразования пароля в элемент криптографической группы применялся метод «hunting and pecking», который впоследствии был заменён на более безопасный алгоритм Hash-to-Element (H2E) для защиты от атак по побочным каналам[1]..
Процесс обмена ключами по протоколу Dragonfly состоит из двух основных фаз, в ходе которых стороны обмениваются четырьмя сообщениями:[4]
- Фаза Commit (обязательство): стороны генерируют случайные числа и маски, на основе которых вычисляют скаляры и элементы криптографической группы. Узлы обмениваются этими значениями, что позволяет им независимо вычислить общий секретный ключ[4].
- Фаза Confirm (подтверждение): устройства проверяют, что они вычислили одинаковый ключ. Для этого стороны вычисляют хеш-суммы на основе общего ключа и обмениваются ими. Если полученная хеш-сумма совпадает с локально вычисленной, аутентификация признаётся успешной[4].
В случае успешного завершения обмена итоговый секретный ключ становится парным главным ключом (Pairwise Master Key, PMK)[4].
Протокол SAE обеспечивает защиту от офлайн-атак по словарю. В отличие от WPA2, где злоумышленник мог пассивно перехватить обмен данными и осуществлять перебор паролей на своём оборудовании, SAE требует интерактивного взаимодействия для каждой попытки аутентификации. Для проверки одного варианта пароля клиент и точка доступа должны выполнить ресурсоёмкие криптографические вычисления. Необходимость активного обмена данными и высокая вычислительная стоимость каждой попытки делают массовый перебор паролей неэффективным[5][6].
Кроме того, протокол обеспечивает прямую секретность (Perfect Forward Secrecy, PFS)[7][8]. Это достигается за счёт генерации уникальных эфемерных (временных) ключей для каждой новой сессии связи. После успешного завершения обмена и выработки сеансового ключа эти временные ключи уничтожаются. Благодаря этому возможная компрометация долгосрочного пароля в будущем не позволит злоумышленнику расшифровать ранее перехваченный сетевой трафик.
Использование
SAE впервые был реализован для использования между равноправными узлами (peer-to-peer) в IEEE 802.11s[2] При обнаружении друг друга (и при включённой безопасности) узлы проводят обмен SAE. Если обмен завершён успешно, каждая сторона удостоверяется, что другая знает общий пароль сети, и, как следствие обмена, обе стороны получают криптографически стойкий общий ключ. Этот ключ затем применяется в протоколе «Authenticated Mesh Peering Exchange» (AMPE) для установления защищённого соединения между узлами и вывода сессионного ключа для защиты сетевого трафика, включая маршрутизацию.
SAE также используется для защиты backhaul-соединений в современных mesh-сетях стандарта Wi-Fi EasyMesh[9].
В январе 2018 года ассоциация Wi-Fi Alliance анонсировала WPA3 как замену стандарта WPA2[10]. Новый стандарт использует 128-битное шифрование в режиме WPA3-Personal (и 192-битное в WPA3-Enterprise)[11] и обеспечивает прямой пересылочный секрет[12]. Кроме того, WPA3 заменяет обмен предварительно согласованными ключами (PSK) на Simultaneous Authentication of Equals, как указано в IEEE 802.11-2016, что делает начальный обмен ключами в персональном режиме более безопасным[13][14]. Wi-Fi Alliance также утверждает, что WPA3 устраняет проблемы безопасности, связанные со слабыми паролями, и упрощает настройку устройств без дисплея[15]. В рамках стандарта WPA3-Personal технология SAE обеспечивает 128-битную защиту, в то время как WPA3-Enterprise использует 192-битный режим с аутентификацией через RADIUS-сервер[16]. Для безопасного подключения устройств Интернета вещей (IoT) и устройств без дисплея используется протокол Wi-Fi Device Provisioning Protocol (DPP, также известный как Wi-Fi Easy Connect)[17].
Безопасность
В 2019 году Эяль Ронен и Мэти Ванхоеф (соавтор атаки KRACK) опубликовали анализ рукопожатия Dragonfly в WPA3 и обнаружили, что «злоумышленник, находящийся в зоне действия сети, по-прежнему может восстановить пароль», при этом найденные уязвимости позволяют атакующему выдавать себя за любого пользователя и получить доступ к сети Wi-Fi, не зная пароля пользователя[18][19].
Уязвимости, продемонстрированные в рамках атак Dragonblood, были устранены благодаря обязательному переходу на механизм Hash-to-Element (H2E), который предотвращает утечки информации по побочным каналам.
Значительную угрозу для безопасности представляет использование режима обратной совместимости (WPA2/WPA3 Transition Mode). В этом режиме возможны атаки на понижение (downgrade attacks), при которых злоумышленник с помощью поддельной точки доступа принуждает клиентское устройство использовать менее безопасный протокол WPA2[20].
Также была выявлена уязвимость SSID Confusion (CVE-2023-52424), связанная с отсутствием криптографической привязки имени сети к процессу аутентификации. Для её смягчения в стандарт IEEE 802.11 внедряется обязательная защита SSID в процессе 4-этапного рукопожатия[21].
Текущая реализация протокола SAE, основанная на эллиптических кривых, уязвима для квантовых атак с использованием алгоритма Шора. Для обеспечения долгосрочной безопасности сетей Wi-Fi рабочая группа IEEE P802.11bt занимается интеграцией постквантовых алгоритмов (PQC) в стандарты беспроводной связи. В рамках этой работы разрабатывается новый парольный протокол аутентифицированного обмена ключами (PAKE), который должен прийти на смену текущей реализации SAE[22].[23]
Примечания
Литература
- Harkins, Dan (20 августа 2008). “Simultaneous Authentication of Equals: A Secure, Password-Based Key Exchange for Mesh Networks”. 2008 Second International Conference on Sensor Technologies and Applications (Sensorcomm 2008) [англ.]: 839—844. DOI:10.1109/SENSORCOMM.2008.131. ISBN 978-0-7695-3330-8.
- Vanhoef, Mathy; Ronen, Eyal (10 апреля 2019). “Dragonblood: Analyzing the Dragonfly Handshake of WPA3 and EAP-pwd”. IEEE Symposium on Security & Privacy [англ.]. IEEE. Дата обращения 2024-06-13.