IEEE 802.11i-2004 — Википедия
IEEE 802.11i-2004 или коротко 802.11i, является поправкой к оригинальному IEEE 802.11, реализованному как Wi-Fi Protected Access II (WPA2). Стандарт был ратифицирован 24 июня 2004 года. Этот стандарт определяет механизмы безопасности для беспроводных сетей, заменяя условие короткой Аутентификации и конфиденциальности оригинального стандарта подробным условием Безопасности. В ходе этого процесса устаревает WEP (Wired Equivalent Privacy), позднее он был включен в опубликованный стандарт IEEE 802.11-2007.
Замена WEP
[править | править код]802.11i заменяет предыдущую спецификацию безопасности, конфиденциальность встроенного эквивалента проводных сетей Wired Equivalent Privacy (WEP), которая, как было показано, имеет уязвимости безопасности. Защищенный доступ Wi-Fi, Wi-Fi Protected Access (WPA), ранее был представлен Альянсом Wi-Fi в качестве промежуточного решения проблем безопасности WEP. В WPA реализована сокращенная версия 802.11i. Wi-Fi Alliance ссылается на свою утвержденную совместимую реализацию полной версии 802.11i как WPA2, также называемую сетью высокой безопасности RSN (Robust Security Network). 802.11i использует блочный шифр стандарта Advanced Encryption Standard (AES), то есть симметричный алгоритм блочного шифрования, тогда как WEP и WPA используют потоковый шифр RC4.[1]
Протокольная операция
[править | править код]IEEE 802.11i расширяет стандарт IEEE 802.11-1999, предоставляя сеть высокой безопасности (RSN) с двумя новыми протоколами: 4-этапное рукопожатие и групповое соединение. Они используют службы аутентификации и управления доступом к портам, описанные в IEEE 802.1X, для установки и изменения соответствующих криптографических ключей.[2][3] RSN — это сеть безопасности, которая позволяет создавать только надежные ассоциации сетей безопасности (RSNA), которые представляют собой тип ассоциации, используемой парой станций (STA), если процедура установления аутентификации или ассоциации между ними включает в себя 4-стороннее рукопожатие.[4]
Стандарт также предусматривает два протокола конфиденциальности и целостности данных RSNA, TKIP и CCMP, при этом реализация CCMP является обязательной, поскольку механизмы конфиденциальности и целостности TKIP не так надежны, как механизмы CCMP.[5] Основная цель реализации TKIP заключалась в том, что алгоритм должен быть реализован в рамках возможностей большинства старых устройств, поддерживающих только WEP.
Начальный процесс аутентификации выполняется либо с использованием предварительного общего ключа pre-shared key (PSK), либо после обмена EAP через 802.1X (известный как EAPOL, который требует наличия сервера аутентификации). Этот процесс гарантирует, что клиентская станция (STA) аутентифицирована с точкой доступа (AP). После аутентификации PSK или 802.1X генерируется общий секретный ключ, называемый парным главным ключом Pairwise Master Key (PMK). PMK получен из пароля, который вводится через PBKDF2-SHA1 в качестве криптографической хеш-функции. В сети с предварительным общим ключом PMK фактически является PSK. Если был выполнен обмен EAP 802.1X, PMK получается из параметров EAP, предоставленных сервером аутентификации.
4-этапное рукопожатие
[править | править код]4-этапное рукопожатие разработано таким образом, что точка доступа (или аутентификатор) и беспроводной клиент (или соискатель) могут независимо друг от друга доказывать, что они знают PSK / PMK, не раскрывая ключ. Вместо того, чтобы раскрывать ключ, точка доступа (AP) и клиент шифруют сообщения друг друга — которые могут быть расшифрованы только с помощью PMK, который они уже совместно используют, — и если дешифрование сообщений было успешным, это подтверждает знание PMK. 4-этапное рукопожатие имеет решающее значение для защиты PMK от вредоносных точек доступа — например, SSID злоумышленника, имитирующего реальную точку доступа, — так что клиент никогда не должен сообщать точке доступа свой PMK.
PMK разработан, чтобы продлиться весь сеанс и должен быть выставлен как можно меньше; следовательно, ключи для шифрования трафика должны быть получены. 4-этапное рукопожатие используется для установления другого ключа, называемого парным переходным ключом (PTK). PTK генерируется путем объединения следующих атрибутов: PMK, одноразовый номер AP (ANonce), одноразовый номер STA (SNonce), MAC-адрес AP и MAC-адрес STA. Затем произведение проводится через псевдослучайную функцию. Рукопожатие также дает GTK (групповой временный ключ Group Temporal Key), используемый для расшифровки многоадресного и широковещательного трафика.
Фактические сообщения, которыми обмениваются во время рукопожатия, изображены на рисунке и объяснены ниже (все сообщения отправляются в виде кадров EAPOL-Key):
- AP отправляет временное значение nonce-value (ANonce) в STA вместе со счетчиком воспроизведения ключей, который является числом, используемым для сопоставления каждой паре отправленных сообщений и отбрасывания повторных сообщений. STA теперь имеет все атрибуты для создания PTK.
- STA отправляет свое собственное временное значение (SNonce) на AP вместе с кодом целостности сообщения (MIC), включая аутентификацию, которая на самом деле является кодом аутентификации целостности сообщения (MAIC), и счетчиком воспроизведения ключа, который будет таким же, как Сообщение 1, чтобы позволить AP соответствовать правильному Сообщению 1.
- AP проверяет Сообщение 2, проверяя MIC, RSN, ANonce и поле счетчика воспроизведения ключей, и, если оно является действительным, создает и отправляет GTK с другим MIC.
- STA проверяет Сообщение 3, проверяя MIC и поле счетчика воспроизведения ключей, и, если оно действительно, отправляет подтверждение AP.
Парный переходный ключ (64 байта) разделен на пять отдельных ключей:
- 16 байтов ключа подтверждения ключа EAPOL (KCK) — используется для вычисления MIC в сообщении ключа WPA EAPOL
- 16 байтов ключа шифрования EAPOL-ключа (KEK) — AP использует этот ключ для шифрования дополнительных данных, отправляемых (в поле «Key Data») клиенту (например, IE RSN или GTK)
- 16 байтов временного ключа (TK) — используется для шифрования / дешифрования одноадресных пакетов данных
- 8-байтовый ключ аутентификации MIC-аутентификатора Michael MIC — используется для вычисления MIC на пакетах одноадресных данных, передаваемых AP
- 8-байтовый ключ Rx аутентификатора MIC Михаэля — используется для вычисления MIC на пакетах одноадресных данных, передаваемых станцией
Временной ключ группы (32 байта) разделен на три отдельных ключа:
- 16-байтовый ключ группового временного шифрования — используется для шифрования / дешифрования многоадресных и широковещательных пакетов данных.
- 8-ми байтовый ключ аутентификации Michael MIC Authenticator — используется для вычисления MIC на многоадресных и широковещательных пакетах, передаваемых AP
- 8 байтов ключа MIC аутентификатора MIC Authenticator — в настоящее время не используется, поскольку станции не отправляют многоадресный трафик
Ключи Tx / Rx аутентификатора Michael MIC в PTK и GTK используются только в том случае, если сеть использует TKIP для шифрования данных.
Было доказано, что это 4-этапное рукопожатие уязвимо для KRACK.
Групповое рукопожатие
[править | править код]Групповой временный ключ (GTK), используемый в сети, может нуждаться в обновлении из-за истечения предварительно установленного таймера. Когда устройство покидает сеть, GTK также необходимо обновить. Это сделано для того, чтобы устройство не получало больше многоадресных или широковещательных сообщений от точки доступа.
Для обработки обновления 802.11i определяет рукопожатие группового ключа, которое состоит из 2-этапного рукопожатия:
- AP отправляет новый GTK каждой STA в сети. GTK шифруется с использованием KEK, назначенного этой STA, и защищает данные от подделки с помощью MIC.
- STA подтверждает новый GTK и отвечает на AP.
Обзор CCMP
[править | править код]CCMP основан на CCM алгоритма шифрования AES. CCM объединяет CTR для конфиденциальности и CBC-MAC для аутентификации и целостности. CCM защищает целостность как поля данных MPDU, так и выбранных частей заголовка MPDU IEEE 802.11.
Ключевые Иерархии
[править | править код]RSNA определяет две ключевые иерархии:
- Парная иерархия ключей для защиты одноадресного трафика.
- GTK, иерархия, состоящая из одного ключа для защиты многоадресного и широковещательного трафика.
Описание ключевых иерархий использует следующие две функции:
- L (Str, F, L) — Из Str, начиная слева, извлечь биты F через F + L — 1.
- PRF-n — псевдослучайная функция, генерирующая n битов вывода. Существует 128, 192, 256, 384 и 512 версий, каждая из которых выдает это количество битов.
Иерархия парных ключей использует PRF-384 или PRF-512 для получения специфичных для сеанса ключей из PMK, генерирующих PTK, который разбивается на KCK и KEK, а также все временные ключи, используемые MAC для защиты одноадресной передачи.
GTK должен быть случайным числом, которое также генерируется с использованием PRF-n, обычно PRF-128 или PRF-256. В этой модели иерархия ключей группы принимает GMK (главный ключ группы) и генерирует GTK.
Форматы кадров MAC
[править | править код]Поле управления кадром
[править | править код]Подполе | Версия протокола | Тип | Подтип | к DS | от DS | Больше фрагментов | Повторить попытку | Управление питанием | Больше данных | Защищенный кадр | Порядок |
Биты | 2 бита | 2 бита | 4 бита | 1 бит | 1 бит | 1 бит | 1 бит | 1 бит | 1 бит | 1 бит | 1 бит |
Поле защищённого кадра
[править | править код]Поле защищенного кадра имеет длину 1 бит. Поле «Защищенный кадр» имеет значение 1, если «основное поле кадра» содержит информацию, обработанную алгоритмом криптографической инкапсуляции. Поле «Защищенный кадр» устанавливается равным 1 только в кадрах данных типа «Данные» и в кадрах управления типа «Управление» и подтипа «Аутентификация». Во всех остальных кадрах поле «Защищенный кадр» имеет значение 0. Когда битовое поле «Защищенный кадр» имеет 1 в кадре данных, основное поле кадра защищается с использованием криптографической инкапсуляции. алгоритм и расширен, как определено в разделе 8. Только WEP разрешен в качестве алгоритма криптографической инкапсуляции для кадров управления подтипа «Аутентификация»[7].
См. также
[править | править код]- WAPI[англ.], метод централизованной беспроводной безопасности Китая
- IEEE 802.1AE, MACsec
Примечания
[править | править код]- ↑ "IEEE 802.11i-2004: Amendment 6: Medium Access Control (MAC) Security Enhancements" (pdf). en:IEEE Standards (23 июля 2004). Дата обращения: 21 декабря 2007. Архивировано 29 ноября 2007 года.
- ↑ IEEE 802.11i-2004: Amendment 6: Medium Access Control (MAC) Security Enhancements (pdf), en:IEEE Standards, 2004-07-23, p. 14, Архивировано (PDF) 29 ноября 2007, Дата обращения: 9 апреля 2010 Источник . Дата обращения: 18 января 2019. Архивировано 29 ноября 2007 года.
- ↑ IEEE 802.11i-2004: Amendment 6: Medium Access Control (MAC) Security Enhancements (pdf), en:IEEE Standards, 2004-07-23, p. 14, Архивировано (PDF) 29 ноября 2007, Дата обращения: 9 апреля 2010,
RSNA relies on IEEE 802.1X to provide authentication services and uses the IEEE 802.11 key management scheme
Источник . Дата обращения: 18 января 2019. Архивировано 29 ноября 2007 года. - ↑ IEEE 802.11i-2004: Amendment 6: Medium Access Control (MAC) Security Enhancements (pdf), en:IEEE Standards, 2004-07-23, p. 5, Архивировано (PDF) 29 ноября 2007, Дата обращения: 9 апреля 2010 Источник . Дата обращения: 18 января 2019. Архивировано 29 ноября 2007 года.
- ↑ IEEE 802.11i-2004: Amendment 6: Medium Access Control (MAC) Security Enhancements (pdf), en:IEEE Standards, 2004-07-23, p. 43, Архивировано (PDF) 29 ноября 2007, Дата обращения: 9 апреля 2010 Источник . Дата обращения: 18 января 2019. Архивировано 29 ноября 2007 года.
- ↑ "Section of MAC frame formats" . Дата обращения: 18 января 2019. Архивировано из оригинала 27 апреля 2018 года.
- ↑ "IEEE 802.11i-2004 Standard Amendment 6: Medium Access Control (MAC) Security Enhancements" . Архивировано 27 апреля 2018 года.
Ссылки
[править | править код]- "IEEE 802.11-2007: Спецификации управления доступом к беспроводной локальной сети (MAC) и физического уровня (PHY)" . IEEE (8 марта 2007).
- "Эволюция беспроводной безопасности 802.11 (PDF)" . ITFFROC (18 апреля 2010). Дата обращения: 18 января 2019. Архивировано из оригинала 2 марта 2016 года.
- Уязвимость в протоколе WPA2, дыра196 [1], [2]