Если взглянуть на 802.11 с точки зрения безопасности, то этот широко используемый ныне стандарт, разработанный организацией IEEE для беспроводных сетей, что называется, состоит сплошь из уязвимых мест. Данный стандарт не обеспечивает аутентификации пользователей, взаимной проверки полномочий между беспроводными устройствами и узлами доступа (Access Point, AP) и предусматривает использование имеющего очевидные недостатки протокола шифрования. Этот протокол шифрования допускает модификацию определенных битов таким образом, что получатель не замечает подмены, а различные компоненты шифрования (ключ и векторы инициализации) не обеспечивают для процесса шифрования достаточной рандомизации. Хакеры могут бесплатно загрузить из Internet целый ряд специальных программ, которые позволят им без труда читать передаваемые по беспроводной сети шифрованные сообщения.
Чтобы усовершенствовать данный стандарт и ликвидировать бреши в существующих беспроводных сетях, в рамках организации IEEE была создана рабочая группа 802.11i Task Group.
В целях устранения названных недостатков группа разработала новую инфраструктуру аутентификации, включающую в себя несколько компонентов. Во-первых, это расширяемый протокол аутентификации EAP (Extensible Authentication Protocol) и стандарт 802.11x, которые обеспечивают проверку прав пользователей и взаимную аутентификацию. Во-вторых, была создана программа проверки целостности кода Message Integrity Code (MIC), выявляющая модификации битов в ходе передачи. В-третьих, разработан протокол Temporal Key Integrity Protocol (TKIP), который генерирует случайные числа для процесса шифрования, что значительно усложняет задачу хакера. Для обеспечения еще более высокой стойкости шифра стандарт 802.11i также предусматривает использование в новых беспроводных сетях стандарта шифрования AES (Advances Encryption Standard).
Разработка стандарта 802.11i будет полностью завершена в октябре 2003 г. Организация Wi-Fi Alliance объявила о начале сертификации продуктов, построенных на базе основных компонентов стандарта 802.11i; совокупность этих компонентов специалисты Wi-Fi Alliance именуют Wireless Protected Access (WPA). В предлагаемой статье будут рассмотрены реализованные в стандарте 802.11i процессы шифрования, а затем я расскажу о том, каким образом отдельные компоненты стандарта обеспечивают гораздо более высокий уровень защиты, нежели Wired Equivalent Privacy (WEP) — протокол, включенный в первоначальный вариант стандарта 802.11.
Преодоление недостатков WEP
Существует много видов атак, обеспечивающих взлом беспроводных устройств и сетей, совместимых со стандартом 802.11. Хакеры могут с легкостью анализировать беспроводной трафик, без ведома получателя модифицировать данные в ходе передачи, создавать ложные узлы доступа (пользователи могут предъявлять им свои учетные данные и вступать с ними во взаимодействие, не подозревая о том, что имеют дело с инструментами взлома), а также быстро и легко расшифровывать беспроводной трафик. Таким образом злоумышленникам удается получить доступ к базовой проводной сети, что дает им возможность предпринимать еще более разрушительные атаки.
Некоторые поставщики компонентов для беспроводных сетей разработали собственные приемы и технологии обеспечения безопасности, призванные устранить недостатки стандарта 802.11, но почти все эти попытки вдохнуть новую жизнь в плохо спроектированную и неудачно реализованную технологию подобны стараниям остановить сильное кровотечение наложением все новых повязок. К тому же многие поставщики предлагают нестандартные решения, поэтому клиентам сплошь и рядом приходится сталкиваться с проблемами несовместимости.
Рисунок 1. Средства обеспечения безопасности с обратной совместимостью |
Чтобы обеспечить более высокий уровень безопасности и защиты, чем может поддерживать протокол WEP, создатели нового стандарта беспроводной связи 802.11i вели работу по двум направлениям. Первое направление (см. рис. 1) — реализация уже упоминавшегося протокола TKIP, обладающая обратной совместимостью со многими компонентами беспроводных сетей и сетями, развернутыми в самых разных точках земного шара. Взаимодействие протоколов TKIP и WEP сводится к тому, что первый предоставляет второму материал для ключей, т. е. данные, на базе которых генерируются новые динамические ключи. Алгоритм шифрования RC4, реализованный сегодня в протоколе WEP, обеспечивает лишь слабую защиту. TKIP вносит в процесс генерации ключей дополнительный элемент сложности, затрудняя задачу хакеров, стремящихся заполучить ключи шифрования. Рабочая группа IEEE остановила свой выбор на протоколе TKIP потому, что для реализации описанного механизма защиты клиентам не нужно закупать новое оборудование; достаточно получить связующее программное обеспечение или обновленные версии программ.
Рисунок 2. Средства обеспечения безопасности для новых беспроводных сетей |
Второе направление, показанное на рис. 2, — это использование алгоритма шифрования AES в сочетании с кодом Cipher Block Chaining Message Authentication Code (CBC-MAC). Данная комбинация известна также под названием протокола CCM (CCMP). Алгоритм AES гораздо мощнее, чем RC4, но он требует большей вычислительной мощности. AES не обладает обратной совместимостью с эксплуатируемыми ныне компонентами беспроводных сетей, так что данную конфигурацию смогут реализовать лишь те, кто пока не использует беспроводные сети.
Алгоритмы, технологии и протоколы, составляющие новый стандарт беспроводной связи, отличаются высокой сложностью. Администраторы непременно должны хорошо разбираться во всех компонентах этого стандарта и понимать механизм их взаимодействия, направленного на обеспечение более высокой степени защиты будущих беспроводных сетей. Более подробные сведения о том, как новый стандарт преодолевает недостатки протокола WEP, содержатся во врезке «Как стандарт 802.11i преодолевает основные недостатки протокола WEP».
802.1x
Стандарт 802.11i включает в себя три основных компонента, размещенные на двух уровнях. Нижний уровень содержит усовершенствованные алгоритмы шифрования (т. е. TKIP и CCMP). Верхний уровень содержит стандарт 802.1x. Последний представляет собой механизм управления доступом к сети на базе портов, задача которого — не допустить установления пользователем полного соединения с сетью, т. е. получения доступа к ресурсам сети и возможности передавать в сеть с беспроводного устройства какую-либо информацию, кроме учетных данных, до завершения установленной процедуры аутентификации. Стандарт 802.1x — это как цепочка на входной двери. Цепочка дает нам возможность посмотреть, кто стоит за дверью, перед тем как впускать человека в дом. Стандарт 802.1x позволяет нам идентифицировать пользователей перед тем, как мы впустим их в нашу сеть.
С помощью стандарта 802.1x можно выполнять проверку полномочий пользователей, тогда как WEP позволяет осуществлять лишь аутентификацию систем. Аутентификация пользователей обеспечивает более высокую степень защиты, нежели аутентификация систем. Стандарт 802.1x предусматривает инфраструктуру аутентификации и метод динамического распределения ключей шифрования. Три основных компонента этой структуры — соискатель (беспроводное устройство), аутентификатор (узел доступа) и сервер аутентификации (обычно это сервер Remote Authentication Dial-In User Service server, или RADIUS) — см. рис. 3. Если в сети нет сервера аутентификации, роли аутентификатора и сервера аутентификации может выполнять узел доступа. Осуществляя передачу кадров между беспроводным устройством и сервером аутентификации, узел доступа обычно выступает в роли посредника; это разумный подход, поскольку он не предполагает значительной вычислительной нагрузки на узел доступа.
До успешного завершения всех этапов процедуры аутентификации узел доступа позволяет беспроводному устройству взаимодействовать лишь с сервером аутентификации. Так, беспроводное устройство не имеет полномочий на передачу или прием сообщений в форматах HTTP, DHCP, SMTP или иных типов трафика до тех пор, пока сервер аутентификации в соответствии с установленным порядком не предоставит пользователю полномочия на совершение таких действий. Протокол WEP не предусматривает столь жестких мер по обеспечению контроля доступа.
Еще один недостаток первоначального стандарта 802.11, поставивший под сомнение его дальнейшие перспективы, — это отсутствие средств взаимной аутентификации. Беспроводное устройство, использующее лишь протокол WEP, может предъявить свои учетные данные узлу доступа, но ни узлу доступа, ни серверу аутентификации не нужно подтверждать свою идентичность беспроводному устройству. Поэтому хакер может создать ложный узел доступа и перехватывать учетные данные пользователей и их трафик, что называется, под самым их носом. Стандарт 802.11i предусматривает решение этой проблемы с помощью протокола EAP. Данный протокол позволяет серверу аутентификации и беспроводному устройству выполнять процедуру взаимной аутентификации и дает возможность применять в процессе проверки прав пользователей целый набор средств — паролей (включая одноразовые пароли), маркеров, сертификатов, смарт-карт или протокола Kerberos. Такое разнообразие достигается за счет того, что 802.11i-совместимые беспроводные устройства и серверы аутентификации наделяются различными модулями аутентификации, которые «встраиваются» в стандарт 802.1x. Таким образом, стандарт 802.1x представляет собой среду, из которой сетевой администратор может добавлять различные EAP-модули. В ходе первоначального обмена подтверждающими сообщениями два объекта приходят к соглашению относительно метода аутентификации. Поэтому аутентификация беспроводных пользователей может осуществляться в рамках применяемой технологии аутентификации имеющейся инфраструктуры.
Стандарт 802.11i регулирует процессы, протекающие только на уровне канала передачи данных по модели OSI. Протоколы аутентификации размещаются на более высоком уровне, поэтому в стандарте 802.11i конкретные протоколы аутентификации не указаны; однако использование протокола EAP позволяет поставщикам применять различные протоколы. Так, в изделиях компании Cisco Systems используется среда аутентификации Lightweight Extensible Authentication Protocol (LEAP), основанная исключительно на применении паролей. Другие поставщики, в том числе корпорация Microsoft, задействуют протокол EAP и EAP-Transport Layer Security (EAP-TLS), который осуществляет аутентификацию с помощью цифровых сертификатов. Еще одно средство аутентификации — Protected EAP (PEAP) — предусматривает использование цифровых сертификатов только сервером. На рис. 4 показано несколько методов аутентификации, применяемых в соответствии со стандартом 802.11i.
При использовании метода EAP-TLS сервер аутентификации и беспроводное устройство обмениваются сертификатами для выполнения процедуры проверки прав доступа. Если применяется протокол PEAP, пользователь беспроводного устройства направляет серверу пароль и сервер удостоверяет полномочия беспроводного устройства с помощью цифрового сертификата. В обоих случаях выполнение процедуры аутентификации возможно лишь при наличии инфраструктуры открытых ключей (Public Key Infrastructure, PKI). Если же PKI в компании не реализована, обеспечить безопасность передаваемых по беспроводной сети данных будет очень сложно.
Процедура, выполняемая сервером для подтверждения беспроводному устройству своих полномочий, в сущности, мало чем отличается от процедуры установления соединения с защитой на уровне сокетов (Secure Sockets Layer, SSL) между Web-сервером и Web-браузером. Получив и проверив правильность цифрового сертификата сервера, беспроводное устройство создает главный ключ, зашифровывает его с помощью открытого ключа сервера и направляет серверу аутентификации. Теперь беспроводное устройство и сервер аутентификации располагают главным ключом, который они используют для генерации индивидуальных симметричных ключей сеанса связи. Оба объекта применяют эти ключи сеанса связи для целей шифрования и дешифрации; использование этих ключей и создает защищенный канал связи между двумя устройствами.
Установка и обслуживание цифровых сертификатов на каждом беспроводном устройстве — дело хлопотное, поэтому некоторые компании, возможно, отдадут предпочтение не EAP-TLS, а протоколу PEAP. Перед тем как приобретать компонент для беспроводной сети, следует четко уяснить как требования со стороны каждого метода аутентификации, так и связанные с этим методом сложности. Необходимо заранее выяснить, к чему следует готовиться в случае приобретения того или иного изделия, а также понять, вписывается ли предполагаемая покупка в имеющуюся среду.
Как уже отмечалось выше, разработчики Cisco избрали иной подход к решению проблемы аутентификации; в изделиях компании реализован протокол LEAP, предполагающий использование паролей. При этом необходимость в организации PKI отпадает, а беспроводное устройство и сервер проверяют полномочия друг друга путем обмена заранее установленными паролями.
В контексте проблем безопасности современных беспроводных сетей некоторое беспокойство вызывает тот факт, что в случае кражи беспроводных устройств злоумышленники могут легко получить доступ к проводной сети. Беспроводное устройство, использующее исключительно протокол WEP, удостоверяет свои полномочия предъявлением симметричного ключа, который администратор вручную ввел в его программу. Поскольку пользователю для аутентификации не нужно задействовать WEP, с помощью украденного беспроводного устройства хакер может без труда получить доступ к ценным сетевым ресурсам. Стандарт 802.11i предусматривает дополнительные меры защиты: если прежде было достаточно того, что процедуру аутентификации проходит беспроводное устройство, то в соответствии с новой спецификацией пользователь должен будет подтвердить свои полномочия в сети. С помощью протокола EAP ему нужно будет передать на узел доступа некоторый набор учетных данных, ассоциированных с его индивидуальным именем.
До сих пор пользователям, которым требовалась более надежная защита, чем та, что предусмотрена первоначальным стандартом 802.11, приходилось устанавливать брандмауэр между узлом доступа и проводной сетью. Кроме того, существовала возможность использования еще одного, более надежного уровня шифрования с помощью программных средств для создания виртуальных частных сетей. Наконец, как я уже отмечал ранее, поставщики предлагали свои решения проблем безопасности. С появлением стандарта 802.11i нам уже не придется один за другим накладывать на эту беспроводную технологию слои защитных повязок — технология сама позаботится о своей безопасности.
Но позволит ли применение стандарта 802.1x, протокола EAP, алгоритма AES и инфраструктуры TKIP обеспечить защищенность и высокую надежность беспроводных сетей? Может быть, и так, однако нам следует принять во внимание ряд обстоятельств. Во-первых, протокол TKIP был создан специалистами рабочей группы IEEE 802.11i Working Group в качестве временного средства решения сложнейших проблем, присущих механизму WEP. Реализация этого протокола не равнозначна «капитальному ремонту» стандарта беспроводной связи, поскольку и WEP, и TKIP по-прежнему базируются на алгоритме RC4, который далеко не лучшим образом вписывается в технологию данного типа. Введение алгоритма AES больше похоже на «капитальный ремонт», но AES не имеет обратной совместимости с эксплуатируемыми ныне сетями стандарта 802.11. Во-вторых, применение всех этих новых компонентов и использование их в сочетании с эксплуатируемыми ныне компонентами стандарта 802.11 усложняет процесс и привносит в него новые этапы. А ведь такие понятия, как безопасность и сложность, обычно сочетаются плохо. Высокий уровень защиты, как правило, достигается с помощью простых и изящных решений. Конечно, новые технологии обеспечивают поставщикам больше свободы в том, что касается вариантов проверки полномочий пользователей и серверов аутентификации, но, с другой стороны, возникают проблемы совместимости. Если некая фирма приобретает узел доступа у компании A, а беспроводные платы — у компаний B и C, вполне возможно, что система будет функционировать небезупречно.
Так что же, выходит, что вся эта суета вокруг стандарта 802.11i — пустая трата времени? Конечно же, нет. Рабочую группу составляют опытные специалисты, и надо сказать, что помощь в разработке новых решений им оказывают несколько крупных компаний. В результате проведенных работ стандарт 802.11i обеспечивает гораздо более высокий уровень защиты и безопасности, чем протокол WEP. Однако клиенты, приобретающие эти изделия, должны знать, что им предстоит делать дальше. Скажем, если предполагается использовать EAP-TLS, потребуется вводить цифровой сертификат в каждое беспроводное устройство. Но запрограммированы ли эксплуатируемые в организации беспроводные устройства таким образом, чтобы обрабатывать сертификаты? Как будет организовано обслуживание сертификатов? Будут ли устройства и сервер аутентификации периодически сверяться со списком отозванных сертификатов (Certificate Revocation List, CRL), проверяя, не аннулировал ли центр сертификатов Certificate Authority (CA) тот или иной сертификат? Представим себе такую ситуацию: с помощью действующего цифрового сертификата хакеры создают ложный сервер аутентификации или узел доступа. В этом случае беспроводное устройство просто подтверждает подлинность сертификата и приходит к заключению, что данный сервер и есть тот объект, с которым оно должно взаимодействовать. Если центр сертификатов не вызывает доверия, тень сомнения падает на всю инфраструктуру EAP-TLS — как и должно быть в любой среде PKI.
Первоначальный стандарт 802.11 не раз подвергался резкой критике в печати и так привлек к себе внимание, что не может быть никаких сомнений: в процессе работы над новой версией участники рабочей группы приложили максимум усилий, дабы не упустить ничего существенного. Но ясно и другое: об успехе можно будет говорить лишь после неизбежных в таких случаях испытаний и проверки изделий в реальных условиях эксплуатации. Конечно, внедрение нового стандарта будет означать еще один шаг на пути к обеспечению большей безопасности, однако, в то время как поставщики будут разрабатывать и представлять новые решения, мы должны помнить о двух обстоятельствах. Во-первых, для того чтобы обеспечить тот уровень безопасности, который обещает новый стандарт, поставщики должны надлежащим образом интерпретировать его требования и четко следовать им. А во-вторых, потребители должны понимать, что именно они покупают и реализуют в своих сетях. Ведь часто они устанавливают продукты и технологии, не взяв на себя труд как следует разобраться в том, что собой представляет новый продукт и каким образом его нужно испытывать и обеспечивать безопасность.
Стандарт беспроводной связи 802.11i пока еще не прошел всей процедуры ратификации, однако некоторые поставщики уже разрабатывают новые компоненты для беспроводных сетей в соответствии с его требованиями. Следует ожидать появления на рынке множества изделий, ориентированных на обе категории потребителей: с одной стороны, предусматривающих использование протокола TKIP для обеспечения обратной совместимости с эксплуатируемыми ныне беспроводными сетями, а с другой — реализующих алгоритм AES в расчете на представителей компаний, которые лишь начинают подумывать о дополнении своих проводных сетей беспроводными сегментами. Перед покупкой беспроводных изделий следует обязательно ознакомиться с итогами сертификации союза Wi-Fi Alliance, который уже начал оценивать системы на предмет соответствия их предлагаемому стандарту 802.11i.
Шон Харрис — консультант по безопасности, технический писатель и преподаватель. Имеет сертификаты MCSE и CISSP. С ним можно связаться по адресу: shonharris@sprintmail.com
Как стандарт 802.11i преодолевает недостатки протокола WEP
Протоколу Wired Equivalent Privacy (WEP) присущи три основных недостатка. Первый из них состоит в том, что WEP предусматривает использование статических ключей шифрования. Второй недостаток — неэффективное использование векторов инициализации (Initialization Vector, IV). И наконец, третий недостаток — это отсутствие средств контроля целостности пакетов.
Статические ключи шифрования. Протокол WEP предполагает использование алгоритма RC4, который, в свою очередь, генерирует симметричный шифр. Слово «симметричный» означает, что для целей шифрования и дешифрации отправитель и получатель должны использовать идентичные ключи. Стандарт 802.11 не определяет процесса, с помощью которого эти ключи могли бы обновляться автоматически, поэтому в большинстве сетей симметричные ключи RC4 никогда не меняются. Кроме того, все беспроводные устройства и узлы доступа, как правило, имеют один и тот же ключ. Предположим, что все сотрудники компании пользуются одним и тем же паролем, — вряд ли такой метод защиты можно назвать надежным. Поставщики разработали свои уникальные решения этих проблем, однако дело в том, что упомянутые недостатки изначально присущи рассматриваемому стандарту.
Неэффективное использование векторов инициализации (IV). IV — это случайное численное значение, которое наряду с симметричным ключом и алгоритмом RC4 обеспечивает рандомизацию процесса шифрования. Значение рандомизации в криптографии трудно переоценить, поскольку хакеры постоянно выискивают повторяющиеся составляющие процессов, позволяющие восстановить ключи шифрования. Программное обеспечение устройств для беспроводных сетей вводит в алгоритм RC4 ключ и значение IV, и в результате генерируется поток ключей (см. рис. A). Единицы и нули, содержащиеся в этом потоке, соединяются оператором XOR с двоичными значениями отдельных пакетов. В результате формируется шифротекст, или зашифрованные пакеты. Более подробную информацию об этих процессах можно найти в «белой книге» Скотта Флурера, Ицика Мантина и Эйди Шамира «Weaknesses in the Key Scheduling Algorithm of RC4», размещенной по адресу http://www.securityfocus.com/library/3629.
Рисунок А. Процесс шифрования |
Почти во всех сетях, использующих протокол WEP, в этом процессе вновь и вновь применяются одни и те же значения IV. А поскольку в них к тому же используются симметричные ключи (секрет, известный всем участникам радиообменов), эффективная рандомизация генерируемого алгоритмом потока ключей становится невозможной. В трафике появляются повторяющиеся фрагменты, что позволяет взломщикам восстановить процесс и раскрыть исходный ключ шифрования, с помощью которого они смогут расшифровывать новые сообщения.
Отсутствие средств контроля целостности пакетов. Одно из слабых мест изделий для беспроводных сетей, основанных на использовании исключительно стандарта 802.11, представляет некоторую сложность для понимания. Меняя значения отдельных битов на противоположные и изменяя значение контрольной суммы целостности (Integrity Check Value, ICV), хакер может модифицировать данные внутри беспроводных пакетов так, что получатель не заметит этих изменений. ICV действует аналогично функции вычисления контрольного значения методом циклической избыточности (Cyclical Redundancy Check, CRC): отправитель вычисляет значение ICV и вводит его в заголовок кадра. Получатель высчитывает собственное значение ICV и сравнивает его со значением ICV, вложенным в кадр. Если значения совпадают, получатель может быть уверен в том, что в процессе передачи содержимое кадра не было модифицировано. Если же значения ICV отличаются друг от друга, кадр был изменен, и получатель отбрасывает его. При использовании механизма WEP возможны ситуации, в которых получатель не в состоянии выявить внесенные в кадр изменения; поэтому считается, что WEP не обеспечивает эффективного контроля целостности пакетов.
Протокол TKIP (Temporal Key Integrity Protocol), используемый в новом стандарте 802.11i, преодолевает недостатки WEP в том, что касается статических ключей WEP и неэффективного использования векторов инициализации. Если компания эксплуатирует изделия, реализующие только средства шифрования WEP, и не применяет решений независимых поставщиков (скажем, средств VPN), злоумышленники могут с помощью таких программ, как AirSnort и WEPCrack, воспользоваться этими слабостями, а также неэффективным применением алгоритма распределения ключей внутри протокола WEP. И тогда хакер сможет взломать зашифрованный трафик такой компании в течение нескольких часов или даже минут, вне зависимости от того, какие ключи используются — 40-разрядные или 128-разрядные. Описанный сценарий основан на использовании одного из самых серьезных недостатков первоначального стандарта 802.11.
Протокол TKIP позволяет подставлять ключи шифрования по принципу ротации и тем самым противодействовать описанным способам атаки. Протокол увеличивает длину значения IV и организует кадры таким образом, что каждый из них имеет отличное от других значение IV. Программное обеспечение устройств беспроводной связи объединяет это значение IV с передаваемым трансмиттером MAC-адресом (Message Authentication Code Address) и с исходным ключом WEP так, что, даже если ключ WEP является статическим, формируемый ключ шифрования будет иметь неодинаковые значения для всех кадров. В итоге обеспечивается более надежная рандомизация процесса шифрования, что необходимо для противодействия посягательствам хакеров и атакам на криптосистемы. Поскольку значения векторов инициализации, а также создаваемых на их основе ключей изменяются, генерируемый в итоге поток ключей становится менее предсказуемым, поэтому хакерам сложнее восстанавливать процесс шифрования и выявлять исходный ключ.
Для обеспечения целостности пакетов в протоколе TKIP предусмотрено еще одно средство: вместо функции ICV в нем реализована функция Message Integrity Check (MIC). Тем, кто знаком с функцией MAC, будет понятна и функция MIC. Программные средства беспроводной связи предусматривают использование симметричных ключей с функцией хеширования, которая напоминает функцию контроля CRC, но отличается большей надежностью. Благодаря применению функции MIC вместо ICV программное обеспечение устройств беспроводной связи будет извещать получателя обо всех случаях изменения содержимого кадров в процессе передачи. Отправитель и получатель независимо друг от друга вычисляют значения MIC. Если получатель генерирует значение MIC, отличное от значения, вложенного в кадр, программное обеспечение устройств беспроводной связи считает этот кадр измененным и отвергает его.