- •Глава 24. Беспроводные сети группы стандартов 802.11
- •24.1. Архитектура сети стандарта 802.11
- •24.2. Подуровень mac стандартов сетей Wi-Fi
- •24.3. Физический уровень стандартов сетей Wi-Fi
- •24.3.1. Базовый стандарт 802.11
- •24.3.2. Стандарт 802.11b
- •24.3.3. Стандарт 802.11a
- •24.3.4. Стандарт 802.11g
- •24.3.5. Стандарт 802.11n
- •24.4. Mesh-сети стандарта 802.11s
- •24.5. Стандарты информационной безопасности сети Wi-Fi
- •23.5.1. Протокол безопасности wep
- •24.5.2. Протокол безопасности wpa
- •24.5.2.1. Аутентификация
- •24.5.2.2. Конфиденциальность и целостность данных
- •24.5.3. Протокол безопасности 802.11i
24.5.2. Протокол безопасности wpa
Стандарт WPA (Wi-Fi Protected Access) представляет собой подмножество спецификаций из принятого в 2004 году стандарта IEEE 802.11i. Весь же набор спецификаций стандарта IEEE 802.11i Wi-Fi Alliance называется WPA2. Спецификации WPA были призваны дать пользователям альтернативу для WEP и стали переходной ступенью между ним и новым стандартом IEEE 802.11i. Структуру WPA можно представить в виде формулы WPA = IEEE 802.1Х + ЕАР + TKIP + MIC, т. е. WPA является суммой нескольких элементов, рассмотренных ниже.
24.5.2.1. Аутентификация
Протоколы IEEE 802.1Х и ЕАР (Extensible Authentication Protocol, расширяемый протокол аутентификации) обеспечивают механизм аутентификации пользователей, которые должны предъявить мандат или свидетельство для доступа в сеть. В больших корпоративных сетях для аутентификации часто используют сервер RADIUS. Название сервера и одноименного протокола RADIUS складывается из первых букв слов — Remote Authentication Dial in User Service (услуга удаленной аутентификации вызывающего пользователя). В иерархии сети он находится выше точки доступа и содержит базу данных со списком пользователей, которым разрешен доступ к сети. В базе данных содержится необходимая для аутентификации законных пользователей информация.
Для аутентифицированного доступа в сеть Ethernet cтандарт 802.1Х определяет управление доступом, основанное на сетевых портах. Стандарт 802.1Х включает следующие понятия: аутентификатор (точка доступа), аутентифицирующийся (беспроводный клиент), сервер аутентификации (его функцию обычно выполняет RADIUS- сервер). В стандартах 802.1Х аутентификация пользователей выполняется по протоколу EAP (Extensible Authentication Protocol). Протокол 802.1Х позволяет клиенту вести диалог с сервером аутентификации и видеть результат, а протокол EAP описывает, как взаимодействует клиент и сервер аутентификации. Существует несколько протоколов EAP [94]. Одним из них является EAP-TLS (RFC 2716), основанный на протоколе транспортного уровня TLS (см. глава 13). EAP-TLS обеспечивает взаимную аутентификацию беспроводного клиента и сервера аутентификации, а также создает общие ключи беспроводного пользователя и точки доступа. Протокол EAP-TLS основан на сертификатах. Ниже приводится процесс аутентификации беспроводного пользователя Wi-Fi в режиме с точкой доступа [88]. На рис. 24.9 приведены компоненты аутентификации пользователя. Аутентификация основана на сертификатах (см. главы 13,17).
Точка доступа AP посылает запрос беспроводному пользователю запрос на установление соединения EAP-Request/Identity. Если же беспроводный пользователь начинает установление соединение с беспроводной точкой доступа, то, наоборот, он посылает сообщение EAP-Start. Беспроводная точка доступа в ответ передает сообщение EAP-Request/Identity.
Пользователь посылает в ответ сообщение EAP-Responce/Identity, содержащее имя компьютера. Точка доступа переправляет это сообщение RADIUS-серверу в виде сообщения RADIUS Account-Request.
Рис. 24.9. Компоненты аутентификации пользователя
Сервер RADIUS посылает сообщение RADIUS Access-Challenger, содержащее сообщение EAP-Request и указывающее тип EAP, что означает начало аутентификации. В данном примере этот тип EAP-TLS. Точка доступа переправляет сообщение беспроводному пользователю (в виде сообщения EAP-Request).
Беспроводный пользователь подтверждает начало аутентификации по протоколу TLS, посылая сообщение EAP-Response с типом EAP-TLS. Точка доступа переправляет это сообщение EAP RADIUS-серверу (в виде сообщения RADIUS Access-Request).
Сервер RADIUS посылает сообщение RADIUS Access-Challenger, содержащее сертификат (цепочку сертификатов, см. Приложение Г) сервера RADIUS. Точка доступа переправляет это сообщение беспроводному пользователю (в виде сообщения EAP-Request).
Беспроводный пользователь посылает сообщение EAP-Response с типом EAP-TLS, содержащее свой сертификат (цепочку сертификатов). Точка доступа переправляет это сообщение серверу RADIUS.
Сервер RADIUS посылает сообщение о завершении обмена аутентифицирующими сообщениями по протоколу TLS. Точка доступа переправляет это сообщение беспроводному пользователю.
Беспроводный пользователь посылает сообщение подтверждения приема, которое транслируется в RADIUS-сервер.
RADIUS-сервер, исходя из данных на предыдущих этапах, вычисляет сессионный ключ для данного пользователя и ключ для обеспечения целостности сообщений. Затем он посылает беспроводной точке доступа сообщение об аутентификации пользователя (RADIUS Access-Accept), содержащее сообщение EAP-Success и зашифрованные эти ключи. В сообщении EAP-Success об успешном приеме ключей отсутствуют ключ для шифрования данных и ключ для обеспечения целостности данных. После получения от точки доступа сообщения EAP-Success пользователь, исходя из данных на предыдущих этапах, вычисляет сессионный ключ для данного пользователя и ключ для обеспечения целостности сообщений. Следовательно, и пользователь, и беспроводная точка доступа имеют одинаковые ключи для шифрования и обеспечения целостности данных.
Беспроводная точка доступа посылает пользователю сообщение EAPOL (EAP over LAN)-KEY, содержащее широковещательный/глобальный ключ, зашифрованный сессионным ключом пользователя по протоколу RC4. Отдельные части сообщения EAPOL подписываются с помощью протокола (не использующего шифрование [10]) НМАС посредством ключа пользователя, обеспечивающего целостность. После приема сообщения EAPOL-KEY пользователь проверяет его целостность и расшифровывает широковещательный/глобальный ключ.
Приведенный сценарий аутентификации с сервером аутентификации для домашней сети и маленьких фирм не используется. Здесь отсутствует сервер аутентификации. Вместо него есть общий пароль, который используется для доступа в сеть. При этом для каждого клиента создается свой ключ, но у них одинаковый пароль, что позволяет узнать ключи друг друга. При использовании сервера аутентификации каждый клиент получает при успешной аутентификации, который неизвестен другим клиентам. Этот ключ используется для шифрования данных.
