Требование проводить аутентификацию, ориентированную на пользователя, имеет положительный побочный эффект: наличие отдельных ключей шифрования для каждого пользователя. Разновидности аутентификации, которые поддерживают создание динамических ключей шифрования, хорошо подходят для улучшения защиты беспроводных LAN и модели управления ими. Динамические ключи, индивидуальные для каждого пользователя, освобождают администратора сети от необходимости использования статически управляемых ключей. Ключи шифрования динамически назначаются и аннулируются, когда пользователь проходит процедуру аутентификации или выходит из сети. Для того чтобы удалить какого-либо пользователя из сети, достаточно аннулировать его учетную запись, и он потеряет возможность доступа к сети.
Взаимная аутентификация — это аутентификация двухсторонняя. Ее "двухсторонняя" природа обусловлена тем, что не только сеть аутентифицирует клиента, но и клиент аутентифицирует сеть. При открытой аутентификации и аутентификации с совместно используемым ключом точка доступа или сеть аутентифицирует клиента. Последний не знает наверняка, что подключился именно к той сети, к какой нужно, поскольку в стандарте 802.11 не предусмотрен механизм, позволяющий клиенту аутентифицировать сеть. В результате принадлежащая злоумышленнику точка доступа или клиентская станция может выдать себя за "законную" точку доступа и повредить данные на клиентской машине. На рис. 15 представлены диаграммы, иллюстрирующие процессы односторонней и взаимной аутентификации.
Рис. 15. Односторонняя и взаимная аутентификация
Поставщики сетей стандарта 802.11 и IEEE осознают необходимость усиления и замены существующих механизмов обеспечения защиты — и аутентификации, и шифрования. Исследовательская группа I рабочей группы стандарта 802.11 сейчас работает над этим, и после того как изменения будут полностью подготовлены, спецификации по защите будут утверждены как спецификации стандарта 802.11i.
IEEЕ начал борьбу с дефектами механизма аутентификации стандарта 802.11 с принятия базовой аутентификации, соответствующей стандарту 802.1X. Стандарт 802.1X представляет собой стандарт IEEE, который относится ко всем топологиям канального уровня серии стандартов 802 и позволяет наращивать его механизмы аутентификации до таковых, обычно реализуемых на более высоких уровнях. Стандарт 802.1X основан на принципах аутентификации, характерных для протокола типа "точка-точка" (Point-to-Point Protocol, PPP), и называется расширяемый протокол аутентификации (Extensible Authentication Protocol, EAP). Попросту говоря, стандарт 802.1X инкапсулирует сообщения для использования их на уровне 2. Стандарт 802.11i включает базовую аутентификацию стандарта 802.1X, требуя, чтобы она применялась для аутентификации пользователей. На рис. 16 представлен стандарт 802.1X в части алгоритма аутентификации и топологий канального уровня серии стандартов 802.
Рис. 16. Стандарт 802.1X и топологии канального уровня
Протокол ЕАР (RFC 2284) и стандарт 802.1X не регламентируют использование особого алгоритма аутентификации. Администратор сети может применять соответствующую протоколу ЕАР разновидность аутентификации — или 802.1X, или ЕАР. Единственное требование — чтобы как клиент стандарта 802.11 (здесь он называется просителем (supplicant)), так и сервер аутентификации поддерживали алгоритм ЕАР-аутентификации. Такая открытая и расширяемая архитектура позволяет использовать базовую аутентификацию в различных условиях, и в каждой ситуации можно применять подходящую разновидность аутентификации.
Ниже приведены примеры типов ЕАР-аутентификации.
· ЕАР защиты транспортного уровня (EAP-transport layer security, EAP-PEAP). Работает аналогично протоколу защищенных
сокетов (secure sockets layer, SSL).
Взаимная аутентификация выполняется с использованием цифровых сертификатов на стороне сервера для
создания SSL-туннеля для клиента, осуществляющего защищенную аутентификацию
в сети.
- EAP-Message Digest 5 (EAP-MD5). Аналогично протоколу аутентификации с предварительным согласованием вызова (challenge handshake authentication protocol, CHAP), EAP-MD5 обеспечивает работу алгоритма односторонней аутентификации с использованием пароля.
- EAP-Cisco. ЕАР-аутентификация типа EAP-Cisco, которую называют также LEAP, была первой, определенной для применения специально в беспроводных LAN. EAP-Cisco — это алгоритм взаимной аутентификации с использованием пароля.
Аутентификация по стандарту 802.1X требует наличия трех составляющих.
- Проситель. Размещается на стороне клиента беспроводной LAN.
- Аутентификатор (authenticator). Размещается в точке доступа.
- Сервер аутентификации. Размещается на сервере RADIUS.
Эти составляющие представляют собой программные компоненты, устанавливаемые на устройствах сети. С точки зрения стандарта 802.11 аутентификатор создает логический порт для устройства клиента, основанный на идентификаторе ассоциации (AID). Этот логический порт имеет два тракта прохождения данных: неконтролируемый и контролируемый. Неконтролируемый тракт прохождения данных позволяет проходить через сеть всему трафику аутентификации стандарта 802.1X. Контролируемый тракт прохождения данных блокирует обычный трафик сети до тех пор, пока не будет осуществлена успешная аутентификация клиента. На рис. 17 показаны логические порты аутентификатора стандарта 802.1X
Рис. 17. Логические порты аутентификатора стандарта 802. 1X
Вторая составляющая: алгоритм аутентификации
Стандарт 802.11i и WPA обеспечивают механизм, поддерживающий работу алгоритма аутентификации с целью обеспечения связи между клиентом, точкой доступа и сервером аутентификации с использованием механизма базовой аутентификации стандарта 802.1X.
Ни стандарт 802.11i, ни WPA не регламентируют применение особого алгоритма аутентификации, но оба рекомендуют использовать алгоритм, который поддерживал бы взаимную аутентификацию, генерацию динамических ключей шифрования и аутентификацию пользователя. Примером такого алгоритма является алгоритм EAP-Cisco. Этот алгоритм, более известный как Cisco LEAP, представляет собой простой и эффективный алгоритм, разработанный специально для использования в беспроводных LAN.
Алгоритм EAP-Cisco является патентованным алгоритмом, который работает поверх алгоритма базовой открытой аутентификации. По этой причине детали алгоритма EAP-Cisco, касающиеся содержимого генерируемых вызова и ответа на вызов, а также распределения ключей шифрования, не могут быть разглашены. Алгоритм EAP-Cisco перевыполняет требования, предъявляемые к защищенной аутентификации пользователя в беспроводной LAN, за счет применения следующих мер.
· Аутентификация, ориентированная на пользователя.
· Взаимная аутентификация.
· Динамические ключи шифрования.
Если какому-либо пользователю нужно запретить доступ к сети, достаточно удалить его учетную запись на централизованном сервере аутентификации. В результате пользователь не сможет успешно пройти процесс аутентификации, а его устройство — сгенерировать правильный динамический ключ шифрования.
Третья составляющая: алгоритм защиты данных
Уязвимость шифрования в WEP поставила производителей сетей стандарта 802.11 и исследователей IEEE в затруднительное положение. Как можно улучшить систему шифрования стандарта 802.11, не прибегая к замене всех точек доступа и сетевых карт клиентов?
IEEE ответил на этот вопрос, предложив являющийся частью стандарта 802.11i (и WPA) временный протокол целостности ключа (temporal key integrity protocol, TKIP).
Этот протокол использует многие основные функции WEP, чтобы оправдать инвестиции, сделанные клиентами в оборудование и инфраструктуру стандарта 802.11, но ликвидирует несколько слабых мест последнего, обеспечивая эффективное шифрование фреймов данных. Основные усовершенствования, внесенные протоколом TKIP, таковы.
· Пофреймовое изменение ключей шифрования. WEP-ключ быстро изменяется, и для каждого фрейма он другой.
· Контроль целостности сообщения (message integrity check, MIC). Обеспечивается эффективный контроль целостности фреймов данных с целью предотвращения проведения тайных манипуляций с фреймами и воспроизведения фреймов.
Атаки, использующие уязвимость слабых IV, основаны на накоплении нескольких фреймов данных, содержащих информацию, зашифрованную с использованием слабых IV. Простейшим способом сдерживания таких атак является изменение WEP-ключа, используемого при обмене фреймами между клиентом и точкой доступа, до того как атакующий успеет накопить фреймы в количестве, достаточном для вывода битов ключа.
IEEE адаптировала схему, известную как пофреймовое изменение ключа (per-frame keying). (Ее также называют изменение ключа для каждого пакета (per-packet keying) и частое изменение ключа пакета (fast packet keying).) Основной принцип, на котором основано пофреймовое изменение ключа, состоит в том, что IV, МАС-адрес передатчика и WEP-ключ обрабатываются вместе с помощью двухступенчатой функции перемешивания. Результат применения этой функции соответствует стандартному 104-разрядному WEP-ключу и 24-разрядному IV.
IEEE предложила также увеличить 24-разрядный вектор инициализации до 48-разрядного IV. В нижеследующих разделах объясняется, почему необходимо такое расширение IV. На рис. 18 представлен образец 48-разрядного IV и показано, как этот IV разбивается на части для использования при пофреймовом изменении ключа.
Рис. 18. Разбиение на части IV для использования при пофреймовом изменении ключа
Процесс пофреймового изменения ключа можно разбить на следующие этапы.
- Базовый WEP-ключ (полученный в процессе аутентификации по стандарту 802.1X) перемешивается со старшими 32 разрядами 48-разрядного IV (32-разрядные числа могут принимать значения 0-4 294 967 295) и МАС-адресом передатчика. Результат этого действия называется ключ 1-й фазы (phase 1 key). Этот процесс позволяет занести ключ 1-й фазы в кэш и также напрямую поместить в ключ (рис. 19).
- Ключ 1-й фазы снова перемешивается с IV и МАС-адресом передатчика (ТА) для выработки значения пофреймового ключа.
- Вектор инициализации (IV), используемый для передачи фрейма, имеет размер только 16 бит (16-разрядные числа могут принимать значения 0-65 535). Оставшиеся 8 бит представляют фиксированное значение, используемое как заполнитель.
4. Пофреймовый ключ используется для WEP-шифрования фрейма данных.
5. Когда 16-битовое пространство IV оказывается исчерпанным, ключ 1-й фазы отбрасывается и 32 старших разряда увеличиваются на 1. (Если значение IV первой фазы было равно 12, оно увеличивается до 13.)
6. Значение Пофреймового ключа вычисляется заново, как на этапе 2.
Рис. 19. Процесс Пофреймового изменения ключа
Пофреймово изменяемый ключ имеет силу только тогда, когда 16-разрядные значения IV не используются повторно. Если 16-разрядные значения IV используются дважды, происходит коллизия, в результате чего появляется возможность провести атаку и вывести ключевой поток. Чтобы избежать коллизий IV, значение ключа 1-й фазы вычисляется заново путем увеличения старших 32 разрядов IV на 1 и повторного вычисления пофреймового ключа.
Этот алгоритм усиливает WEP до такой степени, что почти все известные сейчас возможности атак устраняются без замены существующего оборудования. Следует отметить, что этот алгоритм (и TKIP в целом) разработан с целью залатать бреши в системе аутентификации WEP и стандарта 802.11. Он жертвует слабыми алгоритмами, вместо того чтобы заменять оборудование. Следующее поколение оборудования стандарта 802.11 должно поддерживать TKIP, но WEP/TKIP будет постепенно свертываться в пользу алгоритма с большими возможностями шифрования, такого как усовершенствованный стандарт шифрования (advanced encryption standard, AES).
Четвертая составляющая: целостность данных
В будущем для усиления малоэффективного механизма, основанного на использовании контрольного признака целостности (ICV) стандарта 802.11, будет применяться контроль целостности сообщения (MIC). Благодаря MIC могут быть ликвидированы слабые места защиты, способствующие проведению атак с использованием поддельных фреймов и жонглированием битами, рассмотренные ранее в. IEEE предложила специальный алгоритм, получивший название Michael (Майкл), чтобы усилить роль ICV в шифровании фреймов данных стандарта 802.11.
MIC имеет уникальный ключ, который отличается от ключа, используемого для шифрования фреймов данных. Этот уникальный ключ перемешивается с назначенным МАС-адресом и исходным МАС-адресом фрейма, а также со всей незашифрованной частью фрейма, несущей полезную нагрузку.
Меры противодействия MIC состоят в выполнении приемником следующих задач.
1. Приемник удаляет существующий ключ на ассоциирование.
2. Приемник регистрирует проблему как относящуюся к безопасности сети.
3.
Ассоциированный
клиент, от которого был получен ложный фрейм, не может быть
ассоциирован и
аутентифицирован в течение 60 секунд, чтобы замедлить атаку.
4. Если клиент получил ложный фрейм, то он отбрасывает все фреймы, не соответствующие стандарту 802.1X.
5. Такой клиент также запрашивает новый ключ.
Наше рассмотрение пофреймового назначения ключей и MIC касалось в основном ключа шифрования и ключа MIC. Но мы ничего не говорили о том, как ключи генерируются и пересылаются от клиента к точке доступа и наоборот. В следующем разделе мы и рассмотрим предлагаемый стандартом 802.11 механизм управления ключами.
Усовершенствованный механизм управления ключами
Алгоритмы аутентификации стандарта 802.11 и ЕАР могут обеспечить сервер RADIUS и клиента динамическими, ориентированными на пользователя ключами. Но тот ключ, который создается в процессе аутентификации, не является ключом, используемым для шифрования фреймов или проверки целостности сообщений. В стандарте 802.11i WPA для получения всех ключей используется так называемый мастер-ключ (master key). Клиент и точка доступа устанавливают динамический ключ (он называется парный мастер-ключ, или РМК, от англ. pairwise master key), полученный в процессе аутентификации по стандарту 802.1X. На основе этого ключа, а также МАС-адресов клиента и точки доступа генерируется парный переходный ключ (painvise transient key, PTK), на основе которого получают ключи для шифрования фреймов и проверки целостности сообщений.
Парный мастер-ключ (РМК) и парный переходный ключ (РТК) являются одноадресатными по своей природе. Они только шифруют и дешифруют одноадресатные фреймы, и предназначены для единственного пользователя. Широковещательные фреймы требуют отдельной иерархии ключей, потому что использование с этой целью одноадресатных ключей приведет к резкому возрастанию трафика сети. Точке доступа (единственному объекту BSS, имеющему право на рассылку широковещательных или многоадресатных сообщений) пришлось бы посылать один и тот же широковещательный или многоадресатный фрейм, зашифрованный соответствующими пофреймовыми ключами, каждому пользователю.
Широковещательные или многоадресатные фреймы используют иерархию групповых ключей. Групповой мастер-ключ (group master key, GMK) находится на вершине этой иерархии и выводится в точке доступа.
Групповой мастер-ключ, текстовая строка, МАС-адрес точки доступа и Gnonce (значение, которое берется из счетчика ключа точки доступа) объединяются и обрабатываются с помощью генератора ПСП, в результате чего получается 256-разрядный групповой переходный ключ (group transient key, GTK). GTK делится на 128-разрядный ключ шифрования широковещательных/многоадресатных фреймов, 64-разрядный ключ передачи MIC (transmit MIC key) и 64-разрядный ключ приема MIC (MIC receive key).
С помощью этих ключей широковещательные и многоадресатные фреймы шифруются и дешифруются точно так же, как с помощью одноадресатных ключей, полученных на основе парного мастер-ключа (РМК).
Групповые ключи удаляются и регенерируются каждый раз, когда какая-нибудь станция диассоциируется или деаутентнфицируется в BSS. Если происходит ошибка MIC, одной из мер противодействия также является удаление всех ключей с имеющей отношение к ошибке приемной станции, включая групповые ключи.
Шифрование по алгоритму AES
Известно, что шифрование и аутентификация, проводимые в соответствии со стандартом 802.11, имеют слабые стороны. IEEE и WPA усилили алгоритм WEP протоколом TKIP и предлагают сильный механизм аутентификации по стандарту 802.11i, обеспечивающий защиту беспроводных LAN стандарта 802.11. В то же время IEEE рассматривает возможность усиления механизма шифрования. С этой целью IEEE адаптировал алгоритм AES для применения его по отношению к разделу, касающемуся защищаемых данных предлагаемого стандарта 802.11i. Компоненты WPA не обеспечивают поддержку шифрования по алгоритму AES. Однако последние версии WPA, возможно, будут реализованы в соответствии со стандартом 802.11i и для обеспечения взаимодействия будут поддерживать шифрование по алгоритму AES.
Алгоритм AES представляет собой следующее поколение средств шифрования, одобренное Национальным институтом стандартов и технологий (NIST) США. IEEE разработал режим AES, предназначенный специально для применения в беспроводных LAN. Этот режим называется режим счета сцеплений блоков шифра (Cipher Block Chaining Counter Mode, CBC-CTR) с контролем аутентичности сообщений о сцеплениях блоков шифра (Cipher Block Chaining Message Authenticity Check, CBC-MAC), все вместе это обозначается аббревиатурой AES-CCM. Режим ССМ представляет собой комбинацию режима шифрования CBC-CTR и алгоритма контроля аутентичности сообщений СВС-МАС. Эти функции скомбинированы для обеспечения шифрования и проверки целостности сообщений в одном решении.
Алгоритм шифрования CBC-CTR работает с использованием счетчика для пополнения ключевого потока. Значение этого счетчика увеличивается на единицу после шифрования каждого блока. Такой процесс обеспечивает получение уникального ключевого потока для каждого блока. Фрейм с открытым текстом делится на 16-байтовые блоки. После шифрования каждого блока значение счетчика увеличивается на единицу, и так до тех пор, пока не будут зашифрованы все блоки. Для каждого нового фрейма счетчик переустанавливается.
Алгоритм шифрования СВС-МАС выполняется с использованием результата шифрования СВС по отношению ко всему фрейму, к адресу назначения, адресу источника и данным. Результирующий 128-разрядный выход усекается до 64 бит для использования в передаваемом фрейме.
СВС-МАС работает с известными криптографическими функциями, но имеет издержки, связанные с выполнением двух операций для шифрования и целостности сообщений. Этот процесс требует серьезных вычислительных затрат и значительно увеличивает "накладные расходы" шифрования.
Резюме
Алгоритмы аутентификации и шифрования, определенные в стандарте 802.11 разработки 1997 года, имеют множество недостатков. Система аутентификации, так же как алгоритм WEP-шифрования, могут быть взломаны за короткое время. Протокол TKIP обещает ликвидировать недостатки WEP-шифрования и системы аутентификации в краткосрочной перспективе, а стандарт 802.1X и AES предоставят долговременное решение проблемы безопасности беспроводных сетей.