|
Разбираемся в уязвимостях беспроводных сетей
Когда речь заходит о технологии Wi-Fi, признаком хорошего тона считается упоминание о низком уровне безопасности в сетях, построенных на ее основе. Сегодня даже далекие от вопросов сетевой безопасности люди знают, что Wi-Fi - это небезопасно. Но многие ли знают, как использовать это знание себе во благо?
Беспроводные сети должны быть защищены надежнее, чем кабельные. Необходимость обеспечения надежной защиты передаваемой информации продиктована прежде всего использованием радиоканала. Для перехвата информации в традиционной сети злоумышленник должен получить физический доступ к кабелю. В случае же с беспроводными решениями ему достаточно попасть в зону действия сети, прихватив с собой недорогое радиооборудование. Вот почему во многих стандартах связи, использующих радиоволны в качестве физической среды, предусмотрены программные средства защиты от несанкционированного доступа к информации. Есть ли таковые в 802.11 и насколько они уязвимы?
Механизмы защиты стандарта IEEE 802.11
К сожалению (или к счастью), разработчики прототипа Wi-Fi почти не заботились обеспечением его безопасности. Мало ли других сложных и интересных задач? В течение семи лет (с 1990 по 1997 год) решались вопросы методов передачи данных, увеличения пропускной способности, совместимости оборудования и т.п. Стоит ли удивляться, что изначально единственной защитой был системный идентификатор (SSID), передающийся в открытом виде? Более того, чтобы повысить комфорт при использовании чужой сети, была введена возможность широковещания сетевого имени (SSID Broadcast), которая по умолчанию используется на большинстве современных точек доступа. Еще одной преградой для чукотских хакеров и простых хулиганов стал контроль доступа по MAC-адресам. На точке доступа есть возможность задать список адресов, которым разрешена или запрещена авторизация. В лучших традициях 802.11 MAC-адрес передается в открытом виде. Следующей ступенью, на которую поднялась безопасность Wi-Fi, стал протокол WEP (Wired Equivalent Privacy).
WEP - защита от случайного проникновения
Основа протокола - поточный шифр RC4, разработанный Рональдом Райвестом в 1987 году. Этот алгоритм является симметричным и получил широкое распространение благодаря своему высокому быстродействию. Для оценки криптостойкости RC4 необходимо сказать несколько слов об используемом методе шифрования.
Как я уже говорил, алгоритм является симметричным, соответственно, для шифрования и расшифровки используется один и тот же ключ, который передается по защищенным каналам связи. При расшифровке данных автоматически выполняется аутентификация, так как предполагается, что ключ известен лишь двум лицам: отправителю и получателю. Плюсом такого подхода является скорость, минусом - низкая криптостойкость. Симметричные алгоритмы особо уязвимы к атакам типа Mаn-in-the-Middle. В протоколе WEP используется шифрование с помощью 40- или 104-битного ключа, который является статической частью шифра. Как правило, пользователю предлагается два метода введения ключа: HEX-числа и ASCII-символы (для 40-битного ключа - 10-значное HEX-число или пять символов ASCII; для 104-битного - 26 и 13 соответственно). К статической части добавляется динамическая составляющая, которая носит имя вектора инициализации (Initialisation Vector - IV) и весит 24 бита. Таким образом, полная длина ключа равна 64 или 128 битам (о чем и заявляют производители). В последнее время все чаще встречаются продукты, в которых реализована поддержка ключей с длиной до 256 бит, однако это не сильно повышает стойкость алгоритма, поскольку увеличение длины ключа происходит за счет статической части. Взлом WEP
Существует несколько разновидностей атак, которые могут быть эффективны против защиты WEP.
Атаки на отказ в обслуживании (DoS-атаки)
Как всегда, подобного рода атаки направлены на достижение неработоспособности сети или какой-либо ее части. В случае с беспроводными сетями такие атаки особо эффективны благодаря физической среде взаимодействия различных уровней OSI. Особенности Wi-Fi-сетей делают DoS-атаки возможными на всех уровнях, в том числе на физическом, при этом очень трудно доказать сам факт проведения DoS. Например, никто не мешает создать сильные помехи в частотном диапазоне 2,4 ГГц, то есть и сеть из строя вывести, и атакующего скомпрометировать. Самая большая проблема на канальном уровне - возможность спуфинга точек доступа. Причина в том, что для связи клиентское оборудование обычно выбирает точку доступа с наиболее качественным сигналом. Подменить базовую точку доступа не составит труда: для этого нужно обеспечить сильный сигнал в выбранной зоне и узнать SSID жертвы. После такого "клонирования" злоумышленник перехватывает весь трафик, а в результате не только будет получен отказ в обслуживании, но и появится возможность со временем получить WEP-ключи.
Mаn-in-the-Middle
Подобная атака может быть очень эффективна благодаря симметричности алгоритма RC4. Суть Mаn-in-the-Middle состоит в прослушивании передач между двумя хостами, при этом исключено присутствие атакующего в соединении. На основе такой атаки можно имитировать другой хост, перехватывать трафик для дальнейшего анализа и т.д. Кроме того, Man-in-the-Middle - это одна из немногих атак, которая позволяет получить доступ даже к хорошо защищенной сети. Прежде чем начать атаку, необходимо собрать как можно больше информации, например SSID-, IP- и MAC-адреса клиента и точки доступа, соответствие запроса и отклика и т.д.
Далее злоумышленник бросит все силы на то, чтобы а) обмануть точку доступа, выдавая себя за авторизованного клиента; и б) обдурить клиента, выдавая себя за точку доступа. Желаемым результатом атаки типа "человек посередине" является вытеснение авторизованного клиента и "общение" с базой от его имени.
Вардрайвинг
Вкратце, этот метод состоит в сканировании эфира с целью нахождения точек. Вардрайверы могут довольно эффективно охотиться за "вражескими" сетями, при этом "запоминая" самые интересные. Какой бы метод ни был использован, для получения доступа к сети, защищенной WEP, нужно получить ключ. Чтобы получить ключ, используем основную уязвимость протокола - вектор инициализации(IV). Его длина - 24 бита, что дает нам 2^24 уникальных вариантов. Если известны все значения вектора, то получить статическую часть ключа проще пареной репы. Поскольку IV динамически изменяется во время работы (проще говоря, каждый пакет несет новое значение), то для успешного взлома необходимо собрать достаточное количество пакетов (от 50 000 до 200 000). Чем активнее идет обмен трафиком внутри сети, тем быстрее можно собрать необходимую информацию. Однако можно ускорить процесс искусственным генерированием трафика. Практика
Итак, нам понадобится один или несколько ноутбуков, Wi-Fi-адаптер (или несколько) и направленная антенна средней мощности. Будем считать, что сеть уже найдена и связь с точкой доступа достаточная для бесперебойного обмена данными. Цель атаки - узнать необходимую информацию о сети, перехватить достаточное количество пакетов, вычислить статическую часть WEP-ключа. Для этого будем использовать…
Утилиты для взлома WEP
Стоит сказать, что среди представленных ниже утилит присутствуют как готовые решения, позволяющие найти информацию о сети и одновременно умеющие перехватывать и анализировать пакеты, так и узко специализированные софтины.
После того как в середине 2001 года была опубликована статья о методе взлома WEP, как грибы после дождя стали появляться утилиты, автоматизирующие этот процесс. Одна из самых известных - AirSnort.
AirSnort - это инструмент для определения ключей шифрования, реализующий атаку Fluhrer-Mantin-Shamir (FMS). Вычисляет ключ шифрования, перехватив достаточное количество зашифрованных пакетов. AirSnort проста в использовании и эффективна, однако для взлома WEP требуется очень большое количество собранных пакетов(5-10 млн). Из плюсов можно назвать небольшой размер (благодаря реализации для Linux) и незаметную работу.
Следующий шаг, который сделали хакеры, - увеличение быстродействия FMS-атаки. Результатом стала dwepcrack, которая отличается от AirSnort лишь более высоким быстродействием. Долгое время суть метода оставалась прежней, и взлом затягивался на длительное время, хотя уже тогда WEP казался всем скорее мертвым, чем живым. Однако последний гвоздь в гроб эквивалента кабельной защиты забил некий KoreK, написавший NetStumbler.
Теперь для атаки на ключ WEP не нужно собирать миллионы пакетов, и неважно, зашифрованы ли они. Новый метод статического криптоанализа позволил сократить время подбора ключа в несколько раз. Единственная характеристика, используемая для анализа, - количество уникальных векторов инициализации. Кроме того, утилита написана под Windows и имеет простой, интуитивно понятный интерфейс, так что теперь взлом Wi-Fi-сетей стал доступным для каждого. Кроме непосредственного анализа пакетов, утилита предоставляет много интересной информации о "жертве": имя сети, излучаемая мощность, производитель точки доступа, состояние DHCP-сервера, диапазон IP-адресов, MAC-адрес точки и еще много данных о том, что происходит в эфире. Есть возможность записать координаты точки доступа, если они предоставлены внешним GPS-устройством. На сегодняшний день существует более продвинутая версия NetStumbler - chooper. Кроме решений, основанных на статистическом анализе, существуют средства для старого доброго брутфорса. Самые известные - это WepLab, WepAttack. Сейчас уже очевидно, что взлом WEP - это задача, которая не требует почти никаких особенных знаний и навыков. Гораздо интереснее протокол безопасности WPA (Wi-Fi Protected Access - защищенный доступ Wi-Fi).
WPA - вызов брошен
Протокол WPA, утвержденный консорциумом Wi-Fi в 2002 году, направлен на устранение слабых мест беспроводных сетей на основе WEP. С другой стороны, WPA не является чем-то абсолютно новым по сравнению с WEP и использует, фактически, тот же RC4, но в иной реализации. Обо всем по порядку!
Итак, WPA - это протокол, использующий усовершенствованную схему шифрования данных RC4 на основе TKIP (Temporal Key Integrity Protocol) с обязательной процедурой аутентификации средствами 802.1x.
Протокол TKIP используется для обеспечения безопасности и целостности WPA. Он также использует RC4, однако вектор инициализации здесь имеет длину в 48 бит. Для каждого передаваемого пакета генерируется новый ключ, а контроль целостности сообщений ведется с помощью контрольной суммы MIC (Message Integrity Code). Базовый размер ключа увеличен до 128 бит. По сравнению с WEP, полностью изменена процедура генерации ключа. Теперь ключ получается из трех компонентов: базовая составляющая, MAC-адрес передающего узла и номер передаваемого пакета.
Базовая составляющая ключа является динамической и генерируется каждый раз, когда клиент устанавливает соединение с точкой доступа. Для формирования базового ключа используются следующие данные: хэш-функция секретного сеансового ключа (пароля, заданного пользователем), псевдослучайное число, MAC-адрес. В конечном итоге клиент и точка доступа получают сеансовый ключ в результате аутентификации по протоколу 802.1x. Стоит сказать, что при разработке WPA первоочередной задачей была совместимость с WEP и создание условий работы нового средства защиты на старом оборудовании. Именно этим объясняется применение все того же RC4, а не AES, например. Однако, несмотря на преемственность, протокол WPA избавился от многих уязвимостей, присущих WEP.
Уязвимости WPA
Самым страшным сном для протокола WPA, несомненно, являются атаки на отказ в обслуживании (DoS). Злоумышленник может легко вывести из строя сеть на базе WPA, просто посылая каждую секунду два пакета со случайными ключами шифрования. Вражеская точка доступа, приняв эти пакеты, решает, что произведена попытка несанкционированного доступа, и закрывает все соединения, чтобы не допустить использования сетевых ресурсов сторонним лицом. Уязвимость к DoS-атакам на физическом уровне также высока - здесь никаких изменений по сравнению с WEP. А дела с атаками, направленными на получение ключа, намного хуже, хотя они не безнадежны. Роберт Московиц, технический директор ICSA Labs, опубликовал доклад, в котором описывается вот такая стратегия атаки на WPA-сети. Большинство программных реализаций WPA строят криптографический ключ для шифрования на основе введенного пользователем пароля и сетевого имени (либо MAC-адреса), которое является общедоступным. Информация, зашифрованная этим ключом, свободно передается по Сети. Методом брутфорса подбирается исходный пароль. В данном случае пароль длиной менее 20-ти символов считается потенциально опасным. Конечно же, речь идет только о тех случаях, когда WPA используется в режиме pre-shared mode. Кроме того, WPA, так же как и WEP, не имеет защиты против "клонирования" точек доступа. IEEE 802.11i - семь бед, один ответ?
Этого стандарта безопасности ждали. Очень долго и с большими надеждами. Наконец, после четырех лет ожидания, 24 июня 2004 года он был принят, и для определенных кругов это было событие года. Однако 802.11i во многом похож на WPA (поэтому 802.11i иногда называют WPA2). Однако есть несколько кардинальных отличий. Во-первых, вместо RC4 используется AES. Он появился совсем недавно и обладает хорошей криптостойкостью (на данный алгоритм пока нет известных атак), а его симметрическая природа делает его достаточно быстрым.
Появились такие понятия, как надежно защищенная сеть (RSN) и надежно защищенное сетевое соединение (RSNA). Добавлен механизм CCMP, состоящий из связки алгоритма шифрования AES и кода CBC-MAC. CCMP выполняет две важные задачи: обеспечение конфиденциальности и аутентификация. В рамках стандарта 802.11i алгоритм CCMP является обязательным, тогда как TKIP – опциональным (для совместимости со старыми устройствами). Пожалуй, последнее важное отличие от WPA - поддержка быстрого роуминга между точками доступа. Если рассмотреть принципиальные отличия 802.11i от предыдущего протокола, становится понятно, что разница в степени защиты невелика. Можно констатировать тот факт, что 802.11i, скорее всего, не станет таким же универсальным и надежным средством защиты, каким когда-то стал VPN.
Уже сейчас можно назвать несколько типов атак, к которым WPA2 проявляет особую слабость:
- Традиционные для беспроводных сетей атаки на физическом уровне.
- Использование служебных фреймов для подмены MAC-адреса. Такая атака возможна благодаря тому, что при передаче служебной информации точка доступа и клиент не выполняют процедуру аутентификации.
- Атаки посредством запросов IEEE 802.1x. Дело в том, что стандарт 802.11i не умеет отклонять запросы на аутентификацию, поэтому точку доступа можно "перегрузить".
Есть ли защита в 802.11?
Ответ на вопрос заголовка – "да". На сегодняшний день связка "WPA+VPN" (а тем более "WPA2+VPN") делает беспроводную сеть достаточно защищенной для передачи даже особо ценной информации. Однако многие ли устанавливают подобную защиту?
По данным исследования, проведенного лабораторией сетевой безопасности компании "ИнформЗащита", только 5% сетей в Москве используют технологии WPA или 802.11i. Более 2/3 сетей не защищено ничем! На остальных настроен дырявый WEP. Делай выводы. Описание алгоритма RC4
Алгоритм RC4 был разработан в 1987 году и в течение семи лет оставался закрытым. Подробные сведения о его конструкции предоставлялись только после подписания договора о неразглашении. Однако в сентябре 1994 года алгоритм появился в Сети.
RC4 является алгоритмом компании RSA Data Security, основанным на потоковом шифре. Такие шифры преобразуют открытый текст в криптограмму по одному биту за операцию. Генератор потока ключей выдает поток битов k1,k2,k3...kn. Этот поток ключей и поток открытого текста p1,p2,p3....pn подвергается операции XOR (исключающее "или"), в результате чего получается шифрованный текст. Для дешифровки та же операция выполняется с шифровкой и с потоком ключей. Безопасность такой системы полностью зависит от генератора ключей. Дело в том, что в большинстве случаев используются псевдослучайные числа, и так повышается вероятность повторений. Генератор настоящих случайных чисел и длинные ключи могут сделать этот алгоритм довольно стойким.
Свойства алгоритма:
- Адаптивность для аппаратных средств, использование в алгоритме только простейших вычислительных операций, которые реализуются во всех процессорах.
- Высокая скорость работы алгоритма. Это свойство позволило RC4 завоевать широкую популярность. На данный момент он реализован в десятках коммерческих продуктов, например Lotus Notes, Apple Computer's AOCE, Oracle Secure SQL, а также является частью спецификации стандарта сотовой связи CDPD.
- Компактность исходного кода в различных реализациях.
- Низкие требования к памяти.
- Простота выполнения.
Стандарт IEEE 802.1X
IEEE 802.1X - стандарт, основанный на трех компонентах (протокол расширенной аутентификации EAP - Extensible Authentication Protocol; протокол защиты транспортного уровня TLS - Transport Layer Security; сервер RADIUS - Remote Access Dial-in User Service) и позволяющий производить эффективный контроль доступа на уровне пользователей. Применение 802.1x связано с тремя основными элементами:
1. Саппликант – пользователь, который нуждается в сетевой аутентификации;
2. Сервер аутентификации – обычно RADIUS-сервер, который производит фактическую аутентификацию;
3. Аутентификатор – посредник между двумя уже названными элементами, предоставляющий доступ в сеть (в случае с беспроводной сетью этим элементом, как правило, является точка доступа).
В общем случае (One Time Password) процесс аутентификации происходит следующим образом. Пользователь делает запрос на соединение с аутентификатором (реже наоборот), далее последний требует идентификационную информацию. После получения этих данных аутентификатор отправляет их серверу. Затем сервер запрашивает подлинность саппликанта. В случае положительного ответа сервер посылает специальный служебный сигнал, после чего аутентификатор открывает пользователю порт для доступа и отправляет сообщение о завершении процедуры.
Данный стандарт зарекомендовал себя как довольно эффективное и безопасное решение вопроса аутентификации клиентов и сейчас широко применяется как в кабельных, так и в беспроводных сетях. Подробнее читай там же, где читал я, - на www.itanium.ru и http://itc.ua. Изначально в сетях 802.11 не было никакой защиты. Любые данные, передаваемые по таким сетям, можно было захватить не используя ничего, кроме Wi-Fi-адаптера.
Единственная возможность защитить беспроводные сети от несанкционированного проникновения – использовать сильные криптографические алгоритмы. Однако разработчики стандартов выбирают средства послабее.
Современную сеть, защищенную протоколом WEP, можно взломать за десять минут машинного времени.
Банальный брутфорс - довольно действенное средство даже против WPA.
|
|