Text
                    С. В. Гордейчик
В. В. ДуОровин
Безопасность
беспроводных
сетей
Москва
Горячая линии - Телеком
2008


УДК 004.732 ББК 32.973.2-018.2 Г68 Гордейчик С. В., Дубровин В. В. Г68 Безопасность беспроводных сетей. - М.: Горячая линия- Телеком, 2008. - 288 с: ил. ISBN 978-5-9912-0014-1. Представлен подробный анализ причин возникновения уязвимостей и типичных ошибок, допускаемых при развертывании беспроводных сетей. Описываются этапы построения защищенной беспроводной сети - от создания политики безопасности до настройки систем обнаружения беспроводных атак и проведения тестов на проникновения. Рассматриваются современные средства и технологии защиты, такие как 802.1Х, PEAP, SSL, IPSec, WPA и 802.11. Отдельный раздел посвящен защите мобильных устройств на основе ОС Windows Mobile. Рассматривается реализованная в Windows Mobile модель безопасности, а также приводятся рекомендации по использованию встроенных защитных механизмов для безопасного доступа к корпоративным ресурсам. Для системных администраторов, инженеров, специалистов в области информационной безопасности. ББК 32.32.973.2-018.2 Адрес издательства в Интернет www.techbook.ru Справочное издание Гордейчик Сергей Владимирович Дубровин Владимир Валентинович БЕЗОПАСНОСТЬ БЕСПРОВОДНЫХ СЕТЕЙ Редактор Л. П. Якименко Обложка художника В. Г. Ситникова Компьютерная верстка Ю. Н. Рысева Подписано в печать 28 06.07. Формат 60x90/16 Печать офсетная. Уч.-изд л. 24. Тираж 1000 экз. Изд. № 75. Заказ № 87 ООО «Научно-техническое издательство «Горячая линия - Телеком» Отпечатано в ООО "Типография Полимаг" 127242. Москва, Дмитровское шоссе 107 ISBN 978-5-9912-0014-1 © С. В. Гордейчик, В. В. Дубровин, 2008 © Оформление издательства «Горячая линия-Телеком», 2008
Предисловие Беспроводные технологии являются не только модной новинкой, но и эффективным инструментом, расширяющим традиционные сети передачи данных. Однако их широкое распространение сдерживается в первую очередь невысокой безопасностью стандартных протоколов защиты. На настоящее время существуют технологии, правильное применение которых может обеспечить уровень защиты, достаточный для решения большинства задач. Книга состоит из шести глав. В первой из них описываются принципы построения беспроводных сетей, основные стандарты, базовые инструменты администратора и специалиста в области безопасности. Эта глава будет полезна тем читателям, которые пока ещё плотно не сталкивались с мобильными технологиями. Во второй главе описываются базовые технологии обеспечения безопасности, рассматриваются организационно-правовые вопросы защиты беспроводных технологий. Один из разделов главы посвящен безопасности технологии Bluetooth. Третья глава содержит информацию по современному состоянию обеспечения безопасности беспроводных сетей, рассматривает технологии 802.1Х, WPA, 802.11 i, подходы к организации гостевого доступа к корпоративной сети. Четвертая глава посвящена сетевой безопасности беспроводной сети. Основные обсуждаемые вопросы: межсетевое экранирование Wi-Fi, применение технологий виртуальных частных сетей, безопасность IPv6. Пятая глава целиком и полностью отдана вопросам защиты клиентов мобильных сетей. Рассматриваются подходы к обеспечению безопасности как стандартных настольных операционных систем, так и клиентов на базе Window Mobile. В шестой, заключительной главе обсуждаются те проблемы с беспроводными сетями, которые пока ещё не имею решения. Рассматриваются подходы к выбору и внедрению систем обнаружения беспроводных атак. Последний раздел книги посвящен вопросам оценки защищенности и тестирования беспроводной сети на проникновение.
Безопасность беспроводных сетей Для проникновения в беспроводную сеть злоумышленник должен: * иметь беспроводное оборудование, совместимое с используемым в сети (применительно к стандартному оборудованию — соответствующей технологии - DSSS или FHSS); * при использовании в оборудовании FHSS нестандартных последовательностей скачков частоты узнать их; * знать идентификатор сети, закрывающий инфраструктуру и единый для всей логической сети (SSID); * знать (в случае с DSSS), на какой из 14 возможных частот работает сеть, или включить режим автосканирования; * быть занесенным в таблицу разрешенных МАС- адресов в точке доступа при инфраструктурной топологии сети * знать 40-разрядный ключ шифра WEP в случае, если в беспроводной сети ведется шифрованная передача Решить все это практически невозможно, поэтому вероятность несанкционированного вхождения в беспроводную сеть, в которой приняты предусмотренные стандартом меры безопасности, можно считать очень низкой. (Web-сайт провайдера беспроводного подключения к Internet) Глава 1. Основы беспроводных технологий В этой главе описываются основы технологий, используемых для построения беспроводных сетей. Рассматриваются основные стандарты, канальный и физический уровни стандарта 802.11. Читатель, помнящий школьный курс физики, может смело пропустить раздел «Введение в беспроводные сети». Тот, кто имеет опыт работы с беспроводными сетевыми анализаторами, может переходить сразу к следующей главе. Авторы просят прощения у всех специалистов по теории и практике передачи сигнала за используемую терминологию. Несмотря на то, что выбранные термины иногда отличаются от общепринятых, они широко распространены в переводной и англоязычной литературе, с которой большинству читателей придется сталкиваться. 1.1. Введение в беспроводные сети В настоящее время существует большое количество разнообразных беспроводных технологий, что требует введения классифи- 4
Глава 1. Основы беспроводных технологий Рис. 1.1. Типы беспроводных сетей кации. Один из способов классификации беспроводных сетей основан на радиусе действия сети, при этом выделяются четыре основных типа (см. рис. 1.1): • WWAN (Wireless Wide Area Network) - используются в сотовой связи (GSM, CDMA, TDMA, iDEN, PDC и др.) и характеризуются большим радиусом действия (до 40 км); • WMAN (Wireless Metropolitan Area Network) - в основном применяются операторами связи для создания инфраструктуры доступа конечных пользователей, так называемой «последней мили», характеризуются средним радиусом действия (несколько километров); • WLAN (Wireless Local Area Network) - используются для обслуживания небольших территорий, имеют средний радиус охвата (около 100 м); • WPAN (Wireless Personal Area Network) - используются для передачи информации от сотовых телефонов, переносных компьютеров и т. п. бытовых приборов, имеют маленький радиус действия (около 10 м). Например, сюда можно отнести технологию Bluetooth. Сети каждого типа имеют свои особенности реализации канального и физического уровней, что позволяет им эффективно выполнять характерные для них задачи. Большая часть информации в данной книге относится к беспроводным локальным сетям на основе стандартов семейства 802.11. Беспроводные технологии могут использоваться для решения различных задач, но в качестве основных можно выделить следующие способы их использования:
Безопасность беспроводных сетей • Организация уровня доступа к корпоративной сети (access layer) и последней мили провайдеров сетевых услуг. • Удлинение сетевого сегмента. • Организация гостевого доступа и взаимодействия мобильных клиентов. • Организация связи точка-точка или точка-многоточек между зданиями. • Быстрое развертывание временных локальных сетей. • Обмен данными между мобильными устройствами. 1.1.1. Особенности радиосетей В отличие от проводных сетей, где направление распространения сигнала определяется траекторией прокладки кабеля, а протяженность сети - длиной, беспроводные сигналы гораздо менее предсказуемы. На качестве связи могут сказываться разнообразные факторы, от хорошо знакомой всем администраторам фазы луны, до гораздо менее понятной многолучевой интерференции. В идеальных условиях радиосигнал распространяется от источника сигнала по прямой (что требует учета кривизны поверхности планеты при организации связи на расстояние от 12 км). Однако на путь распространения сигнала могут влиять ряд явлений, такие как: • отражение (reflection); • рассеяние (scattering); • преломление (refraction); • дифракция (diffraction); • поглощение; • мнологолучевая интерференция (multipath). При соприкосновении радиоволны с объектом, геометрические размеры которого намного превышают длину волны, происходит отражение, приводящее к изменению направления радиосигнала. Причинами отражения сигнала могут быть различные объекты, такие как стены помещений, поверхность земли, крыши, металлические двери и т.д. В большинстве случаев кроме изменения направления распространения сигнала происходит и уменьшение его мощности, поскольку часть сигнала рассеивается на шероховатостях отражающей поверхности. Рассеяние возникает в результате столкновения фронта радиоволны с объектами, размеры которых соизмеримы с длиной волны. Примерами рассеивающих объектов являются светофоры, листва деревьев и т.д.
Глава 1. Основы беспроводных технологий Если сигнал проходит через слои с различной плотностью, его направление меняется в результате преломления. Это приводит к тому, что часть радиоволны передается в направлении, отличном от линии прямой видимости, что может сказаться на работоспособности беспроводных линий точка-точка. Причиной преломления могут стать различные погодные условия, например сгустки тумана или зоны холодного воздуха. В случае столкновения фронта радиоволны с объектами небольших размеров возникает явление дифракции, также приводящее к изменению направления распространения радиосигнала. Некоторые материалы поглощают радиоволны, что приводит к значительному уменьшению мощности сигнала. Такие материалы могут быть использованы для ограничения зоны распространения радиоволн. В результате отражения, преломления и дифракции может возникнуть явление многолучевой интерференции, когда сигналы попадают на приемник различными путями. Поскольку сигналы проходят от приемника до передатчика различные расстояния, их фазы на приемнике различаются и при наложении могут возникнуть различные эффекты, такие как искажение сигнала, уменьшение его мощности. На рис. 1.2 приведен пример искажения сигнала, возникшего в результате многолучевой интерференции, причинами которой послужили отражение и рассеяние. Многолучевая интерференция является серьезной проблемой, особенно на больших скоростях, когда время, отводимое на передачу одного символа, невелико. В таких ситуациях задержка может привести к тому, что на приемнике возникает интерференция сигналов, передающих различные символы (межсимвольная интерференция). При построении радиосетей между различными зданиями администратору также приходится учитывать такой параметр как зоны Френеля (Fresnel Zone). Зоны Френеля представляют собой совокупность концентрических эллипсов, осью которых является вектор распространения сигнала между приемником и передатчиком (линия прямой видимости, Light of Sight, LOS). Блокирование первой Рис. 1.2. Многолучевая интерференция
Безопасность беспроводных сетей ям=17,3х j-Lxa~x 1 ГГц Мш Рис. 1.3. Зоны Френеля зоны Френеля более чем на 40%, может привести к серьезному ухудшению качества связи. Источниками возникновения помех могут быть поверхность Земли (если антенны не подняты на достаточную высоту), деревья, вершины холмов, крыши зданий и т.д. Для расчета радиуса первой зоны Френеля, наиболее важной с точки зрения качества связи, в любой точке между приемником и передатчиком можно воспользоваться формулой, приведенной на рис. 1.3. В качестве исходных параметров используются расстояния от приемника и передатчика (S и D), указываемые в километрах, и частота несущей в ГГц. Полученный результат представляет собой радиус первой зоны Френеля в метрах. Отсутствие физических препятствий в первой зоне Френеля является необходимым условием устойчивой беспроводной связи, особенно при организации взаимодействия между зданиями по схемам точка-точка или точка-многоточка. 1.1.2. Беспроводная арифметика Поскольку мощность передаваемых в радиосети сигналов может измеряться милливаттами и микроваттами, а затухание и усиление могут происходит в сотни и тысячи раз, то для удобства проведения расчетов большинство единиц измерения имеют логарифмический характер. Основной единицей измерения в беспроводных сетях является децибел (дБ, [с!В]). В децибелах выражаются десятичные логарифмы отношения мощностей сигнала в процессе усиления и затухания. Таким образом, децибел представляет собой относительную величину измерения, отображающую усиление (при положительном значении) или затухание (при отрицательном значении) сигна- 8
Глава 1. Основы беспроводных технологий ла. Значение 0 дБ означает, что мощность сигнала не претерпевает никаких изменений. Для быстрых приблизительных расчетов, проводимых при отсутствии логарифмической линейки или ее современных заменителей, часто используется правило «десять-три». Правило гласит, что значение 3 дБ указывает на увеличение мощности сигнала в два раза, а значение 10 дБ - на десятикратное увеличение мощности. То же справедливо для отрицательных величин, т.е. -3 дБ означает, что мощность уменьшилась в два раза, а -10 дБ указывает на уменьшение мощности в 10 раз. Единица измерения дБи (изотропный децибел, dBi) используется для коэффициента усиления антенн. Физический смысл все тот же -десятичный логарифм отношения мощностей. Единица измерения дБм (dBm) является абсолютной величиной и отображает изменение мощности сигнала относительно фиксированного значения в один милливатт. Соответственно 1 мВт = 0 дБм. Значение 26 дБм равно мощности сигнала в 400 мВт (10 + 10 + 3 + 3). Важно помнить, что для децибелов используется правило сложения, т.е. если соединить беспроводную карточку мощности 100 мВт (20 дБм) с антенной мощностью 12 дБ (dBi), с учетом падения мощности на соединении -2 дБ, выходная мощность всей системы будет равна 1 Вт, или 30 дБм (20 + 12 — 2 = 10 + 10 + 10). 1.1.3. Технология широкополосного сигнала В основе беспроводных стандартов 802 лежит технология широкополосного сигнала (ШПС, Spread Spectrum, SS). Разработанная с целью снижения мощности передатчика и повышения устойчивости к узкополосным помехам, технология ШПС направлена на преобразование изначально узкополосного полезного сигнала в сигнал гораздо более широкого спектра. При этом спектральная мощность сигнала перераспределяется по используемому частотному диапазону, и максимальная мощность передаваемого сигнала становится значительно ниже исходной (см. рис. 1.4). Одинаковый эффект дает передача сигнала мощностью 10 Вт с шириной спектра в 1 МГц и сигнала с шириной спектра в 200 МГц, но мощностью всего лишь 200 мВт. Поскольку используемый в широкополосных системах уровень сигнала сравним с уровнем естественного шума (noise floor), часто их называют системами шумоподобного сигнала. Низкий уровень сигнала снижает помехи, создаваемые широкополосного сигнала для других передатчиков и наоборот - узкополосные помехи слабо влияют на качество приема широкополосного сигнала.
Безопасность беспроводных сетей Спектр исходного сигнала Частота, f Рис. 1.4. Использование технологии ШПС В беспроводных сетях используются такие методы реализации технологии широкополосного сигнала, как метод прямой последовательности (Direct Sequence Spread Spectrum, DSSS), метод частотных скачков (Frequency Hopping Spread Spectrum, FHSS). Метод FSSS заключается в том, что приемник и передатчик синхронно перестраивают рабочую частоту после некоторого фиксированного времени передачи (dwell time). На рис. 1.5 представлена работа двух передатчиков, использующих технологию FHSS. Как видно из рисунка, станции в каждый момент времени работают на различных частотах, что позволяет одновременно работать большому количеству передатчиков. В случае возникновения узкополосной помехи она будет искажать только часть передаваемого сигнала, что позволяет говорить о помехозащищенности данного метода. Кроме того, последовательность скачков может выбираться с использованием псевдослучайной функции, что усложняет прослушивание передаваемых данных со стороны третьих лиц, приемники которых не синхронизированы с передатчиками. Недостатками метода частотных скачков являются невысокая максимальная скорость передачи, связанная с потерями на переключение между частотами (hop time), и относительно высокая мощность передачи на каждой из частот, что может мешать работе других передатчиков. Метод DSSS использует для расширения спектра радиосигналов различные методы кодирования. С их помощью один символ (нуль или единица) кодируется последовательностью из нескольких прямоугольных импульсов меньшей длительности. Поскольку ши- 10
Глава 1. Основы беспроводных технологий Частота, f Время скачка Время передачи Время t Рис. 1.5. Метод частотных скачков рина спектра прямоугольного импульса обратно пропорциональна его длительности, передача нескольких импульсов (чипов) за время, отведенное под один импульс, расширяет частотный диапазон. В качестве методов преобразования используются код Баркера (Barker Code), комплиментарный код (Complementary Code Keying, ССК) или метод ортогонального частотного разделения с мультиплексированием (Orthogonal Frequency Division Multiplexing, OFDM). При использовании метода OFDM поток передаваемых данных распределяется по нескольким подканалам и передача ведется параллельно на всех этих подканалах. При этом высокая пропускная способность достигается за счет одновременной передачи на нескольких подканалах, поскольку скорости передачи всех подканалов суммируются. Частоты несущих для подканалов выбираются таким образом, чтобы они были ортогональны друг другу, т.е., чтобы их произведение, усредненное на некотором интервале, равнялось нулю. Это позволяет выбирать в качестве подканалов перекрывающиеся частоты, поскольку ортогональность несущих гарантирует отсутствие межканальной интерференции. Глубокое погружение в особенности реализации физического уровня беспроводных сетей хотя и выглядит очень заманчивой перспективой, но явно фозит увести нас далеко от основной цели данной книги. В связи с этим мы предлагаем пытливому читателю самому разобраться в этом вопросе, а в качестве приложения (кроме, естественно самих стандартов, http://standards.ieee.Org/getieee802/802.11 .html) приводим список рекомендованной литературы на русском языке: 11
Безопасность беспроводных сетей Сергеев П., Технологии беспроводных сетей семейства 802.11, http://www.thg.ru/network/20030828/print.html; Пировских А., Чеканов Д., Стандарт 802.11 п: первый взгляд, http://www.thg.ru/network/20040902/index.html; IEEE - эволюция технологий, http://www.astron.com.ua/ article/ radio/802- 1.2. Стандарты беспроводных сетей Большинство используемых в настоящее время стандартов беспроводных сетей разработано Институтом инженеров по электротехнике и радиоэлектронике (Institute of Electrical and Electronics Engineers, IEEE). Именно на них мы и остановимся в данной книге. Согласно приведенной выше классификации беспроводных сетей их можно разделить на персональные (WPAN), локальные (WLAN), городские (WMAN) и глобальные (WWAN) сети. Стандарты IEEE относятся только к трем последним типам беспроводных сетей. 1.2.1. Персональные беспроводные сети Персональные беспроводные сети находятся в ведении рабочей группы стандарта 802.15. В рамках стандарта определено четыре группы, решающие различные задачи. Таблица 1.1 Стандарты 802.15.x Стандарт IEEE 802.15.1 IEEE 802.15.2 IEEE 802.15.3 IEEE 802.15.4 Описание Персональные беспроводные сети на основе технологии Bluetooth Совместное использование сетей WPAN с другими беспроводными технологиями Высокопроизводительные персональные беспроводные сети (High Rate WPAN) Энергосберегающие персональные беспроводные сети (Low Rate WPAN) Стандарт IEEE 802.15.1-2002 основан на спецификации Bluetooth 1.1. В стандарте описываются канальный и физический уровни. В 2005 г. была опубликована обновленная версия IEEE 802.15.1-2005. Благодаря технологиям, описанным в документе 802.15.2-2003, мы имеем возможность одновременно работать с Bluetooth и беспроводными сетями стандарта 802.11. 12
Глава 1. Основы беспроводных технологий Рабочая группа 802.15.3 работает над несколькими стандартами, наиболее перспективным из которых является 802.15.3Ь, позволяющий реализовать скорость передачи до 55 Мбит/с. Рабочая группа 802.15.3Ь занимается улучшением канального уровня WPAN. Стандарт 802.15.3с разрабатывается для высокоскоростной (2...3 Гбит/с) передачи данных в миллиметровом диапазоне (57...64 ГГц). Стандарт 802.15.4-2003 широко известен под торговой маркой ZigBee. Этот стандарт описывает физический уровень (802.15.4а) направленный на использование в устройствах с чрезвычайно низким энергопотреблением, время работы которых от одной батарейки исчисляется годами. Название ZigBee охватывает набор прикладных протоколов, основанных на стандарте 802.15.4, которые поддерживаются организацией ZigBee Alliance. В ближайшее время ожидается выход стандарта 802.15.4b, описывающего ряд улучшений, включающих гибкие настройки безопасности, упрощение протокола и устранение обнаруженных проблем. Протокол Bluetooth Название протокола Bluetooth происходит от имени короля Дании Харальда Синезубого (Harald Bluetooth), известного своими дипломатическими талантами. По идее авторов названия Bluetooth, идя по стопам своего исторического предшественника, помогает различным устройствам «понимать» друг друга. Руническое написание первых букв его имени используется в качестве хорошо известного логотипа Bluetooth. Поскольку Bluetooth разрабатывался для обмена данными между различными устройствами (КПК, клавиатуры, телефоны, ноутбуки и т.д.), он ориентирован на низкий расход электроэнергии и небольшой радиус действия. Существует три класса устройств, поддерживающих протокол Bluetooth, которые различаются мощностью передатчика. Таблица 1.2 Характеристики различных классов устройств Класс 1 2 3 Максимальная мощность, мВт 100(20dBm) 2,5 (4 dBm) 1 (0 dBm) Радиус действия, м 100 10 1 Указанные расстояния могут быть значительно увеличены путем использования направленной антенны. Поскольку частотный диа- 13
Безопасность беспроводных сетей пазон устройств Bluetooth совпадает с используемым стандартом 802.11 b/g, могут быть использованы антенны, предназначенные для этих устройств. Так, в широко известной Bluetooth-винтовке (http://www.thg.ru/network/2005031 б/index.html), обеспечивающей возможность взаимодействия на расстоянии свыше километра, используется стандартная направленная антенна для 802.11 b/g. Но, поскольку найти устройство Bluetooth с разъемом для подключения внешней антенны практически невозможно, тем, кто решит обзавестись подобной системой, придется немного поработать паяльником. В протоколе используется диапазон ISM 2,4 ГГц, что позволяет работать при отсутствии прямой видимости. Поскольку данный диапазон достаточно сильно загружен, в том числе и другими беспроводными сетями, остро встает вопрос совместимости. Для снижения вероятности возникновения интерференции с другими беспроводными сетями Bluetooth используют методы частотных скачков и адаптивных частотных скачков (Adaptive Frequency Hoping Spread Spectrum, AFHSS). При этом канал (т.е. последовательность частот, между которыми переключаются приемник и передатчик), состоящий из 79 частотных подканалов в 1 МГц, постоянно изменяется на основе псевдослучайной последовательности. Поскольку количество скачков достаточно велико (до 1600/с), то мощность на каждой из частот небольшая, что снижает уровень помех для других систем. Использование метода часточных скачков требует синхронизации всех работающих устройств, что предусмотрено в спецификации стандарта Bluetooth. Протокол Bluetooth поддерживает как синхронный (Synchronous Connection-Oriented, SCO), так и асинхронный режим (Asynchronous Connectionless, ACL) передачи данных. Синхронный режим используется в основном для передачи голосовой информации. Существует несколько вариантов стандарта Bluetooth. Первые из них, Bluetooth 1.0 и 1.0В имели ряд серьезных проблем с совместимостью. Кроме того, протокол требовал обязательной передачи значения МАС-адреса (BD_ADDR) в процессе установления соединения, что негативно сказывается на анонимности устройств . Большинство современных устройств основано на версиях Bluetooth 1.1 и 1.2, в которых исправлены недочеты предыдущих вариантов, увеличена пропускная способность, решены проблемы Здесь и далее адрес устройства Bluetooth будет обозначаться как МАС-адрес, хотя, согласно спецификации, этот параметр обозначается BD_ADDR. Ведь если она ходит как утка, крякает как утка и выглядит как утка - то это точно утка. 14
Глава 1. Основы беспроводных технологий совместного использования с другими беспроводными сетями. Максимальная скорость передачи данных устройств первой версии 723,1 кбит/м. Устройства, поддерживающие протокол Bluetooth 2.0, обратно совместимы с предыдущими версиям. Основным улучшением является увеличение пропускной способности до 2,1 Мбит/с (Enhanced Data Rate, ERD). 1.2.2. Локальные беспроводные сети Семейство стандартов 802.11 включает в себя четыре ратифицированных стандарта, используемых для организации передачи данных, и ряд документов, описывающих дополнительные функции. На время написания книги на стадии согласования находился пятый стандарт 802.11 п, направленный на увеличение пропускной способности радиосети. Семейство стандартов 802.11 часто обозначают как 802.11 х (не путать с 802.1 X) для того, чтобы не смешивать с базовым, теперь не используемым стандартом передачи 802.11. В ближайшем будущем литеры латинского алфавита будут исчерпаны, что, видимо, приведет к появлению нового семейства беспроводных стандартов. Текущее распределение рабочих групп стандарта 802.11 приведено в табл. 1.3. Документы 802.11F и 802.11Т не являются стандартами как таковыми, а описывают рекомендации по реализации тех или иных функций. Таблица 1.3 Стандарт 802.11 Стандарт IEEE 802.11 IEEE 802.11а IEEE 802.11b IEEE 802.11c IEEE 802.11d IEEE 802.11e Описание Исходный стандарт, описывающий передачу данных в диапазоне ISM 2,4 ГГц, на скоростях до 2 Мбит/с. Ратифицирован в 1999 г. Передача данных на скоростях до 54 Мбит/с, в диапазоне UNII 5 ГГц. Ратифицирован в 1999 г., первые реализации-2001 г. Расширения 802.11, поддержка скоростей передачи 5,5 и 11 Мбит/с (1999 г.) Работа сетевых мостов, включен в IEEE 802.1 D (2001 г.) Интернациональные расширения роуминга (2001 г.) Поддержка функции обеспечения качества обслуживания (QoS), 2005 г. 15
Безопасность беспроводных сетей Стандарт IEEE 802.11F IEEE 802.11g IEEE 802.11h IEEE 802.11i IEEE 802.11j IEEE 802.11k IEEE 802.111 IEEE 802.11x IEEE 802.11o IEEE 802.11q IEEE 802.11m IEEE 802.11n IEEE 802.11p IEEE 802.11r IEEE 802.11s IEEE 802.11T IEEE 802.11u IEEE 802.11V IEEE 802.11w Описание Протокол взаимодействия между точками доступа Inter-Access Point Protocol, опубликован в 2003 г., отозван в 2006 г. Расширение стандарта 802.11Ь, поддержка скорости передачи до 54 Мбит/с в диапазоне ISM 2,4 ГГц (2003 г.) Изменения используемого частотного диапазона 5 ГГц стандарта 802.11 а для совместимости с европейскими требованиями (2004 г.). Расширения функций безопасности (2004 г.). Изменения, связанные с требованиями Японского рынка (2004 г.). Улучшения процедур радиоизмерений Зарезервированы и не будут использоваться в дальнейшем Поддержка стандарта 802.11. Информация, не вошедшая в другие разделы Высокоскоростные беспроводные сети Мобильный доступ передвижных устройств (Wireless Access for the Vehicular Environment, WAVE) Быстрый роуминг Полносвязанные сети (ESS Mesh) Управление пропускной способностью беспроводной сети (Wireless Performance Prediction, WPP). Методики тестирования и измерения Взаимодействие с сетями других стандартов (сотовые сети) Управление беспроводной сетью Защита управляющих фреймов 1.2.3. Протоколы передачи данных Первый стандарт 802.11 (без буквенного индекса, см. табл. 1.3) описывает протокол организации беспроводной локальной сети в диапазоне 2,4 ГГц со скоростями 1 и 2 Мбит/с. В связи с невысокой пропускной способностью он не получил широкой поддержки со стороны производителей. Настоящий бум беспроводных сетей на- 16
Глава 1. Основы беспроводных технологий чался после появления устройств, реализующих стандарт 802.11b или Wi-Fi . Поскольку стандарт 802.11b использует тот же метод передачи широкополосного сигнала DSSS, что и базовый стандарт, добавляя новые методы кодирования и модуляции, и работает в том же частотном диапазоне, обеспечивается обратная совместимость устройств. Максимальная скорость передачи, предусмотренная стандартом, 11 Мбит/с. В 2003 г. появилось расширение стандарта 802.11 д, обеспечивающее скорости передачи до 54 Мбит/с в том же частотном диапазоне. Устройства стандарта 802.11 g совместимы с 802.11b, но могут работать в режиме 802.11 g only, что позволяет максимально использовать пропускную способность беспроводной сети. Стандарты 802.11 b/g разбивают весь частотный диапазон ISM на четырнадцать каналов, разделенных промежутком в 5 МГц (2412, 2417,..., 2477). Однако поскольку каждый канал занимает 22 МГц, не оказывают взаимного влияния те из них, номера которых различается на пять. Например, второй и седьмой (2442 - 2417= 25). Соответственно недалеко друг от друга могут находиться максимум три точки доступа, работающие на каналах 1, 6 и 11. К сожалению, большая часть оборудования произведена в соответствии со стандартами США и поддерживает только каналы 1-11. Для исправления этой ситуации необходимо устанавливать на рабочие станции драйверы и адаптеры, произведенные не для США. Когда говорят о «неперекрывающихся» каналах, немного отступают от истины. Спектральная мощность сигнала распределена по гораздо более широкому частотному диапазону, чем 22 МГц, и фактически каналы 1 и 6 перекрываются. В рамках используемых ограничений мощности передатчика этим можно пренебречь. Однако мощный передатчик на первом канале вполне может подавить сигнал стандартного клиента на шестом канале. В США и ряде других стран широко используются устройства, которые поддерживают стандарт 802.11а, описывающий передачу Аббревиатура Wi-Fi принадлежит организации Wi-Fi Alliance (только как торговая марка). Данная организация занимается сертификацией оборудования для беспроводных сетей, что облегчается тем фактом, что в организацию входят практически все производители систем. В настоящее время марка Wi-Fi может означать что угодно, но в большинстве случаев указывает на поддержку устройством любого из стандартов 802.11a/b/g. Кроме того, торговыми марками альянса являются WPA (Wi-Fi Protected Access) и WPA2. Фактически WPA2 означает, что оборудование соответствует стандарту ЯП? Hi тяк чтп WPAP и 8QP.1H это на, разные механизмы защиты. 17
Безопасность беспроводных сетей данных на скоростях до 54 Мбит/с в частотном диапазоне UNII 5 ГГц. В связи с более высокой используемой частотой, и как следствие - сильным затуханием сигнала, эффективный радиус действия устройств стандарта 802.11а несколько ниже. Более строгие ограничения на максимальную мощность передатчика (40 мВт в нижнем диапазоне UNII, 200 мВт в среднем по сравнению с 1Вт в ISM) еще больше снижают эффективный радиус взаимодействия. Достоинством стандарта 802.11а является возможность использовать 12 «неперекрывающихся» каналов (по четыре на каждый из трех диапазонов UNII в 100 МГц), что позволяет строить сети с более высокой пропускной способностью, чем в случае 802.11 b/g. Применение устройств стандарта 802.11а в России затруднено, поскольку использование частотного диапазона 5 ГГц требует обязательного лицензирования. Но при выполнении работ по контролю защищенности и обнаружению несанкционированных беспроводных устройств его не стоит упускать из внимания, поскольку многие современные ноутбуки поставляются с двухдиапазонными радиокартами, поддерживающими стандарты 802.11a/b/g . В ближайшем будущем ожидается появление стандарта 802.11п, обеспечивающего скорости передачи до 540 Мбит/с. Такой скачок обеспечивается за счет разделения приемного и передающего трактов (технология MIMO, Multiple In Multiple Out) и усовершенствованных техник кодирования. Насколько эффективен этот подход будет в корпоративных сетях пока говорить рано, учитывая сильную загруженность диапазона 2,4 ГГц. Сводная информация по стандартам приведена в табл. 1.4. Таблица 1.4 Стандарты передачи данных Стандарт 802.11а 802.11b 802.11g 802.11n Дата выхода, г. 1999 1999 2003 2007 Частота, ГГц 5 2,4 2,4 2,4 Скорость (макс), Мбит/с 54 11 54 540 Скорость (практ.), Мбит/с 25 6,5 25 200 Расстояние, м 10 30 30 50 Реальная скорость передачи в беспроводных сетях не совпадает с максимальной пропускной способностью, заявленной производителем. В идеальном случае она в два раза меньше. Это связанно с рядом факторов и в первую очередь с накладными расходами на организацию доступа к несущей. 18
Глава 1. Основы беспроводных технологий Расстояния в таблице указаны с учетом стандартных офисных точек доступа и карточек, без дополнительных антенн при работе на максимальной скорости. Все стандарты поддерживают автоматический выбор скорости передачи в зависимости от отношения сигнал/шум и могут работать на больших расстояниях, но с меньшей скоростью. При использовании усилителей и направленных антенн стандарты 802.11х могут обеспечивать передачу данных на расстояния в несколько десятков километров. 1.2.4. Региональные и городские сети Технологии, объединенные под торговой маркой WiMAX, направлены на реализацию широкополосного беспроводного доступа на значительных расстояниях. Коммерческим продвижением технологии занимается организация WiMAX Forum. Согласно спецификации стандарта 802.16, максимальное расстояние, на котором возможно взаимодействие по сетям WiMAX, составляет 50 км, а суммарная пропускная способность - 70 Мбит/с. В условиях реальной эксплуатации эти показатели гораздо скромнее и составляют около 8 км и 2 Мбит/с. Такие характеристики делают протокол WiMAX очень привлекательным для замены традиционных технологий по предоставлению «последней мили» при доступе к сети Internet и телефонии. Провайдеры разветвленной городской беспроводной сети могут предоставлять «выделенные» беспроводные каналы для организации виртуальных частных сетей между офисами компаний. В Москве и Санкт-Петербурге подобные услуги предоставляет компания Син- терра (http://www.synterra.ru/). С точки зрения заказчика преимущества очевидны: большая, чем при использовании технологии DSL, пропускная способность, отсутствие необходимости прокладки кабелей, независимость от места подключения. Как правило, при переезде офиса провайдеры WiMAX предоставляют связь на тех же условиях без дополнительных формальностей. В ближайшее время намечается широкое внедрение устройств стандарта 802.1 бе. Это мобильный вариант протокола WiMAX, рассчитанный на использование в качестве конечных терминалов таких устройств, как компьютеры, КПК, мобильные телефоны и т.д. На время написания книги адаптеры 802.1 бе были доступны только в виде демонстрационных прототипов. Первое масштабное внедрение мобильного варианта WiMAX происходит сейчас в Корее. Разработанный при содействии правительства стандарт WiBRO выполняет те же функции, что и стандарт 802.1 бе, и совместим с ним. 19
Безопасность беспроводных сетей В первоначальном варианте протокола WiMAX, описанного в стандарте 802.16с использовались частоты в диапазоне 10...66 ГГц (http://www.wimaxforum.Org/tech/10-66_GHz/). Этому диапазону присущи некоторые ограничения, связанные с лицензированием. Кроме того, его нельзя применять в условиях наличия препятствий между приемником и передатчиком. Стандарт 802.16а, описывающий использование диапазона 2... 11 ГГц вышел в 2004 г. Поскольку логика работы WiMAX предполагает применение схемы точка-многоточка с фиксированной пропускной способностью канала для каждого из абонентов, на канальном уровне используется механизм множественного доступа к несущей с разделением по времени (Time Division Multiple Access, TDMA). Этот метод широко используется в сотовых сетях (например, GSM) и позволяет реализовать гарантированное качество обслуживания. В рамках данной книги технологии обеспечения безопасности WiMAX подробно рассматриваться не будут. Стандарт 802.16 предполагает шифрование трафика с использованием алгоритма DES. Мобильный вариант WiMAC (802.1 бе) расширяет возможности по защите информации, добавляя аутентификацию станций по протоколу ЕАР, управление ключами с использованием протокола Privacy and Key Management Protocol Version 2 (PKMv2) и шифрование AES. При использовании стандарта 802.16 для передачи корпоративных данных рекомендуется усилить встроенные механизмы защиты с помощью технологий построения виртуальных частных сетей. 1.3. Канальный уровень стандарта 802.11 Этот раздел посвящен реализации канального уровня в локальных беспроводных сетях, принадлежащих семейству стандартов 802.11. 1.3.1. Структура сети В стандарте 802.11 определены два способа организации сети: инфраструктурный (Infrastructure) и независимый (Independent), часто также называемый одноранговым (Ad-Hoc). В инфраструктурном режиме функции координации передачи данных выполняет специальный выделенный узел, точка доступа (ТД, Access Point, АР). Беспроводные станции пользователей через нее взаимодействуют друг с другом и машинами в проводной сети. Схема такой сети приведена на рис. 1.6. 20
Глава 1. Основы беспроводных технологий Рис. 1.6. Инфраструктурный режим В одноранговой (Ad-Hoc) сети центральный узел отсутствует, и все станции являются равноправными членами системы (см. рис. 1.7). Совокупность станций, взаимодействующих друг с другом в рамках одной точки доступа или одной одноранговой сети, носит название базового набора обслуживания (Basic Service Set, BSS) либо независимого базового набора обслуживания (Independed Basic Service Set, IBSS). Несколько сетей BSS , объединенных с помощью проводной или беспроводной сети, называются расширенным набором обслуживания (Extended Service Set, ESS). B ESS могут объединяться толь- Рис. 1.7. Одноранговый режим Очень часто хочется использовать для обозначения сетей BSS привычный термин «сегмент», однако такое упрощение неверно. Дело в том, что с точки зрения сетевого уровня один сегмент может включать несколько сетей BSS или даже разные сети ESS. Например, сеть, схема которой приведена на рис 1.8, вполне может представлять собой один широковещательный домен с точки зрения Ethernet и одну подсеть с точки зрения сетевого уровня. 21
Безопасность беспроводных сетей Рис. 1.8. Расширенный набор обслуживания ко BSS, работающие в инфраструктурном режиме, но не IBSS. Это не значит, что сеть Ad-Hoc не может взаимодействовать с проводными сетями, просто механизмы подобного взаимодействия не описаны в стандарте 802.11; должны быть задействованы методы канального (сетевой мост) или сетевого уровня (маршрутизаторы). Схема такой сети приведена на рис. 1.8. Все станции и точки доступа одной сети ESS и сети BSS обозначаются с помощью идентификатора набора обслуживания (Service Set Inditifier, SSID). Конфигурационный параметр выбирает администратор и обычно он представляет собой набор символов, помогающий пользователю определить, к какой сети относится та или иная точка доступа. 1.3.2. Метод доступа к несущей В проводном варианте Ethernet используется метод множественного доступа к несущей с обнаружением коллизий (CSMA/CD). Использовать аналогичный подход в беспроводной сети невозможно, поскольку несущая имеет неоднородную структуру, и вполне вероятно возникновение локальных помех, которые будут влиять только на некоторые станции BS.S, никак не сказываясь на остальных. В связи с этим на канальном уровне стандарта 802.11 определен метод множественного доступа к несущей с предотвращением коллизий. Этот механизм предполагает, что каждый переданный пакет должен быть подтвержден приемником с помощью короткого служебного фрейма АСК (см. рис. 1.9). В случае, если подтверждение не поступило, передатчик повторно передает фрейм. Перед передачей станция проверяет занятость несущей путем прослушивания радиоэфира. Если перед этим передавались фрей- 22
Глава 1. Основы беспроводных технологий 207 5 207 L 2077 207 H 2D7!= 20Ж 20S 208 208 208 208 208 *■ ГЕК T ' F ь S.235467 5.235496 p .2357 59 .2357$t> .235824 . 2358r>2 .236115 .23G372 .236485 ■402.11 ■■/Subtyp ли*? Contr Version: type: Con Subtype: 200 - 2 200.2 2(10.2 200.2 200.2 200,2 e: Ai.kn 2.1U1 2.101 2.1. 2.КП 2Д 2.1 2.101 wledgene )!: 0x01)1)4 (Norm l trol frame (1) 13 Flags: 0x0 Duration; 0 Receiver ли dress: 3O:12;fO: D-U«k_S4;a2 200.2,2. D-Linfc_8 200.2.2. IntelCor 2011.2.2. 200.2.2 200.2.2 200.2.2 D-Link_e it (»3) a]) 2c:03:a2 (Int 1 4:д2 101 _2c: 1 101 101 2. 4:32 :bl (R :Ы (R :fcl (R IEEE TCP IEEF KT 1ЁЕЕ TCP ГСР TCP TCP IKHE r...2c:03:a2) 802 eo2 802 802 11 .11 .11 Ac 23 Ac as Ac -'5 3 0 > kncv. 327 knov 1 > 32? 327 utime A- knov, ledge 3S327 ledge - plio > 337 * 137 > 353 ledge ititnt [RST, ACK] Seq^O A- mont turis [SVN'j Seq--0 Ac merit (KVr, ACKf S«q=» A< 2 [SVK] 5<?q-0 Ack=0 13 [SYN] Seq^O Ack-C 2? [R&T, ACKJ Seq^O ment ic^O Win=0 Len=O к^СГ ^i:-i-Z448 Len=C> k={! i¥in=!) I,f7»=0 ,Vi))=iO24 Len=0 Win-2048 Un=0 Ack=O Win^O L^n=0 Рис. 1.9. Передача и подтверждение фреймов мы других станций, то на основании поля «Duration» заголовка пакетов станция изменяет вектор занятости сети (Network Allocation Vector, NAV) представляющий время, в течение которого несущая будет занята другими станциями. По истечении NAV станция проверяет занятость несущей и, если она свободна, выжидает в течение интервала DIFS (см. далее) и времени отсрочки передачи (backoff time). Диаграмма, описывающая процедуру доступа к несущей, приведена на рис. 1.10. Значение параметра backoff time рассчитывается как произведение случайного числа, фиксированного интервала времени слота (Slot Time), зависящего от скорости передачи, и значения окна коллизии (Contention Window, CW). В случае неполучения подтверждения переданного пакета (возникновения коллизии) станция экспоненциально увеличивает значение CW, чтобы уменьшить вероятность повторения коллизии в загруженной сети. Например, в сетях 802.11 д значение этого параметра изменяется от 15 для первой попытки передачи до 1024 для шестой и последующих попыток передачи. Таким образом, в средах с высоким уровнем ошибок время Проверка несущей DIFS DIFS Несущая занята PIFS SIFS Проверка несущей v Отсрочка передачи Время, t Рис. 1.10. Процедура доступа к несущей 23
Безопасность беспроводных сетей ожидания перед передачей увеличивается, что снижает вероятность одновременного начала передачи данных различными станциями и как следствие - коллизии. Дополнительным методом контроля виртуальной несущей является механизм RTS/CTS. Этот механизм не используется в сетях 802.11 по умолчанию, но может быть включен в системах с высоким уровнем коллизий или сложной топологией, например, при возникновении эффекта скрытого узла . Если этот механизм включен, перед отправкой пакета станция отправляет служебный пакет Request-to-Send (RTS), в ответ на который принимающая станция отсылает Clear-to-Send (CTS). Поскольку эти пакеты достигают всех станций в радиусе действия обоих передатчиков, все они будут уведомлены о том, что несущая будет занята некоторое время. Естественно, использование данного механизма снижает пропускную способность сети в целом (например, в сети 802.11д скорость передачи падает с 25 до 13 Мбит/с), но позволяет работать в ситуациях, когда CSMA/CA дает сбои. Задействовать механизм RTS/CTS имеет смысл в тех ситуациях, когда станции разделяют значительные расстояния или когда между ними находятся препятствия, мешающие корректному определению статуса несущей. В ОС Windows для того, чтобы задейст- Рис. 1.11. Скрытый узел и RTS/CTS Эффект скрытого узла (hidden node) возникает в ситуациях, когда две и более станции имеют возможность взаимодействовать с точкой доступа, но не друг с другом, например, из-за препятствия между ними (рис. 1.11). В этом случае велика вероятность возникновения коллизии, поскольку станции не имеют возможности корректно определить занятость несущей в связи с тем, что сигналы соседнего узла их не достигают. 24
Глава 1. Основы беспроводных технологий Intet(R) PRO/Wireless 3JOOBG Network General Advanced | Ortver | Resources | fintel) The following properties are available for this network adapter, i Click tfie property jiou went to change and select a new value.' Property: Value: Г Use default value Power Management ■ Preamble Mode _LJ iL____J-tJ JRTS/CTS enabled zl j Description- Useio avoid dalacoisions in a mixed 802.11b/802.11g >■) 1 environment, RTS/CTS should be used in an environment whrae j clients may not hear each other. CTS-to-self can be used to gain | more throughput in an environment wheie clients are in close | pionimity and can hear each other. . j Hardware Version: MAC Address: 0.1.3 00:1?.CE:9F:34:90 OK Cancel Рис. 1.12. Включение RTS/CTS вовать эту функцию, используются настройки драйвера беспроводного адаптера (см. рис. 1.12). Координация доступа к несущей Приведенная выше информация относится к механизму распределенного координирования доступа (Distributed Coordination Function, DCF). Он является обязательным для устройств, совместимых со стандартом 802.11, используется по умолчанию и направлен на обеспечение одинаковой пропускной способности для всех станций в сети. В случае необходимости выделения трафика с различным приоритетом или обеспечения качества обслуживания может быть использовано централизованное координирование (Point Coordination Function, PCF). Механизм PCF поддерживается только в инфраструктурном режиме и должен быть реализован как в точке доступа, так и для клиентов беспроводной сети. В связи с вероятным наличием станций, не поддерживающих PCF, данный режим не отменяет распределенное координирование, но работает совместно с DCF. В случае использования этого механизма станция в процессе установления 25
Безопасность беспроводных сетей ассоциации в поле Capability Information пакета Association Request указывает, что функции PCF ею поддерживаются. В режиме PCF точка доступа периодически передает служебный фрейм Beacon, у которого в поле Duration содержится значение 32768. Это является сигналом для станций ориентироваться при расчете NAV параметрами полей CF-Parameter set из фрейма Beacon. По завершении передачи фрейма Beacon точка доступа передает станциям служебные фреймы CF-Pool, которые указывают на то, что станция имеет право передать один фрейм. Фреймы CF-Pool могут комбинироваться с фреймами данных и с фреймами подтверждения Acknowledgment. Поскольку право передачи станция получает только при получении фрейма CF-Pool, точка доступа получает возможность управлять приоритетом доступа клиентов к несущей. Если в это время с точкой доступа работают станции, не поддерживающие PCF, их доступ к несущей будет заблокирован на время обработки данных с более высоким приоритетом (Contention- Free Period), поскольку они будут использовать для расчета NAV значение поля Duration из фрейма Beacon. Таким образом реализована возможность обеспечения качества обслуживания и совместимость с методом доступа DCF. Разделение фреймов Для разделения фреймов и обеспечения различного уровня приоритетов сообщений в стандарте 802.11 используются интервалы ожидания (Inter Frame Spacing, IFS). В этом стандарте определено четыре интервала: Short IFS (SIFS), PCF IFS (PIFS), DC IFS (DIFS) и Extended IFS (EIFS). Интервалы перечислены по нарастанию времени ожидания. Разница между интервалами определяется значением тайм-слота (Slot Time), задаваемого спецификациями физического уровня. Это значение зависит также от режима работы сети (короткая преамбула или длинная преамбула). Интервал ожидания SIFS используется перед передачей фреймов подтверждения АСК, подтверждения передачи CTS и последовательности фрагментов одного пакета. Поскольку SIFS имеет минимальное значение, данные типы фреймов получают максимальный приоритет. При использовании метода PCF перед передачей инициирующего фрейма Beacon и перед повторной передачей неподтвержденного пакета точка доступа использует интервал ожидания PIFS. Этот промежуток времени больше SIFS, но меньше всех остальных, что увеличивает вероятность занятия несущей фреймами 26
Глава 1. Основы беспроводных технологий Преамбула Заголовок PLCP Заголовки MAC и данные CRC Рис. 1.13. Формат фрейма 802.11 PCF. Промежуток DIFS используется при передаче фреймов данных и управляющих фреймов. 1.3.3. Формат фрейма 802.11 Как уже говорилось ранее, беспроводной вариант Ethernet от проводного отличают не только особенности физического уровня, но и реализация канального уровня. Соответственно заголовки пакетов стандарта 802.11 сильно отличаются от заголовков, используемых устройствами стандарта 802.3. Как и в проводном варианте Ethernet, передачу кадра предваряет преамбула (рис. 1.13). Поле «Преамбула» служит признаком начала кадра. Длина поля зависит от используемой реализации 802.11. b/g. Заголовок PLCP (Physical Layer Convergence Protocol) всегда передается на скорости 1 Мбит/с и содержит информацию для физического уровня: • длину фрейма; • скорость передачи; • контрольную сумму заголовка. Поле «CRC» служит для контроля целостности фрейма. При приеме фрейма значение этого поля сравнивается с результатами расчета контрольной суммы на приемной стороне. Состав полей заголовка подуровня MAC приведен на рис. 1.14. Поле «Frame control» служит для указания типа фрейма и содержит ряд дополнительных параметров, подробнее обсуждаемых далее. Поле «Duration/ID» может содержать разные значения, в зависимости от типа передаваемого фрейма. Если передается пакет функции энергосбережения «Power Save (PS)-Poll», то в этом поле передается идентификатор станции, в остальных случаях - планируемое время занятия канала, используемое всеми станциями для обновления значения NAV. Frame Control Duration/ ID Адрес 1 Адрес 2 Адрес 3 Sequence Control Адрес 4 2 байта 2 байта 6 байт 6 байт 6 байт 2 байта Рис. 1.14. Заголовок подуровня MAC 6 байт 27
Безопасность беспроводных сетей В зависимости от структуры сети и направления передачи пакета поля «Адрес 1» - «Адрес 4» могут содержать разные значения. Поле «Адрес 1» всегда указывает МАС-адрес непосредственного получателя пакета. Если бит «То DS» в поле Frame Control установлен в единицу, то в этом поле указан адрес точки доступа. В этом случае он называется идентификатором базового набора обслуживания (BSSID). Во всех остальных случаях - это адрес станции-получателя пакета. Поле «Адрес 2» всегда указывает адрес непосредственного отправителя. Если бит «From DS» установлен в единицу, то в этом поле задается адрес точки доступа (BSSID), в противном случае - это адрес абонента. Поле «Адрес 3» указывает адрес получателя (расположенного в DS), если бит «То DS» имеет значение равное единице, или адрес отправителя (из DS), если установлен в единицу бит «From DS». В случае использования одноранговой сети или передачи служебных фреймов от точки доступа это поле содержит значение BSSID. Поле «Адрес 4» используется только в случае, если DS представляет собой беспроводную сеть. Возможные варианты использования полей адресации приведены в табл. 1.5, при этом применяются следующие сокращения: • DA (Destination Address) - адрес получателя фрейма; • SA (Source Address) - адрес отправителя фрейма; • BSSID (Basic Service Set ID) - МАС-адрес точки доступа в инфраструктурном режиме или идентификатор сети в одноранговом режиме; • RA (Recipient Address) - адрес точки доступа, принимающей фрейм; • ТА (Transmitter Address) - адрес точки доступа, передавшей фрейм. Таблица 1.5 Использование полей адресации ToDS 0 0 1 1 From DS 0 1 0 1 Адрес 1 DA DA BSSID RA Адрес 2 SA BSSID SA ТА Адрес 3 BSSID SA DA DA Адрес 4 - - - SA 28
Глава 1. Основы беспроводных технологий Туре Subtype More Frags Retiy More Data Рис. 1.15. Заголовки поля «Frame Control» Поле «Frame Control» является составным. Присутствующие в нем поля приведены на рис. 1.15. Поле «Protocol» содержит версию протокола, в данном стандарте-0. Поле «Туре» определяет тип фрейма. В рамках стандарта определено три типа фреймов: • Management (00) - фреймы для передачи служебной информации (Beacon, Probe Request, Authentication и т.д.); • Control (01) - используются для контроля доступа к среде передачи, например RTS, CTS, АСК; • Data (02) - служат для передачи полезной информации. Каждый тип фрейма делится на подтипы, определяемые значением поля «Subtype». Бит «То DS» установлен в единицу, если фрейм адресован точке доступа для передачи его в обычную сеть (с точки зрения стандарта - DS) или другому абоненту из данного BSS. Бит «From DS» установлен в единицу, соответственно, если фрейм направлен из DS. Бит «More Frags» установлен в единицу, если фрейм разбит на фрагменты и данный фрагмент не последний. Поле «Retry» указывает на то, что данный фрейм - повторная передача предыдущего фрейма, что позволяет принимающей станции распознавать повторяющиеся фреймы, возникающие из-за потери подтверждений. Бит «Power» означает, что после передачи данного фрейма станция переходит в режим энергосбережения из активного режима или наоборот. Бит «More Data» используется точкой доступа для того, чтобы сообщить станции, что для нее имеются данные (в буфере в точке доступа). Бит «WEP» указывает на то, что фрейм зашифрован по протоколу WEP. 1.3.4. Сервисы канального уровня В отличие от проводных сетей, где возможность взаимодействия на канальном уровне определяется только физическим подключением, в стандарте 802.11 определен ряд механизмов установления соединения между станциями и точками доступа. 29
Безопасность беспроводных сетей Сканирование радиоэфира Перед подключением к точке доступа клиент проводит активное и пассивное сканирование радиоэфира с целью определения доступных сетей. В ходе пассивного сканирования станция прослушивает радиоэфир на предмет обнаружения передаваемых точками доступа фреймов Beacon. При активном сканировании станция рассылает широковещательные фреймы Probe-Request по всем каналам 802.11. Во фреймах может указываться SSID сети, поиск которой осуществляет клиент. В ответ на Probe Request точкой доступа отсылаются фреймы Probe Response, содержащие ту же информацию, что и пакеты Beacon (см. рис. 1.16). 38 1 39 1 41 1 42 1 43 1 44 1 45 1 46 1 .876027 D-Link_a4:a2:Ы .897938 IntelCor_2c:02:63 .899836 D-Link_34:a2:bl .0001SO .901484 D-Linfc_84:a2:bl . 90Э062 D-Link_84:a2:bl .903374 .905199 D-Link_84:a2:bl 47 1.921493 IntelCor_2c:02:63 > Fram 40 (62 bytes on wire, 62 b " IEEE 802.11 Broadcast Broadcast IntelCor_2 D-Link_84: InteKor_2 IntelCor_2 D-Link_84; IntelCor_2 Broadcast Type/Subtype: Probe Response (5) " Franc Control: 0x0050 (Normal) Version: 0 Type: Management frane (0) Subtype: 5 > F1 Dura Dest Soul BSS Fra ags: 0x0 tion: 314 ination address: 00:12:f0: ce address: OO:Od:88:84:a2 2c:02:63 (I :bl (D-Link IEEE IEEE :02:63 IEEE 2:bl (R IEEE :02:63 IEEE :02:63 IEEE 2:bl (R IEEE :O2:63 IEEE IEEE d) itelCor_2c:02 JJ4:a2:bl) Id: 00:0d:88:84:a2:bl <D-Link_S4:a2:bl) nent nueib Sequence nunb ■"■ IEEE 802.11. wir > Fixed paraneт v Tagged parane > SSID parane t> Supported R > DS Paranete :r: 0 er: 1207 sless LAN nanager ers (12 bytes) ters (26 bytes) tex set: "AP" ates: 1.0(B) 2.0( r set: Current Ch t> ERP Infomation: no Non-ERF ent fraite B) 5.5(B) 11.0(B) 6.0 12 anne.l: 6 STAs, do no I- Extended Sunoorted Rates: 9.0 18.0 48.0 t use protect 54.0 Ь02- 802. 802. 802. ao2. 802. 802. 802. 802. :63) .0 24 ion, Beacon frame, Probe Request, Probe Response Acknowledgenen Probe Response Probe Response Acknowledgeuen Probe Response Probe Request .0 36.0 long preambles SSID: ' SSID: , SSID: t , SSID: . SSID: t , SSID: SSID: AP" Broadcast "AP" "AP" "AP" "AP" Broadcast Рис. 1.16. Сканирование сетей На основании полученной информации, такой как SSID, отношения сигнал/шум, поддерживаемые стандарты 802.11, и собственных настроек станция принимает решение о соединении с одной из доступных сетей и точек доступа. После выбора точки доступа станция должна пройти процесс аутентификации и установить ассоциацию с сетью. Поскольку одни и те же механизмы используются для подключения к точкам доступа и к IBSS, в этом разделе под термином «сеть» подразумевается точка доступа или станции одноранговой сети. 30
Глава 1. Основы беспроводных технологий Аутентификация В сетях 802.11 используются два вида аутентификации: открытая система (Open System) и общий ключ (Shared-Key). При использовании открытой системы на запрос клиента сеть отвечает подтверждением аутентификации или отказом. Поскольку никаких данных для аутентификации от клиентов не требуется, единственным критерием отказа может быть МАС-адрес клиента, то метод Open System представляет собой отсутствие аутентификации как таковой. Но именно Open System используется при работе таких механизмов защиты, как 802.11 i и WPA. В этих случаях станция сначала устанавливает соединение в открытом режиме, после чего проходит аутентификацию по протоколу ЕАР. Аутентификация с общим ключом может применяться при использовании шифрования WEP. В этом случае происходит обмен сообщениями между станцией и точкой доступа по следующей схеме: • Станция отправляет запрос на аутентификацию. • Сеть посылает станции 128 байт случайного текста. • Станция зашифровывает полученный текст с использованием WEP и отправляет его в сеть. • Сеть проверяет, что принятый текст может быть расшифрован с помощью используемого ключа WEP и сравнивает принятые данные с переданными. • В случае совпадения данных станции передается фрейм подтверждения аутентификации. Несмотря на кажущуюся стойкость, использование метода аутентификации Shared-Key не рекомендуется в связи с тем, что он облегчает злоумышленнику проведение криптографических атак с известным открытым текстом на WEP. Ассоциация После успешной аутентификации станция посылает в сеть фрейм запроса ассоциации (Association Request). В ответ сеть отправляет фрейм, содержащий параметры BSS, после чего клиент считается подключенным к сети и получает возможность участвовать во взаимодействии.* * При использовании механизмов 802.1 X, WPA-PSK и WPA2-PSK установление ассоциации не предполагает наличия полноценного подключения к сети. Станции предстоит дополнительно пройти аутентификацию, предписанную методом защиты. 31
Безопасность беспроводных сетей 90 4.833813 IntelCor_2c:03:a2 D-Link_84:а2:Ы IEEE 802.11 Authentication 91 4.834130 IntelCor_2c:03:a2 IEEE 802.11 Acknowledgement 92 4.835191 D-Link_84:a2:bl IntelCor_2c:03:a2 IEEE 802.11 Authentication 93 4.835507 D-Link_84: a2:bl (R IEEE 802.11 Acknowledgement 95 96 97 as 99 4 4 4 4 4 •8365S1 .83722G .837541 .844381 .946781 D-Link_84:a2:bl D-Link 84:a2:bl D-Link 84:a2:bl IntelCor_2c:O3: IntelCor_2c:Q3: D-Unk_84:a2:bl Broadcast Broadcast a2 a2 (R IEEE IEEE IEEE IEEE IEEE 802.11 802.11 802.11 802.11 802.11 Acknowledgement Association Response Acknowledgement Beacon frame. SSID: Beacon frame. SSID: "AP" "AP" Frame 94 (48 bytes on wire. 48 bytes captured) ■ IEEE 802.11 Type/Subtype: Association Request (0) ' Frame Control: OxOOOO (Normal) Version: 0 Type: Management frame (0) Subtype: 0 > Flags: 0x0 Duration: 314 Destination address: 00:0d:88:84:a2:bl (D-Link_84:a2:bi) Source address: 00:12:fO:2c:03:a2 (IntelCor_2c:03:a2) BSS Id: 00:0d:88:84:a2:bl (D-Link_84:a2:bl) Fragment number: 0 Sequence number: 896 ' IEEE 802.11 wireless LAN management frame v Fixed parameters (4 bytes) > Capability Information: 0x0421 v Tagged paraneters (20 bytes) > SSID paraneter set: "AP" l> Supported Rates: l.O(B) 2.0(B) 5.5СБ) ll.O(B) 6.0 12.0 24.0 36.0 ► Extended Suonorted Rates: 9.0 18.0 48.0 54.0 Рис. 1.17. Ассоциация с точкой доступа Перехваченные фреймы установления ассоциации и аутентификации приведены на рис. 1.17. В этом случае в качестве клиента выступает машина с МАС- адресом 00:12:Ю:2с:03:а2, а МАС-адрес точки доступа равен 00:0d:88:84:a2:b1. При переключении между точками доступа одной сети (roaming) станция может использовать процесс установления ассоциации, в ходе которого вместо запроса ассоциации посылается фрейм Reassociation, содержащий информацию о старой точке доступа. В этом случае новая точка доступа берет на себя функции по передаче параметров станции (например, ключей шифрования) с исходной точки доступа с помощью протокола взаимодействия точек доступа Inter Access Point Protocol (IAPP), определенного в 802.11F, или используя другие механизмы, например Cisco Fast Secure Roaming. Для разрыва виртуального соединения используются управляющие фреймы завершения ассоциации и отказа от аутентификации (Deauthentication и Disassociate). Эти фреймы могут отсылаться как станцией, так и сетью в зависимости от ситуации. 32
Глава 1. Основы беспроводных технологий 1.4. Основные инструменты В настоящее время существует большое количество инструментов для работы с беспроводными сетями. Различные их классы будут рассматриваться по ходу изложения. В этом разделе мы коснемся базовых инструментов, необходимых для того, чтобы разобраться в особенностях реализации протоколов 802.11х, а также применяемых в «боевых выездах». 1.4.1. «Боевые выезды» «Боевыми выездами» (Wardriving) называют процесс сбора информации о точках доступа в процессе перемещения по местности. Как правило, для этого используется какое-либо транспортное средство, что отражено в названии. Однако можно собирать информацию о беспроводных сетях во время неспешной прогулки, превращая тем самым «выезд» в «боевой поход» (Warwalking). Технически Wardriving представляет собой сбор и анализ управляющих фреймов (Probe Response, Beacon), рассылаемых точками доступа. Как правило, их достаточно для того, чтобы установить производителя оборудования, поддерживаемые скорости передачи, используемые механизмы защиты. Более совершенные инструменты могут собирать информацию из фреймов данных и запросов подключения (Probe Request). Как правило, эти результаты не включаются в отчет в связи с отсутствием необходимой информации (SSID сети во фреймах данных или информации о местонахождении сети в запросах подключения). Зачастую инструментарий для «боевых выездов» поддерживает работу с приемниками GPS, что позволяет привязывать обнаруженные точки доступа к координатам на местности и составлять «беспроводные карты» различных территорий. В свое время авторы участвовали в проекте создания «автономной системы Wardriving», представлявшей собой встраиваемый компьютер с беспроводной картой и GPS приемником и модулем GSM для удаленного управления. Устройство планировалось установить в багажнике московского такси, для получения актуальной информации о беспроводных сетях Москвы и ближайшего Подмосковья. Технология Wardriving может использоваться и для «охоты» за незащищенными клиентами беспроводной сети. В этом случае эмулируется точка доступа, отвечающая на любые запросы подключения. Информация о перехваченных запросах на подключение сохраняется и анализируется. Подробнее эта техника описана в главе, посвященной защите клиентов беспроводных сетей. 33
Безопасность беспроводных сетей Plajdng Ertetr^J Ant erne UpT*re 0 Рис. 1.18. Анализатор спектра Wildpackets OmniSpectrum 1.4.2. Классы инструментов Существует три класса инструментов, используемых для обследования и изучения беспроводных сетей: анализаторы спектра; активные сканеры (стамблеры); сетевые анализаторы (снифферы). Анализаторы спектра Анализаторы спектра часто используются при обследовании радиосети с целью выяснения помеховой обстановки в различных ее частях. Как правило, программное обеспечение анализатора спектра является частью сетевого анализатора, хотя существует ряд решений в виде отдельного устройства. На рис. 1.18 представлена копия экрана анализатора спектра Wildpackets OmniSpectrum. С помощью анализатора спектра можно выявлять не только точки доступа, но и другие источники радиосигнала, например телефоны стандарта DECT и т.д. Сканеры беспроводных сетей Активные сканеры используют механизмы активного и пассивного сканирования, применяемые станциями 802.11 для обнаружения точек доступа. Для этого они рассылают по всем доступным каналам запросы Probe Request с пустым значением идентификатора 34
Глава 1. Основы беспроводных технологий 3M'1,v,.«. * ^ Chanreis * *У homevrafk . Л. «M10 • A «lanlO? * -d. vrfan108 ^ЕггодайлО» g EncwtronOn 'и ESS |4P] Дя IBSS Pe«] J CFPoUfe '5 ShoftPie«rtie 4 PBCC £ ShottSbtTmeEHg) 5Щ f MAC 1 SSID 1 Chm OotBOOABtK) wlaniOS 5 OOOS007C790 >rlgn110 5 ОШХШЭО »W,107 5 ®DO3O58753O hwnew* 9' ®00SOO89A9O «■ 1 Оооэосввсэо мтще i Speed V«n. 11 Mbps 11 Mbp) 11 Mbgs 54 Mbps 11 Mbps UMbps I Type Er« AP AP AP AP WEP AP AP SNR 18 17 16 43 24 23 Sigrtal* 1 Ncne- ■80 100 -82 100 S3 100 -49 -100 ■69 -100 ■72 -100 SNR<- IP 20 19 17 51 31 28 Рис. 1.19. Утилита Netstumbler сети (SSID) и анализируют полученные в ответ фреймы Probe Response, а также пакеты Beacon точек доступа. На основании этих данных пользователю выводится информация о МАС-адресах точек доступа и их SSID, используемом DSSS канале, мощности сигнала (точнее отношение сигнал/шум), методах шифрования. Название данного класса программ «стамблеры» произошло от популярной утилиты Netstumbler (рис. 1.19). Очень часто активные сканеры называют «Wi-Fi снифферами», что абсолютно неверно. Сканеры не выполняют основную задачу анализатора - сбор и обработку пакетов. Они просто используют предоставляемый сетевым адаптером список доступных сетей и представляют его в более удобном виде, чем стандартные утилиты ОС. Анализаторы беспроводных сетей В отличие от проводных сетей, где неселективный (promoscius) режим поддерживается большинством адаптеров и даже в стандартную поставку большинства операционных систем входит сетевой анализатор, в беспроводных сетях все несколько сложнее. Для сбора сетевого трафика необходимо перевести адаптер в режим мониторинга (rfmon). Для этого используются специализированные драйверы, которые существуют далеко не для всех беспроводных адаптеров. Но, переведя свой адаптер в режим мониторинга, вы получаете возможность прослушивать трафик не только той сети, к которой вы сейчас подключены, но все сети в радиусе радиовидимости. Как правило, в поставку коммерческих сетевых анализаторов входят драйверы для распространенных сетевых адаптеров (см. рис. 1.20). Перед выбором сетевого адаптера необходимо убедиться 35
Безопасность беспроводных сетей Файл Правка &ив П£рехоа ^кяааки инструменты | ^й©»Key Recovery О ЯГ Your Carr £$ Pi-odsjc?. Catalog CommView RA » CommView for WiFi CommView for WiFi PPC NetResident SmartWhors CourttryWKois CouniryWhois DB EsseRtial NetToois Live Support purchase jdowniaad Home - =. Products * CommVt support ew (or WiFi partners contact about us Live Help CURRENTLY New 8O2.11b/g and 802.11a/b/g Adapters 3Com officeConnact Wireless а/Ь/g PC Card {3CRWE1S4A72) Osco Aironet 802.11a/b/g Wirsiess Canibus Adapter D-Link AirPlus xtreme G DWL-G520 Adapter D-Unk AirPlus Xtreme G 0WL-G65O Adapter " D-Link AirPlus G DVVL-G630 wireless Cardbus Adapter (Rev. C, Rev. D) D-Link AirXpert DWL-AG520 Wireless PCI Adapter D-Link AirPremier DWL-AG530 Wireless PCI Adapter D-Link Airxpert DWL-AG650 wireless Cardbus Adapter D-Link AirXpert DWL-AG660 Wireless Cardbus Adapter D-Link AirPremter DWL-G680 Wireless Cardbus Adapter Intel PRO/Wireless 2200BG Mini PCI Adapter (BETA VERSION) • Intel PRO/Wireless 291SABG Mini PCI Adapter (BETA VERSION) * linkSys WPC55AG Dual-Sand wireless A-t-G Notebook Adapter NETGEAR WAG511 802.Ua/b/9 Dual Band Wireless PC Card NETGEAR WGSUT 108 Mbps wireless PC Card NETGEAR WGSUU 54AG+ Wireless PC Card NETGEAR WG511U Oouble 108 Mbps wireless PC Card Proxim ORINOCO 802.Ua/g ComboCard Gold 8480 Proxim ORINOCO 802.11a/g ComboCard Silver 8481 Proxim ORINOCO 802.Ua/g PCI Adapter 8482 Proxim ORINOCO 8O2.Ub/g ComboCard Gold 8470 Proxim ORiNOCO 802.Ub/g ComboCard Silver 8471 SMC 2336W-AG v2 universal wireless Cardbus Adapter TRENDnet TEW-501PC 108Mbps 802.Ua/g Wireless CardBus PC Card Передачи данных cuit(rtMaiaos.aanj... Рис. 1.20. Список поддерживаемых адаптеров CommView for WiFi что он поддерживается инструментами, которые планируется использовать. Вообще, процесс выбора аппаратной составляющей является отдельной сложной темой, которой мы коснемся в разделе, посвященном оценке защищенности сетей. В качестве примера можно привести тот факт, что когда у одного из авторов возникла необходимость в обновлении «железа», на это ушло два месяца и почти триста долларов. В настоящее время стоит ориентироваться на адаптеры на базе чипсетов Atheros, как наиболее популярных среди разработчиков. Работа с беспроводным анализатором мало отличается от работы с подобными программами для проводных сетей. Как правило, имеется окно со списком пакетов, детальная расшифровка полей и содержимое пакета в шестнадцатеричном виде (см. рис. 1.21). 36
ГлаваТ. Основы беспроводных технологий I Чв Ss#*W *•* Тин a^tWQB нивб псф •1 1 >! Рис. 1.21. Анализ пакетов в CommView for WiFi Дополнительной возможностью беспроводных анализаторов является переключение между каналами (channel hopping). Поскольку адаптер может работать только на одном канале в конкретный момент времени, для сбора пакетов по всему частотному диапазону необходимо переключать его между каналами через заданный промежуток времени. В большинстве анализаторов можно указать список каналов и время работы на каждом из них (см. рис. 1.22). Scanning Scant* Options | Г* t|de«wedhoste j p Actiwnafcifccoveryu | gecondsperchanne); 3eeREaw |7 SI г P $aysou«ci when anew tf or station «detected — 1 -17 Scar Опте f7l Г а -i Scar г - f~ IS Г ,ч-; Г -5- 5O2,:ib.lg SOi llb/s ftmrw ^toscan; Г2 ГЗ Г 13 Г и Г > Г . Г -f Г •; Г :.. Г -.- Г :.•■ Г :к Scanrtngdiannei^ к —- Г4 Г" ' Г .: Г:- Г г ■• ... Г5 Г i; Г :: . Г I. -. Г ■„•. Fs Г" Г !л Г •;• Г .' — — Г 7 Г .-> г -- Г : . Г ..-. Ш Г8 Г™ v Гг; Г г.- Г ,.•: Гэ Ге- Г :•■ Г ' *.-.'■». i \ i Гю Г -г.. Г а; Г >■ 1 i 17 it ; Г С ; г.-. • : г -. ' Рис. 1.22. Настройка каналов в CommView for WiFi 37
Безопасность беспроводных сетей WEP/WPA Keys Key 1 1234512345123123451234S123 Key 2 КеуЗ Key 4 WPA- WPA-PSKPassphrase: Load,.. Save... OK Cancel Рис. 1.23. Настройка ключей шифрования \ fife Search view ; $M W (ft ffo | Protocol I ec ctrlack £2 1P1CP г: ctrlaoc £4 1P/UCP 8S IP1JD? S6 1РДЮР So IP'USP S9 CTRLiCK 9; 1РДЛУ DxOQF 5x0 li 3x015 2x015 ikOIA за *; ;ь г? "Л £9 «г г4 es ?< Capture Off Tools Settnes ftJes Hefc vieKs 1 **^ Latest IP Connccbons *~~ Рк$&&& I VVPA Deer.-pied \у?й Decfj'ptec ,,-?й. Deoitited iVPA: Dec.yated *VPA: Decrypted »V?A; Decrypted A-pa De:rvpfeC V;E* Decr«JteC :' «r «s5 " 4» €1 -E £ " '4 CI 4 S4 ;■■ 3- ; sr " "* : « 79 2E 72 75 . « Padats. 2 379 i Keys ^1 I СМДС -J A -l V oB 3 1 ja S e ч Ш a- u ta- * С 2 cujU.j.-« 9j D ~'1 =u tSLr* 9j ID «^ tsu^ 91 ID 2 j ^ 5-е эЗ ID B2 i E i P ь- - -s- Д Jlag»no| ♦***»! к'*1*™в| 1 DeStMAC D -ik 34«o 4 Ci.-*34&s 34 Fli iuSe э ID 6 D тк.з-4 ° '4 nk 34 6- 4 0-иЫ '4 55 4 E'oadrs t P u5« Ш Б foad st D -Tk 34 =5 V p. p «ь- а « . * Y S « f .i .. i^y.ru.. Auto-«av*Tg off ^ 63 J l« 13 3 !""} =C l"i *6 169 a. 6 l*ff t a з is- 1? 63 0 16* ( 92 зз 1M -J N A 19*. 5а О KS 1^2 .63 0 1йэ ^. Ju -r* A <~Ruies Off + ^iweiiKfW f Я, L' + С ♦ i-P (•few НГГР/1.1 '«Woe GET «1 1 И ^■I'^Ji!^. Рис. 1.24. Расшифрованные пакеты WPA-PSK 38
Глава 1. Основы беспроводных технологий Многие анализаторы поддерживают функцию декодирования пакетов WEP и WPA-PSK. Для этого в настройках анализатора задаются ключи WEP или парольная фраза WPA (рис. 1.23 и 1.24). Понятно, что для декодирования WPA анализатор должен перехватить процесс установления соединения, поскольку ключ шифрования WPA выводится обеими сторонами в процессе начальных переговоров. Кроме уже упоминавшегося выше CommView for Wi-Fi достаточно удобными анализаторами беспроводных сетей являются продукты линейки Airmagnet (http://www.airmagnet.com), легендарный Airopeek (http://www.wildpackets.com/) и его бесплатный вариант OmniPeek Personal (http://www.omnipeek.com/). В операционной системе Linux для работы в режиме мониторинга также необходимо установить драйвер, поддерживающий этот режим. Причем использование различных вариантов ndis_wrappers, конечно, позволит работать с беспроводной сетью, но не даст возможности анализа трафика в режиме мониторинга. Наиболее популярными драйверами являются MadWifi (http://sourceforge.net/ projects/madwifi/) для чипсетов Atheros, HostAP (http://hostap.epitest.fi/) для карт на основе Intersil Prism и ipw2200 для Intel PRO/Wireless (http://ipw2200.sourceforge.net/), встроенных во многие ноутбуки. Простой способ проверить, работает ли та или иная карточка в режиме мониторинга, заключается в поиске ее в списке устройств, поддерживаемых популярным анализатором беспроводных сетей Kismet (http://www.kismetwireless.net/). Установка драйверов может быть далеко нетривиальной задачей. Однажды авторам пришлось потратить полдня на «прямой перебор» версии прошивки (firmware), драйверов и утилит для поддержки 802.11 в ОС Linux для того, чтобы заставить особо капризный сетевой адаптер работать в режиме мониторинга. Но ваши усилия будут вознаграждены, поскольку большая часть программ, необходимых для проведения работ по оценке защищенности беспроводных сетей, создана под Linux. После установки драйверов сетевой адаптер может быть переведен в режим мониторинга с помощью команды iwconfig: #iwconfig athO mode monitor channel 6 Для анализа пакетов беспроводных сетей может использоваться привычный сетевой анализатор Ethereal/Wireshark (или tcpdump для любителей этой программы). Анализатор 802.11 поддерживает декодирование и гибкую фильтрацию фреймов 802.11, расшифровку пакетов WEP, восстановление сессий прикладных протоколов и множество других полезных возможностей. К сожалению, Ethe- 39
Безопасность беспроводных сетей real/Wireshark не позволяет динамически перестраиваться на другие каналы во время работы, но это можно сделать либо с помощью утилиты iwconfig, либо собирая фреймы с помощью другой программы, например Kismet. Для выбора канала используется следующий синтаксис команды iwconfig: #iwconfig athO channel 6 Как нетрудно заметить, копии экрана в разделе, посвященном канальному уровню беспроводных сетей, сняты именно с Ethe- real/Wireshark. Одним из самых популярных инструментов для мониторинга беспроводных сетей является Kismet. Программа поддерживает большое количество различных адаптеров и обладает широкими возможностями по автоматическому анализу данных. Можно выделить следующие основные возможности Kismet: • распределенная архитектура клиент/сервер; • поддержка работы с несколькими сетевыми адаптерами; • переключение между каналами 802.11 a/b/g; • извлечение информации о сетях из фреймов Beacon, Probe Request, Probe Response, пакетов данных; • определение информации об используемых методах защиты; • определение точек доступа со стандартными настройками; • определение IP-адресации в беспроводной сети; • обнаружение некоторых атак в беспроводных сетях; • сохранение трафика в формате tcpdump/Ethereal/Wireshark; • поддержка GPS. Настройка Kismet достаточна проста. Параметры сервера хранятся в файле kismet.conf (обычно в /usr/local/src), а клиентской части приложения - в файле kismet_ui.conf После установки необходимо указать идентификатор сетевого адаптера в параметре source сервера, например madwifi_ag, athO, madwifi_ag. Может быть указано несколько строк source, если в системе установлено больше одного сетевого анализатора. Возможные значения этого параметра, и соответственно, список поддерживаемых драйверов приведен в файле Readme дистрибутива. Затем необходимо определиться с последовательностью переключений между каналами. Если планируете работать только с одним каналом или только с сетями 802.11 b/g, стандартные настройки переключений можно изменить путем модификации параметров defaultchannels. За работу механизма переключения отвечают параметры channelhop и channelvelocity (количество переключений в секунду), хотя остановить и запустить процесс сканирования можно и через графический интерфейс. 40
Глава 1. Основы беспроводных технологий Для уменьшения объема собираемых данных можно отключать сбор фреймов Beacon (beaconlog), пакетов, содержащих ошибки, управляющих пакетов и т.д. При отключении сбора Beacon в журналах сохраняется только первый обнаруженный фрейм для каждой точки доступа. При проведении боевого выезда лучше запретить сохранение перехваченных данных, чтобы не нарушить законы Российской Федерации. Для этого из параметра logtypes необходимо исключить значение dump. Дополнительно можно задавать фильтры на обрабатываемые пакеты по МАС-адресам отправителя, получателя и точки доступа. За это отвечают параметры filterjrack, filter_dump и filter_export. Программа также поддерживает возможность декодирования трафика WEP в случае, если ключ шифрования известен. Для работы этой функции в параметре wepkey необходимо задать BSSID точки доступа и используемый ею ключ WEP. При запуске Kismet не стоит забывать, что программа работает от непривилегированного пользователя, и соответственно, у учетной записи должны быть права на запись в ту папку, где Kismet сохраняет журналы работы. После настройки базовых параметров Kismet, приведенных выше, основной инструмент для «боевого выезда» готов к использованию (см. рис. 1.25). Г ■Network List—(Channel)- Nane Golden_WiFi <Data Networks> ColdenJUFi ADSbJKireless TI-AR7WRD 3Com ADSL_Wireless ADSL_Wireless Golden_WiFi linksys <no ssid> Golden_WiFi Colden_WiFi ADSL_Wireless GoldenJfiFi T W Ch A N Oil G N OH A N Oil A N Oil A N Oil A Y Oil A N Oil A N Oil A N Oil A N Oil A N Oil A N Oil A N Oil A N Oil A N Oil Packts Flags 13 827 G 2 4 4 1 130 2 1 1180 131 T4 176 146 1403 121 IP Range 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 64.14.20.246 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 —81% (+) Down- Ntwrks 742 Pckets 43547 Cryptd 2200 Weak 0 Noise 88 Discrd 88' Pkts/s 15 Elapsd LOO:4O:12- -Status- expected 9Ь4770с1ЬЗ - this could indicate AP spoofing Found new network "KpSovA" bssid OO:O7:OE:B9:7O:BA Crypt N Ch 4 i Found new network "000740620SE2" bssid OO:O7:40:4D:0C:DE Crypt N 54.00 mbit L-Batterv: 54% 0hS7m26s i 11.00 mbit Ch 11 8 Рис. 1.25. Kismet в действии 41
Безопасность беспроводных сетей В заключении главы приведем результаты «боевого выезда» на Садовое кольцо города Москвы, предпринятого авторами летом 2006 г. 1.4.3. Обследование беспроводных сетей Москвы При обследовании использовался метод Wardriving, заключающийся в сборе управляющих фреймов Beacon и Probe Response. Передаваемые в сетях данные, а также координаты точек доступа не сохранялись. Работы проводились в середине рабочего дня. В отличие от предыдущих обследований осуществлялся одновременный сбор информации с помощью трех аппаратных средств: • адаптер SRC Cardbus 802.11a/b/g 300mW с всенаправленной антенной 12 дБ, далее +10; • встроенный сетевой адаптер Intel Centrino, далее ipw2200; • встроенный сетевой адаптер КПК Fujitsu Simens Pocket Loox 720, далее PDA. В последнем случае намеренно применялось программное обеспечение, не переводящее адаптер в режим мониторинга, но использующее функции активного и пассивного сканирования (так называемые «стамблеры»). В ходе обследования было зарегистрировано около 700 точек доступа (см. табл. 1.6). Таблица 1.6 Количество точек доступа +10 682 ipw220 484 PDA 403 Большая часть точек доступа (61%) поддерживает Enhanced Data Rate, т.е. скорости выше 11 Мбит/с. Это позволяет сказать, что устройства 802.11д являются наиболее распространенными. Была обнаружена только одна станция, работающая в диапазоне 5 ГГц, соответствующем стандарту 802.11а. Было идентифицировано оборудование 42 производителей. Как видно из рис. 1.26 большую часть составляют устройства производства D-Link, Nortel и Cisco (включая Linksys). При оценке показателей защищенности учитывались точки доступа, для которых не удалось определить идентификатор сети, одноранговые (Ad-Hoc) сети и сети, не использующие шифрование. Значения этих показателей для различных методов сбора информации представлены на рис. 1.27-1.29. 42
Глава 1. Основы беспроводных технологий 10% 31% 16% 17% Рис. 1.26 Идентифицированное оборудование: 17% - не определено; 16% (пр.) - D-Link Corporation; 16% (лев.) - Hortel; 10% - Cisco Systems; 6% - Z-COM; 5% - Alpha Networks Inc.; 31 % - другие Как видно из рис. 1.27 и 1.28, значения показателей защищенности, полученные с использованием дополнительного оборудования, не сильно отличаются от значений, полученных со стандартным беспроводным адаптером. Несколько большее количество Ad-Hoc сетей вполне объясняется большей чувствительностью приемника и меньшей мощностью подобных сетей. 100% -| 90% ■ 80%- 70%- 60%- 50%- 40% i 30%- 20% -i 10%- 0%i ш ж ж ■Нн№ BSS ш —ш—■■ ■— щ 1 « SSID Broadcast В S9 В 99 19Н^——1 шшттттшц т Ш\ Qypt Рис. 1.27 Показатели защищенности для +10 43
Безопасность беспроводных сетей Рис. 1.28 Показатели защищенности для ipw220 100% 1 90%- 80% ■ 70% ■ 60%- 50%- 40%- 30%- 20%- k\. •."''"■ A1*:' 10%- Wi шш Фяе> BSS ш — — "^ > ■ ■ ш Crypt Рис. 1.29 Показатели защищенности для PDA 44
Глава 1. Основы беспроводных технологий 31% 59% Рис. 1.30. Используемые механизмы защиты: 2% - WPA2; 8% - РРТР; 31 % - WEP; 0% - WPA; 59% - None Однако результаты, полученные с помощью КПК с адаптером, работающим в режиме активного сканирования, существенно отличаются. Всего лишь 17% сетей были идентифицированы как защищенные. Это лишний раз демонстрирует недостоверность результатов «боевого выезда», полученных с помощью различных «стамблеров». По сравнению с предыдущими обследованиями, проведенными в 2005 г., произошел рост количества устройств, поддерживающих WPA и WPA2 (802.11 i). Если при предыдущих обследованиях он не превышал восьми процентов, то сейчас составляет более десяти процентов от всех устройств. Количество, устройств, использующих WEP, все еще достаточно велико (см. рис. 1.30). Популярные инструменты для выполнения обследования беспроводных сетей приведены в табл. 1.7 Таблица 1.7 Базовые инструменты Название AirMagnet Laptop Analyzer CommView for Wi-Fi Ethe- real/Wireshark Wireshark Платформа Windows Windows Linux Linux Описание Сетевой анализатор для беспроводных сетей, система обнаружения беспроводных атак http://www.airmagnet.com Сетевой анализатор для беспроводных сетей http://www.tamos.com/products/commwifi/ Сетевой анализатор для беспроводных сетей http://www.wireshark.org/ Утилита для отправки пакетов из Wireshark 45
Безопасность беспроводных сетей Название Patch Kismet Netstumbler Ministumbler OmniPeek Personal Wellenreiter WiFi Graph Wildpackets OmniSpectrum Платформа Linux Windows Windows Mobile Windows Linux Windows Mobile Windows Описание http://axi.homeunix.org/wishark_patch.html Сетевой анализатор для беспроводных сетей http://www.kismetwireless.net/ Активное и пассивное сканирование точек доступа http://www.netstumbler.com/ Сетевой анализатор для беспроводных сетей http://www.omnipeek.com/ Инструменты для «боевых выездов» http://www.wellenreiter.net/ Активное и пассивное сканирование точек доступа http://www.kasuei.com/wifigraph/ Анализатор спектра http://www.wildpackets.com/products/ hardware/omnispectrum/ 46
Глава 2. Фундамент безопасной сети 2.1. Угрозы эфирного мира При построении системы обеспечения безопасности важно определить модель угроз, т.е. решить, чему собственно защита будет противостоять. По сути, в беспроводных сетях угрозы две: несанкционированное подключение и прослушивание, но их список можно расширить, выделив следующие основные угрозы, связанные с беспроводными устройствами: • неконтролируемое использование и нарушение периметра; • несанкционированное подключение к устройствам и сетям; • перехват и модификация трафика; • нарушение доступности; • позиционирование устройства. Широкое распространение беспроводных устройств и их небольшая стоимость приводят к тому, что в периметре сетевой безопасности возникают бреши. Здесь речь идет не только о злоумышленниках, подключивших КПК с поддержкой Wi-Fi к проводной сети компании, но и о более тривиальных вещах. Активный беспроводной адаптер на подключенном к корпоративной сети ноутбуке, принесенная из дома для тестирования точка доступа - все это может стать удобными каналами для проникновения во внутреннюю сеть. Недостаточная аутентификация, ошибки в системе разграничения доступа позволяют осуществлять несанкционированное подключение. Различные методы атак на Bluetooth и Wi-Fi, направленные на реализацию этих угроз, будут рассмотрены в этой и последующих главах книги. Специфика беспроводных сетей подразумевает, что данные могут быть перехвачены и изменены в любой момент. Для одних технологий достаточно стандартного беспроводного адаптера, для других требуется специализированное оборудование. Однако эти угрозы реализуются достаточно просто и для противостояния им требуются эффективные криптографические механизмы защиты Данных. По своей природе беспроводные сети не могут обеспечивать высокую доступность. Различные природные, техногенные и антропогенные факторы могут эффективно нарушать нормальное функцио- 47
Безопасность беспроводных сетей нирование радиоканала. Этот факт должен учитываться при проектировании сети, и беспроводные сети не должны использоваться для организации каналов при высоких требованиях по доступности. Станции Wi-Fi могут быть легко обнаружены пассивными методами, что позволяет с достаточно большой точностью определять местоположение беспроводного устройства. Например, система Navizon (http://www.navizon.com/FullFeatures.htm) может использовать для определения местоположения мобильного устройства систему GPS, базовые станции GSM и точки беспроводного доступа. Что касается Bluetooth, то использованию этой технологии для определения местоположения владельца мобильного телефона (к примеру) посвящен ряд серьезных работ. Те, кому интересны эти проблемы, могут начать ознакомление с ними с публикаций Джозефа Хэллберга (Josef Hallberg) и Маркус Нильсона (Marcus Nilsson) «Positioning with Bluetooth» и Силке Фельдман с коллегами «An indoor Bluetooth-based positioning system: concept, Implementation and experimental evaluation» (http://media.csee.ltu.se/ publications/2003/hallberg03positioning.pdf и http://www.princeton.edu/ -msimsir/perv/project/BTIocation.pdf). 2.2. Политика безопасности Политика безопасности в отношении беспроводных сетей может быть представлена как в виде отдельного документа, так и в составе других составляющих нормативного обеспечения безопасности. В большинстве случаев наличие отдельного документа не требуется, поскольку положения политики в отношении беспроводных сетей во многом пересекаются с традиционным содержанием подобных документов. Так, например, требования по физической защите точек доступа вполне перекрываются вопросами физической безопасности активного сетевого оборудования. В связи с этим в виде отдельного документа политика беспроводной безопасности представлена в период внедрения WLAN, после чего при очередном пересмотре документов гармонично вливается в другие. Если беспроводные сети не используются, то политика безопасности должна включать в себя описание защитных механизмов, направленных на снижение рисков, связанных с несанкционированным использованием радиосетей. В основном здесь перечисляются те технологии, самовольное использование которых недопустимо, и описываются механизмы защиты, направленные на выполнение требований. Например, для снижения вероятности нарушения политики могут быть использованы механизмы защиты, при- 48
Глава 2. Фундамент безопасной сети веденные в табл. 2.1. Здесь и далее положения политики безопасности (также называемой концепцией, основной политикой) приведены совместно с возможными требованиями безопасности (функциональная политика). Таблица 2.1 Основные положения политики безопасности беспроводных сетей Положения политики Обучение пользователей и администраторов ISOJIEC 27001 А.8.2.2 Контроль подключений к сети ISO|IEC 27001 А. 11.4.3 Физическая безопасность ISO|IEC 27001 А.9.1 Минимизация привилегий пользователя ISO|IEC 27001 А.11.2.2 Контроль политики безопасности ISOJIEC 27001 6, А.6.1.8 Требования к безопасности Пользователи должны знать и понимать изложенные в политике ограничения, а администраторы должны иметь необходимую квалификацию для предотвращения и обнаружения нарушений политики Уровень риска, связанного с подключением несанкционированной точки доступа или клиента беспроводной сети, можно снизить путем отключения неиспользуемых портов коммутаторов, фильтрации по МАС-адресам (port- security), аутентификации 802.1Х, систем обнаружения атак и сканеров безопасности, контролирующих появление новых сетевых объектов Контроль приносимых на территорию устройств позволяет ограничить вероятность подключения к сети беспроводных устройств. Ограничение доступа пользователей и посетителей к сетевым портам и слотам расширения компьютера снижает вероятность подключения беспроводного устройства Если пользователь работает на компьютере с минимально необходимыми правами, то снижается вероятность самовольного изменения настроек беспроводных интерфейсов Средства анализа защищенности, такие как сканеры уязвимостей, позволяют обнаруживать появление в сети новых устройств и определять их тип (функции определения версий ОС и сетевых приложений), а также отслеживать отклонения настроек клиентов от заданного профиля. Техническое задание на проведение работ по аудиту внешними консультантами должно учитывать требования политики в отношении беспроводных сетей 49
Безопасность беспроводных сетей Положения политики Инвентаризация ресурсов ISO|IEC 27001 А.7.1.1 Обнаружение атак ISO|IEC 27001 А.10.10.2 Расследование инцидентов ISO|IEC 27001 А.13.2 Требования к безопасности Наличие актуального обновляемого списка сетевых ресурсов облегчает обнаружение новых сетевых объектов Применение систем обнаружения как традиционных, так и беспроводных атак дает возможность своевременно определять попытки несанкционированного доступа Инциденты, связанные с беспроводными сетями, мало отличаются от других подобных ситуаций, однако процедуры их расследования должны быть определены Для внедряющихся или использующихся беспроводных сетей, может потребоваться внесение дополнений в разделы политики, приведенные в табл. 2.2. Таблица 2.2 Положения политики безопасности беспроводных сетей Положения политики Нормативно-правовое обеспечение ISO|IEC 27001 А.15.1.1 Внутренний и внешний аудит ISO|IEC 27001 6, А.6.1.8 Разделение сетей ISO|IEC 27001 А.11.4.5 Требования к безопасности Использование беспроводных сетей может попадать под действие как российских, так и международных нормативных актов. Так, в России использование частотного диапазона 2,4 ГГц регулируется решением ГКРЧ от 6.11.2004 (04-03-04-003). Кроме того, поскольку в беспроводных сетях интенсивно используется шифрование, а применение криптографических средств защиты в ряде случаев попадает под довольно жесткие законодательные ограничения, необходимо проработать и этот вопрос При проведении работ по оценке защищенности должны учитываться требования политики в отношении беспроводных сетей. Более подробно возможный состав работ по оценке защищенности WLAN описан в последней главе данной книги В связи со спецификой беспроводных сетей желательно выделять точки беспроводного доступа в отдельный сетевой сегмент с помощью межсетевого экрана, особенно когда речь касается гостевого доступа 50
Глава 2. Фундамент безопасной сети Положения политики Использование криптографических средств защиты ISO|IEC 27001 А.12.3 Аутентификация ISO|IEC 27001 А.11.4.2 Контроль изменений в информационной системе ISO|IEC 27001 А.12.5.1 Допустимость использования программного и аппаратного обеспечения. ISO|IEC 27001 А.12.4.1 Обнаружение атак ISO|IEC 27001 А.10.10.2 Протоколирование и анализ событий безопасности ISO|IEC 27001 А.10.10.1 Удаленный доступ к сети ISO|IEC 27001 А.11.7.2 Требования к безопасности Должны быть определены используемые протоколы и алгоритмы шифрования трафика в беспроводной сети (WPA или 802.11 i). При использовании технологии 802.1Х определяются требования к протоколам ЭЦП и длине ключа подписи сертификатов, используемых для различных целей Должны быть определены требования к хранению данных аутентификации, их смене, сложности, безопасности при передаче по сети, а также должны быть явно определены используемые методы ЕАР, методы защиты общего ключа сервера RADIUS Должны учитываться используемые в ИС беспроводные технологии В этом разделе рассматриваются требования к точкам доступа, беспроводным коммутаторам и клиентам беспроводной сети Должны быть определены требования к системам обнаружения беспроводных атак, закреплена ответственность за анализ событий Данный раздел может быть расширен путем добавления в список контролируемых событий, специфичных для беспроводных сетей. Может включать в себя предыдущий раздел В большинстве случаев пользователей беспроводной сети логично относить к пользователям систем удаленного доступа. Это обусловлено аналогичными угрозами и как следствие - контрмерами, характерными для данных компонентов ИС Кроме того, в том или ином виде должны быть сформированы следующие документы: • инструкция для пользователей с учетом использования беспроводной сети; • базовые настройки точек доступа, беспроводных коммутаторов, рабочих станций; • процедуры контроля защищенности беспроводных сетей; 51
Безопасность беспроводных сетей • профили систем обнаружения атак; • процедуры по реагированию на инциденты в беспроводной сети. Правильно построенная и соблюдаемая политика безопасности является надежным фундаментом защищенной беспроводной сети. Вследствие этого стоит уделять ей достаточное внимание, как на этапе внедрения сети, так и в ходе ее эксплуатации, отражая в нормативных документах изменения, происходящие в сети. 2.3. Базовые механизмы защиты При разработке в стандарт 802.11 были заложены некоторые функции, которые могут быть использованы в качестве защитных механизмов. Несмотря на то, что их эффективность гораздо ниже таких мощных средств как 802.1 X и 802.11 i, некоторые из них должны учитываться при проектировании беспроводной сети. К таким механизмам относятся: • ограничение зоны распространения радиосигнала; • списки контроля доступа на основе списков МАС-адресов; • отключение широковещательной рассылки идентификатора сети; • изменение стандартных настроек; • защита точек доступа. 2.3.1. Контроль границы сети Ограничение зоны распространения радиосигнала позволяет решить две задачи: снизить вероятность обнаружения радиосети и уменьшить расстояние, с которого злоумышленник может осуществлять активные или пассивные атаки. Естественно, что для злоумышленника, вооруженного направленной параболической антенной с усилением в 24 дБи, нет ничего невозможного, но большинство любителей бесплатного доступа к Internet просто не заметят существования такой сети. Да и мало найдется любителей, носящих с собой грозное метровое орудие. Ограничить зону распространения радиосигнала границами физического периметра практически невозможно. Однако при проектировании и развертывании радиосети стоит учитывать вопросы минимизации уровня сигнала. К счастью, современные подходы к организации высокоскоростных радиосетей по сотовому принципу с чередованием каналов согласно мантре 1-6-11 также требуют ограничения мощности передатчиков для снижения интерференции на точках доступа, работающих на одинаковых каналах. 52
Глава 2. Фундамент безопасной сети Для ограничения радиуса охвата радиосети могут использоваться такие методы и средства как аттенюаторы, снижение мощности передатчика встроенными средствами точки доступа, использование направленных антенн и просто правильная ориентация антенн в пространстве. Эффективным способом является выбор места размещения точек доступа в отдалении от границ здания. Кроме того, современные системы обнаружения беспроводных атак могут использовать функцию определения координат устройства для предотвращения соединения из-за пределов физического периметра. Для сетей с высокими требованиями к безопасности могут применяться дополнительные методы, такие как покраска стен помещений с помощью специальной краски, обладающей высоким коэффициентом поглощения в частотном диапазоне, используемом радиосетями. Достаточно радикальным методом, применяемым в серверных комнатах, или в других критичных помещениях является установка помехи в частотном диапазоне радиосетей. Для этого используются специализированные генераторы шума, например система Октава-ВТ (http://www.cbi-info.ru/products/pemin/noise/oktavavt.html). Однако чрезмерно увлекаться снижением мощности передатчиков не стоит. В большинстве случаев такая маскировка дает минимальный выигрыш по сравнению с тем негативным влиянием, которое она может оказать на пропускную способность сети. Доступность радиосети - один из немаловажных аспектов ее безопасности. 2.3.2. Списки контроля доступа Большинство точек доступа и беспроводных коммутаторов позволяет указывать черные и белые списки МАС-адресов станций, которым запрещено (или разрешено) подключаться к сети. В результате при попытке установления ассоциации проверяется, разрешено ли станции с таким МАС-адресом подключатся к сети, и если нет, то отсылается фрейм Disassociate (см. рис. 2.1). Поскольку вопреки распространенному заблуждению МАС-адрес не является уникальной и неотъемлемой характеристикой сетевого адаптера, ограничение доступа по МАС-адресам достаточно просто обойти. Для этого злоумышленник может отредактировать МАС- адрес в свойствах сетевого адаптера (рис. 2.2) или изменить его путем редактирования ключа реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ Class\{4D36E972-E325-11CE-BFC1 -08002bE10318}\<ID>\ NetworkAddress (REG_SZ) 53
Безопасность беспроводных сетей 110 3.078933 IntelCor_2c:03:a2 D-Link_84:a2:bl IEEE 802.11 Authentication 112 3.079824 D-Link_84:a2:bl IntelCor_2c:03:aJ IEEE 802.11 Authentication 114 3.080883 IntelCor_2c:O3:a2 D-Link_84:a2:M IEEE 802.11 Association Request, SSID: "AI" 116.3.081783 B-Mnk 84:a2:bl 117 3.082494 D-Iink_84:a2:bl IntelCor_2c:03:a2 IEEE 802.11 Dissassociate 118 3.083491 D-link_84:a2:bl IntelCor_2c:03:a2 IEEE 802.11 Dissassociate 119 3.084SO9 D~link_84:a2:bl IntelCor_2c:03:a2 IEEE 802.11 Dissassociate 120 3.08S748 D-Link_84:a2:bl IntelCor_2c:03:a2 IEEE 802.11 Dissassociate 123 3.287603 IntelCor_2c:03:a2 Broadcast IEEE 802.11 Probe Request, SSID: "AP" 124 3.288648 D-link_84:a2:bl IntelCor_2c:03:a2 IEEE 802.11 Probe Response, SSID: "AP" 127 3.309338 IntelCor_2c:03:a2 D-Link_84:a2:bl IEEE 802.11 Authentication 129 3.310215 D-Link_S4:a2:M IntelCor_2c:03:a2 IEEE 802.11 Authentication 1313.311275 IntelCor_2c:03:a2 D-link_84:a2:bl IEEE 802.11 Association Request, SSID: "AP" 133 3.312162 D-Link_84:a2:bl IntelCor_2c:03:a2 IEEE 802.11 Dissassociate 134 3.312716 D-iink_84:a2:bl IntelCor_2c:03:a2 IEEE 802.11 Dissassociate t> Frame 116 (26 bytes on wire, 26 bytes captured) ■=■ IEEE 802.11 Type/Subtype: Dissassociate (10) ■" Irame Control: OxOOAO (Normal) Version: 0 Type: Management frame (0) Subtype: 10 > Flags: 0x0 Duration: 314 Destination address: OO:12:fO:2c:O3:a2 (IntelCor_2c:O3:a2) Source address: OO:Od:88:84:a2:bl (D-link_84:a2:bl) BSS Id: OQ:Od:88:84:a2:bl (D-Link_84:a2:bl) Fragment number: О Sequence number: 314 ^ IEEE 802.11 wireless LAN management frame v Fixed parameters (2 bytes) Reason code: Unspecified reason (0x0001) Рис. 2.1. Попытка подключения с неавторизированной станции В случае использования Linux изменение МАС-адреса является штатной функцией утилиты ifconfig. Однако, несмотря на это, в большинстве случаев есть смысл задействовать данный механизм. Во-первых, для того, чтобы осуществить подключение, злоумышленник должен знать МАС-адрес разрешенного клиента. Получить его, прослушав сеть в режиме мониторинга, не представляет особого труда. Однако если в сети отсутствуют клиенты (например, в нерабочее время), злоумышленнику остается только осуществлять подбор по адресному пространству в 248. Согласитесь, пытаться осуществить несколько миллионов подключений довольно неблагодарное занятие (хотя эта техника и используется для взлома устройств Bluetooth). На практике, за счет того, что идентификаторы производителей беспроводных карт (OUI) хорошо известны, пространство для перебора гораздо меньше, и составляет менее 224. Во-вторых, данный защитный механизм весьма эффективен в качестве детективного средства защиты. Поскольку большинство точек доступа ведет журналы попыток несанкционированного доступа и поддерживает протокол Syslog, можно воспользоваться штатными возможностями системы обнаружения атак или корреляции 54
Глава 2. Фундамент безопасной сети Intel(R) PRO/1000 MT Mobile Conn General Advanced j Driver | Resources | Power Management) The following properties are available for this network adapter. Click the property you want to change on the left, and then select its value on the right. Property: Value: Jumbo Frames Link Speed & Duplex Loca w Administered Addres Log Link State Event Offload Receive IP Checksum Offload Receive TCP Checksum Offload TCP Segmentation Offload Transmit IP Checksum Offload Transmit TCP Checksum QoS Packet Tagging Receive Descriptors Transmit Descriptors Wake On Link Settings Wake On Settings <Г |OO12FO2C1111| Г Not Present Cancel Рис. 2.2. Изменение МАС-адреса сетевого адаптера событий безопасности (NetForensix, Cisco Mars и т.д.) для оперативного извещения администратора о серии неудачных попыток подключения. Журнал точки доступа, блокирующей попытки подключения в ходе подбора МАС-адреса, приведен на рис. 2.3. И, в-третьих, список МАС-адресов клиентов беспроводной сети пригодится во многих ситуациях. Две наиболее типичные из них - это настройка сервера DHCP и системы обнаружения атак. Использование привязки МАС-адреса к IP-адресу на сервере DHCP позволяет снизить вероятность ряда атак на эту службу, например исчерпание пула адресов, да и просто навести в сети порядок. При настройке аномальных модулей систем обнаружения атак, как традиционных, так и беспроводных, наличие списка МАС-адресов клиентов тоже является полезным. Например, для обнаружения подмены атаки ARP-spoofing с помощью препроцессора arpspoof системы Snort (http://www.snort.org/), утилит remarp 55
Безопасность беспроводных сетей 0 Help Гг:.; Page | Last Page | г-ь-ул | Next || Clear { Log Settings | page 1 of 5 Time Message Jun/28/2006 11:22:14 Unauthorized wireless PC tiy to connected 00-12-Ю-2с-03-а2 Jun/28/2006 11:22:13 Unauthorized wireless PC try to connected 00-12-B0-2c-03-a2 Jun/28/2006 11:22:13 Unauthorized wireless PC try to connected 00-12-Ю-2с-03-а2 Jun/28/2006 11:22:13 Unauthorized wireless PC try to connected 00-12-£0-2c-03-a2 Jun/28/2006 11:22:13 Unauthorized wireless PC try to connected 00- 12-£0-2c-03-a2 Jun/28/2006 11:21:07 Unauthorized wireless PC try to connected 00-12-£0-2c-03-a2 Jun/28/2006 11:21:06 Unauthorized wireless PC try to connected 00-12-£D-2c-03-a2 Jun/28/2006 11:21:06 Unauthorized wireless PC try to connected 00-12-£0-2c-03-a2 . Jun/28/2006 11:21:06 Unauthorized wireless PC try to connected 00-12-fO-2c-p3-a2 Jun/28/2006 11:21:06 Unauthorized wireless PC try to connected 00-12-fD-2c-03-a2. Рис. 2.З. Журнал точки доступа D-Link при подключении неавторизованного клиента (http://www.raccoon.kiev.ua/projects/remarp/) или ARP Monitor (http://paginas.terra.com.br/informatica/gleicon/code/index.html) администратору необходимо описать «нормальное» соответствие МАС- и IP-адресов в сети. Для беспроводных систем обнаружения атак списки адресов станций являются основой для формирования политик. 2.3.3. Рассылка SSID В служебных фреймах Beacon и Probe Response точка доступа отправляет идентификатор сети и другие служебные данные. Именно эту информацию выводят стандартные утилиты подключения к беспроводной сети и многочисленные «стамблеры». Стандартом предусмотрена и в большинстве точек доступа реализована возможность отключать широковещательную рассылку SSID. Этот режим обычно называется disable ssid broadcast или no guest mode. В результате в поле SSID во фреймах Beacon и Probe Response будет указываться пустая строка. Такие сети не будут отображаться в утилитах типа Netstumbler и не будут видны в списке доступных сетей стандартного беспроводного клиента. В результате может возникнуть ощущение, что таким образом удастся скрыть сеть от злоумышленника, который не знает ее SSID. Но задача поиска сети по ее идентификатору остается нерешенной, и, поскольку она не реализуется точкой доступа, ее берут на себя станции беспроводной сети. Для этого клиенты рассылают в запросах Probe Request идентификаторы сетей, указанные 56
Глава 2. Фундамент безопасной сети IEEE 802.11 Type/Subtype: Beacon frame (8) > Frame Control: 0x0080 (Normal) Duration: 0 Destination address: ff:ff:ff:ff:ff:ff (Broadcast) Source address: 0O:0d:88:84:a2:bl (D-Link_84:a2:bl) BSS Id: 00:0d:88:84:a2:bl (D-Link_84:a2:bl) Fragment number: 0 Sequence number: 590 IEEE 802.11 wireless LAN management frame > Fixed parameters (12 bytes) Tagged parameters (41 bytes) " SSID parameter Tag Number: 0 (SSID parameter set) Tag length: 7 Tag interpretation: > Supported Rates: 1.0(B) 2.0(B) 5.5(B) 11.0(B) 6.0 12.0 24.0 36.0 > DS Parameter set: Current Channel: 6 > (TIM) Traffic Indication Map: DTIM 0 of 1 bitmap empty t> ERP Information: no Non-ERP STAs, do not use protection, long preambles > Extended Supported Rates: 9.0 18.0 48.0 S4.0 t> CF Parameter set Рис. 2.4. Фрейм Beacon точки доступа, не рассылающей SSID в профиле подключения. Если точка доступа отвечает на такой фрейм, значит, ее SSID совпадает со значением, указанным в запросе, и можно приступать к процедуре подключения. В результате злоумышленник, прослушивающий сеть в режиме мониторинга, получает возможность узнавать идентификатор сети. Существует большое количество утилит, работающих по такому принципу, например, популярный анализатор беспроводных сетей Kismet. С их помощью довольно просто узнать идентификатор «скрытой» сети, если с ней работают клиенты. Кроме того, такая логика работы станции приводит к разглашению настроек профиля беспроводных подключений клиента, поскольку он вынужден рассылать SSID с конфигурированных станций. Таким образом, прекращение широковещательной рассылки идентификатора сети не является серьезным средством защиты, разве что может снизить количество срабатываний системы обнаружения атак, связанных с попытками подключения совсем уж неумелых «хакеров». Однако, поскольку большинство беспроводных клиентов рассылает SSID сети в запросах на подключение независимо от типа точки доступа, возможно, есть смысл использовать эту возможность. 57
Безопасность беспроводных сетей 2.3.4. Изменение стандартных настроек Модификация параметров «по умолчанию» в точке доступа преследует две цели: затруднение определения типа используемого устройства и устранение возможных уязвимостей системы, связанных со стандартными значениями параметров. Наличие данных о производителе и типе используемой в сети точки доступа дает злоумышленнику возможность получить информацию о возможных уязвимостях устройства. Так в любой системе обнаружения беспроводных атак существует проверка на использование точкой доступа стандартных конфигураций. Эти проверки обычно базируются на двух параметрах: МАС-адресе точки доступа и значении идентификатора сети SSID, рассылаемым во фреймах Beacon. Производитель точки доступа определяется по соответствию МАС-адреса префиксу из списка OUI. Полученные параметры сравниваются по таблице, в которой описаны стандартные значения параметров для различных моделей. Естественно, подобные проверки осуществляют программы, облегчающие получение несанкционированного доступа к сети. На рис. 2.5 приведена выдержка из файла /usr/local/etc/ap_manuf утилиты Kismet, описывающего стандартные настройки для различных точек доступа. 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: O0:00:00/FF: 05:00:00/FF: 05:00:00/FF: O0:00:00/FF: 26:OO:0O/FF: OO:OO:OO/FF; O0:O0:OO/FF: OO:OO:OO/FF: 96:00:00/FF: 96:OO:OO/FF: 96:00:00/FF O0:00:00/FF O0:00:00/FF 8B:00:00/FF O0:00:00/FF DA:00:0O/FF O0:00:00/FF F2:00:00/FF 00:0O:00/FF OO:OO:OO/FF O0:00:00/FF 1D:00:00/FF O0:O0:0O/FF O0:00:00/FF 37:OO:OO/FF O0:00:00/FF O0:00:00/EF C6:OO:0O/FF OO:OO:OO/FF O0:00:00/FF 4B:00:00/FF O0:00:00/FF FF:FF: FF:FF: FFrFE: FF:FF FF:FE: FF:FF: FF:FF FF:FF FF:FF: FF:FF: FF:EF: FF:FF: FF:EF FF:FF FF:FF :FF:FF FF:FF :FF:FF :FF:FE FF:FF FF:FF FF:FF FF:FF FE:FF :FF:FF :FF:FF :FF:FF :FF:FF :FF:FF ;FF:FF :FF:FE :FF:FE 00:00:00 EF:OO:OO FF:OO:OO 00:00:00 FF:OO:OO 00:00:00 00:00:00 00:00:00 FF:OO:OO FF:OO:OO FF:OO:OO 00:00:00 00:00:00 FF:OO:OO 00:00:00 FF:OO:0O 00:00:00 E7:00:00 00:00:00 00:00:00 00:00:00 FF:OO:OO 00:00:00 00:00:00 FF:OO:OO 00:00:00 00:00:00 FF:O0:0O 00:00:00 00:00:00 FF:0O:O0 :00:00:00 ANI Unknown default 6 D-Link DI-614+ default 6 D-Link DKL-900AF+ Buffalo Unknown Buffalo WIAR-L11C-L Addtron Unknown 0 TribeCompu Unknown 0 Cisco Unknown tsunami 6 AIR-AP342E2R default 6 0 192.168.0.1 192.168.0.1 192.168.0.SO Cisco Cisco Cisco Compaq Anit Compaq ЗСов ЗСои tsunami 6 AP-350 tsunami 7 Aironet 350 Unknown Unknown 0 WL400 - ETSI region Unknown 0 3CRK747A Microsoft Microsoft Edimax Unknown Lucent Unknown Orinoco Unknown Orinoco RC1000 Cabletron Proxiu Unknown Ericsson Compex Unknown 0 Unknown MSHOHE MN-500 MSHOME 0 0 0 0 192.168.1.1 tsunasvi 6 0 conpaq 11 192.168.2.1 192.168.0.1 Unknown 0 0 All (AP-4121-1O5M-ER-EU) SOHOware SOHOware Unknown NetBlaster II D-Link Unknown default 6 Handlink Unknown 0 Linksys BEFWUS4 linksys 6 Netsear/Epigram Unknom NETGEAR 11 192.168.0.1 192.168.1.1 192.168.0.1 Рис. 2.5. Стандартные настройки точек доступа 58
Глава 2. Фундамент безопасной сети > Fixed parameters (12 bytes) ' Tagged parameters (96 bytes) ■=■ SSID parameter set: "ComstarWiFi" Tag Number: 0 (SSID parameter set"! Tag length: 11 Tag interpretation: CoftistaruiFi t> Supported Rates: 1.0{B) 2.0(B) 5.5(B) 6.0 9.0 U.OCB) 12.0 18.0 > DS Parameter set: Current Channel: 6 > (TIM) Traffic Indication Map: DTI.H 1 of 2 bitmap enpty > ERP Information: do Non-ERP STAs, da not use protection, bug ргуш " Extended Supported Rates: 24.0 36.0 48.0 Tag Number: 51) (Extended Supported Kates) Tag length: 3 Tag interpretation: Supported rates: 24.0 36.0 48.0 (Mbit/sec] v Cisco Unknown 1 + Device Nane Tag Number: 133 (Cisco Unknown 1 * Device Name) Tag length: 30 " Vendor Specific. Tag Number: 221 (Vendor Specific) Tag length: 22 Tag interpretation: Vendor "AironetW" not interpreted Рис. 2.6. Дополнительная информация во фрейме Beacon Как видно из рисунка, данный файл содержит такую информацию как имена пользователей и пароли, устанавливаемые производителем на различных устройствах. По одному только фрейму Beacon злоумышленник с определенной степенью вероятности может узнать об уязвимостях исследуемой точки доступа. В связи с этим рекомендуется изменять SSID точки доступа, а также ее МАС- адрес, если программное обеспечение позволяет выполнить подобную операцию. Изменение МАС-адреса не всегда позволяет скрыть производителя точки доступа. Некоторые типы устройств рассылают в служебных фреймах дополнительную информацию, специфичную для данного производителя и даже для конкретной реализации устройства. Например, на рис. 2.6 приведен фрейм Beacon точки доступа Cisco Aironet, содержащий дополнительные данные, включая имя устройства. По возможности, подобная утечка информации должна быть устранена. Не стоит чрезмерно увлекаться подобными мерами. Любое противодействие сбору информации является реализацией «политики запутывания» (security through obscurity), т.е. попыткой скрыть наличие уязвимости, не устраняя ее. В связи с этим рекомендуется не только менять МАС-адрес и значение SSID точки доступа, но и модифицировать другие стандартные значения, такие как имена и пароли пользователей. Изменение МАС-адреса может также использоваться для сокрытия производителя сетевой карточки рабочих станций пользователей. Как будет продемонстрировано в гл. 5, атаки на клиентов 59
Безопасность беспроводных сетей беспроводных сетей являются наиболее эффективным методом ее взлома. Используя уязвимости, характерные для применяемой реализации драйвера беспроводной сети, злоумышленник может проводить различные атаки - от снижения степени защиты до отказа в обслуживании и даже выполнения произвольного кода на компьютере пользователя. Поэтому присвоение станции пользователя МАС-адреса, принадлежащего другому производителю, может ввести в заблуждение неискушенного злоумышленника. Но, как и в случае с точками доступа, определить тип используемого адаптера и даже версию драйвера можно по особенностям сетевого поведения устройства. Поэтому драйверы сетевых карточек должны обновляться по мере выпуска производителем соответствующих исправлений. 2.3.5. Защита точек доступа В связи с тем, что точки доступа представляют собой сетевые устройства, они в большей или меньшей (как правило, в большей) http.//www.s«a*ty rrov ги/searctyMft esp'arfname-d-lr* ISOUNK:O-U№<6H SOLJNKD-Шс 704 - SOUNIS D-Link 624 SDUNKD-LinkDSL-SET iBOUNK: D-Link PSL-SO4T DLWKD-tin'k DWL-G70QAP DLNKD-Unk OSW100 'SOUNKD-Link DWL-21O0«p Рис. 2.7. Работа со списками уязвимостей 60
Глава 2. Фундамент безопасной сети степени подвержены атакам с использованием стека TCP/IP. Как показывает практика и Bugtraq, качество кода, на основе которого работает большинство точек доступа, оставляет желать лучшего. При выборе компонентов беспроводной сети полезно воспользоваться списком уязвимостей для того, чтобы оценить количество проблем безопасности, обнаруженных в продуктах того или иного производителя (рис. 2.7). Немаловажными аспектами являются оперативность и качество устранения уязвимостей. Если обнаруживается, что одна и та же уязвимость спустя некоторое время снова присутствует в различных продуктах одного производителя, или он использует порочную практику скрытого устранения уязвимостей, стоит подумать об альтернативном решении. После приобретения устройств, обновления версии программного обеспечения и тщательного изучения документации полезно проверить, какие сетевые службы работают на точке доступа и не содержат ли они общеизвестных уязвимостей. Для этого можно воспользоваться сетевым сканером безопасности. Как правило, набор обнаруживаемых сетевых служб превышает ожидаемый. На рис 2.8 приведены результаты сканирования точки доступа в конфигурации «из коробки». Как видно, результаты не утешительны. £айл Правка £иа Профиль (Санирование Сервис D & Н' & А Л Л i '* « « > ■г- > - ^ Сканируемые хосты {1 ) - •• 69/udp-TFTP 1 - ■♦ 1 i ft DoS-атака ; 3 доступна команда PUT i O/tcp-HTTP 1 ' возможна авторизация \ 1 жэяитцемная передача п#*ы< > у ссылки с параметрами ; Ф список Форм для передачи Файлов \ Ъ список внешних ссылок ■ - -О IS! /udp-SNMP ! а учетная запись \ Сканирование [Уязвимости! Историй сканирований | 192.168,0 50 2кно Сп( 1! В А пени) Серьезная уязвимость Запись файлов описание С помощью команды "PUT /../.,/■■/• ■!" существует возможность записывать любые файлы в произвольно* место мл диске. Решение Закрыть неаториэоеанным адресам доступ к этому сервису или проверить конфигурацию. Рис. 2.8. Результаты сканирования точки доступа 61
Безопасность беспроводных сетей На основании результатов сканирования принимается решение об используемых механизмах защиты. Кроме уже упоминавшихся изменений стандартных настроек (например, пустого пароля администратора) стоит также ограничить доступ к интерфейсу удаленного управления определенными IP-адресами и по возможности, использовать защищенные протоколы удаленного управления. Также стоит включить в общую программу управления изменениями конфигурациями процесс отслеживания, тестирования и применения обновлений программного обеспечения точек доступа. 2.4. Безопасность протокола WEP О протоколе WEP, его уязвимостях и взломе написано огромное количество статей, выпущено множество утилит, видеороликов «взлом WEP за 10 минут» и так далее и тому подобное (http://www.milwOrm.com/video/). Это совсем не удивительно, учитывая, что WEP является результатом самой показательной из современных ошибок в проектировании механизмов защиты. В связи с этим перед авторами стоял нелегкий выбор, как именно излагать материал в этом разделе. Учитывая обилие публикаций на эту тему, и то, что WEP представляет только исторический интерес, было решено ограничится фактами, не вдаваясь в технические детали. 2.4.1. Протокол WEP Протокол Wired Equally Privacy (WEP) приведен в базовом стандарте 802.11 в качестве основного механизма защиты. Его применение обеспечивает двустороннюю аутентификацию станции и сети (метод Shared Key) и конфиденциальность передаваемых данных. Для контроля целостности используется значение ICV (Integrity Check Value), рассчитываемое с помощью функции CRC. На каждом устройстве может быть установлено до четырех ключей WEP; номер ключа, использованного для шифрования, передается в заголовках пакета (см. рис. 2.9). В основе протокола WEP лежит потоковый симметричный шифр RC4. Для шифрования в RC4 может использоваться ключ длиной 64 и 128 бит. Некоторые реализации поддерживают ключ до 256 бит. Алгоритм RC4 использует функции PRGA (Psuedo Random Generation Algorithm) и KSA (Key Scheduling Algorithm). Ключ шифрования подается на вход функции KSA, выход которой используется для инициализации датчика псевдослучайных чисел. Последовательность байт, получаемых на выходе PRGA (гамма), суммируется по модулю два с открытым текстом (см. рис. 2.10). 62
Глава 2. Фундамент безопасной сети go Capture Analyze Statistics Це1р fJo. - j Time Source | 'totocol I Info 73 0.051949 D-Link_32;ec:a3 Broadcast IEEE 8 Data 74 O.0S2163 AsustekC_4d:24;cc D-L1nk_82:ec:a3 IEEE 8 Data Franc 71 (68 bvtcs on wire, 68 bvtcs captured) "■ IEEE 802.11 Type/Subtype: Data (32) " Frawe Control: 0x4108 (Normal) Version: 0 Type: Data frame (2) Subtype: 0 ' Flags: 0x41 DS status: Frame is entering DS (To DS: I. Fron DS: 0) (OxOli 0.. = More Fragments: This is The last fragment 0... = Retry: Frame is not b#ing retransmitted ...0 . . .0. : PViR MGT: STA will stay up , = More Data: No data buffered j".T.. J'7."""= HEP f ji ag :""WEP Ts' enabled' I 0 s Order flag: Not strictly ordered Duration: 0 BSS Id: 00:0d:88:84:a2:bl (D-Link_84:a2:bl) Source address: 0Q:0d:88:82:ec:a3 (D-Link_82:ec:a3) Destination address: ff:ff:ff:ff:ff:t'f (Broadcast) Fragment number: 0 ijiunber: 3979 ' WEP parametei Initialization Vector: Oxdf96Ol Key: 0 irified) "Data "(36"bytbs 1 | File: Kismet~Jul-O4-2006-l.dump 1446 KB 00:00:13 3 P 22939 D. 1381S M: 0 Рис. 2.9. Вид фрейма при использовании WEP Выбор по современным меркам короткого ключа в 64 бита объясняется действовавшими в 1999 г. экспортными ограничениями и небольшой вычислительной мощностью устройств. IV WEP Key Данные Данные ICV Рис. 2.10. Шифрование WEP 63
Безопасность беспроводных сетей Однако эффективная длина ключа еще меньше, поскольку 24 бита передаются в каждом пакете в открытом виде. Эти 24 бита, называемые вектором инициализации (Initialization Vector, IV) или синхропосылкой, используются для того, чтобы ключ RC4 был уникален для каждого пакета. Таким образом, секретная часть ключа WEP составляет всего 40 или 104 бита. Необходимость использования вектора инициализации обусловлена тем, что основой RC4 является сложение кодируемых данных по модулю два с псевдослучайной последовательностью (гаммой), генерируемой на основе ключа шифрования. В случае, если для шифрования различных данных используется один и тот же ключ RC4, злоумышленник может с помощью операции сложения по модулю два получить XOR-разницу между двумя открытыми текстами (поскольку она совпадает с XOR-разницей между зашифрованными данными). Наличие некоторой информации об открытом тексте позволяет восстановить гамму (выполнив операцию XOR между открытым и зашифрованным текстами). Сложение по модулю два гаммы с зашифрованными данными дает открытый текст. Эта особенность RC4 хорошо известна и должна учитываться при использовании этого шифра. 2.4.2. Основные недостатки WEP Сразу после публикации протокол WEP вызвал ряд нареканий. Для шифрования используется непосредственно пароль, введенный пользователем, а не сессионный ключ, т.е. отсутствует механизм привязки ключа к конкретной сессии или паре устройств. Ключ протокола WEP одинаков для всех станций сети и его компрометация (например, утеря ноутбука) требует смены ключей шифрования для всех точек доступа и клиентов беспроводной сети. Кроме того, недостаточная длина ключа (5 ASCII-символов для 40 бит и 13 для 104) делает атаки с помощью перебора вполне реальными, тем более, что для проведения атаки достаточно перехватить только один пакет, после чего проводить все вычисления без взаимодействия с сетью. Хотя в качестве ключа WEP можно использовать и не ASCII символы, в реальности это бывает очень редко. Гораздо проще использовать в качестве ключа «qwertyl 234567», чем малопонятные шестнадцатеричные числа. Поскольку для контроля целостности пакетов в WEP используется линейная функция CRC32, злоумышленник на основе повтора векторов инициализации получает возможность подделывать зашифрованное сообщение таким образом, что оно пройдет контроль целостности. 64
Глава 2. Фундамент безопасной сети 2.4.3. «Слабые» векторы инициализации Как уже говорилось ранее, часть ключа RC4 передается в открытом виде в качестве вектора инициализации. Однако, выбранная длина синхропосылки (24 бита) явно недостаточна для решения задачи защиты от повторного использования ключа шифрования. Использование 24 бит дает возможность передать менее 17 миллионов пакетов до начала повторения вектора инициализации. В мире сетей это не так уж и много. Но ситуация усугубляется тем фактом, что механизм изменения вектора инициализации в стандарте не определен, поэтому разные производители используют различные подходы, например, просто последовательно увеличивают значение IV после рестарта адаптера. Таким образом, если в сети находятся две станции, вероятность повторения вектора инициализации резко возрастает. Повторное использование вектора инициализации представляет проблему, если у злоумышленника есть представление об открытом тексте одного из пакетов. В сетях, где структура фреймов строго описана, и присутствуют большие объемы служебного трафика, определить открытый текст фрейма не так уж сложно. Пакеты ARP, запросы и ответы ICMP-эхо (ping) могут быть вычленены из общего потока по характерным признакам (размер, МАС-адрес получателя, последовательность запрос-ответ). Определить их содержимое, за исключением некоторых полей, тоже не представляет большой проблемы. Например, ОС Windows передает в поле данных эхо- запроса ICMP алфавит. Если в сети используется метод аутентификации Shared Key, злоумышленник может воспользоваться им для получения гаммы. Как отмечалось в предыдущей главе, этот метод подразумевает передачу сетью станции случайной последовательности, которая затем зашифровывается с использованием WEP и отправляется точке доступа. Перехватив запрос и отклик, сложив их по модулю два, злоумышленник получает 128 байт гаммы, которая может использоваться для декодирования пакетов с совпадающими векторами инициализации. Подделывая пакеты разрыва сессии (Disas- sociate/Deauthentication), злоумышленник может подобрать необходимое ему количество пар открытый/закрытый текст. Эта особенность реализации WEP широко обсуждалась в сообществе специалистов по криптографии в связи с вышедшей в октябре 2000 г. публикацией Джесси Волкер (Jesse Walker) «Unsafe at any key size; An analysis of the WEP encapsulation» (http://www.dis.org/wl/pdf/unsafe.pdf). 65
Безопасность беспроводных сетей Отсутствие эффективного контроля целостности пакетов в WEP позволяет проводить активные атаки на подбор «корректного» пакета, который будет расшифрован и передан точкой доступа в сеть. Эти атаки описаны в работе Вильяма Арбо (William Arbaugh) «An Inductive Chosen Plaintext Attack against WEP/WEP2» (http://www.cs.umd.edu/~waa/attack/v3dcmnt.htm). Похожий подход описан в публикации «Intercepting Mobile Communications» Никиты Борисова (Nikita Borisov), Яна Голдберга (Ian Goldberg) и Дэвида Вагнера (David Wagner), вышедшей в июле 2001 г. (http://www.isaac.cs.berkeley.edu/isaac/wep-draft.pdf). 2.4.4. Новое - хорошо забытое старое В августе 2001 г. была опубликована работа, после которой аббревиатуру WEP начали расшифровывать как «Won't Even Protect», т.е. «Ничуть не защитит». Речь идет о статье Скотта Флухрера (Scott Fluhrer), Итсика Мантина (Itsik Mantin), и Ади Шамира (Adi Shamir) «Weaknesses in the Key Scheduling Algorithm of RC4» (http://www.drizzle.com/~aboba/IEEE/rc4_ksaproc.pdf). Описанная в статье атака, получившая по первым буквам фамилий авторов название FMS, основана на том факте, что при использовании определенных векторов инициализации алгоритм KSA не обеспечивает должного перемешивания, что в совокупности с возможностью предсказать определенные байты открытого текста (ОхАА в заголовке LLC) позволяет восстанавливать ключ шифрования. В свою очередь публикация основана на электронном письме Дэйвида Вагнера (David Wagner) «My RC4 Weak Keys», опубликованном еще 1995 г. (http://www.cs.berkeley.edu/~daw/my-posts/my-rc4-weak-keys). Практически сразу после публикации статьи появилась утилита Airsnort (http://airsnort.shmoo.com/), реализующая FMS-атаку, и наступил период охоты за «слабыми векторами инициализации» и «интересными пакетами». Поскольку «слабые» векторы инициализации встречаются не так часто (формат такого вектора [Ь+3, 255, х], где b - байт ключа WEP) и не каждый из них может использоваться для восстановления ключа, количество необходимых для взлома пакетов составляло несколько миллионов. Механизм анализа пакетов был улучшен Дэйвидом Хултоном (David Hulton) в феврале 2002 г. и был практически реализован в наборе утилит bsd-airtools (http://www.dachbOden.com/projects/bsd- airtools.html). Описание алгоритма приведено в статье «Practical Exploitation of RC4 Weaknesses in WEP Environments» того же автора. Развитие данного класса атак также описано в статье Андрэ 66
Глава 2. Фундамент безопасной сети Биттау (Andrea Bittau) «Additional weak IV classes for the FMS attack» (http://tapir.cs.ucl.ac.uk/security/sorwep.txt). Параллельно развивались механизмы получения большего количества векторов инициализации за более короткий промежуток времени. Для этого злоумышленник может перехватить какой-либо пакет, направленный на широковещательный МАС-адрес (обычно используются ARP-запросы), и повторно направить его в сеть. Точка доступа получит этот пакет, перешифрует его с использованием нового вектора инициализации и снова передаст всем станциям проводной и беспроводной сети. Таким образом, злоумышленник получит дополнительный вектор инициализации, а может быть и два, если станция ответит на посланный ARP-запрос (см. рис. 2.11). ARP-resp IV" Атакущий Рис. 2.11. Атаки с повторной передачей Реакция производителей была проста - некоторые из них реализовали механизм фильтрации «слабых» векторов инициализации в своих точках доступа. Однако, закрыв одну уязвимость, они тем самым увеличили вероятность повторения векторов инициализации, что, как было показано выше, не улучшает безопасность WEP. 2.4.5. Атаки «КогеК» В сентябре 2004 г. на форуме Netstumbler (http://www. netstumbler.org) появился ряд публикаций о двух атаках на WEP, активной и пассивной, названных в соотвествии с псевдонимом, под которым они были опубликованы, КогеК-атаками. Активная атака, реализованная в утилите chopchop (http://www.netstumbler.org/showthread,php?t=12489), позволяет 67
Безопасность беспроводных сетей расшифровать пакет без восстановления ключа или подобрать корректный пакет, который будет ретранслирован точкой доступа. Вторая атака, реализованная в утилите chopper (http://www.netstumbler.org/showthread. php?t=12489&page=2), представляет собой набор статистических тестов, в соответствии с которыми вычисляется вероятность того, что некоторое значение используется в качестве ключа шифрования. Причем для этой атаки совершенно не важен вид векторов инициализации, важно только количество пакетов с уникальным значением этого параметра. Оптимизированные варианты тестов позволяют восстановить 40- битный ключ WEP при наличии 100000-500000 векторов инициализации, а 104-битный при наличии от 300000 до 1000000 уникальных значений IV. При использовании повторной отправки пакетов на реализацию подобной атаки уходит от десяти минут до получаса. Достаточно быстро КогеК-атаки были встроены в утилиты Aircrack (http://www.aircrack-ng.org/) и Weplab (http://sourceforge.net/projects/ weplab), и для того, чтобы вступить в клуб взломщиков WEP, стало достаточно умения компилировать Aircrack из исходных кодов. В состав Aircrack входят утилиты, позволяющие осуществлять активные атаки с повторной передачей (aireplay), собирать трафик сети (airodump), получать ключ WEP с использований KoreK-атак и подбирать ключ WEP по словарю (aircrack), а также расшифровывать перехваченные данные (airdecap). Как правило, взлом WEP проводится в несколько этапов. Сначала с помощью утилиты aireplay запускается процесс повторной передачи пакетов. Это позволяет собрать большое количество различных векторов инициализации за небольшой промежуток времени. Если в сети присутствуют активные станции, достаточно перехватить и повторно послать ARP-запрос, переданный станцией к точке доступа (То DS). Если трафика нет, можно воспользоваться другими опциями утилиты, например, подбором по методу chop- chop. Параллельно с этим для сбора трафика запускается сетевой анализатор. Утилита airodump позволяет экономить место на жестком диске, собирая только информацию о векторах инициализации, а не все передаваемые данные (см. рис. 2.12). После того, как собрано достаточное количество уникальных векторов инициализации, запускается утилита aircrack, с помощью которой осуществляются статистические атаки на ключ WEP, что позволяет за достаточно короткий промежуток времени восстановить значение ключа (рис. 2.13). Случается, что описанная последовательность действий не приводит к ожидаемому результату. Это может быть связанно с различ- 68
Глава 2. Фундамент безопасной сети к>о14ИЬ1И201г~/ас - Shell No. 2 - Konsole Session Edit View Bookmarks Settings Help CH 6 ][ 2006-07-04 13:50 BSSID PWR Beacons # IV CH MB ENC ESSID OO:OD:88:84:A2:B1 47 1405 460303 6 54. WEP AP BSSID STATION PWR Packets Probes OO:OD:88:84:A2:B1 00:OD:88:82:EC:A3 84 491603 (not associated) OO:30:05:93:lD:B2 46 2004 homework (not associated) 00:0D:88:82:EC:A3 36 242 NEW.TEST.WIFI [root9ibm201 ac]# ./airodump-ng athO 1 6 | K' Shell I* Shell No. 2 Рис. 2.12. Использование airodump ными факторами, но основными причинами является ошибочная реализация точкой доступа механизма генерации векторов инициализации или применение динамических ключей WEP. Авторам приходилось сталкиваться с точками доступа, которые упорно не хотели «взламываться» с использованием FMS атак. При детальном анализе трафика оказалось, что точка доступа использует менее десятка векторов инициализации из всего доступного диапазона. ■.Иг KB 0 1 2 3 4 5 6 7 8 9 10 11 12 REV UootMb Eat "i dept] 0/ 3 0/ 1 0/ 0/ 1 0/ 0/ 0/ 0/ 0/ 0/ 0/ 0/ 0/ lew BoohmaAs bvt 64C 20C 76C 74( Cvot< 173) 215) 179) 90) 63CU7O) 6EC 74C 76( 73( 63( 62( 6B( L 66C FOUND» [ 64 1,201 297) 325) 293) SS4) 347) 342) 310) 482) ) 2E ES 6F E3 "8 19 99 IB SJA IB AB 3B 30) Help 100:00:121 8C 33) O2( 45) 40) 97) 80) 96) 97) 82) 128) 129) 1S7) Cl< 163) 20:76:7 c]» .,'aircr 4:C3:6E ck-ng -n 8C 2( ВС 2( 2< 7( ВС CC cc CC *2( 74 2») 28) 30) 33) 42) 45) 77) 77) 66) 126) 9S) 97) 2DC 3C( A2( 95( 34C 7BC FCC 7CC coc 8D( 20( 7G:73:63 Aircracfc-ng 0 Tested 2 26) 25) 27) 15) 15) 0E( CSC SAC FEC 54 С 25) AfC 45) 50) 47) 51) 79) 66) 74) 62:6 128 wep-durp-Ol.i ■» 14 SWlil She» No. ? « Shell'Jo 3)<t Shell No "1 IF С F0( 08C E0( 8B( IDC 34C 1:06 1 keys IS) 25) 24) 15) 15) 23) 37) 59) 40) 51) 50) 58) CS) ] Cd (got 0F( hl{ 93C 05C 9CC 31С ICC 7EC 7ЛС FBC EFC 40C A6C .3 10023/2 15) 16) IS) 13) IS) 22) 35) 41) 38) 46 34) 46 63 tvsc 44( 19C A4{ 7AC Al( 72C SEC C9( 2CC EW 7AC 1B( A7( bkf) IVs) 15) 15) 15) 13) 15) 20) 32) 40) 35) 37) 28) 44) 48) 70 ( 91( A9( AC( AF( B0( 7A( 4CC 1D( 7EC 7EC ЙН A3 С 15) 15) 15) 13) IS) 20) 29) 37) 26) 34) 28) 38) 44) 08 С C9C E4( DEC ESC BS( 39C E0( 5FC 9A< 22C 1AC 9A( 12) IS) 15) 9) 13) 20) 23) 36) 25) 33) 2S) 35) 43) 71C D7< F8( 9в( D9C IOC »( 8DC 6DC Al{ 31 ( 6C1 IK 5) IS) IS) 6} 10) 18) 23) 29) 25) 33) 25) 32) 38) 3FC E7C 12( 25C SOC 34C S9( 7BC 13( 77( 89( COC 3F( i 3' 15) 131 ! 3) I 9j 18) 23) > 28) 24) ' 32) , 2S> j 30) ' 1 32) j У 1 ,Ji ' Рис. 2.13. Восстановление ключа WEP 69
Безопасность беспроводных сетей Использование базовых уязвимостей WEP позволил достаточно быстро получить доступ к сети. В мае 2006 г. была опубликована статья со звучным названием «Последний гвоздь в гробу WEP» («The Final Nail in WEP's Coffin», http://tapir.cs.ucl.ac.uk/bittau-wep.pdf). В ней приводится описание атаки с использованием фрагментации на канальном и сетевом уровнях, позволяющей без получения ключа WEP передавать в сеть и расшифровывать произвольные IP-пакеты. В статье указанно, что технические детали реализации были сообщены CERT еще в 2003 г. Атака основывается на уже упоминавшемся факте, что знание открытого и зашифрованного текста позволяет восстановить гамму и использовать ее для шифрования других пакетов с таким же значением вектора инициализации. Для восстановления гаммы используются заголовки LLC, структура и содержимое которых прекрасно известны. Единственное поле, которое варьируется в заголовках LLC, это тип протокола (ethertype). Это поле может принимать три значения (для IPv4) - IP, ARP и RARP (http://en.wikipedia.org/wiki/EtherType). Пакеты RARP в сетях встречаются крайне редко, a ARP можно отличить от других пакетов по размеру, так что восстановить первые восемь байт ключевого потока не представляет большой проблемы. Казалось бы, возможность передать в сеть восемь байт зашифрованного текста не имеет практической ценности. Однако в протоколе 802.11 есть функция фрагментации на канальном уровне, которая позволяет разбить пакет вышестоящего уровня (начиная с уровня LLC) по нескольким фреймам, т.е. заголовки LLC будут передаваться в одном фрагменте, часть заголовка IP в другом и т.д. Для каждого из них можно использовать один и тот же вектор инициализации, и, соответственно, одни и те же 8 байт ключевого потока. Согласно спецификации 802.11, один пакет может быть разбит на 16 фрагментов, что дает возможность передать в сеть пакет размером 64 байта. Это значение только на первый взгляд противоречит арифметике (8x16 = 128), поскольку в каждом из фрагментов должна присутствовать контрольная сумма ICV длиной 4 байта. Однако фокусы с фрагментацией на этом не заканчиваются, поскольку данная функция реализована также в протоколе IP. Используя фрагментацию сетевого уровня зная только первые 8 байт ключевого потока, которые можно получить, перехватив любой пакет, в сеть можно передавать пакеты размером до 64 кбайт. Восстановление открытого текста произвольных пакетов возможно при наличии в атакуемой сети подключения к Internet. В этом 70
Глава 2. Фундамент безопасной сети случае злоумышленник перехватывает зашифрованный пакет, добавляет к нему дополнительный заголовок IP, где в качестве адреса получателя указан Internet-узел, и отправляет его в сеть, используя описанную выше технику фрагментации. Пакет расшифровывается точкой доступа и передается узлу злоумышленника. Узел, на котором запущен сетевой анализатор, отбрасывает заголовок IP и получает расшифрованный пакет. Практическая реализация этой атаки требует учета дополнительных моментов, например определения МАС-адреса шлюза по умолчанию, но они успешно решаются с использованием хорошо известных методов. Описанные атаки реализованы в утилите wesside (http://www.cs.ucl.ac.Uk/staff/a.bittau/ frag-0.1 .tgz), презентация о практическом ее применении доступна по адресу http://www.toorcon.org/2005/slides/abittau/slides.pdf. Резюмируя этот раздел, можно сказать, что в настоящее время WEP может применяться только в образовательных целях - для демонстрации уязвимостей этого протокола. Однако практические исследования (см. раздел «Боевые выезды» первой главы) показывают, что большое количество сетей все еще полагаются на этот беззащитный протокол защиты. 2.5. Безопасность технологии Bluetooth В этом разделе обсуждаются проблемы безопасности, связанные с использованием технологии Bluetooth, и используемые в протоколе механизмы защиты. Однако перед тем, как приступать собственно к «безопасности», есть смысл поближе познакомиться с объектом защиты. 2.5.1. Стек протоколов Bluetooth Стек протоколов Bluetooth на первый взгляд выглядит довольно запутанным. Однако его знание позволяет легче ориентироваться в уязвимостях и механизмах защиты данного протокола. Структура стека протоколов Bluetooth приведена на рис. 2.14. Физический уровень реализуется протоколами Baseband и Bluetooth Radio. Протокол Baseband отвечает за коррекцию ошибок, организацию синхронного и асинхронного взаимодействия, формирование пакетов, управление режимами работы устройств, синхронизацию устройств. Протокол LMP отвечает за организацию и поддержку связи между устройствами на канальном уровне, управление сопряжением устройств (paring). Интерфейс хост-контроллера (HCI) определяет набор команд взаимодействия канального и вышестоящих уровней. 71
Безопасность беспроводных сетей Приложения TCP/IP ОВЕХ РРР ATcmd SDP TCS RFCOMM Logical Link Control and Adaptation Layer Protocol (L2CAP) Аудио 1 Host Controller Interface, HCI I Link Management Protocol, LMP Baseband ; Bluetooth Radio > Рис. 2.14. Стек протоколов Bluetooth Протокол L2CAP реализует мультиплексирование вышестоящих протоколов, обеспечение качества обслуживания, сегментацию и сборку фрагментов, а также обработку групповых рассылок. Протокол транспортного уровня RFCOMM используется для эмуляции функций СОМ-порта поверх L2CAP. Протокол Service Discovery Protocol определяет механизмы поиска доступных приложений на удаленном узле. Протокол Telephony Control protocol Specification (TCS) отвечает за организацию телефонных соединений. Протокол Generic Object Exchange (ОВЕХ) определяет взаимодействие между клиентом и сервером при передаче различных объектов (файлов, данных синхронизации, визитных карточек и т.д.). Выше описанных протоколов работают протоколы прикладного уровня, так называемые профили. Отдельно выделен протокол, используемый для синхронной передачи аудиоданных. Устройства Bluetooth взаимодействуют в рамках пикосети (piconet). В каждой пикосети имеется устройство, играющее роль мастера (master), и до семи активных подчиненных (slave) станций. Вместе с пассивными членами (parked) одна пикосеть может поддерживать более 200 узлов. Каждый активный узел в пикосети идентифицируется 3-битовым адресом (Active Member Address, 72
Глава 2. Фундамент безопасной сети АМА). Пассивным членам присваивается 8-битовый адрес (Parked Member Address, PMA) или используется их МАС-адрес. В каждый момент времени передача данных возможна только между мастером и одним из подчиненных узлов. Поддерживается возможность многоадресной рассылки нескольким подчиненным узлам. Мастер постоянно переключается между подчиненными узлами; кроме того, любое устройство может взять на себя роль мастера. Несколько пикосетей могут объединяться в распределенную сеть (scattemet). В этом случае мастер или подчиненный узел одной сети подключается в другую пикосеть в качестве подчиненного и выполняет функции моста между сетями. Поддержка распределенных сетей не обязательна и не реализована во многих стеках Bluetooth (см. рис. 2.15). В начальный момент устройства не взаимодействуют и находятся в режиме Standby. Станция, инициирующая подключение, автоматически становится мастером в формируемой пикосети. Мастер проводит сканирование эфира, рассылая широковещательные или направленные запросы (inquiry). Он последовательно соединяется со всеми откликнувшимися устройствами для синхронизации последовательности скачков и присвоения адреса АМА. При необходимости устройства могут переходить в один из трех энергосберегающих режимов: • режим прослушивания (sniff); • режим удержания (hold); • пассивный режим (parked). Распределенная сеть (scattemet) ® Мастер (Master) Подчиненный (Slave) Пассивный (Parked) Рис. 2.15. Взаимодействие пикосетей 73
Безопасность беспроводных сетей Session Edit View Bookmarks Settings Help [root@top ~]# hcitool scan Scanning ... OO:07:E0:A4:FC:D8 00:OF:DE:CO:OD:FC OO:09:2D:A0:74:9A OO:14:A4:FC:D2:D8 [rootutop ~]# | plm T630 Pocket LOOX HOMEWORK i Shell Г Рис. 2.16. Сканирование В режиме прослушивания устройство не передает данные, но ожидает информацию от мастера в определенные моменты времени. Режим удержания характеризуется поддержкой только синхронной передачи (SCO). В пассивном режиме устройство освобождает адрес АМА и ему присваивается адрес РМА. В процессе организации пикосети мастер проводит активное сканирование (или обследование, inquiry) эфира с целью получения списка доступных передатчиков (рис. 2.16). В ответ доступные устройства могут передавать следующую информацию: • имя устройства; • класс устройства; • список предоставляемых сервисов (при поддержке SDP см. рис. 2.18); • идентификатор производителя устройства; • поддерживаемые спецификации и возможности Bluetooth; • текущее время. ;-- Shelf- Konsote Session Edit View Bookmarks Settings Help [rooWtop ~]# hcitool scan Scanning ... 0O:07:E0:A4:FC:D8 plm 00:09:2D:AO:74:9A Pocket LOOX 00:14:A4:FC:D2:D8 HOMEWORK [root@top ~]# hcitool name OO:OF:DE:CO:DD:FC T630 [rootetop ~]# I Ш Shell \m: Shell No. 2 Рис. 2.17. Устройство с отключенной функцией обнаружения 74
Глава 2. Фундамент безопасной сети В зависимости от настроек станция может отвечать или не отвечать на широковещательное сканирование, т.е. находиться в «обнаруживаемом» или «не обнаруживаемом» (см. рис. 2.17) режиме. С другой стороны, устройство должно откликаться на запросы, направленные на его МАС-адрес независимо от настроек. Некоторые из реализаций стека позволяют использовать списки контроля доступа по МАС-адресам. Session Edit View Bookmarks Settings Help 0x4 - ProtocolDescriptorList [root@ibm201 ~]# sdptool browse —tree OO:OF:DE:CO:DD:FC Browsing 00:OF:DE:CQ:DD:FC ... Attribute Identifier : 0x0 - ServiceRecordHandle Integer : 0x10000 Attribute Identifier : 0x1 - ServiceClassIDList Data Sequence UUID16 : 0x1103 - DialupNetworking (DUN) UUID16 : 0x1201 - GenericNetworking Attribute Identifier Data Sequence Data Sequence UUID16 : 0x0100 - L2CAP Data Sequence UUID16 : 0x0003 - RFCOMM Channel/Port (Integer) : 0x1 Attribute Identifier : 0x5 - BrowseGrouplist Data Sequence UUID16 : 0x1002 - PublicBrowseGroup (SDP) Attribute Identifier : 0x9 - BluetoothProfileDescriptorList Data Sequence Data Sequence WID16 : 0x1103 - DialupNetworking (DUN) Version (Integer) : 0x100 Attribute Identifier : 0x100 Text : "Dial-up Networking" Attribute Identifier : 0x305 Integer : 0x0 Attribute Identifier : 0x0 - ServiceRecordHandle Integer : 0x10002 Attribute Identifier : 0x1 - ServiceClassIDList Data Sequence UUID16 : 0x1112 - HeadsetAudioGateway Shell Shell No. 2 Рис. 2.18. Информация о сервисах 75
Безопасность беспроводных сетей Каждый сервис устройства привязан к так называемому каналу (Channel). Канал в данном контексте имеет мало общего с радиочастотами, но близок к понятию порта в протоколе TCP, т.е. является уникальным (в рамках узла) идентификатором сетевого приложения. Информация о привязке приложений к каналам передается устройством по протоколу SDP. Анализаторы Bluetooth К сожалению (или к счастью, как посмотреть), стандартные устройства Bluetooth не поддерживают возможности перехвата трафика в беспроводной сети, аналогичной режиму мониторинга в стандарте 802.11. Однако, использование специализированных устройств позволяет прослушивать и декодировать трафик Bluetooth «на лету». Примером такого устройства является анализатор протоколов FTS4BT фирмы Frontline (http://www.fte.com/blu01.asp). Стоимость подобного решения составляет около десяти тысяч долларов, что серьезно уменьшает количество возможных владельцев. При использовании подобной системы перехват трафика Bluetooth ничем не отличается от анализа пакетов проводной сети. Ниже приведена серия копий экрана сессии работы с Интернет через Bluetooth, перехваченной с помощью FTS4BT. На рис 2.19 приведен анализ пакета протокола SDP, в котором мастер (компьютер), запрашивает у подчиненного устройства (телефона) информацию о поддержке им сервиса коммутируемой связи. П«м74 (МмМО Ltrv-49 Очгп-ilD r.'jjli RFCOMM j EneaptubtedAtmcPPP ] PPP j IPv* { TCP \ UbP DHCP/BOOTP I DNS i Oat. j HTTP | (CMP f HBDS | HBHS } SHf -■---• | шр j uup I sdp ISo»clP ra ТГ Рис. 2.19. Запрос по протоколу SDP 76
Глава 2. Фундамент безопасной сети jte E* Sw Summary Qecode Radfc fferacter Evegt Fi«tw139: [Mettot)Len-33 ■ Baseband ; 17ГАР Role. Waiter POU Length 1? --Qiaird ID" 0x0042 ; RFCOMM Rote. Master Addrew. 1 it Address: OnOb :■ Frame Type: Unmrnbeted Into v*i Header Check PoWFnal Sit 1 length Extension Ncrt ExHxied Length. 12 FCS (ЫВБ DHCP/BOOTP ! DHS Al Piotoceb j fl... I Fume» 1 Stww 136 137 138 140 154 44 54 38 38 39 I ■ Ft 1 f Data | HTT IP 1 DwIP PPP j IPv4 } TCP P | 1CMP | NBDS | N8NS LHP | L2CAP | 30 35 32 38 Qd 86 T889 Ink». , D908 lUBL UDP | 1 S«e I 5DP | 1 Frame! - 28 -1 22 25 14 A Рис. 2.20. Набор телефонного номера Затем, после установления соединения с профилем RFCOMM мастер посылает АТ-команду ATDT на набор телефонного номера (рис. 2.20). После этого пользователь проходит аутентификацию по протоколу РАР, что подразумевает передачу имени пользователя и пароля в открытом виде (рис. 2.21). Po* Miller PDULeriflK 32 - BFCOMh- f+, Adaftii OCfc Frame Type Unnumbered Irfo with Headw Check Length Extercm No) Extended Ciedt 1fi2W FC СЫ«а SX H- if ■ЧЧ- Г -л- о "r-4»t«Bi F >w *■ 1 -- = PFf- Futo о Г в итог" A ientc«w.Protoco( уре AJh«winceie Request !<&№>** 0 Ler-ssh ^ IDLenflLn Рве D !< ti anv RFCOMM j Сисч»ц1а1м.Л*м* DHCP/800TP ) DNS \ Dau AlProucob | Bwebmd B... |Fr*TwB ]S«iC.IP ' Г 187 1» 183 190 all - ■, 12; 01 DO 00 16 09 «b 75 6e t 3? 32 f 5 <i "■- 9a к | \ VP } №P | IPv4 ) | HTTP I ICMP | NBDS | | IMP J 12ПР «IP lt*«n tun. 1 5t ^5 79 51 5e 67 Э7 6 CP \ UDP NBHS | «11 J SDP ■ Itatttrf 32 -* , ,21 •в J .- E 7S БЬ Э1 34 ^6y3c7472V,. ~ Рис. 2.21. Аутентификация пользователя 77
Безопасность беспроводных сетей Ffe £Л Sew Summary &ecode RatS& Character TYF*E' DM5 .AM АГ fa L2C4P- RFCOMM te S Hdi Fat p F If lc.g.1 Lecgth Lb-sK ID 1.1'CAP -itari « гю Stagrswr'al.-*1 C 1 С 1p ur kt tf ided Credits- -HGfi FCy 0x40 : He*:0i<3c3f786dBc207GG57273636I.6e3d ; ASOl: <?xml vetsion-'i .0" e*KO&)g-"t*f*r ?><!C EveS Fftw Options Шккм Ц*1р PPP | IPv4 | TCP j U tCHP 1 NBO AU Protocol j Baseband j tMP B. jiL Sped P6i N 68 Framefi 290 291 292 293 2ЭД 2% 72 20 48 I Source IP 50 SO 3d 51 55 52 a P="www .msn. com' a om/en_us " ; va rV T E R P A E 1 IP ) DHCP/BOOTP ] DNS 1 Data I HTTP S } HBNS } SMB L2CAP ] SDP { RFCDMM j Encap»dated AcyncPPP DestIP 4C 51 42 41 53 ;varsi>H URL _CONriG="mi ! Token j URL FrameSize "i 147 ~J 21 21 147 147 45 3d 22 68 74 74 70 3a 21 21 _BASE="http://help.msn.с Рис. 2.22. Работа по протоколу HTTP После успешной аутентификации пользователь получает доступ к ресурсам Internet и использует его для работы по протоколу HTTP (рис. 2.22). В качестве бесплатного решения для изучения трафика Bluetooth можно использовать утилиту hcidump, входящую в стек протоколов BlueZ. Однако hcidump имеет ряд ограничений. Во-первых, она перехватывает только трафик того узла, на котором запущена Во-вторых, работает только с данными протоколов более высокого уровня, чем HCI. По уровню разбора протоколов hcidump также не соответствует коммерческим утилитам. Например, восстанавливать ТСР-сессию придется самостоятельно, хотя утилита развивается и в ней появляются новые полезные возможности. Естественно, разработчики Bluetooth прекрасно представляли себе угрозы, связанные с передачей данных в открытом виде по беспроводной сети. В связи с этим в протоколе предусмотрены криптографические механизмы защиты данных. 78
Глава 2. Фундамент безопасной сети 2.5.2. Механизмы защиты технологии Bluetooth В зависимости от настроек устройство Bluetooth может поддерживать различный уровень защиты при доступе к своим службам. В стандарте описаны три режима безопасности: • режим 1 (Mode 1), отсутствие защиты; • режим 2 (Mode 2), защита на уровне приложений (L2CAP); • режим 3 (Mode 3), аутентификация и шифрование трафика. Как правило, режимы безопасности настраиваются для каждой из служб индивидуально. Работа в третьем режиме требует настройки сопряжения устройствами (pairing). Во время сопряжения устройства проходят взаимную аутентификацию с использованием общего ключа (PIN) и в случае, если процесс прошел успешно, сохраняют информацию о партнере в профиле подключения. Дальнейшие соединения происходят уже без ввода PIN. Работа в режиме партнерских отношений позволяет не только реализовывать взаимную аутентификацию, но и зашифровывать передаваемые между устройствами данные. Большинство устройств может быть настроено на обязательную аутентификацию при обмене. Однако многие сотовые телефоны принимают контакты по протоколу ОВЕХ без аутентификации. Такие же стандартные настройки могут существовать в устройствах других типов, например принтерах, принимающих задачи на печать без аутентификации. Популярный стек Bluetooth для Windows Broadcom/Widcomm также принимает визитные карточки без аутентификации и сохраняет их в качестве контакта в Outlook Express. Режим Mode 3 При работе в этом режиме все взаимодействия происходят в рамках аутентифицированного и зашифрованного канала связи. Для выполнения криптографических преобразований в устройствах Bluetooth используется шифр под кодовым названием ЕО (SAFER+). Этот алгоритм был специально разработан для использования в Bluetooth. Алгоритм ЕО представляет собой блочный шифр с длиной ключа 128, 192 и 256 бит. В современных реализациях Bluetooth используется длина ключа 128 бит. Однако исследования показали, что эффективная сила ключа для ЕО-128 составляет около 84 бит. Возможно, что этот показатель будет снижаться со временем. Все упоминаемые в этом разделе криптографические алгоритмы основаны на ЕО. Ключ шифрования (Kab или link key) выводится в процессе сопряжения. При этом происходит генерация промежуточного ключа Kinit. Ключ Kinit выводится как результат работы алгоритма Е22 на 79
Безопасность беспроводных сетей г -" 1 Мастер (Master) 1 А ' i Генерация j IN_RAND BD_ADDR t E22 [ i Kinit 1 ] PIN -* | Г" Подчиненный(51ауе) В IN_RAND 1 BD ADDR Рис. 2.23. Процесс получения ключа Kinit основе случайного числа IN_RAND, PIN-кода и МАС-адреса подчиненного устройства. Число IN_RAND генерируется мастером и передается в открытом виде (см. рис. 2.23). Затем устройства обмениваются двумя случайными числами LK_RAND (рис. 2.24). В процессе передачи эти значения защищаются с помощью ключа Kinit (используется побитовое сложение по модулю два, XOR). Принимающая сторона проводит аналогичную операцию и получает исходное значение, которое вместе со значение BD_ADDR устройства-отправителя поступает на вход алгоритма Е21. Результат подвергается побитовому сложению по модулю два со значением LK_K, полученным на основе собственного BD_ADDR и LK_RAND. Полученное значение используется в качестве ключа Kab (в терминологии стандарта link key). Ключ Kinit в дальнейшем не используется, и он удаляется из памяти. Именно ключ Kab будет в дальнейшем использоваться для взаимной аутентификации и шифрования данных. Поскольку при выводе значения задействованы случайные числа LK_RAND_A и LK_RAND_B, стойкость ключа мало зависит от PIN-кода пользователя, вводимого при подключении устройства. Стойкость PIN-кода имеет имеет значение только на начальном этапе взаимодействия, в ходе которого генерируется ключ Kinit. Если PIN-код не является статическим, в дальнейшем он не используется. 80
Глава 2. Фундамент безопасной сети Мастер (Master) ] ] Kin'rt Генерация ! > LK_RAND_A | j"" : LK RAND А Я 5! Kinit Подчиненный(31ауе) В Е21 LK K_A LK К В Kab Генерация LK RAND В LK RAND В О Q E21 j | E21 1 LK К A LK К В ! Kab Рис. 2.24. Процесс получения ключа Kab Таким образом, ключи шифрования и аутентификации будут уникальными для каждой пары устройств, поскольку при генерации этих ключей используются МАС-адреса и случайные числа. Ключ Kab в дальнейшем применяется при взаимной аутентификации устройств (рис. 2.25). При этом используется схема запрос- отклик на основе случайного числа. Одна из сторон генерирует случайное значение AU_RAND_A и передает его второй стороне. Вторая сторона с помощью шифра Е1 на основе ключа Kab, значения AU_RAND_A и МАС-адреса генерирует значение отклика SRES_A' и передает его инициирующей стороне. Проверяющий узел сравнивает полученной отклик со значением, полученным самостоятельно, и в случае, если они совпадают, аутентификация считается успешной. После этого стороны обмениваются ролями; и аналогичной схеме проходит аутентификация узла А (см. рис. 2.25). Механизмы режима Mode 3 обеспечивают шифрование данных и взаимную аутентификацию устройств на приемлемом в настоящее время уровне. Но, как всегда, не обходится без некоторых нюансов. 81
Безопасность беспроводных сетей Проверяющий (Verifier) А Генерация AU RAND A BD_ADDR_B Е1 Kab SRES A ДА Аутентификация узла А AU RAND A SRES А' Проверяемый (Claimant) В Kab Е1 SRES A' BD ADDR В Рис. 2.25. Аутентификация в Bluetooth Подбор PIN Понятно, что описанные механизмы, как любые схемы, основанные на общем секрете, уязвимы для атак, основанных на подборе PIN-кода на основе данных о перехваченной сессии. Для реализации атаки злоумышленник выдвигает гипотезу о значении PIN, рассчитывает значение Kinit, восстанавливает на его основе LK_RAND_A и LK_RAND_B, после чего получает значение Kab. Затем рассчитывает значения SRES_A и SRESJ3 и сравнивает их с перехваченными. В случае если они совпали, PIN считается корректным, в противном случае процесс повторяется с новым значением PIN (рис. 2.26). Техника подбора PIN описана в статье Янива Шэкеда (Yaniv Shaked) и Авиша Вула (Avishai Wool) «Cracking the Bluetooth PIN» (http://www.eng.tau.ac.il/~yash/shaked-wool-mobisys05/). В этой статье также приведены некоторые механизмы оптимизации вычислений, позволяющие при использовании современного оборудования 82
Глава 2. Фундамент безопасной сети Выбор начального PIN' Вычисление Kinit Восстановление LK_RAND_A и LK RAND В Вычисление Kab Вычисление SRES А Вычисление SRES_B НЕТ ДА Использование PIN' для подключения Выбор нового PIN' Рис. 2.26. Подбор PIN 83
Безопасность беспроводных сетей тратить на подбор четырехсимвольного PIN 0,063 с или 76 с на подбор ключа из семи символов. Для реализации атаки с подбором PIN злоумышленнику необходимо иметь сетевой анализатор для протокола Bluetooth, что резко снижает вероятность ее реализации в связи с высокой стоимостью устройства. Кроме того, злоумышленнику необходимо перехватить процесс сопряжения, который обычно проводится при начальной настройке устройств. Но и это ограничение может быть обойдено. Например, злоумышленник может воспользоваться генератором помех для того, чтобы вызвать сбои в работе сети и спровоцировать пользователя повторить процедуру сопряжения. Подобный эффект может быть доступен путем отправки сообщений об ошибках, например HCI_Link_Key_Request_Negative_Reply от адреса одного из устройств. Последняя атака носит название BlueDump (http://trif inite.org/trif inite_stuff_bluedump. html). Естественным механизмом противодействия подобным атакам является использование достаточно длинных PIN-кодов (как обычно, около 20 символов), и проведение операций сопряжения в физически защищенных местах. 2.5.3. Уязвимости устройств Bluetooth Как видно из предыдущего изложения, протокол Bluetooth обладает достаточно надежными механизмами безопасности, включающими в себя методы противодействия несанкционированным подключениям (аутентификация) и прослушиванию трафика (шифрование). Однако, при анализе деталей реализации или стандартных настроек стеков Bluetooth различных производителей выясняется, что все далеко не так хорошо. Протокол Bluetooth может использоваться для разнообразных атак, направленных на нарушение конфиденциальности, целостности и доступности. В следующих разделах описываются наиболее известные уязвимости реализаций стека Bluetooth различных производителей. Bluejacking Под термином Bluejacking подразумевается анонимное общение с помощью Bluetooth. Как правило, развлекаются Bluejacking в таких местах как общественный транспорт, торговые центры, кинотеатры. Сообщения посылаются в поле имени устройства или в визитной карточке, передаваемой посредством ОВЕХ. В случае использования имени устройства на принимающей стороне появляется запрос на подключение с текстом, указанным инициатором общения (см. рис 2.27). 84
Глава 2. Фундамент безопасной сети Bluetooth Passk Bluetooth Authentication Device: |Привет,давай общатцо! Passkey: [| Cancel — How to use this screen - Tb es ■Esc eE tab ft,- 1 Sluetooth pairing procedure lishes a secret key that is used gre connections to aiithent cat 2\ 3 Tab| й | ц САР|ф|ы Shift | я Ctl En 4 5 6 У в ч e к а е п с! м! v \\ И н Р |т 8|9|0 г 0 ш л щ д - 3 ж ь!б|ю1 Ultl in — X Э И О" ъ -- Рис. 2.27. Общение через Bluetooth Поскольку многие сотовые телефоны принимают визитные карточки без авторизации, независимо от настроек, они также могут использоваться для обмена сообщениями. После первоначального обмена любезностями обе стороны имеют возможность выполнить процедуру сопряжения и обмениваться фотографиями, музыкой и другими способами нарушать закон об авторских и смежных правах. В большинстве случаев Bluejacking представляет собой модную, высокотехнологичную и безобидную забаву. Однако, как всякое человеческое общение, такие разговоры могут вызывать и негативные эмоции. Это связано с сообщениями оскорбительного, экстремистского, рекламного характера. Телефонные хулиганы нашли себе новую нишу. Хотя в случае Bluetooth подобный «синезубый» агрессор довольно сильно рискует, поскольку десяти метров, отделяющих его от жертвы явно недостаточно для того, чтобы воспрепятствовать переходу от общения высокотехнологического к более тривиальным методам выяснения отношений. Кроме того, Bluejacking таит в себе еще одну угрозу, связанную с появлением новых сопряженных устройств. Как правило, в процессе общения одна из сторон предлагает выполнить сопряжение, ука- 85
Безопасность беспроводных сетей Fie Edit View Go Bookmarks Tods Bluetooth КГШ, Btuetmtth донг пы и лругйе Ш«е1вШ* vet [ВТ Мечтаешь почув себя Шумахером Каталог Bluetooth устройств Bluetooth софт > Новости Стать и Форум . *А* ru biueiacker Синвопика Online игры > Контакту BuaReport Hi-tech глоссарий V ■•■ Bluetooth в мире ц i j искать в Найти! КОД ПОДТВЕРЖДЕНИЯ ^v Если вы хотите успешно обмениваться файлами с неизвестными Bluetooth-устройствами, всегда вводите код подтверждения 0000 Ka^aqor Bluetooth устройств ^s~ l "• * Что такое Bluetooth? S Что можно делзть через Bluetooth * You've been BlueJecked by ... * Что такое BiueJacking? V FAQ *■- Правила движения ■Прошедшие конкурсы _ Б будущее с Bluetooth! Общайся бопьше с Mobiluck1 Рис. 2.28. Сайт www.bluejack.ru зав в качестве PIN некое простое значение, например 0000. После обмена «бесценной информацией», например фотографиями «Мы с Васькой прогуливаем урок информатики», в списке сопряженных устройств обеих сторон остается новая запись, которая может в дальнейшем использоваться для работы с устройством на втором режиме безопасности (Mode 2). На сайте российского сообщества Bluejacking (http://www.bluejack.ru) настойчиво предлагается вводить в качестве кода подтверждения 0000 (см. рис. 2.28). Так что если вы увлекаетесь Bluejacking, не забывайте чистить список сопряженных устройств. Bluenibbling Термин Bluenibbling обозначает свободный поиск устройств Bluetooth и сбор информации о них. По своей сути Bluenibbling очень похож на «боевые выезды», направленные на обнаружение и позиционирование беспроводных точек доступа, Wardriving. Технически такие работы представляют собой постоянное сканирование эфира в поиске устройств, отвечающих на широковещательные запросы подключения. 86
Глава 2. Фундамент безопасной сети Bluetooth Setting $* Bluetooth: Accessibility Device Identification Name: Pocket LOOX Address: unavailable I | Use PocketPC device name for Bluetooth Accessibility 0 Allow other devices to connect Q All devices (в) Paired devices only | I Other devices can discover me General Accessibility Services About Рис. 2.29. Отключение обнаружения устройства Как уже говорилось ранее, большинство устройств могут быть настроены таким образом, что не будут отвечать на широковещательные запросы (см. рис. 2.29). Для того, чтобы устройство ответило, запрос inquire должен быть направлен на его МАС-адрес. Для того, чтобы Выяснить адрес устройства, не поддерживающего обнаружение, можно вос- пользовавшишь активным и пассивным подходами. Активный поиск устройств представляет собой подбор МАС- адреса, т.е. злоумышленник последовательно посылает запросы на различные адреса. Впервые эта техника была предложена Олли Вайтхаузом (Ollie Whitehouse) в публикации «War Nibbling: Bluetooth Insecurity» (http://www.atstake.com/research/reports/acrobat/atstake _war_nibbling.pdf) и реализована в утилите redfang (http://www.securitylab.ru/software/234368.php). Со временем она получила развитие в части оптимизации адресного пространства и распараллеливания процесса. С точки зрения оптимизации пространства перебора могут использоваться хорошо известные списки OUI, содержащие три первых октета МАС-адреса. Некоторые модели устройств имеют еще более ограниченный диапазон адре- 87
Безопасность беспроводных сетей - - SftMt Mo.2 - Session Edit View Bookmarks Settings Help [root@ibm201 ~]# hcitool scan Scanning ... [root@ibm201 ~]# hciconfig hciO name Yandexlnternet [root@ibm201 ~]# hciconfig hciO down;hciconfig hciO up [root@ibm201 ~]# hcidump -V | grep bdaddr bdaddr OO:OF:DE:CO:DD:FC class 0x520204 type ACL bdaddr OO:OF:DE:CO:DD:FC role 0x01 bdaddr OO:OF:DE:CO:DD:FC [root®ibm201 ~]# | m Shell Shell No. 2 Рис. 2.30. Пассивный поиск устройств сов. Например, МАС-адреса телефона Sony Ericsson P900 в большинстве случаев начинаются с префикса 00:0A:D9:E. Что касается распараллеливания процесса перебора, использование нескольких Bluetooth-устройств позволяет в несколько раз увеличить скорость подбора. Последние версии redfang могут использовать до восьми устройств для одновременной проверки различных адресов. Пассивные методы поиска устройств могут быть использованы двумя путями. Один из них - перевод своего устройства в режим ожидания подключений и анализ поступающих запросов, другой - использование уже упоминавшихся выше анализаторов Bluetooth. На рис. 2.30 приведен пример использования утилиты hcidump для прослушивания входящих соединений. Обратите внимание, что в приведенном примере для увеличения количества желающих подключиться выбрано заведомо броское имя устройства. Подобный подход реализован в утилите Bluesniff (http://bluetooth.shmoo.com/). Однако, для того, чтобы устройство начало искать другие, в большинство случаев требуется инициатива со стороны пользователя. Эти действия можно спровоцировать различными методами, например, путем установки широкополосной радиопомехи в частотном диапазоне ISM. Отсутствие связи с гарнитурой/телефоном/КПК наверняка заставит пользователя проверить свои настройки и попытаться установить соединение заново. 88
Глава 2. Фундамент безопасной сети Blueprinting Как видно из вышеизложенного, протокол Bluetooth довольно «болтлив», что дает большие возможности для идентификации устройств по особенностям реализации сетевых протоколов (fingerprint). Для устройств Bluetooth в связи со сложностью использования сетевых анализаторов в основном используются активные проверки. Набор параметров, которые могут быть использованы для определения устройства, достаточно стандартен: • МАС-адрес отправителя по списку OUI; • имя устройства; • идентификатор чипа, переданный при опросе; • набор поддерживаемых устройством возможностей; • информация о поддерживаемых сервисах, полученная по SDP. Первые три байта МАС-адреса однозначно указывают на производителя чипа. Список диапазонов МАС-адресов, зарезервированных за различными компаниями, поддерживается Internet Assign Numbers Authority (IANA) и доступен по адресу (http://www.iana.org/assignments/ethemet-numbers). Более актуальные списки OUI можно получить из различных утилит, например Kismet. Случается, что владелец устройства не изменяет его имени, и в результате станция возвращает название, присвоенное производителем, что также помогает установить, с чем мы имеем дело. Хотя это скорее исключение, чем правило, поскольку владельцы пытаются персонифицировать свои гаджеты, и по имени устройства обычно можно узнать что-то личное, например имя хозяина. В утилите Blueprint (http://trifinite.org/Downloads/bp_v01-2.zip) для определения версии устройства используется анализ МАС-адреса и сервисов, полученных по SDP. Для получения списка сервисов используется стандартная утилита sdptool стека Bluetooth для Linux BlueZ. Принципы работы утилиты подробно описаны в публикации Мартина Херфурта (Martin Herfurt) и Коллина Муллинера (Collin Mulliner) «Remote Device Identification based on Bluetooth Fingerprinting Techniques» (http://trifinite.org/Downloads/Blueprinting.pdf). Пример использования утилиты приведен на рис. 2.31. База данных отпечатков систем далеко не полная, поэтому довольно часто утилита не возвращает никакой информации. Бороться с этим можно путем использования опции -nomac для исключения из критериев поиска МАС-адреса. 89
Безопасность беспроводных сетей ^ ШаШтт№1Л££Г.~)$т/пеш'1Ър- Shell No. 2 - (Console |-Го|* Session Edit View Bookmarks Settings Help [root9ibm201 bp]# hcitool scan li Scanning ... OO:OF:DE:CO:DD:FC T630 [root§ibm201 bp]# sdptool browse --tree OO:OF:DE:CO:DD:FC I ./bp.pl 00:0, :DE:CO:DD:FC -nomac 00:OA:D9@4O63698 device: Sony Ericsson T610 version: R1L013 date: n/a type: mobile phone note: n/a 00:0E:07@4063698 device: SonyEricsson T630 ' version: n/a date: n/a: type: mobile phone . note: n/a 00:OA:D9@40G3698 device: Sony Ericsson Z600 version: n/a j date: n/a type: mobile phone note: n/a [root6ibm201 bp]# | Щ Shell Shell No. 2 (I* Рис. 2.31. Определение версии устройства В этом случае утилита вернет менее точный результат. Не забывайте отправить автору свежий отпечаток, если он не был обнаружен в базе. В качестве альтернативного решения можно использовать последние версии уже упоминавшейся утилиты redfang. Стандартные PIN Многие устройства, работающие с Bluetooth, не имеют пользовательского интерфейса. В этом случае производители присваивают устройству статический PIN, который указывается в документации. Наверное, мало кого удивит, что в большинстве случаев значение PIN не отличается по сложности от 0000 или 1234. Используя стандартное значение PIN, злоумышленник может подключиться к устройству в режиме 3 (Mode 3) и работать с ним как авторизиро- ванный пользователь. Таких устройств довольно много. В основном это различные беспроводные гарнитуры, автомобильные приемники Hands-Free. 90
Глава 2. Фундамент безопасной сети Специально для последних был разработан набор утилит Саг Whisperer (http://trifinite.org/trifinite_stuff_carwhisperer.html). Программы, входящие в Car Whisperer, активно ищут доступные устройства Bluetooth, и если такие найдены, пытаются подключиться к ним, используя стандартные значения PIN. Возможное значение кода определяется по МАС-адресу устройства. Если соединение прошло успешно, происходит подключение к первому каналу, используемому для передачи аудиоданных. В результате утилита получает возможность прослушивать переговоры и музыку из автомобиля, а также пожелать водителю и пассажирам счастливого пути. Bluesnarf Атака Bluesnarf является одной из самых известных атак на мобильные телефоны с поддержкой Bluetooth. Она основана на уяз- вимостях реализации протокола обмена объектами ОВЕХ в ряде моделей телефонов Nokia и Sony Ericsson. В ходе атаки злоумышленник соединяется с профилем ОВЕХ Push, но вместо передачи объекта (например, визитной карточки) сам запрашивает объект. Причем в качестве объекта указывается файл с важной информацией, например telecom/pb.vcf (телефонная книга) или telecom/cal.vcs (календарь событий). Если устройство вернет запрошенный объект, то в руках злоумышленника окажутся весьма интересные данные (см. рис. 2.32). :-" - Shell - Коп sole Session Edit View Bookmarks Settings Help [root©top -]# obexftp -b 00:0r:DE:CO:DD:FC —channel 7 -g telecom/pb.vcf -v jBrowsing 00:OF:DE:CO:DD:FC ... Channel: 7 Connecting...done Receiving "telecom/pb.vcf"... Sending ""... done /done Disconnecting...done [rootetop -]# tail pb.vcf BEGIN:VCARD VERSION:2.1 N:;01 TEL; HOME: 9382218 END:VCARD BECIN:VCARD VERSION:2.1 N:;3apa3a TEL;H0ME:+78313131383 END:VCARD [rootStop -]# | -ч1<И Shell j* Shell No. 2 la Shell No. 31 Рис. 2.32. Атака Bluesnarf 91
Безопасность беспроводных сетей Утилита obexftp - стандартная утилита для BlueZ с целью обмена объектами по протоколу ОВЕХ. Атака Bluesnarf++ является вариантом Bluesnarf. Отличие заключается в методе использования уязвимости. Вместо получения конкретного файла злоумышленник соединяется со службой ОВЕХ FTP и получает возможность просматривать содержимое файловой системы и удалять файлы. На рис. 2.33 приведен пример использования этой уязвимости с помощью утилиты Bluediving (http://bluediving.sourceforge.net/). Shell - konsefe*' Session Edit View Bookmarks Settings Help [ACTION MENU] [1] Choose a target [2] Blue Snarf [3] Blue Snarf++ [4] Blue Snarf Ericsson [5] Blue Bug [6] Blue Bug AT shell [7] Helo Moto [8] Blue Smack [9] Stop Blue Smack [10] Nasty VCard til] Symbian Remote Restart [12] Try all attacks [13] Automatic attack [14] launch redfang [15] Change your bluetooth address [16] Send soundfile [17] Scan RFCOMM channels [18] Launch RFCOMM shell [19] RFCOMM Connection [20] HCI Connection [21] Request new link key [22] Info nenu [23] Main menu [24] Exit >» 3 «< Launching BlueSnarf++ on 00:0F:DE:C0:DD:FC:10 Connected to 00:OF:DE:CO:DD:FC. ftp> Is drWXr-Xr-X Jul 6 09:33 Картинки drwxr-xr-x Jul 6 09:33 звуки drwxr-xr-x Jul 6 09:33 гекы ftp> | jjl Shell Рис. 2.33. Атака Bluesnarf++ 92
Глава 2. Фундамент безопасной сети Об этой программе стоит поговорить отдельно. По сути она представляет собой оболочку для набора эксплоитов и ряд дополнительных утилит, которые могут использоваться при поиске уяз- вимостей. Программа охватывает практически все общедоступные уязвимости Bluetooth и может претендовать на звание Metasploit (http://www.metasploit.org) для мира персональных локальных сетей. Правда процесс установки и использования потребует некоторых усилий и модификаций кода программы, но как указано в файле README дистрибутива, это делается для снижения риска использования программы в целях несанкционированного доступа. Ситуация с Bluesnarf осложняется тем фактом, что практически у всех сотовых телефонов служба ОВЕХ доступна без авторизации независимо от настроек, т.е. даже если все службы телефона работают в режиме 3 (Mode 3), соединения ОВЕХ будут обрабатываться в режиме 1 (Mode 1). 2.5.4. Bluebug Уязвимость Bluebug является классическим примером «черного хода» (backdoor), оставленного разработчиками некоторых моделей сотовых телефонов. В ходе исследований стека Bluetooth было обнаружено, что устройства откликаются на запросы на подключения к каналу, который не анонсируется через SDP, причем соединение происходит в режиме безопасности 1 (Mode 1), т.е. без аутентификации и шифрования. Попытки выяснить, какие сервисы предоставляет этот канал, показали, что приложение откликается на стандартные АТ-команды. Используя АТ-команды, с телефоном можно сделать очень и очень много - от телефонных звонков, отправки и чтения SMS до изменения настроек, например - переадресации звонков. Трудно сказать, чем является утилита Bluebug, ошибкой разработчиков, забывших отключить функцию, используемую для отладки, или намеренно внедренной программной закладкой, но ее наличие заставляет серьезно задуматься о качестве стеков Bluetooth различных устройств. Для проверки наличия уязвимости можно воспользоваться утилитой Bluediving. HeloMoto Уязвимость связана с ошибкой реализации функции сопряжения в некоторых телефонах Motorolla. В ходе атаки устанавливается соединение с сервисом ОВЕХ, но вместо передачи объекта происходит подключение к каналу гарнитуры. Телефон, считая, что раз уж соединение установлено, то никаких других ограничений быть 93
Безопасность беспроводных сетей не может, разрешает подключение к другим приложениям. Злоумышленник соединяется с сервисом Headset Audio Gateway, обычно работающим на канале номер 3, и получает возможность удаленного управления устройством с помощью АТ-команд. Дальнейшее развитие атаки ограничивается только фантазией атакующего. Для проверки наличия уязвимости можно использовать утилиту Bluediving либо утилиты rfcomm и atshell из состава BlueZ. Другие атаки Атака Bluesmack является своего рода «Ping of Death» мира Bluetooth. Ошибка присутствует в функции эхо-запроса L2CAP и возникает при обработке большого пакета (около 600 байт). Последствия зависят от используемой реализации стека. Например, на КПК Pocket Loox 720, использующем стек Broadcom 1.5.0, до перезагрузки устройства пропадает возможность сетевого взаимодействия. Те же эффекты наблюдаются на ряде ноутбуков, использующих стек Bluetooth от Microsoft. Проверка на наличие уязвимости достаточна проста и может быть осуществлена с помощью утилиты I2ping из состава BlueZ. #l2ping -s 600 <bd_addr> Как видно из примера, для реализации атаки злоумышленнику необходимо знать МАС-адрес жертвы, что позволяет использовать отключение функции обнаружения в качестве эффективной, но не абсолютной контрмеры. Уязвимость Bluechop позволяет злоумышленнику разрушать пико- сети, присваивая себе внутренние адреса подчиненных узлов в сети. Для реализации этой атаки необходимо, чтобы мастер поддерживал функции организации распределенных сетей. Детали уязвимости пока не разглашаются, но дополнительную информацию можно найти по адресу http://trifinite.org/trifinite_stuff_bluechop.html. Атака Bluebump основана на приемах Bluejacking и методах социальной инженерии. Злоумышленник инициирует процесс сопряжения и провоцирует пользователя ввести PIN-код, известный атакующему. Если пользователь поддается на провокацию, злоумышленник получает возможность работы с приложениями, требующими использования режима безопасности 2 (Mode 2). Различные варианты DoS-атак на сотовые телефоны и утилиту hcidump опубликованы в феврале 2006 г. (http://www.security.nnov.ru/ Fnews745.html). В стеках для настольных операционных систем и КПК также было обнаружено несколько уязвимостей. Переполнение буфера в 94
Глава 2. Фундамент безопасной сети стеке WIDCOMM версий 1.2.2.7 и 1.4.2.10 для Windows, а также версии 1.4.1.03 для Windows Mobile позволяет злоумышленнику вызвать отказ в обслуживании или выполнить произвольный код в системе. Дополнительную информацию об уязвимости можно найти по адресу http://www.pentest.co.uk/documents/ptl-2004-02.html. Уязвимость типа «обратный путь в каталогах» в реализации стека Bluetooth Toshiba для Windows позволяет злоумышленнику, имеющему подключение к сервису ОВЕХ, сохранять файлы в произвольной папке жесткого диска жертвы, например, в папке автозагрузки. Дополнительную информацию об уязвимости можно найти адресу http://www.digitalmunition.com/DMA%5B2006-0112a%5D.txt. Ряд проблем безопасности в реализации стека Bluetooth для MacOS X был обнаружен в 2005 г. (http://www.security.nnov.ru/ news4762.html). Наиболее критичная из них позволяла злоумышленнику осуществлять скрытый обмен файлами, что привело к возникновению двух «демонстрационных» червей Leap и InqTana. Отказ в обслуживании при обработке большого количества запросов OBEX-Push был обнаружен во многих моделях сотовых телефонах в 2007 г. Демонстрационную утилиту можно получить по адресу http://www.xmailserver.org/ussp-push.html. 2.6. Защита устройств Bluetooth Комплекс мероприятий по защите устройств Bluetooth тривиален. Стоит отключать функцию обнаружения устройства и включать ее только при необходимости сопряжения с новым устройством. В некоторых телефонах это реализовано следующим образом: функция обнаружения активизируется только на 60 с, после чего автоматически отключается. Эта контрмера не является абсолютной защитой, но достаточно эффективна в большинстве случаев. На более интеллектуальных, чем сотовые телефоны, устройствах, как правило, имеется возможность настройки предоставляемых сервисов. Стоит отключать те из них, которые не используются на данном конкретном устройстве (см. рис. 2.34). Для тех сервисов, которые активно используются, необходимо требовать использования режима 3 (Mode 3) и, возможно, дополнительной авторизации (см. рис. 2.35). Что касается процесса сопряжения, его желательно проводить только с доверенными устройствами в приватных местах. Хотя выполнить последнюю часть рекомендаций достаточно сложно в связи с расплывчатостью понятия «приватное место», не стоит впадать в панику. Не забывайте про стоимость анализатора трафика для Bluetooth. Десять тысяч долларов сами по себе являются эффективной контрмерой. 95
Безопасность беспроводных сетей Bluetooth Settin j^1* **x Ц£ 19:08 Bluetooth: Services Services ^j|?File Transfer ^Information Exchange ^Serial Port Sfc Personal Network Server Service settings | I Enable service |~[ Authorization required Q Authentication (Passkey) required 1 j Encryption required Advanced... General | Accessiaility | Sei vices About Рис. 2.34. Отключение неиспользуемых приложен Bluetooth Settin $* **x 4$ 19:08 Bluetooth: Services Services <0 file Transfer *и| Information Exchange }f Serial Port t Personal Network Server Service settings 0 Enable service |»/| Authorization required 0 Authentication (Passkey) required [y| Encryption required I Advanced... I General Accessibility Services | About | Рис. 2.35. Настройка безопасности сервиса 96
Глава 2. Фундамент безопасной сети Bluetooth Мапа< Bluetooth: Paired devices Add Remove . HOMEWORK T630 W2K3IBM-02 Рис. 2.36. Список сопряженных устройств Периодически проверяйте список сопряженных устройств на предмет наличия незнакомых записей и безжалостно вычищайте те из них, которые не узнали с первого раза (см. рис. 2.36). Не забывайте про управление обновлениями безопасности. Патчи выходят не только для Windows, но и для сотовых телефонов и КПК. Хотя, конечно устанавливаются они гораздо реже. Интересным источником информации об уязвимостях в беспроводных устройствах, в том числе и в Bluetooth, является сайт Wireless Vulnerabilities & Exploits (http://www.wirelessve.org/). По функциям он претендует на CVE беспроводного мира, но пока является скорее дополнительным источником информации, чем основным (см. рис. 2.37). Для контроля состояния устройств Bluetooth можно воспользоваться одной из утилит, приведенных в табл. 2.3. Например, запустить btscanner на компьютере перед проходной и в случае обнаружения устройств помогать сотрудникам отключить функцию ответов на широковещательное сканирование. 97
Безопасность беспроводных сетей jsofl Internet Explorer i Re £* gew favorites Tools Help Aijdress j^| http //www wrelessve org/entnes'pageM wve Menu Home Login Renter Nrws About WVE FfiQ Editorial Board Links Contact Us Database Submit Entry Search Browse ■ ■1 ,1- mi- tl .У — Exploits Wireless Vulnerabilities & Entries :: all WVE-2005-0037: Nokia 7610. 321П DoS in OBEX Seryice (Vulnerability) The OEEX service on Nokia 7610 and 32.10 phones can be crashed if an attacker PUTs a file containing illegal characters. WVE-2005-0038: BlueZ Arbitrary Command Execution Vulnerability (Vulnerability Candidate hcid, the daemon that controls Bluetooth devices used by the system allows remote attackers to execute arbitrary corrimands on the host system. Assessment uos ( vuineraniiny i Candidate The 802.11 DSSS PHY is vulnerable to Dos attacks against the CSMA/CCA mechanism for controlling access to the wireless medium. WVE-?005-0034: Ciscn Airanet 34П АР ичкч 18 bit IVs (Vulnerability) Exploits News Tiahtenina ud home security nvmfn Rest EAP lor an EntE Wireless IAN WretRss attacks: Da HowS02.11wwllMrr wretess secunw Network World Artie More News... Рис. 2.37. Список Wireless Vulnerabilities & Exploits Таблица 2.3 Инструменты для работы с Bluetooth Название BlueZ btsaenner BTScanner XP BlueSweep Платформа Linux Linux Windows XP Windows XP Описание Стек протоколов Bluetooth. Утилиты hciconfig, hcidump, hcitool, obexftp и т.д. http://www.BlueZ.org/ Обнаружение устройств, подбор адресов, пассивный поиск уязвимостей (Bluesnarf) http://www.pentest.co.uk/cgi- bin/viewcat.cgi?cat=downloads Обнаружение устройств http://www.pentest.co.uk/cgi- bin/viewcat.cgi?cat=downloads Обнаружение устройств http://www.airmagnet.com/products/bluesweep.htm 98
Глава 2. Фундамент безопасной сети Название RegFang Bluesniff Blueprint Blooover II BlueDiving Bluetooth Stack Smasher BTCrack Платформа Linux Linux Linux J2ME Linux Linux Windows Описание Подбор адресов http://www.net-security.org/software.php?id=519 Подбор адресов, пассивный сбор адресов http://bluesniff.shmoo.com/ Идентификация устройств http://trifinite.org/Downloads/bp_v01-2.zip Набор эксплойтов http:/Arifinite.org/trifinite_downloads.html Набор эксплойтов, инструменты для поиска уязвимостей http://bluediving.sourceforge.net/ Fuzzer для L2CAP http://www.secuobs.com/news/05022006- bluetoothiO.shtml Подбор PIN-кодов http://secdev.zoller.lu/ Таким образом, протокол Bluetooth является достаточно защищенным сам по себе. Использование встроенных средств защиты, таких как отключение функции обнаружения, шифрование трафика и аутентификация устройств, позволяет реализовать его без лишних проблем. 99
Глава 3. Безопасность беспроводных сетей сегодня После прочтения предыдущих глав у читателя может сложиться впечатление, что при использовании беспроводных сетей обеспечить приемлемый уровень безопасности невозможно. Однако в настоящее время существуют технологии, которые могут быть использованы для эффективного решения задач сетевой аутентификации и криптографической защиты трафика. К таким технологиям относятся 802.1 X, Wireless Protected Access (WPA) и стандарт 802.11 i, также известный как WPA2. 3.1. Защита на уровне порта Протокол 802.1 X (http://www.ieee802.Org/1/pages/802.1X.html) обычно ассоциируется с беспроводными сетями, однако изначально он был разработан для разграничения доступа в сетях Ethernet и Token Ring. Технология 802.1 X обеспечивает возможность решения задач идентификации, аутентификации и разграничения доступа к сетям на канальном уровне. Единственным механизмом защиты на канальном уровне, существовавшим до появления этой технологии, было разграничение доступа по МАС-адресу (port security). Однако поскольку МАС- адрес является общедоступным и легко изменяемым параметром, данный механизм нельзя назвать очень строгим методом защиты. В основном разграничение доступа было сконцентрировано на сетевом и вышестоящих уровнях. При использовании протокола 802.1 X станция, физически подключающая к сети, не получает доступа к другим узлам до прохождения аутентификации. За реализацию этой функции отвечает активное сетевое оборудование (коммутатор, точка доступа), отключающее станции от сети до получения положительного вердикта об их аутентичности. В терминологии 802.1 X* устройство, выполняющее подобные функции, называется аутентификатором (Authen- Русская терминология 802.1 X пока не устоялась, поэтому в литературе можно обнаружить большое разнообразие разночтений. Например, Supplicant может обозначать «клиентский запросчик», «проситель», «вызывающая сторона» и даже просто «саппликант». Для обозначения аутентификатора может использоваться словосочетание «агент проверки подлинности» и т.д. 100
Глава 3. Безопасность беспроводных сетей сегодня ticator). Протокол 802.1Х реализован в большинстве точек доступа и беспроводных коммутаторов, но далеко не во всем активном сетевом оборудовании для 802.3. Часть программного обеспечения подключающейся станции, воспринимающее запросы аутентифи- катора и реализующее клиентскую часть протокола проверки идентичности, носит название инициатора (Supplicant). Программное обеспечение просителя присутствует в стандартной поставке операционной системы Windows XP и выше, Windows Mobile. Для других версий ОС Windows это программное обеспечение может быть загружено с сервера Microsoft (http://support.microsoft.com/kb/313664). Дистрибутив для Linux доступен в комплекте утилит WPA_Supplicant (http://host.ap.epitest.fi/wpa_supplicant/). Кроме того, многие производители оборудования поставляют собственные варианты инициатора 802.1 X для различных ОС. Поскольку реализовать функции аутентификации непосредственно на коммутаторе было бы нелогично (представьте, если каждый коммутатор должен содержать свою базу данных учетных записей), аутентификатор используется в качестве сервера-посредника между инициатором и третьим компонентом 802.1 X, сервером аутентификации (Authentication Server). В роли сервера аутентификации может быть использована практически любая реализация сервера RADIUS, например FreeRADIUS (http://www.freeRADIUS.org/), Microsoft Internet Authentication Server (IAS) и т.д. (см. рис. 3.1). При подключении к сети аутентификатор посылает инициатору по протоколу Extensible Authentication Protocol over LAN (EAPOL) запрос на аутентификацию. Если клиент не поддерживает 802.1 X, запрос игнорируется, и станция не имеет возможности взаимодействия с сетью. В противном случае клиент инициирует протокол про- EAPoL RARIUS Инициатор (Supplicant) Аутентификатор (Autentificaror) Неконтролируемый порт Сервер аутентификации (Authentication Server) Контролируемый порт Рис. 3.1. Компоненты 802.1 X 101
Безопасность беспроводных сетей верки подлинности, в ходе которого происходит взаимная аутентификация сервера RADIUS и подключаемой станции. Аутентифика- тор преобразует запросы EAPOL в команды протокола RADIUS и обратно. Если клиент успешно прошел аутентификацию и авторизацию, сервер RADIUS дает аутентификатору команду на подключение к сети, после чего станция получает возможность взаимодействия в рамках контролируемого коммутатором или точкой доступа сегмента. Дополнительно сервер RADIUS может генерировать и передавать точке доступа и подключаемой станции ключи шифрования (WEP, РМК для WPA или WPA2). 3.1.1. Протоколы аутентификации Для аутентификации в сети, использующей технологию 802.1 X, может использоваться один из протоколов семейства ЕАР (RFC 3748, 4017). Наиболее распространены следующие из них: . EAP-TLS; . PEAP (Protected ЕАР); • EAP-TTLS (Tunneled Transport Layer Security); • Cisco-LEAP; . EAP-FAST. В проводных сетях могут быть использованы и другие протоколы аутентификации, например EAP-MD5, но для беспроводных сетей он не подходит. Протокол осуществляет одностороннюю аутентификацию (сеть аутентифицирует клиента) на основе хэша пароля. Поскольку станция не может проверить подлинность сети, это позволяет злоумышленнику установить точку доступа с сервером RADIUS, считающую корректной любую попытку аутентификации, и таким образом реализовать атаки на клиентские устройства. Для выполнения подобных атак может быть использован набор утилит airsnarf (http://airsnarf.shmoo.com/) и модифицированный сервер RADIUS. Протоколы LEAP и EAP-FAST Протокол LEAP является собственной разработкой фирмы Cisco и иногда еще встречается в беспроводных сетях. Основным преимуществом LEAP является относительная простота развертывания, поскольку он не требует использование цифровых сертификатов. Протокол реализован на базе облегченного варианта MS- CHAPv2 и работает следующим образом: • сеть передает станции 8-битовый случайный запрос; • станция разбивает NT-hash (значение функции MD4 от пароля 16 байт) на 3 части (7+7+2 байта), последняя часть дополняется нулями до 7 байт; 102
Глава 3. Безопасность беспроводных сетей сегодня • запрос три раза зашифровывается по алгоритму DES с использованием частей хэша паролей в качестве ключей; • зашифрованные значения конкатенируются, и полученный 24- битовый отклик отправляется в сеть; • сеть проверяет корректность полученного значения и в случае успеха передает подтверждение станции; • станция генерирует случайный запрос, передает его сети, и проводится процедура аутентификации сети. Таким образом, протокол LEAP реализует двустороннюю аутентификацию на основе пароля. Однако, в реализации процесса проверки подлинности присутствует несколько недочетов, дающих возможность проводить эффективные атаки, направленные на подбор пароля по словарю. В LEAP хэш пароля рассчитывается и хранится без использования «соли». «Соль» представляет собой случайное число, которое конкатенируется с паролем перед расчетом хэша и сохраняется в системе в открытом виде. Таким образом, даже одинаковые пароли будут иметь разные значения хэша. Отсутствие «соли» дает злоумышленнику возможность использовать предварительно рассчитанные значения хэшей (атаки типа «балансировка время-память», time-memory trade-off). Поскольку третий ключ DES, используемый для шифрования запроса, содержит только 2 байта хэша, а остальная часть ключа известна (нули), он может быть подобран за секунды. Сложность подбора составляет 216, что не представляет большой проблемы для современных вычислительных устройств. Комбинируя эти две уязвимости, получаем следующий механизм подбора паролей LEAP: • злоумышленник предварительно рассчитывает значения MD4- хэшей для паролей, содержащихся в словаре; • злоумышленник прослушивает сеть и перехватывает запрос и отклик; • по перехваченному отклику злоумышленник подбирает последние два байта хэша пароля; • из словаря выбираются те значения паролей, хэши которых содержат полученное на предыдущем этапе значение; • хэши паролей используются для шифрования перехваченного запроса, и если результат шифрования совпал с откликом, пароль считается подобранным. Таким образом, злоумышленник получает достаточно эффективный механизм подбора пароля пользователя по словарю. Описанная техника может быть улучшена путем использования активных атак. Во-первых, злоумышленник может разрывать со- 103
Безопасность беспроводных сетей единения между точкой доступа и станциями, чтобы быстрее получить необходимые значения запроса и отклика. Во-вторых, при использовании ложной точки доступа злоумышленник, выдавая себя за сервер RADIUS, может самостоятельно генерировать значение запроса. Это дает возможность использовать заранее рассчитанную таблицу соответствия паролей, запроса и отклика, что значительно ускоряет процесс атаки. Как уже говорилось ранее, протокол LEAP основан на MS-CHAPv2, соответственно описанные уязвимости характерны и для MS-CHAPv2. В настоящее время существует большое количество утилит, позволяющих реализовать подобную атаку, например asleap (http://asleap.sourceforge.net/), THC-leapcracker (http://thc.segfault.net/ releases. php?q=leap). В целях обеспечения безопасности компания Cisco реализовала модифицированный вариант LEAP под названием EAP-FAST (http://www.ietf.org/internet-drafts/draft-cam-winget-eap-fast-03.txt). Этот протокол, как и рассматриваемый далее РЕАР, обеспечивает передачу данных аутентификации внутри защищенного TLS- канала. Для шифрования данных используются симметричные ключи (Protected Access Credentials, РАС), уникальные для каждого пользователя. В качестве метода аутентификации используется EAP-GTC, т.е. передача пароля в открытом виде. Необходимость распределения РАС между пользователями усложняет внедрение EAP-FAST. Для облегчения этой задачи может использоваться механизм под названием Dynamic Provisioning или Automatic РАС Provisioning (http://tools.ietf.org/wg/eap/draft-cam- winget-eap-fast-provisioning-02.txt), реализующий автоматическую передачу РАС клиенту. Для этого клиент устанавливает защищенное соединение с сетью, применяя протокол Диффи-Хэллмана для вывода ключей шифрования. В рамках защищенного туннеля клиент проходи аутентификацию по протоколу MS-CHAPv2, после чего ему передается РАС. Этот метод позволяет злоумышленнику, реализовавшему условие «человек посередине», получать данные (запрос и отклик MS-CHAPv2), необходимые для проведения описанных ранее атак, поскольку предполагается использование анонимного обмена в рамках протокола Диффи-Хэллмана. В спецификации протокола EAP-FAST описана возможность применения алгоритма RSA вместо Диффи-Хэллмана, но в этом случае процесс внедрения EAP-FAST усложняется, поскольку возникает необходимость применения цифровых сертификатов. Все это практически стирает все преимущества EAP-FAST перед РЕАР. 104
Глава 3. Безопасность беспроводных сетей сегодня Информацию о развертывании EAP-FAST на базе оборудования Cisco можно почерпнуть из документа, опубликованного на сайте компании: http://www.cisco.com/en/US/products/sw/secursw/ps2086/products_ user_guide_chapter09186a0080205a6b.html#wp436787. Протокол EAP-TLS Протокол EAP-TLS является стандартом IETF (RFC 2716). В нем для взаимной аутентификации станции и сети используются цифровые сертификаты и протокол TLS. Реализации этого протокола достаточно широко распространены и встроены в большинство инициаторов 802.1 X. Одним из важных моментов, который необходимо учитывать при выборе EAP-TLS в качестве протокола аутентификации, является необходимость развертывания полнофункциональной инфраструктуры открытых ключей и управления сертификатами пользователей. Кроме того, поскольку сертификаты пользователей передаются по беспроводной сети а открытом виде, злоумышленник имеет возможность получать информацию об используемых именах пользователей. Защищенный ЕАР - РЕАР Протоколы TTLS и РЕАР в настоящее время не являются стандартами Internet и имеют статус проекта стандарта (RFC draft, см. http://www.iett.org/html.charters/pppext-charter.html). Поэтому в реализациях этих протоколов различными производителями программного обеспечения могут существовать различия. Технически они мало отличаются друг от друга и оба предлагают использование различных методов аутентификации внутри защищенного с помощью TLS туннеля. Основное различие этих протоколов в том, что РЕАР поддерживается Cisco Systems, Microsoft и RSA Security, a EAP-TTLS - компаниями Funk Software (Juniper) и Certicom. Однако поскольку в стандартную поставку Windows входит реализация РЕАР, можно прогнозировать стандартизацию этого протокола в ближайшем будущем. Протокол РЕАР позволяет использовать для аутентификации цифровые сертификаты, а также имя пользователя и пароль (например, по протоколу MS-CHAP-V2). Кроме того, данные аутентификации защищаются протоколом TLS. Процесс установления соединения РЕАР происходит в два этапа (см. рис. 3.2). 105
Безопасность беспроводных сетей EAPoL RADIUS Сервер аутентификации (Authentication Server) Инициатор (Supplicant) Аутентификатор (Authenticated) \ ЕАР- Request / Identity ЕАР- Response / Identity . Контролируемый порт ■^— ЕАР-Туре / РЕАР TLS-Client-Hello TLS-Server-Hello '/Ш^' TLS-Cert-Verify ~~M ЕАР- Request / Identity ЕАР- Response / Identity ЕАР- Type = X ЕАР-Туре = X EAP-Success ► \ Шифров Рис. 3.2. Реализация протокола РЕАР Первый этап: • клиент получает запрос на установление соединения по протоколу ЕАР; • клиент отсылает произвольный идентификатор, который не проверяется сервером; • сервер предлагает использовать РЕАР для аутентификации; • клиент подтверждает тип протокола и посылает идентификатор сессии TLS (Client Hello); • сервер передает клиенту свой сертификат и серверный идентификатор сессии TLS (Server Hello); • клиент проверяет сертификат сервера, генерирует сеансовый ключ TLS, зашифровывает его на открытом ключе из сертификата и передает зашифрованный ключ серверу; • сервер расшифровывает сеансовый ключ при помощи своего закрытого ключа и подтверждает окончание данной фазы; Второй этап (данные защищены протоколом TLS record protocol): • сервер посылает клиенту запрос имени пользователя (идентификатора); 106
Глава 3. Безопасность беспроводных сетей сегодня • клиент отсылает серверу свой реальный идентификатор; •сервер предлагает использование одного из методов аутентификации; • клиент отсылает данные для аутентификации (хэш пароля, сертификат и цифровую подпись и т. д.), либо предлагает использовать другой метод аутентификации; • сервер проверяет данные клиента и передает точке доступа разрешение на работу с клиентом. Таким образом, независимо от используемого метода аутентификации, учетные данные пользователя (включая идентификатор) передаются внутри защищенного TLS-туннеля и не могут быть перехвачены злоумышленником. 3.1.2. Внедрение технологии 802.1 X В ходе развертывания технологии 802.1 X необходимо решить следующие вопросы: • выбор субъекта и протокола аутентификации; • развертывание и настройка серверной инфраструктуры; • настройка клиентов беспроводной сети. Планирование Весьма важным моментом при внедрении технологии 802.1 X является определение количества серверов RADIUS и точек их подключения к сети. Поскольку серверы аутентификации являются основными из компонентов инфраструктуры 802.1Х, их недоступность не даст пользователям подключаться к сети. Кроме того, в больших сетях на серверы RADIUS ложится серьезная нагрузка и возникает необходимость в ее равномерном распределении. В большинстве точек доступа можно указать как минимум два сервера RADIUS, чем обеспечивается некоторая отказоустойчивость. Кроме того, сервер IAS можно использовать в качестве сервера- посредника, распределяющего нагрузку между другими серверами (RADIUS-PROXY), что позволяет обеспечить высокую пропускную способность. Подробнее об этом можно узнать из базы знаний Microsoft (http:/Aechnet2.microsoft.corn/WindowsServer/en/library/dd2c5bd1- 96a9-464c-8ffe-c945da9e6c161033.mspx?mfr=true). Программное обеспечение инициатора 802.1 X, входящее в дистрибутив ОС Windows может использовать в качестве субъекта аутентификации учетную запись пользователя или учетную запись компьютера. Если для проверки подлинности используется компьютер, то подключение к сети происходит в процессе загрузки системы. В случае выбора в качестве субъекта аутентификации поль- 107
Безопасность беспроводных сетей зователя, сетевое соединение осуществляется после интерактивного входа в систему. Аутентификация учетной записи компьютера может происходить с использованием цифрового сертификата или пароля (РЕАР- MSCHAPv2). Поскольку подключение происходит в процессе загрузки машины, 802.1 X не мешает применению групповой политики. Кроме того, регистрация пользователя в домене происходит в интерактивном режиме, а не на основе локального кэша учетных записей. Однако применение данного метода аутентификации связано с определенными рисками, особенно для мобильных компьютеров. Например, в случае кражи ноутбука злоумышленник может просто загрузить компьютер в зоне действия беспроводной сети, и машина автоматически пройдет проверку подлинности. Поскольку при наличии физического доступа к компьютеру получить права локального администратора достаточно просто, атакующий получает доступ к беспроводной сети. Этого недостатка лишен метод аутентификации на уровне пользователя. В данном случае для подключения к сети требуется знание пароля учетной записи или наличие закрытого ключа, соответствующего сертификату пользователя. Даже при использовании физического доступа к момпьютеру получение этих данных затруднено и требует выполнения ресурсоемких атак, направленных на подбор пароля, что дает администратору дополнительное время для блокировки учетной записи. Однако поскольку аутентификация происходит после входа пользователя в систему, вход в домен осуществляется с использованием локального кэша учетных записей, и при загрузке не срабатывает механизм применения групповых политик. Компромисса можно достигнуть путем использования аутентификации пользователя и компьютера с разделением машин по различным VLAN в зависимости от субъекта (см. рис. 3.3). Для разделения VLAN в политике удаленного доступа сервера RADIUS (Start - Programs - Administrative Tools - Internet Authentication Server - Remote Access Policies) добавляются два правила. Одно из них описывает подключение учетных записей компьютера (например, в качестве критерия указывается группа Domain Computers). В него добавляются атрибуты Tunnel-Type со значением Virtual LANs (VLAN), и Tunnel-Pvt-Group-ID со значением идентификатора VLAN ID, к которому должны подключаться компьютеры. Из этой сети можно разрешить доступ серверам DHCP, DNS и Kerberos. Для учетных записей пользователей создается аналогичное правило с другим идентификатором VLAN, подключение к которому дает право на доступ ко всем ресурсам сети. 108
Глава 3. Безопасность беспроводных сетей сегодня 3» fiction фе* t№ ,*• -»" аа' » internet Authentication Service (local) _] RADIUS Clenfc _} Remote Access Loggftg «£" Remote Attest faCdes I Connection Request Process*^ .§?Wireiess Оэлцхии Authentication * *e eonAcm ft* Te«M»«Autelotf«f>nA!.«tecl»weftibut*,«idib»ri tick Add To «И w «rtwte №« к net Mod. sdectthe Vewta-Specft: ed*«* Нам Servra-Тдое TeirmaMnActnr TunneMtagnment ID Tunnei-Cient-Endpt TunnafHedun-Type TunrnJ-Pattword TumeWiefeience Tunnel-Setver Endpt Turner-Type VendorSpecfe CwtoAV-P» Qeraele-S enon-T ineout ^^«.-Dwfoftc^rt*» iVtndot RADIUS St*<lad RADIUS Standard RADIUS Standard RADIUS St*id*d RADIUS Standatd radius standatd RADIUS Standard RADIUS Slandad Radius stand«<j RADIUS Standee RADIUS Standaid RADIUS Standad МвоаЛ МосяЙ MicneoH Micron* ! Detection Specfta the type ol mce that the ш» has leques» Specfiei tf* acton that the HAS rtiotfd lake *Ып n Speotie» the turral to wheb a seraon a assigned Sptcfei the me uted by the tur*l nbator dumg SpecAet №e IP addvtt ol the nbalot end of (he tunn Specfies the naraport mduri uted v4wn d«aang a Special №e cstwwd uted ior ButhenlicMre to a w Specifies the relative pretaanc* aragnedw each tun SpecAei Ihe name uicd ty Ihe ПтН lennnatra dun Sp«cAes the IP adekm ol the teivei end ol the turn Spacfies the tumeing ptotocob uted Specrtet th» tuppert of propneW}- NAS fejh/et Sptciiet the C*eo AV Pat VSA. SpecAet Ih» certfcMi purpose or utage оЬрй der* SpeoAst whMher (AS «/omeucaly g*w«ec (he d« Spsc*ei Mheths IAS automaecaty generarei the id Specfin thy the ute's cW*i properties aie avxed Рис. 3.3. Настройка идентификаторов VLAN В результате при прохождении аутентификации от имени компьютера машина будет попадать в сеть, из который доступ к основным ресурсам запрещен. Но в этой сети есть возможность прохождения интерактивной регистрации в домене. Полный доступ к ресурсам компьютер получает уже после интерактивной регистрации пользователя. При использовании аутентификации на уровне компьютера по протоколу PEAP-MSCHAPv2 на мобильных устройствах, зачастую долго не подключающихся к сети, возникает еще одна проблема. Дело в том, что срок действия пароля компьютера в Active Directory ограничен 30 днями и до окончания этого срока машина должна его сменить. Если этого не происходит, соединение по 802.1 X становится невозможным, поскольку пароль истек. Сменить пароль машина тоже не может, поскольку сетевое соединение отсутствует. Решить эту проблему можно путем увеличения срока действия пароля (параметр «Domain member: Maximum machine account password age»), либо отключением механизма его смены (параметр «Domain member. Disable machine account password changes»). Значения этих параметров можно изменять в разделе Computer ConfigurationWindows Settings\Security Setiings\Local Policies\Security Options объекта групповой политики. 109
Безопасность беспроводных сетей Управление сертификатами Как уже говорилось ранее, в рамках протокола 802.1 X можно использовать различные типы ЕАР. Стандартный инициатор ОС Windows поддерживает EAP-TLS и два типа PEAP: PEAP-MSCHAPv2 и PEAP-TLS. В протокол EAP-TLS и PEAP-TLS для аутентификации сети и клиента используются цифровые сертификаты, что требует развертывания полнофункциональной инфраструктуры открытых ключей и решения задач управления клиентскими сертификатами, таких как: • выдача сертификатов; • отзыв скомпрометированных сертификатов; • распространение списков отозванных сертификатов (CRL) или поддержка серверов проверки статуса сертификатов (OCSP). С другой стороны, протоколы EAP-TLS и PEAP-TLS позволяют применять для проверки подлинности в сети средства усиленной аутентификации, такие как смарт-карты или их аналоги с USB- интерфейсом. При выборе PEAP-MSCHAPv2 широкое развертывание PKI не требуется, достаточно установить сертификаты на серверы RADIUS. Для аутентификации субъектов применяется пароль. В случае, когда в сети уже развернута инфраструктура открытых ключей, использование EAP-TLS или PEAP-TLS является предпочтительным. Если в качестве удостоверяющего центра используется Microsoft Certificate Server в режиме Enterprise, для автоматизации выдачи сертификатов можно воспользоваться функциями групповых политик. Для этого в оснастку управления удостоверяющим центром (Start - Programs - Administrative Tools - Certification Authority) необходимо добавить шаблон сертификата, используемый клиентом для аутентификации (Certificate Templates - New - Certificate Template to Issue). В случае выбора в качестве субъекта учетной записи компьютера можно применять стандартный шаблон Computer (см. рис. 3.4). Затем в редакторе объекта групповой политики открывается раздел (Computer Configuration - Windows Settings - Security Settings - Public Key Policies - Automatic Certificate Request) и добавляется настройка автоматической выдачи сертификатов на основе шаблона Computer (см. рис. 3.5). В свойствах параметра Autoenrollment Settings необходимо разрешить автоматическую выдачу сертификатов (Enroll Certificate Automatically). Для проверки корректности работы такого механизма достаточно обновить групповые политики (gpupdate /force). В случае, если все прошло корректно, выданный сертификат можно увидеть в оснастке управления сертификатами для локального компьютера. 110
Глава 3. Безопасность беспроводных сетей сегодня -lai xii Certficatort Authority (Local) §5 О Revoked Certficates _j Issued Cerrfrrf** _J Penning ReQ3SS _J Fafed Reqi -JCertficate [intandadpupose ^Directory Emal Repfcation iDomain Contrcfler Authentication Directory Service Emal Repfcation Ctent Authentication, Server Authenticate .. One « more Certhcate Tenvtatet to enable on In» CerfficabonAuthoaty [^Authenticated Sesnon ЩСА Exchange [^CEPEnctypbon E^CodeSignng Q3Dom Certfcabon Authorty (^Enolment Agent (^ Enolment Agent (Confxiei) Щ Exchange Ertolment Agent (Offirie («quest) Щ Exchange Signature Only Intended FMpcee CfentAUhenticatiofi Private Key Archival Certificate Requesi Agent CodeSigmg <Ab Certificate Requeti Agent Certficate Requed Agent Certficate Requed Agent Secure Emai zi Г" Рис. З.4. Добавление шаблона сертификатов Информация о процессе автоматической выдачи сертификатов сохраняется в системном журнале Application. Туда же заносится информация об возникших в ходе получения сертификата ошибках (см. рис. 3.6). $ Defeuk Domain Poky [w2k3.Wosec.ru] P T- g| Computer Ccniguratlon Щ Scripts (Startup/Shutdown) P Security Settings f Account Poldes $ Local Potaw | Event Log _S Restricted Groups ♦ 'J& System Services Ш T Wireless Network (ШЕЕ Я - .iJPubtc Key Pokes UJ Encrypting He Systenr JAotomatfcCertJffcfltet _3 Trusted Root Certflca CJ Enterprise Trust <- _J Software Restriction Poki + -g IP Security PoWe* on Acti + _J Adntistreove Tenkplates j User Configuration + _J Software SetOngs * CJ «Ыот Setungs *■ _J AdmNstraHve Tenvlates AubxwBc Cerfficate Request ■' There are no Items to show h th» view. Ceft№ca(eT Then^ piovkled compute". Sefecl a tenptetefawi the fotowbj fat Cptfcateterr^Wec Cfent Authenbcaten SewetAuthenhcabor Oent Authentication. Server Authenbcabor Enotnent Agent [Conputer} Cwtfcate Requeil Agent IPSec IP *ecum> IKE ntetmedate Рис. З.5. Автоматическая выдача сертификатов в групповой политике 111
Безопасность беспроводных сетей Event Properties Event Date: Time: Type: User: ШНЕНШЕ! 16:16:44 Information N/A Computer: W2K3 Source: Category: Event ID: AutoEnrollment None 19 Description: Automatic certificate enrollment for local system successfully received one IPSec certificate from certificate authority w2k3 on w2k3.infosec.ru. For more information, see Help and Support Center at h>tD://go.micrbsoft.com/fwlink/events.asp. Data: С Bytes С V/ordt OK Cancel Apply Рис. З.6. Контроль работы автоматической выданы сертификатов На сервер RADIUS необходимо установить сертификат для TLS- сервера. Для его получения можно использовать шаблон RAS and IAS Server. Настройка компонентов После выдачи сертификатов на сервере IAS настраивается политика удаленного доступа. Ниже приведено пошаговое описание этого процесса: • В окне Policy Configuration Method указать Setup Custom Policy и ввести в поле Policy Name имя политики (Wireless Clients), после чего нажать Next. • В окне Policy Conditions нажать кнопку Add, выбрать параметр NAS-Port-Type, нажать кнопку Add, выбрать Wireless - IEEE 802.11, после чего нажать кнопку Add и кнопку ОК. 112
Глава 3. Безопасность беспроводных сетей сегодня • В окне Policy Conditions нажать кнопку Add, выбрать в списке пункт Windows Group, нажать кнопку Add, потом снова Add и выбрать группу Wireless Users домена. Нажать кнопку ОК, затем снова ОК, после чего нажать кнопку Next. • В окне Permissions указать Grant Remote Access Permissions, нажать кнопку Next. • В окне Profile нажать кнопку Edit Profile, переключиться на закладку Authentication и сбросить все опции (рис. 3.7). • Нажать кнопку ЕАР Methods, нажать кнопку Add, выбрать Smartcard or other certificate. После того, как политики сформированы, необходимо создать новое соединение с клиентом RADIUS (RADIUS Clients - правой кнопкой - New RADIUS Client). В окне Name and Address указать имя клиента и IP-адрес точки доступа, после чего нажать Next. Edit Dial-in Profile Dial-in Constraints Authentication I Multilink Advanced Encryption ■. | Select the authentication methods you want to allow for this connection. Г Microsoft Encrypted Authentication version 2 IMS-CHAP v2) Г • ■ ■ . , ■■ - .- .:, ■ .,. Г Microsoft Encrypted Authentication (MS-CHAP] Г" Use*'caicbano.i : •"■ •:"■; '• ■ _■• '-1-.1. ' Г Encrypted authentication (CHAP) Г Unencrypted authentication (PAP. SPAP) r-Unauthenticated access— ■■ - ■ - i i t— Allow clients to connect without negotiating an authentication ! ' method. OK Cancel Apply Рис. З.7. Настройка аутентификации 113
Безопасность беспроводных сетей В окне Additional Information указать Client - Vendor - RADIUS Standard. В поле Shared Secret и Confirm Shared Secret указать общий ключ, после чего нажать Finish. Настройки клиентов беспроводной сети могут осуществляться через групповые политики (Computer Configuration\Windows Set- tings\Security SettingsWireless Network (IEEE 802.11) Policies). Все шаги по развертыванию 802.1 X для защиты беспроводной сети описаны в документе «Step-by-Step Guide for Setting Up Secure Wireless Access in a Test Lab», доступном для загрузки по адресу: http://www. microsoft.com/downloads/details. aspx?FamilylD=0f7fa9a 2-е113-415b-b2a9-b6a3d64c48f5&Displayl_ang=en 3.2. Безопасный доступ к беспроводной сети Как уже говорилось ранее, протокол WEP является далеко не лучшим способом защиты беспроводной сети. После публичной демонстрации многочисленных уязвимостей WEP IEEE приступил к разработке стандарта 802.11 i, призванного устранить эти недостатки. Однако процесс его создания затянулся, в связи с чем один из набросков (Draft 3) стал использоваться в качестве промежуточного решения. Этот стандарт получил название Wi-Fi Protected Access (WPA). В WPA для аутентификации станции и сети может использоваться инфраструктура 802.1 X или общей ключ (см. WPA-PSK далее). В отличие от WEP ключи шифрования генерируются при установлении соединения, а не распределяются статически. Используемая ключевая схема довольно нетривиальна и требует дополнительных пояснений (см. рис. 3.8). Инициатор Аутентификатор (Supplicant) (Authenticate)!-) Master Key j " Pairwise Master Key (PMK) " PMK PMK -4 — PMK I 4-wayhandshake i i * * + PTK PTK Рис. З.8. Обмен ключами в WPA 114
Глава 3. Безопасность беспроводных сетей сегодня ff Master Key (MK) I f^ Pairwise Master Key (PMK) I tf Pairwise Transient Key (PTK) I I f^KCK ^KEK f^TK1 |^TK2 PTK 0-127 PTK 128-255 PTK 256-383 PTK 254-512 Рис. З.9. Иерархия ключей После успешной аутентификации сервер RADIUS передает станции значение, которое используется для идентификации данной сессии - Master Key (MK). Станция и сервер RADUIS на основе МК выводят Pairwise Master Key (PMK), который передается точке доступа сервером RADIUS. Для генерации РМК используется псевдослучайная функция (PRF), основанная на хэш-функции НМАС- SHA-1. Полученное значение ключа привязывается к текущей сессии между точкой доступа и станцией. Ключ РМК затем используется точкой доступа и клиентом для генерации ключа Pairwise Transient Key (PTK). Ключ PTK (см. рис. 3.9), длина которого составляет 512 бит, в дальнейшем разделяется на 4 ключа: Key Confirmation Key (KCK), Key Encryption Key (КЕК) и два ключа шифрования Temporal Key 1 и 2 (TK1/TK2). Ключ КСК применяется в процессе вывода ключей шифрования для аутентификации клиента. Значение КЕК, как следует из названия, используется для защиты ключей шифрования широковещательного и группового трафика Group Transient Key (GTK). Ключ GTK должен быть одинаков для всех станций одной сети (BSS), поэтому он генерируется точкой доступа и передается всем вновь подключаемым станциям. Ключи ТК1/ТК2 применяются для защиты трафика. Конкретные детали их применения зависят от используемого криптоалгоритма. Процесс генерации ключа РМК основан на обмене четырьмя управляющими сообщениями (4-way handshake, см IEEE802.11 i, 8.5.3 см. рис. 3.10): 115
Безопасность беспроводных сетей • Точка доступа отсылает станции случайное число ANonce. • Станция генерирует случайное число SNonce и использует функцию PRF-512 для вывода РТК на основании РМК, ANonce, SNonce и МАС-адресов устройств. Значение SNonce отсылается точке доступа, причем это сообщение защищается с помощью функции контроля целостности, рассчитываемой на основе ключа КСК. • Точка доступа получает SNonce, выводит значение РТК и проверяет целостность сообщения с помощью полученного значения КСК. Если данные корректны, станции отсылается информация о поддерживаемых режимах безопасности и ключ GTK. • Станция проверяет параметры безопасности на совпадение со значениями, полученными во время сканирования (в Beacon или Probe Response), и целостность полученного сообщения. Если отклонений не обнаружено - точке доступа отсылается подтверждающий пакет. Как видно, при генерации ключа используются случайные числа, что позволяет применять уникальные ключи шифрования для разных сессий даже при одном значении РМК. В качестве алгоритма шифрования в WPA используется Temporary Key Integrity Protocol (TKIP), основанный на RC4, что позволяет реализовать совместимость с оборудованием, поддерживающим WEP. При использовании TKIP длина вектора (TKIP Sequence Counter, TSK) инициализации увеличена до 48 байт, что снижает вероятность его повторения. Ключ шифрования перемешивается с МАС-адресом и TSK, и полученное значение используется в качестве ключа RC4. Таким образом, при применении TKIP для каждого пакета используется свой уникальный ключ WEP. ANonce РТК -4 Snonce, MIC(Data, КСК) »» РТК Anonce, GTK, MIC(Data, КСК) MIC(Data, КСК) Рис. 3.10, Генерация РМК 116
Глава 3. Безопасность беспроводных сетей сегодня В WPA реализована функция контроля целостности сообщений, базирующаяся на алгоритме Michael. Значение Message Integrity Code (MIC) рассчитывается на основе данных, значения поля Priority и МАС-адресов станции и точки доступа. Полученное 8-битовое значение сохраняется в поле MIC пакета. С точки зрения криптографии стойкость алгоритма Michael серьезно уступает современным хэш-функциям, но от атак, направленных на нарушение целостности сообщений, которые характерны для WEP, защищает достаточно надежно. Однако было доказано, что хэш-функция Michael является обратимой (см. A. Wool. «A note on the fragility of the Michael message integrity code», http://www.eng.tau.ac.il/~yash/twireless2004.pdf). Подробное описание алгоритмов ТК1Р и Michael выходит за рамки данной книги, но для желающих подробнее разобраться в этом вопросе можно рекомендовать обратится к стандарту 802.11 i и исходным кодам реализации этих алгоритмов в различных драйверах беспроводных адаптеров. Таким образом, WPA решает следующие проблемы WEP: • статический ключ шифрования; • отсутствие контроля целостности сообщений; • недостаточная длина вектора инициализации. Использование RC4 в качестве основного алгоритма шифрования уже не удовлетворяет современным требованиям безопасности. В связи с этим в стандарте 802.11 i описывается обязательное использование протокола Counter Mode with CBC-MAC Protocol (ССМР) для шифрования трафика. В этом протоколе, описанном в RFC 2610, используется в качестве криптографического примитива алгоритм AES-128, являющийся в настоящее время государственным стандартом Соединенных Штатов Америки (см. FIPS 197). Однако применение гораздо более ресурсоемкого алгоритма шифрования требует увеличения вычислительной мощности, что повышает требования к аппаратному обеспечению беспроводной сети. В связи с этим точки доступа, рассчитанные на поддержку WEP, не могут работать с ССМР, тогда как для обеспечения совместимости с TKIP в большинстве случаев достаточно просто обновить прошивку. То же относится и к клиентам беспроводной сети, хотя во многих случаях алгоритм AES может быть реализован программно, средствами драйвера или операционной системы. Сейчас это не является большой проблемой, поскольку большинство точек доступа выпускается с поддержкой ССМР, за исключением некоторых SOHO-моделей. Для поддержки WPA2 в Windows необходимо установить обновление, на время написания книги доступное по адресу http://support.microsoft.com/kb/893357. 117
Безопасность беспроводных сетей В табл. 3.1 приведено соответствие между различными названиями протоколов защиты беспроводных сетей и используемыми ими криптоалгоритмами. Таблица 3.1 Стандарты защиты беспроводных сетей Название WPA WPA2 Стандарт 802.11 i Draft 3 802.11i Функции безопасности TKIP, RC4 TKIP, RC4 ССМРЯК1Р, AES/RC4 Другие названия Transition Security Network (TSN) Robust Secure Network (RSN) Как видно из таблицы, поддержка WPA2 или 802.11i означает, что для шифрования может использоваться TKIP. В настройках подключения к беспроводной сети можно выбрать как WPA-TKIP, так и WPA2-TKIP (рис. 3.11). Wireless network properties Association | fethenhcation | Connection | Network name (SSID)- pew Wireless network key j This network requres a key forthe fotowing j Network ftithenhcation- ' ■ bata encryption- IV/FA [AES No1 .- '< •>!•, П'.' ГЗ Г i;. ..o ..;. iHijt. -\:.".'j:-jSi. iv'ii..lr.- ■■* OK \ Cancel Рис. 3.11. Настройка типа шифрования 118
Глава 3. Безопасность беспроводных сетей сегодня Однако устройства, которые не поддерживают WPA2 (например, КПК на базе Windows Mobile), не могут работать с сетью, настроенной на использование WPA2-TKIP, в связи с некоторыми различиями в процессе установления соединения. Вопросы совместимости пока остаются достаточно актуальными для того, чтобы сдерживать широкое применение WPA2-CCMP. 3.2.1. Защита небольших сетей В стандарте 802.11 i предусмотрен режим работы с общим ключом (Preshared Key, PSK). В терминологии Wi-Fi Alliance - WPA- Personal или WPA2-Personal. В отличие от WPA-Enterprise, больше подходящего для корпоративных сетей, протокол WPA-PSK ориентирован на домашних пользователей и небольших рабочих групп. В случае его применения вместо протокола 802.1 X взаимная аутентификация станции и сети осуществляется с помощью общего ключа. В отличие от WEP, где введенный пользователем пароль непосредственно применяется для шифрования трафика, в WPA- PSK это значение используется в качестве Pairwise Master Key, a ключи шифрования выводятся в процессе соединения с сетью. Этот процесс полностью аналогичен подобным операциям в WPA- Enterprise (см. рис. 3.10), но РМК не передается сервером RADIUS, а задается пользователем. Таким образом, ключ шифрования будет различаться для разных рабочих станций одного BSS, поскольку для генерации РТК используются МАС-адреса, и даже для разных соединений одной и той же станции в связи с использованием случайных значений. Длина РМК в WPA составляет 256 бит. Однако в стандарте указано, что размер парольной фразы может составлять от 8 до 63 символов, т.е. 504 бит. Такая кажущаяся избыточность связана с меньшей энтропией паролей, выбираемых пользователем, по сравнению с ключами, генерируемыми компьютерами. Так, энтропия парольной фразы на английском языке длиной 63 символа, составляет всего 76 бит. Для преобразования пароля в РМК используется функция PBKDF2, описанная в RFC2898. Эта функция, основанная на стандарте PKCS#5, описывает многократное применение к входным данным операции хэширования. В WPA-PSK пароль, введенный пользователем хэшируется 4096 раз. Это позволяет серьезно усложнить атаки с подбором пароля по сессии аутентификации, поскольку для их реализации злоумышленнику придется задействовать значительные ресурсы. Формально процесс вывода ключа описывается следующим образом: PMK=PBKDF2_SHA1(PSK, SSID, SSIDJength, 4096,256) 119
Безопасность беспроводных сетей Для защиты от атак «балансировка время-память», при которых злоумышленник заранее рассчитывает значения ключей для различных паролей в качестве «соли», при хэшировании используется SSID сети. Настройка WPA-PSK для защиты трафика беспроводной сети достаточно проста. В свойствах профиля подключения к беспроводной сети указывается парольная фраза, которая должна совпадать с фразой, указанной в точке доступа (рис 3.12). Листинг 3.1. Пример файла wpa_supplicant. ccmf network={ ssid=«ESSID» proto=WPA key_mgmt=WPA-PSK pairwise=TKIP psk=«WPA-PASS» } Что касается уровня безопасности WPA-PSK, то он целиком зависит от выбранной в качестве пароля фразы. Как и любой подобный протокол, WPA-PSK уязвим для подбора пароля по перехваченной сессии аутентификации. "'"■■■''•■ ч" " ' • - ' • ' ' Гсэ! S "jP Manually connect to a wireless network Enter information for the wireless network you want to add Network name: homework Securitytype: :WPA-Personal Enc0ption type ЛИР Sejurity Key/Passphrase: •••....ф.....•••• Inigispiay character^ IV] Start this connection automatically Щ Connect even tf the network is not broadcasting Warning: If you select this option, your computer's privacy might be at risk. Рис. 3.12. Настройка WPA-PSK 120
Глава 3. Безопасность беспроводных сетей сегодня [root6ibm201 aircrack-2.4]# ./aircrack -в words.die 4-07.cap Opening 4-07.cap Read 73 75 packets. П BSSID ESSID Encryption 1 00:OD:8B:84:A2:B1 filtered ЧРА (1 handshake) Choosing first network as target. aircrack 2.4 [00:00:00] 0 keys tested (0.00 k/s) KEY FOUND! [ 12345678 ] Master Key : 09 93 9Б A7 19 D3 DS 8C 37 E0 Г4 IE 34 C8 27 9E DO E4 Bl OB CO F3 ГС 9F 09 54 15 7E A8 F9 8F 5D Transcient Key : ED 00 F7 09 98 4C 4C DE B9 ID A5 9A C9 2D 63 CD BE 6F 34 90 33 09 E8 CC 24 88 35 S4 14 A7 41 96 93 Al 03 20 Cl DO F8 FO 45 B9 Б9 CF F3 ВО 7А IB C4 A7 31 3D 8F Al FB EC 66 14 8B DC C6 ЕЕ А4 8D EAPOL HHAC : 03 83 9E BB 01 34 18 CS B2 18 30 9F F8 FF 20 C2 [root8ibrn201 aircrack-2.4]# | Рис. 3.13. Подбор пароля WPA-PSK Существует большое количество утилит, которые могут быть использованы для практической реализации атаки с подбором пароля, например coWPAtty и уже упоминавшаяся утилита aircrack. На рис. 3.13 приведена копия экрана процесса подбора пароля WPA-PSK. В связи с достаточно ресурсоемким алгоритмом подбора ключа использование паролей достаточной длины (больше 20 символов) является эффективным механизмом противодействия атаке с подбором пароля. Одной из серьезных проблем WPA-PSK является применение одного ключа для всех рабочих станций. Следовательно, при компрометации ключа (например, утере ноутбука) необходимо менять его на всех станциях сети. В стандарте WPA описана возможность использования разных ключей для разных станций на основе МАС- адреса, но она очень редко реализуется производителями оборудования и еще реже применяется администраторами. Для облегчения процесса развертывания WPA-PSK можно использовать технологию Windows Connect Now. В Windows XP она реализована в виде мастера Wireless Network Setup Wizard, доступ- 121
Безопасность беспроводных сетей Wireless Network Setup Wizard Create a name for your wireless network. Give your network a name, using up to 32 characters. Network name (SSID): j new j ©Automatically assign a network key (recommended) To prevent outsiders from accessing your network, Windows will automatically assign a secure key (also called a WEP or WPA key) to your network. О Manually assign a network key Use this optton if you would prefer to create your own key, or add a new device to your existing wireless networking using an old key. te~slJongeFthanW@liijCnaFa¥?evic^are'] 1 <Back tjext > Cancel Рис. 3.14. Настройка сети ного через панель управления. Мастер позволяет указать SSID сети и параметры ключа (см. рис. 3.14). Результаты работы мастера сохраняются на USB-Flash диске, который потом подключается к точкам доступа и другим устройствам, поддерживающим эту технологию. С WSFTIING.WFC Nolo Не |А Fgrro* View ЦЫр <?ип1 "versi'6n-;'Uo;i?> """ ■iwirelessprofile xmlns-"'http://wsirt/.microsoft.co(ti/prov1s1on1ng/w1relessprofile/2004"> <conf1g> <configld>000506EC-lB60-4CFF-A8D7-9EF3A30235FD</configid> <COnfigAuthorld>0B4E59B8-83l7-46B2-B8C2-C46850l62E6C</conf1gAuthorId> <conf1gAuxhor>Microsoft wireless Network setup wi2ard</configAuthor> </conf1g> <ss1d xml:space-"preserve">new</ss1d> <connect1onType>Ess</connect1onType> <pr1maryprofi1e> <authent1cat1on>wPAP5K</authent1cat1on> <encryption>TKiP</encrypt1on> <networkKey xml:space-"preserve">751ed3b8d8de4bd6929eb9eb589be0d8c447b94e3d85dl2e00fdlc6c3df82444</netwarkKey> <keyProvldedAtjtoniat1cal1y>0</keyProv1dedAutoniat1c4lly> <i eee802Dotlxenabled>0</ieee802DoTlx£nabled> </pr1marypr of11e> </wire1essProf11e> Рис. 3.15. Файл конфигурации сети 122
Глава 3. Безопасность беспроводных сетей сегодня Устройства считывают информацию из файла конфигурации (рис. 3.15) и настраивают профили подключения в соответствии с указанными в нем параметрами. Как видно из рис. 3.14, пароль может генерироваться автоматически, что снимает с пользователя тяжелую задачу выполнения функции генератора случайных чисел. Авторам часто приходилось сталкиваться с распространенными заблуждениями относительно WPA-PSK, а именно - возможность проведения атаки с установкой ложной точки доступа и неуязвимость WPA2-PSK для атак с подбором пароля. Для проведения атаки с ложной точкой доступа злоумышленнику необходимо знать Master Key или РМК, генерируемый на его основе. Без них он, конечно, может установить точку доступа с SSID, используемым клиентом, и станция даже пройдет аутентификацию и установит ассоциацию с ней (в терминах канального уровня протокола 802.11). Но полноценного обмена данными реализовать не удастся, поскольку точка доступа и клиент используют разные ключи шифрования. Что касается подбора пароля в WPA2-PSK, то технологически он полностью совпадает с подобной операцией в WPA-PSK. Таким образом, при использовании достаточно сложной парольной фразы и решения проблемы управления ключами протокол WPA/WPA2-PSK является достаточно надежным механизмом защиты беспроводной сети. 3.3. Гостевой доступ Одной из задач, которую приходится решать при построении беспроводной сети, является организация гостевого доступа. Такие подключения могут создаваться в качестве дополнения к основной беспроводной сети, чтобы гости компании имели возможность работы с выделенными ресурсами или сетью Internet. Другим распространенным вариантом использования этой технологий является организация сети беспроводного Internet-провайдера. Требования к гостевому доступу отличаются от требований к основной беспроводной сети. Поскольку рабочие места пользователей в этом случае не контролируются администраторами, необходимо, чтобы процесс подключения был предельно прост, чтобы пользователи могли самостоятельно настраивать параметры соединения. В большинстве решений это достигается разделением процедуры подключения на два этапа: не аутентифицированный и аутентифицированный. 123
Безопасность беспроводных сетей На первом этапе пользователь получает доступ к сети без дополнительных настроек. Однако при попытке получить доступ к какому-либо ресурсу пользователю предлагается пройти аутентификацию или выводятся инструкции по получению авторизованного доступа. В случае выполнения инструкций и успешной авторизации пользователь подключается к ресурсам сети. В качестве технических решений для организации гостевого доступа широко используются следующие технологии: • аутентифицирующие WEB-порталы (captive portals); • виртуальные частные сети; • технология Wireless Provisioning Service (WPS). 3.3.1. WEB-порталы Аутентифицирующие WEB-порталы широко распространены среди провайдеров беспроводного доступа к Internet. С точки зрения пользователя такая система выглядит как открытая беспроводная сеть, разрешающая любые подключения и, как правило, использующая протокол DHCP для автоматической настройки клиентов. Однако после подключения попытка установить соединение с любым WEB-сервером будет приводить к WEB-странице, содержащей информацию о процедуре подключения или предлагающей ввести имя пользователя или пароль. В бесплатных беспроводных сетях пользователю могут выводиться условия использования сервиса, которые он должен принять перед получением доступа. Если пользователь выполняет требуемые условия (вводит пароль, нажимает кнопку «Да, я согласен» и т.д.), ему разрешается взаимодействие с внешней сетью. Для работы такой системы необходимо наличие следующих компонентов (рис. 3.16): • шлюза; • WEB-сервера; • клиентского программного обеспечения. В функции шлюза входит фильтрация сетевого трафика и передача всех запросов не аутентифицированных пользователей к WEB-серверу. Программное обеспечение WEB-сервера обрабатывает запросы на авторизацию и управляет шлюзом, открывая и закрывая доступ для определенных IP- и МАС-адресов в зависимости от статуса пользователя. Клиентское программное обеспечение, как правило, состоит из сценария на языке Javascript, выполняемого в браузере пользователя и периодически подтверждающего на WEB-сервере статус рабочего места пользователя. Клиентская часть портала может отсутствовать, но это делает систему более уязвимой для описанных далее атак. 124
Глава 3. Безопасность беспроводных сетей сегодня I V- , ) '** 1 0 Г IP1 IP2 IP3 IP4 _ A Л i pL -MAC1 -MAC2 -MAC3 -MAC4 Рис. 3.16. Компоненты портала Компоненты аутентифицирующего портала могут быть реализованы на базе различных устройств или совмещены в одном. Например, функция гостевого доступа на базе беспроводных коммутаторов Cisco практически полностью реализована в самих контроллерах. В их задачу входит блокировка доступа не аутентифи- цированных пользователей, прием и обработка имени пользователя и пароля, взаимодействие с сервером проверки подлинности и маркировка пакетов идентификатором VLAN. Задачу фильтрации трафика обычно решает внешний шлюз. Подробнее о развертывании гостевого доступа на базе беспроводных коммутаторов Cisco можно узнать из документа «Deployment Guide:Cisco Guest Access Using the Cisco Wireless LAN Controller» (http://www.cisco.com/univercd/ cc/td/doc/product/wireless/control/c44/gaccess.pdf). Существует ряд вариантов реализации аутентифицирующего портала для различных операционных систем и платформ. Список и краткое описание многих решений доступен по адресу http://wiki.personaltelco.net/index.cgi/PortalSoftware. Большинство подобных систем ориентировано на Unix/Linux, но существует несколько реализаций для Windows. Портал WiFiDog (http://dev.wifidog.org/) ориентирован на поддержку платформы OpenWRT (http://openwrt.org/), что позволяет строить систему, используя только точки доступа, без дополнительного оборудования. С точки зрения безопасности технология порталов не выдерживает никакой критики. Во-первых, отсутствует какая-либо защита трафика на канальном уровне. После соединения весь трафик передается в открытом виде, что позволяет любому злоумышленнику, прослушивающему эфир, перехватывать передаваемую информа- 125
Безопасность беспроводных сетей цию. Поскольку в качестве критериев фильтрации на шлюзе используются IP- и МАС-адреса, порталы уязвимы для атак с подменой адресов, т.е. злоумышленнику достаточно перехватить трафик, извлечь из него адреса авторизированного пользователя и присвоить их себе. При использовании порталов функция аутентификации сети, как таковая, не реализована, т.е. станция не имеет возможности проверить тот факт, что она подключается именно к нужной точке доступа. В результате злоумышленник может реализовать атаку «человек посередине» для сбора имен пользователей и паролей и проведения атак на клиентские компьютеры, описанных в главе «Безопасность клиентов». Для этого ему достаточно установить ложную точку доступа с тем же значением идентификатора SSID, что и атакуемая сеть, и развернуть на ее базе WEB-сервер, имитирующий внешний вид портала. Многие порталы используют протокол HTTPS для передачи имени пользователя и пароля, но и это не является большой проблемой для атакующего. Поскольку большинство пользователей не обращает внимания на отсутствие «желтого замочка в правом нижнем углу окна браузера», злоумышленник может использовать HTTP для эмуляции страниц портала. При необходимости может быть реализована атака «человек посередине» на протокол SSL. Кроме того, большинство пользователей изначально обращается к какому-то внешнему серверу по HTTP и в случае, если они не аутентифированы, происходит перенаправление на страницы портала по HTTPS. Соответственно, можно выполнить перенаправление на http- или HTTPS-сервер, контролируемый злоумышленником. 3.3.2. Виртуальные частные сети Как уже говорилось выше, одним из недостатков порталов является отсутствие аутентификации сети и шифрования передаваемых данных. Для устранения этих уязвимостей могут применяться технологии виртуальных частных сетей, поскольку процесс настройки клиента VPN в большинстве ОС достаточно прост и по плечу среднему пользователю, а некоторые протоколы, например РРТР, не требуют использования дополнительных ключей для аутентификации и шифрования. Как правило, использование VPN сочетается с развертыванием WEB-порталов, содержащих информацию о порядке подключения. Более детально использование VPN в беспроводных сетях обсуждается в следующей главе. 126
Глава 3. Безопасность беспроводных сетей сегодня 3.3.3. Технология Wireless Provisioning Services Компанией Microsoft в качестве решения для организации гостевого доступа была предложена технология Wireless Provisioning Services (WPS). Она может использоваться как для обеспечения безопасного доступа к корпоративным сетям, так и для защиты клиентов провайдеров беспроводного Internet-доступа. При использовании WPS для защиты трафика может применяться WPA или WPA2, а в качестве протокола аутентификации используется PEAP-MS-CHAPv2. Учетная запись, используемая для проверки подлинности, автоматически передается клиенту по защищенному TLS-каналу, устанавливаемому с использованием протокола HTTPS, дополнительно зашифрованного с помощью WPA/WPA2. В состав компонентов, используемых в WPS, входят (см. рис. 3.17): • инфраструктура 802.1 Х-РЕАР; • сервер RADIUS; • служба каталога; • сервер DHCP; • WEB-сервер; • точки доступа, поддерживающие технологию VLAN или фильтрацию трафика; • межсетевой экран, поддерживающий VLAN; • клиентское программное обеспечение. Поскольку эта технология является разработкой Microsoft, продукты этой компании готовы для использования в WPS. Так, сервер IAS из состава Windows Server 2003 Service Pack 1 может использоваться в качестве сервера RADIUS, a Windows XP Service Pack 2 - в качестве клиентов WPS. Рис. 3.17. Компоненты WPS 127
Безопасность беспроводных сетей Подключение пользователя Для подключения к сети клиент использует двухэтапную процедуру (см. рис. 3.18). На первом этапе для аутентификации применяется анонимный доступ по протоколу РЕАР, т.е. клиент не указывает имя пользователя и пароль. Однако и такой односторонней аутентификации достаточно для обмена ключами шифрования и построения туннеля TLS. После авторизации сервер RADIUS определяет идентификатор VLAN или пакетные фильтры, используемые для анонимных пользователей, и передает их точке доступа. Трафик клиента маркируется точкой доступа с помощью полученного идентификатора VLAN, что позволяет шлюзу ограничивать доступ анонимных пользователей только серверами, необходимыми для работы WPS. Затем клиенту WPS в атрибуте RADIUS (URL PEAP-TLV) передаются идентификатор ожидаемого действия (создание учетной записи, изменение пароля и т.д.) и URL. После получения IP-адреса по протоколу DHCP машина пользователя обращается к указанному в атрибуте PEAP-TLV WEB-серверу по протоколу HTTPS и загружает файл в формате XML. Этот файл содержит информацию о процедуре подключения к сети, которая интерпретируется на клиентской стороне и отображается пользователю. Также как и в случае с ау- тентифицирующими порталами от пользователя может потребоваться ввод информации, например указание кода доступа или подтверждение того факта, что он ознакомился с лицензионным соглашением. Профиль подключения (имя + пароль) Подключение с новым профилем 128 Рис. 3.18. Работа WPS
Глава 3. Безопасность беспроводных сетей сегодня Эти данные передаются WEB-серверу, который обрабатывает их и в случае успешной авторизации передает клиенту информацию о сети, с которой он может соединяться, включая имя пользователя и пароль. Учетная запись, передаваемая сервером, может настраиваться администратором заранее, либо создаваться в службе каталога на основе параметров, переданных пользователем. Программное обеспечение WPS на стороне клиента сохраняет полученные данные в профиле подключения, и соединяется с беспроводной сетью, используя для аутентификации протокол РЕАР- MS-CHAPV2. Сервер RADIUS авторизует пользователя и передает точке доступа идентификатор VLAN, используемый для доступа к основной сети или сети Internet. Этот этап уже ничем не отличается от стандартной работы WPA/WPA2-PEAP, но пользователь даже не имеет представления об учетной записи и пароле, используемом для доступа. Таким образом, прозрачно для пользователя происходит настройка профиля подключения к беспроводной сети, причем в отличие от аутентифицирующих порталов для защиты трафика используется протокол WPA, предотвращающий прослушивание данных, и авторизация пользователи происходит на основе аутентификации PEAP-MS-CHAPv2, а не IP- и MAC- адреса. Развертывание инфраструктуры WPS Во время написания книги процесс развертывания WPS представлял собой нетривиальную задачу и требовал от администратора владения классическими для этой профессии музыкальными инструментами (например, бубен), также навыков программирования. Возможно в дальнейшем, если технология WPS будет набирать популярность, Microsoft добавит более удобные инструменты для настройки Wireless Provisioning Services. Хорошим подспорьем при работе с WPS является документ «Deploying Wireless Provisioning Services» (http://www.microsoft.com/downloads/details.aspx?Familyld=9ADF7496- 0D50-4138-848E-9BC810B83C01 &displaylang=en), подробно описывающий процесс развертывания всех компонентов, используемых этой технологией. В случае интеграции WPS в домен необходимо разблокировать гостевую учетную запись в Active Directory, так как на первом этапе клиенты не указывают имя пользователя и пароль соответственно не могут быть авторизированы от имени какой-либо учетной записи. Поскольку эта операция связана со снижением общей защищенности всей сети, не стоит использовать для WPS домен, содержащий учетные записи компании. 129
Безопасность беспроводных сетей Authentication | Accounting j Attribute | Advanced | Select the method of authentication for connection requests that match the criteria specified in this policy. <* Authenticate requests on this server Allows clients to use wireless provisioning services, in addition to protecting credentials and authenticating the server. Configure Certificate... To complete set up of protected channel, configure Protected EAP in Remote Access Policy. Accept users without authentication OK Cancel Apply Рис. 3.19. Поддержка WPS в IAS На серверах IAS необходимо включить поддержку WPS, что достигается путем создания следующего ключа реестра: HKEYJ_OCAL_MACHINE\ System\CurrentControlSet\Services\ RemoteAccess\Policy\ EnableWPSCompatibility=1 Проверить то, что сервер поддерживает WPS, можно по наличию поддержки РЕАР в настройках политики удаленного доступа (Edit Profile - Authentication, см. рис. 3.19). Сервер должен быть авторизирован в Active Directory. Функция передачи клиенту URL в атрибуте PEAP-TLV в настоящее время не реализована в IAS. Для ее выполнения используется расширение IAS, оформленное в виде динамически загружаемой библиотеки. Это, наверное, один из самых сложных этапов в настройке WPS, поскольку шаблонов библиотеки авторам обнаружить не удалось. Но поскольку функции библиотеки достаточно подробно описаны в базе знаний Microsoft (http://technet2.microsoft.com/Windows Server/en/library/6cf1556e-bb58-44b8-a1 df-23a25e3df 111033.mspx), а в Platform SDK входят примеры расширений IAS, задача вполне решаема. 130
Глава 3. Безопасность беспроводных сетей сегодня На сервере IAS создаются две политики доступа, одна для гостевого доступа, другая для авторизованных пользователей. Обе политики создаются на основе шаблона Wireless. Для настройки гостевой политики выполняются следующие шаги: • на закладке «Grant access based on the following» выбирается «User»; • в качестве метода аутентификации выбирается РЕАР; • затем необходимо нажать кнопку Configure и указать сертификат сервера IAS; • для увеличения пропускной способности включается опция кэширования соединений «Enable Fast Reconnect»; • в свойствах созданной политики необходимо разрешить удаленный доступ (Grant remote access permission); • в свойствах профиля (Edit Profile) на закладке аутентификации указывается опция «Allow clients to connect without negotiating an authentication method» (рис. 3.20); Edit Dial-in Profile Dial-in Constraints j IP | Multilink Authentication | Encryption | Advanced Select the authentication methods you want to allow for this connection. EAP Methods} Г" Microsoft Encrypted Authentication version 2 (MS-CHAP v2) Г" User can change passwd Wei i> has enprsd Г Microsoft Encrypted Authentication (MS-CHAP) Г* User can change passwrad etter i; has e«Di:ed Г Encrypted authentication (CHAP) Г Unencrypted authentication (PAP. SPAP) г Unauthenticated access —— ! Г7 Now ciients to connect without negotiating an authentication] I '" Imethod. I OK Cancel Apply Рис. 3.20. Настройка политик WPS в IAS 131
Безопасность беспроводных сетей Политика для авторизованных пользователей создается аналогично политике гостевого доступа, за исключением того, что доступ разрешается для группы пользователей, в связи с чем на закладке «Grant access based on the following» мастера необходимо выбрать «Group» и указать группу безопасности из Active Directory. Дополнительно для обеих политик требуется указать идентификатор VLAN, присваиваемый каждому из типов соединений. Для этого в свойствах профиля (Edit Profile) на закладке Advanced необходимо добавить следующие атрибуты: • Framed-Protocol=PPP. • Tunnel-Medium-Type=802 (Includes all 802 media plus Ethernet canonical format). • Tunnel-Pvt-Group-Ю^Используемый VLAN. .Tunnel-Type=Virtual LANs (VLAN). Затем в разделе RADIUS Clients указываются IP-адреса точек доступа или беспроводных коммутаторов, а также пароль, используемый для защиты данных. В настройках точки доступа нужно включить поддержку 802."IX, указать адрес сервера IAS и пароль. Необходимо выбрать поддерживаемый метод защиты трафика (WPA или WPA2). Используемый шлюз должен быть сконфигурирован таким образом, чтобы пользователи из гостевой VLAN имели доступ только к серверам WEB и DNS. Одним из важных компонентов WPS является WEB-сервер, хранящий XML-файлы мастеров настройки подключения и обрабатывающий ответы пользователей. В зависимости от реализуемой логики работы WEB-приложение может выполнять достаточно сложные операции, такие как проверка корректности предоставленной пользователем платежной информации, создание учетных записей в службе каталога или ограничиваться пересылкой заданных администратором имени пользователя и пароля. В большинстве случаев для обработки запросов пользователя создается динамическое WEB-приложение. Приложение должно обрабатывать четыре основных типа запросов, передаваемых в URL (например, https://wps.example.com/wps/ master.xml#signup): • #signup - начальный запрос от пользователя, не имеющего учетной записи; • #renewal - требуется обновить учетную запись; • #passwordchange - сменить пароли; • #forceupdate - загрузить обновленные XML-файлы. Для того чтобы клиент WPS мог обрабатывать передаваемые WEB-сервером XML-файлы, необходимо чтобы они были созданы с 132
Глава 3. Безопасность беспроводных сетей сегодня использованием определенных правил. Эти правила описываются набором XML-схем, представленных в упоминавшемся выше документе по развертыванию WPS. Для облегчения процесса создания этих файлов можно воспользоваться программой WPS Authoring Tool (см. рис. 3.21). Программа WPS Authoring Tool доступна для загрузки по следующему адресу: http://go.microsoft.com/fwlink/?Linkld=41067. Для корректной работы технологии WPS необходимо, чтобы пользователи имели возможность проверить аутентичность сервера RADIUS и WEB-сервера. Этот факт требует использования на этих серверах сертификатов доверенных провайдеров, сертификаты удостоверяющих центров которых входят в стандартную поставку Windows. Используемые в WPS механизмы, такие как WPA/WPA2, РЕАР, SSL, позволяют реализовать достаточно безопасное подключение к сети. Конечно, обладающий сертификатом Verisign злоумышленник сможет создать ложную точку доступа и перехватить подключение И WPS Authoring ТоЫ а= J Л F Master He z. Languac^ero SSIDs B^icing Location Help Connection S Wizard Signup Renews! Password Change Ь V/uard Panels 14 Languages) E. Welcome Defaut E Plan Selection Defaui Г-; promotional Code Oefaut E Personal info Default F Contact Info Defeu» E Privacy Options Defaut E Credit Card Defaui r. Billing Ho Defaui 3 C^jpon Defaui Я Credentfa'j Default File mformatim - - - Destination |r r^jt л"а**м*~лр« URL: https„г- jwpsexanpfecofr wps .Prionti- ComeclMit АйЬегйкаЬо Ebctypta) Keylmfac zJ Hie URt where ths He can be accessed Enter the path Irom the root of the, domain to the left Рис. 3.21. Создание XML-файлов 133
Безопасность беспроводных сетей клиента на первом этапе. Однако для получения пароля пользователя ему придется либо реализовать атаку «человек посередине» на протокол SSL, для чего потребуется еще один доверенный сертификат, либо подбирать пароль по сессии MS-CHAPV2. Учитывая, что пароли в WPS генерируются автоматически на серверной стороне, при правильном подходе попытки перебора могут занять достаточно большой промежуток времени. В целом технология WPS реализует довольно удобный для пользователя метод подключения к сетям беспроводных провайдеров или организации гостевого доступа к корпоративным сетям. Однако ограниченная поддержка со стороны клиентских ОС (только Windows XP) и сложность развертывания сдерживают развитие этой технологии. 134
Глава 4. Безопасность сетевого уровня Правильно используемые механизмы защиты канального уровня значительно снижают риски, связанные с развертыванием беспроводной сети. Однако, следуя концепции глубокоэшелонированной защиты и рекомендациям международных стандартов в обеспечении безопасности, не стоит останавливаться на достигнутом. Поскольку на беспроводную сеть влияют специфические угрозы, и в ней действует собственная политика безопасности, стоит рассмотреть возможность разделения беспроводного и проводных сегментов с помощью межсетевых экранов и применения других методов защиты сетевого уровня. Например, в требованиях стандарта ISO|IEC 17799:2005, пункт 11.4.5, описывается разделение сетей с различными требованиями к безопасности с помощью сетевого шлюза. 4.1. Межсетевое экранирование беспроводной сети Фильтрация трафика беспроводной сети на межсетевых экранах может использоваться для решения следующих задач: • сегментация сети; • ограничение взаимодействия между сетями и контроль нарушений политики безопасности; • разделение гостевого доступа и аутентифицированного доступа; • дополнительная аутентификация клиентов; • биллинг. Выделение беспроводной сети в отдельный сегмент или WLAN само по себе ограничивает возможности злоумышленника в случае компрометации сети. Ряд широко используемых злоумышленниками атак, таких как ARP-spoofing, ICMP-Redirect, ложный сервер DHCP и т.д., могут быть реализованы только в рамках одного широковещательного сегмента. Правильно построенная политика фильтрации трафика позволяет минимизировать последствия компрометации беспроводной сети и своевременно обнаруживать попытки несанкционированного доступа. Кроме того, разделение сетей позволяет повысить производительность беспроводной сети путем отсечения на межсетевом экране паразитного широковещательного трафика из проводного сегмента, такого как пакеты ARP, DHCP, NetBIOS и прочее. 135
Безопасность беспроводных сетей Однако эти же меры могут повлечь и ряд негативных эффектов, например, падение производительности беспроводной сети за счет задержек на межсетевом экране и возникновение проблем при обработке групповых рассылок, а также проблемы с некоторыми прикладными протоколами. В связи с этим следует скрупулезно подойти к вопросам проектирования, внедрения и эксплуатации «беспроводного» брандмауэра. Проектирование подсистемы межсетевого экранирования беспроводной сети мало чем отличается от аналогичной операции для случаев подключения к внешним сетям или формирования демилитаризованной зоны. Необходимо определить топологию подключения, тип используемого межсетевого экрана, принять решение об использовании трансляции адресов и сформировать политику фильтрации трафика. 4.1.1. Топология сети Разнообразие различных схем размещения межсетевого экрана (МСЭ) для беспроводной сети можно свести к двум основным вариантам: когда беспроводная сеть выносится в демилитаризованную сеть (ДМЗ), формируемую граничными межсетевыми экранами (рис. 4.1), или когда для фильтрации используется выделенный МСЭ, подключенный к локальной сети (рис. 4.2). Первую из приведенных схем подключения удобно использовать при небольшом объеме трафика в беспроводной сети. После прохождения аутентификации на канальном уровне компьютер пользователя попадает в демилитаризованную зону, доступ Рис. 4.1. Использование корпоративного МСЭ для экранирования WLAN 136
Глава 4. Безопасность сетевого уровня Рис. 4.2. Использование выделенного МСЭ из которой к ресурсам внутренней сети и сети Internet ограничен правилами межсетевого экрана (или несколькими МСЭ, если используется ДМЗ типа «граничная сеть»). В зависимости от результатов аутентификации к различным группам пользователей могут применяться разные наборы правил, что позволяет отделить, например, трафик внутренних пользователей от доступа гостей компании к Internet или выделенным внутренним ресурсам. Если беспроводная сеть интенсивно используется сотрудниками компании, стоит применить для фильтрации трафика один или несколько межсетевых экранов. Иногда пользовательский и гостевой доступы к сети могут быть разнесены на разные группы точек беспроводного доступа и межсетевые экраны. При определении точек доступа, подключенных к одному МСЭ, следует учитывать требования роуминга и пропускной способности. Стоит объединять точки доступа между которыми возможен ро- уминг, в рамках одного сегмента или VLAN и рассчитывать пропускную способность МСЭ исходя из суммарной пропускной способности точек доступа. Естественно, количество точек доступа не должно являться единственным критерием, определяющим пропускную способность МСЭ. Если беспроводная сеть является основным средством доступа к ресурсам сети, вместо межсетевого экранирования беспроводной сети можно применить распространенный подход экранирования серверного сегмента (рис. 4.3). 137
Безопасность беспроводных сетей Рис. 4.3. Экранирование сетевого сегмента В этом случае задачи межсетевого экранирования возлагаются на устройство, соединяющее серверный сегмент с беспроводным. Зачастую с этим может справиться коммутатор третьего уровня, формирующий ядро сети. Для небольших беспроводных сетей вполне достаточной может оказаться фильтрация трафика средствами точки доступа или беспроводного маршрутизатора. 4.1.2. Выбор типа межсетевого экрана В зависимости от решаемых задач межсетевое экранирование может происходить на межсетевых мостах, маршрутизаторах или коммутаторах третьего уровня. Использование межсетевых мостов не позволяет разделять широковещательные домены проводной и беспроводной сети, что снижает их практическую ценность в данной ситуации. Что касается глубины фильтрации трафика, то в большинстве случаев оправдано применение МСЭ, поддерживающих фильтрацию в контексте соединения на транспортном уровне. Необходимость применения простых пакетных фильтров может возникать разве только при недостаточной производительности МСЭ. Однако, в ряде случаев (например, в случае гостевого доступа) полезно задействовать функции аутентификации, реализуемые шлюзами прикладного или сеансового уровня (HTTP-Proxy, Socks и т.д.). 138
Глава 4. Безопасность сетевого уровня 192.168.1.1/24:80 Рис. 4.4. Использование NAT Как правило, трансляция адресов между локальной сетью и беспроводным сегментом не используется. Это связано с негативным влиянием NAT на производительность и возможными проблемами при работе прикладных протоколов, устанавливающих несколько сетевых соединений, передающих IP-адреса в полях данных, либо имеющих проверку целостности на основе IP-адресов. В ряде ситуаций, например при предоставлении внешним пользователям доступа к выделенным ресурсам компании стоит разделить адресное пространство беспроводной сети и сети компании и опубликовать необходимые ресурсы через NAT (рис. 4.4). 4.1.3. Политика фильтрации трафика Методика разработки правил межсетевого экранирования в беспроводной сети ничем не отличается от классических подходов к решению этой задачи. Как и большинство работ в области безопасности формирование политики межсетевого экранирования следует начинать с наведения порядка, т.е. инвентаризации сетевых ресурсов. Прежде всего, необходимо определить, с какими серверами, по каким портам и с использованием каких протоколов будут взаимодействовать беспроводные клиенты. Как правило, информация о 139
Безопасность беспроводных сетей TCP и UDP портах, используемых приложением, приведена в документации к продукту. Если этих данных нет, то для облегчения процесса можно использовать специальные инструменты. Сбор информации Утилита netstat, запущенная с ключами anb, позволяет получить список открытых сессий и связанных с ними приложений (рис 4.5). На приведенной копии экрана видны открытые порты RPC (135, 1025), NetBIOS/CISF (139, 445) и Microsoft ActiveSync (5679). В столбце PID указаны идентификаторы процессов, открывших порты. Эти идентификаторы совпадают со значениями PID в диспетчере задач (taskmgr.exe) и журналах аудита ОС. Уточнить связь процессов с системными службами можно при помощи утилиты tasklist -SVC. Дополнительно можно использовать различные сканеры портов и сетевые анализаторы (sniffer), позволяющие определить реализуемый приложением протокол или собрать данные о текущем сетевом взаимодействии. В качестве сканеров портов для этой задачи следует использовать программы, реализующие функции определения версии приложения (fingerprint). Примерами подобных программ являются Nmap, Amap, Nessus, XSpider и т.д. Наверное, наиболее популярным сканером является nmap, обладающий к тому же богатыми функциональными возможностями и высокой производительностью. База данных «отпечатков» приложений в Nmap постоянно пополняется, что позволяет идентифицировать как распространенные, так и экзотические сетевые службы. 5" C:\WINDOWS\system32\cmd.eHe C:\>netstat -anb fictiue Connections Proto Local Address TCP 0.0.0.0:135 RpcSs tsvchost.exeI TCP 0.0.0.0:445 [System] TCP 0.0.0.0:1025 [lsass.exe] TCP 10.8.83.6:139 [System] TCP 127.0.0.1:56?9 [HCESCOMM.EXEJ TCP 192.12.12.1:139 [System! TCP 192.168.65.1:139 [System] Foreign Address O.O.O.B:Q 0.0.0.0:0 0.0.0.0:0 0.0.0.0:0 0.0.0.0:0 0.0.0.0:0 0.0.0.0:0 ■мййгДИНЯМр State LISTENING LISTENING LISTENING LISTENING LISTENING LISTENING LISTENING PID 1240 4 812 4 3344 4 4 Щ Щ if 1 1 1 1 1 I щ Рис. 4.5. Утилита netstat 140
Глава 4. Безопасность сетевого уровня На этапе инвентаризации желательно проводить сканирование по всему диапазону доступных TCP и UDP портов, что иногда дает довольно интересные результаты - например, обнаружение на серверах сетевых служб, не требуемых для выполнения бизнес- задач. Не редки ситуации, когда высокопроизводительный кластер кроме обслуживания корпоративной СУБД выполняет функции сервера Counter-Strike или используется в качестве склада различной видеопродукции. Ниже приведен пример результатов запуска nmap в режиме сканирования диапазонов TCP и UDP портов (-sSU), с последующей идентификацией сетевых приложений и версии ОС (-А) и сохранением результатов в стандарте XML (-оХ): nmap.exe -оХ out.xml -A -sSU -p 1-,U:1- <ip> Полученные данные легко импортируются в Excel, другие табличные процессоры или СУБД, что позволяет автоматизировать обработку результатов. Для корректного отображения результатов в программе просмотра Web необходимо вместе с файлом результатов копировать из папки Nmap файл преобразований nmap.xsl (см. рис 4.6). Сетевые анализаторы дают возможность снять слепок сетевой активности компьютера или сетевого сегмента за определенный промежуток времени. При работе с сетевыми службами, использующими множественные соединения, это один из самых эффектив- jnmap scan report - «can @ '.- ~^ B-ie6.lStl njnstotl [scan summary . stopped at . Debugging was disabled, the verbosity level was 0. 10.8.186.201 (online) hostname* m oxuple со. <PTR) porti The 1659 ports scanned but not shown ■art SD 1 S 1 4 44S 1112 1433 treo 2000 гзгл 389 3S31 5060 SOBO :cp :cp tcp tcp tcp tcp tcp tcp Itrte open lOen open open □pen зрел filtered iltered iltered open lervk* ittp ■nirpe netbos-ssn microsoft di msrpc TI5-SQI-I -. 3Z3/Q 21 ittp Tucrasoft-rdp ittp вгоку •roduct Microsoft [IS websdrvBf Microsoft Windows HPC Microsoft Window» S003 mKrojoft-di Microsoft Windows flPC HP Proliant System Management Лег mod Terminal Service Microsoft is* Server web Proxy torsion 6.0 2.0.2.106 Extra Info CompaqHTTPServer 9.9 >m*y auth required Рис. 4.6. Отчет Nmap в формате XML 141
Безопасность беспроводных сетей TCPConversatoM Address A ' 192.168.65.1 192.168.65.1 192.168.65.1 192-168.65,1 192.168.65.1 10.8.83.6 10.8.83.6 10.8,83.6 10.8.83.6 10.8,83.6 10.Э.83.6 10.8.83.6 10.8.83.6 10.8.83.6 10.8.83.6 10.8.В3.6 10.8.83.6 10.8.S3.6 10 8.3Э.6 10.8.83.6 10.8.83.6 | PortA 16» 1679 1686 1694 1699 1683 1696 1676 1691 1669 1674 1666 1659 1665 1660 1687 1688 1677 1684 1692 1697 |Ad*esSB 10.8.186.20 10.8.186.201 10.8.186.201 10.8.186.202 10.8.186,202 Ю.в. 186.201 10.8.186.202 10.8.186.201 10.8.186,202 10.8.186.201 10.8.186.201 10.8.186.201 10.8.80.19 10.8,80.19 10.8.186.202 10.8.186.20 10.8.186.20 10.8.186.201 10.8.186.201 10.8.186.202 10.8.186.202 PortB Packets netbos-ssn 2 netbw-ssn 1 netttos-ssn 1 netbios-ssn 1 netbos-ssn 1 microsoft-ds 57 microsoft-ds 46 microsoft-ds 31 microsoft-ds 30 http 11 http 11 http 10 domain 9 domain 9 http 6 n*T0soft-ds 6 netbiosssn 6 netbios-ssn 3 netbios-ssn 3 netbos-ssn 3 netbos-ssn 3 Bytes 124 62 62 62 62 9269 8341 5258 5204 1288 1279 1205 1841 1829 1231 366 366 178 178 178 178 Packets A->B 2 1 1 1 1 30 ■ 24 17 16 6 6 5 S 5 4 3 3 2 2 2 2 Bytes A->B 124 62 62 62 62 4S87 4399 2822 2768 747 738 600 318 320 434 186 186 116 116 116 116 Packets A<-6 0 0 0 0 0 27 22 14 14 5 5 5 4 4 2 3 3 1 1 1 1 | Bytes A<-8 0 0 0 0 0 4382 3942 2436 2436 541 541 605 1523 1509 797 180 180 62 62 6Z 62 Рис. 4.7. Список TCP-соединений в Ethereal ных методов определения используемых портов. Большинство современных сетевых анализаторов позволяет не только собирать и декодировать отдельные пакеты, но и выделять из собранного трафика сессии протоколов транспортного и прикладного уровней. Например, популярный продукт Ethereal имеет функцию отображения статистики соединений (Statistic - Conversation List), которая позволяет быстро определить, с какими серверами и по каким протоколам происходил обмен информацией (см. рис. 4.7). Если статистические данные собирались достаточно долго и корректно выбран анализируемый сегмент, администратору остается только удалить лишние серверы и протоколы и использовать полученные данные в качестве основы для формирования политик фильтрации трафика. Результаты, полученные в ходе сбора информации, удобно оформить в виде таблицы, которую затем довольно просто перевести в настройки конкретного межсетевого экрана . Пример подобной таблицы (табл. 4.1), отражающей взаимодействие клиентов с контроллерами домена, приведен ниже. Всегда подробно документируйте правила настройки межсетевого экрана. Как правило, проанализировать правила «на бумаге» гораздо проще, чем пытаться понять, что же реально разрешено на МСЭ, путем анализа правил. 142
Глава 4. Безопасность сетевого уровня Таблица 4.1 Таблица фильтрации трафика Порт ICMP Туре 0,8 53 TCP/UDP 88 TCP/UDP 123TCP/UDP 135 TCP/UDP 137 TCP/UDP 138 UDP 139 TCP 389 TCP/UDP 445 TCP 636 TCP 1512 TCP 3268 TCP 3269 TCP 57952 TCP Отправитель Беспроводной сегмент Беспроводной сегмент Беспроводной сегмент Беспроводной сегмент Беспроводной сегмент Беспроводной сегмент Беспроводной сегмент Беспроводной сегмент Беспроводной сегмент Беспроводной сегмент Беспроводной сегмент Беспроводной сегмент Беспроводной сегмент Беспроводной сегмент Беспроводной сегмент Получатель Контроллеры домена Серверы DNS Контроллеры домена Контроллеры домена Контроллеры домена Контроллеры домена Контроллеры домена Контроллеры домена Контроллеры домена Контроллеры домена Контроллеры домена Серверы WINS Контроллеры домена Контроллеры домена Контроллеры домена Протокол ICMP эхо-запрос (Ping) DNS Kerberos NTP RPC Endport Mapper NetBIOS Name Server NetBIOS Datagram NetBIOS Session LDAP CIFS/SMB LDAP over SSL WINS GC LDAP GC LDAP over SSL NTDS RPC Нестандартные протоколы При составлении правил фильтрации могут возникнуть проблемы с протоколами, использующими несколько динамически открываемых соединений, например RPC в ОС Windows. Этот протокол 143
Безопасность беспроводных сетей широко используется для удаленного управления, в службах Active Directory и Exchange сервер. Приложения, использующие RPC, при инициализации получают динамический номер порта, который зависит от текущего состояния ОС. Клиент обращается к порту 135 TCP/UDP с запросом, в котором указывается UUID приложения, и получает в ответ номер порта, на котором это приложение зарегистрировано. После этого клиент устанавливает соединение с полученным портом. Определить текущую привязку UUID к номерам портов можно с помощью сетевого анализатора либо специализированного сканнера RPC, например Security Friday RPCScan, (http://www.securityfriday.com/tools/RpcScan.html) или Microsoft Port Query (http.7/support.microsoft.com/?kbid=310298). Однако соответствие приложения и номера порта может измениться с течением времени (например, при перезапуске службы), что не дает возможности использовать стандартный подход при описании правил фильтрации для RPC. Довольно часто для корректной работы RPC рекомендуют открывать весь доступный диапазон портов, однако такой подход, по сути, означает отказ от использования преимуществ фильтрации трафика. Например, сервер Microsoft Exchange регистрирует более десятка RPC интерфейсов, тогда как для нормальной работы клиента достаточно разрешить доступ к трем из них. Чтобы решить эту проблему можно использовать либо межсетевые экраны с поддержкой фильтрации RPC на прикладном уровне (например, RPC Application Filter в составе Microsoft ISA Server 2004 и выше), либо статическую привязку служб RPC к статическим портам. Этот подход использован в приведенном в табл. 4.1 примере, где RPC-интерфейс службы NTDS привязан к порту 57952 (выбирается произвольно из диапазона 1024 и выше). Для служб Microsoft Exchange и Active Directory соответствующие настройки описаны в базе знаний Microsoft в статьях Q270836 и Q555381 (см. http://support.microsoft.com/default.aspx?scid=kb;en-us;270836 и http://support.microsoft.com/default.aspx?scid=kb;en-us;555381). Для автоматизации привязки приложений RPC к статическим портам можно использовать административный шаблон (см. листинг 4.1), позволяющий применять эти настройки через групповые политики. Листинг 4.1. Файл rpccfg.adm #if version >= 3 CLASS MACHINE CATEGORY «Network» CATEGORY !!PortMapping 144
Глава 4. Безопасность сетевого уровня POLICY !!ExchangeNS KEYNAME «System\CurrentControlSet\Services \MSExchangeSA\ Parameters» EXPLAIN !!PortMapping_E PART !!RFR NUMERIC VALUENAME !!TCP MIN 1024 MAX 60000 DEFAULT 2000 END PART PART !!NSPI NUMERIC VALUENAME !1TCPNSPI MIN 1024 MAX 60000 DEFAULT 2001 END PART END POLICY POLICY !!ExchangeIS KEYNAME «System\CurrentControlSet\Services \MSExchangeIS\ Parameter sSystem» PART !!IS NUMERIC VALUENAME !!TCP MIN 1024 MAX 5000 DEFAULT 2002 END PART END POLICY POLICY !!DCDS KEYNAME «System\CurrentControlSet\Services \NTDS\ Parameters» PART !INTDS NUMERIC VALUENAME !!TCP MIN 1024 MAX 60000 DEFAULT 49152 END PART END POLICY END CATEGORY END CATEGORY [STRINGS] ExchangeNS=Exchange Name Services ExchangeIS=Exchange Information Store DCDS=Domain controllers NTDS Network=Network configuration PortMapping=Static RPC port mapping RFR=SA Request For Response (RFR) TCP port NSPI=DS Name Service Provider (NSPI) TCP port IS=Exchange Information Store (IS) TCP port NTDS=NT Directory Services TCP=«TCP/IP Port» TCPNSPI=«TCP/IP NSPI Port» PortMapping_E=Used to map Exchange RPC services to static ports #endif 145
Безопасность беспроводных сетей Данный файл следует подключить к административным шаблонам компьютера в редакторе групповой политики (Computer Configuration - Administrative Template - Add/Remove Template). По умолчанию, параметры шаблона в редакторе отображаться не будут. Это связано с тем, что шаблон модифицирует параметры ключей реестра, находящихся за пределами HKLM\Software. Чтобы произвести настройку параметров необходимо включить режим отображения устаревших политик. Для этого в меню «View» отключается опция «Show Policies Only». В Windows Server 2003 необходимо открыть пункт меню «View - Filtering» и снять выделение с пункта «Only show policy settings that can be fully managed». 4.1.4. Настройка МСЭ После формирования и документирования политики фильтрации трафика желательно некоторое время использовать ее в тестовом режиме для определения корректности правил фильтрации. В этом случае вместо правила, запрещающего весь сетевой трафик, последним правилом в политике фильтрации разрешается прохождение любых данных с обязательным протоколированием. По прошествии некоторого времени журнал межсетевого экрана анализируется и, если обнаруживается, что некоторые протоколы были упущены при проектировании, они включаются в документацию и правила межсетевого экранирования. При переводе экрана в основной режим правилами фильтрации запрещается прохождение любого трафика кроме разрешенного. Желательно протоколировать отброшенные межсетевым экраном пакеты*. Если используемый межсетевой экран поддерживает базовые функции обнаружения атак, таких как сканирование портов, подмена IP-адреса (IP Address Spoofing), желательно их задействовать, особенно на интерфейсе, подключенном к беспроводной сети. 4.2. Виртуальные частные сети В некоторых ситуациях использование описанных в предыдущей главе методов защиты канального уровня невозможно. Например, авторам довольно часто приходится подключаться к сети Internet Для того чтобы уменьшить количество событий, можно не протоколировать типичный блокируемый трафик, например широковещательные запросы NetBIOS. Для этого перед правилом протоколирования создается правило, отбрасывающее такой трафик без записи в журнал. 146
Глава 4. Безопасность сетевого уровня через публичные узлы беспроводного доступа. В большинстве случаев эти сети реализуют только аутентификацию пользователя и не задействуют никакие механизмы обеспечения конфиденциальности трафика. В результате злоумышленник получает возможность прослушивать трафик или, реализовав атаку «человек посередине», модифицировать данные в процессе передачи. На международной выставке-конференции «Infosecurity-Moscow 2005» авторы совместно с Учебным Центром «Информзащита» и компанией «Positive Technologies» развертывали беспроводной honeypot и были весьма удивлены, когда вместо попыток атак со стороны злоумышленников система зарегистрировала огромное количество соединений с корпоративными сетями по незащищенным протоколам HTTP, POP3, IMAP4 и т.д. Большинство этих соединений было установлено участниками и посетителями выставки, т.е. людьми, которые не понаслышке знают, что такое безопасность. В таких случаях логично смириться с невозможностью обеспечения безопасности канального уровня и обратиться к механизмам защиты вышестоящих протоколов, например, к технологиям построения виртуальных частных сетей (Virtual Private Networks, VPN). Приведенный пример не является единственной ситуацией, когда оправдано применение VPN. Иногда использование VPN является единственным подходящим вариантом обеспечения совместимости с нормативными требованиями (например, по использованию сертифицированных средств защиты или отечественных криптографических алгоритмов) или необходимого уровня защиты (IPSec-ESP с использованием сертификатов вместо WPA-PSK между беспроводными мостами). 4.2.1. Варианты использования VPN Существует три основных схемы использования VPN для защиты беспроводной сети. В одной из них канальный уровень признается незащищаемым apriory и VPN применяется для аутентификации беспроводных клиентов и обеспечения конфиденциальности трафика (рис. 4.8). Такой вариант может использоваться как в корпоративной сети, так и провайдерами беспроводного доступа к Internet. В другой схеме защищенный канал устанавливается между несколькими сетями, связанными с помощью беспроводных мостов, поскольку технология VPN обеспечивают более высокий уровень защиты (рис. 4.9). 147
Безопасность беспроводных сетей Корпоративная сеть Рис. 4.8. Использование VPN для защиты беспроводного трафика Построение виртуальных частных сетей является едва ли не единственным способом обеспечить конфиденциальность данных мобильного клиента при доступе через незащищенную беспроводную сеть (см. рис. 4.10). 4.2.2. VPN сетевого уровня В настоящее время распространены три вида организации VPN на сетевом уровне: 1) Point-to-point tunnel protocol (PPTP); 2) IPSec-ESP в туннельном режиме; 3) Layer 2 Tunnel Protocol (L2TP) совместно с IPSec-ESP. Рис. 4.9. Защита данных между сетевыми мостами 148
Глава 4. Безопасность сетевого уровня Шлюз VPN Рис. 4.10. Защита мобильного доступа Протокол РРТР Популярность РРТР (RFC2637) обусловлена простотой настройки и эксплуатации. Кроме того, базовые технологии данного протокола, такие как General Routing Encapsulation (GRE, RFC2784), Microsoft Point-to-Point Encryption (MPPE, RFC3078) и MS-CHAPv2 (RFC25759) являются стандартами IETF, что теоретически должно обеспечивать совместимость реализаций. Клиенты и серверы РРТР входят в базовую поставку ОС Windows (Rounting and Remote Access Server, RRAS). Также доступны реализации протокола для различных дистрибутивов ОС Linux и Unix (например, РОРТОР, http://www.poptop.org/). При передаче данных по сети РРТР используются инкапсуляция GRE (IP-protocol 47) и управляющее соединение по ТСР-порту 1724. Использование РРТР позволяет шифровать трафик с помощью алгоритма RC4, использующего сеансовый (индивидуальный для каждого пакета) 128-битовый ключ, и реализовать взаимную аутентификацию клиента и сервера (при использовании MS-CHAPv2 или ЕАР)*. Наиболее узким местом протокола является отсутствие контроля целостности сообщения, возможность разрыва сессии, использующей протокол РРТР злоумышленником (атаки на управляющий канал, ис- При обсуждении РРТР очень часто упоминают его слабую защищенность, в качестве аргументации ссылаясь на статью Брюса Шнайера и Петера Муджа (http://www.schneier.com/pptp-faq.html). Однако следует помнить, что данная статья относится к ранней версии РРТР, тогда как в текущей реализации устранены приведенные в публикации замечания, что признано теми же авторами (http://www.schneier.com/paper-pptpv2.html). Но протокол MS-CHAPv2 тоже имеет ряд недостатков, подробно описанных в гл. 3. 149
Безопасность беспроводных сетей пользующий TCP), и применение пароля пользователя при генерации ключевого материала. Таким образом, криптостойкость туннеля зависит от сложности пароля пользователя, что всегда является узким местом. Для устранения этой проблемы можно использовать протокол аутентификации EAP-TLS. Кроме стойкой аутентификации на основе цифровых сертификатов подобное решение позволяет сохранять закрытые ключи пользователей в защищенном отчуждаемом хранителе, например в «не извлекаемой» памяти смарт-карты. В ситуациях, когда аутентификация с помощью пароля является предпочтительной, можно задействовать компромиссный вариант, например PEAP-MS- CHAPv2 с достаточно сложными паролями. При развертывании VPN на основе РРТР следует учитывать высокую уязвимость беспроводных сетей к атакам «человек посередине», позволяющим реализовать атаки направленные на понижение уровня защиты, так называемые «downgrade attacks». При проведении подобных атак злоумышленник, выступая в качестве сервера для клиента и в качестве клиента для сервера, пытается согласовать с ними менее безопасный алгоритм шифрования (например, RC4-40 или вообще отказаться от МРРЕ) или аутентификации (РАР вместо MS-CHAPv2), что дает ему возможность получить доступ к незашифрованному трафику либо к паролям пользователя. В связи с этим при настройке клиента и сервера VPN стоит указывать в опциях соединения только наиболее защищенные поддерживаемые обеими сторонами протоколы шифрования и аутентификации. Авторам неоднократно приходилось сталкиваться с ситуациями, когда провайдеры выделенного, в том числе и беспроводного, доступа разрешали на VPN-серверах соединение без шифрования и даже рекомендовали пользователям отключение МРРЕ, мотивируя это соображениями пропускной способности (2006 г.). В результате весь Internet, трафик и пароли пользователей были доступны любому, чьи навыки работы с сетевыми анализаторами превышали запуск Cain&Abel. Многие из описанных атак на РРТР могут быть реализованы с использованием сетевого анализатора Ettercap (http://ettercap.sourceforge.net/). Процедуры развертывания РРТР VPN на основе продуктов Microsoft очень детально описаны в документации к пакету Resource Kit, которые опубликованы на сервере Microsoft: (http://www.microsoft.com/windows2000/techinfo/reskit/deploymentscen arios/scenarios/ras03_connectremoteusersacrossinternetusingpptp.asp). С учетом приведенных выше соображений относительно безопасности Протокол РРТР может использоваться для организации клиентского доступа к беспроводной сети. 150
Глава 4. Безопасность сетевого уровня Протокол IPSec Семейство протоколов Internet Protocol Security, более известное как IPSec, приобретает все большую популярность. Существуют реализации IPSec для большинства операционных систем, протоколы поддерживаются многими межсетевыми экранами. В ближайшее время многим администраторам придется столкнуться с протоколом IPSec в связи с его встроенной поддержкой в протоколе IPv6. Однако попытка практического использования IPSec часто разбивается об изобилие разнообразных непонятных терминов. Сложность протокола была признана IETF, что привело к появлению отдельного стандарта RFC2411, описывающего связь между стандартами. Из доступных в IPSec протоколов защиты для применения в беспроводной сети подходит Encapsulated Security Payload (ESP, RFC4306). Протокол Authentication Header (AH, RFC4302) не обеспечивает конфиденциальности передаваемых данных, что снижает его практическую ценность при решении задачи обеспечения безопасности беспроводной сети. Протокол ESP выполняет шифрование данных с использованием симметричных алгоритмов (DES, 3DES, CAST, AES в зависимости от реализации протокола) и контролирует целостность пакета путем расчета значения иммитовставки (НМАС) на основе хэш- функций SHA-1 или MD5. Существуют варианты IPSec, использующие сертифицированные реализации ГОСТ 28147-89 для шифрования и контроля целостности сообщения. Ключи шифрования и контроля целостности сообщения могут задаваться администратором (статические ассоциации безопасности, Security Associations, SA) или генерироваться с помощью протокола ISAKMP/IKE (Internet Security Association and Key Management Protocol/Internet Key Exchange, см RFC 4306). Некоторые операционные системы поддерживают только статические SA (Solaris 8), некоторые - только динамические (Windows 2000 и выше). Единственным преимуществом статических SA является отсутствие задержки при прохождении первых пакетов, обусловленной процессом установления безопасной ассоциации. При использовании протокола IKE узлы проходят взаимную аутентификацию и выводят динамические ключи шифрования с ис- * Распространено мнение, что использование IKE-PSK является более защищенным методом, чем статические безопасные ассоциации. Это действительно так, если ключ аутентификации имеет достаточную энтропию. Учитывая, что энтропия стандартного английского теста равна 1,3 бита на символ, для получения 128 бит длина ключа (при использовании английского текста) должна составлять 99 символов. 151
Безопасность беспроводных сетей пользованием протокола Диффи-Хэлмана. Применение IKE позволяет менять ключи шифрования после передачи некоторого объема трафика или по прошествии определенного промежутка времени. В базовых стандартах определены два метода взаимной аутентификации - с помощью общего ключа (Preshared Key, PSK) и на основе цифровых сертификатов. Существуют различные расширения данной схемы. В реализации IPSec, встроенной в ОС Windows существует возможность использовать для аутентификации узла протокол Kerberos. Некоторые шлюзы VPN поддерживают методы аутентификации XAuth (http://tools.ietf.org/wg/ipsec/draft-ietf-ipsec- isakmp-xauth/draft-ietf-ipsec-isakmp-xauth-06.txt) и Hybrid (http://tools.ietf.org/wg/ipsec/draft-ietf-ipsec-isakmp-hybrid-auth/draft- ietf-ipsec-isakmp-hybrid-auth-05.txt). Эти методы не являются стандартами IETF, что может вызывать проблемы при интеграции решений различных производителей. Методы аутентификации XAuth и Hybrid являются расширениями IKE, позволяющими использовать не один общий ключ для взаимодействующих узлов, а индивидуальные ключи аутентификации для каждого пользователя. Как правило, эти методы используются на VPN-шлюзах; в качестве PSK используется производная от пароля пользователя, который известен и шлюзу и подключающемуся узлу. Метод Hybrid дает возможность использовать разные механизмы аутентификации в рамках одной сессии, например сертификаты для аутентификации сервера и ключи (т.е. пароли) для проверки пользователя. Протокол IPSec поддерживает два режима работы: транспортный и туннельный. В транспортном режиме исходный заголовок IP практически не изменяется. Туннельный режим подразумевает защиту всего исходного пакета и добавление нового IP-заголовка, возможно, с иными адресами отправителя и получателя. Таким образом, транспортный режим используется для защиты взаимодействия между узлами, а туннельный - между двумя сетями или узлом и сетью. Правила обработки трафика хранятся в политиках безопасности (Security Policy Database, SPD), представляющих собой пакетные фильтры, в которых набор возможных действий (пропустить, отбросить) расширен правилом «передать с использованием IPSec». Протоколы IKE и АН не поддерживают работу в сетях с трансляцией адресов. Для передачи трафика IPSec по сетям с трансляцией адресов используются расширения протокола IPSec NAT- Traversal (RFC3947, RFC3948), поддерживаемого в обновленных 152
Глава 4. Безопасность сетевого уровня клиентах VPN для Windows 2000, Windows XP и сервере RRAS Windows Server 2004. Протокол IPSec больше подходит для защиты трафика между двумя сетевыми шлюзами*. В этой ситуации используется ESP в туннельном режиме. Для взаимной аутентификации желательно использовать цифровые сертификаты. В случае использования общего ключа он должен обладать энтропией, не меньшей, чем ключ используемого алгоритма шифрования. В этой ситуации политики IPSec также можно использовать для защиты самих шлюзов, создав правило, отбрасывающее весь IP-трафик, кроме данных туннеля. Для защиты от описанных атак желательно создать отдельный подчиненный сервер сертификатов для IPSec. Поскольку согласование безопасной ассоциации возможно только при использовании сертификатов одного удостоверяющего центра, круг возможных злоумышленников будет ограничен. Встроенный в Windows клиент VPN использует IPSec совместно с L2TP. В такой конфигурации туннелирование и аутентификация пользователя организуются с использованием L2TP (UDP 1701:1701), а для обеспечения шифрования и контроля целостности сообщения применяется IPSec-ESP в транспортном режиме. Клиент автоматически настраивает IPSec на использование цифровых сертификатов для аутентификации, в связи с чем на клиентском компьютере и VPN-сервере должны быть установлены сертификаты, основанные на шаблоне IPSec (OID 1.4.6.1.5.5.8.2.2). Сертификаты, основанные на данном типе шаблонов, могут быть выданы автоматически с помощью групповых политик с использованием функции Automatic Certificate Request. Для автоматической настройки клиентов VPN в Windows удобно использовать технологию Connection Manager, позволяющую создавать файлы автоматической настройки клиентов удаленного доступа (http://www.isaserver.org/img/upl/vpnkitbeta2/cmak.htm). При выдаче сертификатов для IPSec следует учесть некоторую особенность реализации IPSec в Windows. Дело в том, что клиент IPSec не проверяет имя сервера, с которым происходит соединение, на соответствие с полем Common Name (Subject) сертификата и позволяет использовать сертификаты с OID 1.4.6.1.5.5.7.4.2 (TLS Web client authentication), поскольку OID входит в шаблон сертификатов User, no умолчанию доступный любому пользователю домена. Воспользовавшись этим фактом, злоумышленник, обладающий пользовательским сертификатом, может установить ложный сервер VPN и реализовать атаку «человек посередине» на протокол IPSec. 153
Безопасность беспроводных сетей Протокол SSL и виртуальные частные сети Одна из серьезных проблем, возникающих при использовании VPN сетевого уровня для защищенного доступа клиентов, заключается в их плохой совместимости с межсетевыми экранами. Во многих сетях исходящий трафик по протоколам VPN запрещен, или, что хуже - работа с Internet разрешена только через сервер-посредник прикладного уровня (HTTP-Proxy). Вполне возможно, что пользователь сети, находящийся в командировке, который получает доступ через общедоступный узел беспроводного доступа, может остаться без возможности установления защищенного соединения, поскольку трафик VPN заблокирован на межсетевом экране. В подобных ситуациях можно воспользоваться технологией инкапсуляции IP трафика в соединение SSL, носящее общее название SSL VPN. Использование этого подхода позволяет передавать трафик виртуальной частной сети через любой открытый TCP-порт и даже организовывать защищенное соединение через сервер HTTP-Proxy, поддерживающий метод CONNECT. К сожалению, в настоящее время ни одна технология организации SSL VPN не стандартизирована IETF, что делает подобные решения очень зависимыми от производителя. Популярным решением с открытым исходным кодом для организации SSL VPN является приложение OpenVPN (http://www.openvpn.net). Этот продукт реализует туннелирование данных канального уровня в пакеты TCP или UDP (стандартный порт 1194), поддерживает работу через серверы HTTP-Proxy. Существуют реализации сервера для Windows и Linux, графический интерфейс для Windows-клиента. Сервер обеспечивает аутентификацию клиента с помощью цифровых сертификатов, имени пользователя и пароля или комбинированную схему. Модули расширения функций аутентификации (Pluggable Authentication Modules, РАМ) позволяют использовать централизованные базы данных учетных записей (LDAP, RADIUS). Клиент OpenVPN поддерживает работу со смарт- картами по интерфейсам Microsoft CryptoAPI и PCKS#11. Описание OpenVPN заслуживает отдельной книги, однако на некоторых, важных аспектах, связанных с развертыванием этой системы, стоит остановиться. Основные моменты настройки прекрасно описаны в HOW-TO (http://openvpn.net/howto.html). Для работы через HTTP-Proxy сервер OpenVPN должен поддерживать соединение по протоколу TCP (стандартный файл конфигурации использует только UDP), причем лучше использовать номер порта, обычно открываемый на межсетевых экранах (например, 443). 154
Глава 4. Безопасность сетевого уровня В дистрибутив системы входит набор сценариев (easy-rsa), использующих OpenSSL для генерирования сертификата удостоверяющего центра, сервера VPN и клиентов. Однако, если на предприятии уже развернут центр сертификации, можно задействовать его для выдачи и подписи сертификатов, особенно когда для аутентификации клиентов используются смарт-карты. Сервер OpenVPN считывает сертификаты из файлов, поэтому сертификат СА необходимо загрузить с сервера сертификатов и сохранить в папке, отведенной для хранения ключей (например, /etc/openvpn/keys), а также указать путь к нему в конфигурационном файле (опция са). Сертификат сервера VPN можно получать с помощью Web- интерфейса Microsoft CA, но при этом необходимо создать собственный шаблон сертификатов, основанный на шаблоне Web Server. При создании шаблона нужно указать, что сертификат поддерживает экспорт ключа (Request Handling - Allow Private key to be exported). При генерации запроса также указывается, что закрытый ключ будет экспортироваться (Mark keys as exportable). Полученный сертификат затем можно экспортировать с помощью оснастки управления Certificates в файл в формате PCKS#12 (pfx) и скопировать на сервер VPN, указав в конфигурационном файле. При необходимости для конвертирования форматов сертификатов можно воспользоваться утилитой openssl. Такой же подход может быть использован для получения пользовательских сертификатов. На стороне клиента сертификат корневого удостоверяющего центра также должен быть скопирован на компьютер пользователя и путь к нему должен быть указан в файлах конфигурации. Для защиты от атак «человек посередине» рекомендуется при настройке клиента воспользоваться опцией tls-remote, указав Common Name сертификата сервера VPN (поле Subject). При использовании для аутентификации пользователя службы LDAP желательно защищать трафик между сервером VPN и серверами LDAP с помощью SSL, поскольку пароль пользователя будет передаваться серверу LDAP в открытом виде. Дальнейшее развитие SSL VPN получили в решениях WEB VPN. Данный тип VPN позволяет организовать защищенное соединение без предварительной настройки клиентских рабочих мест. Как правило, клиентская часть WEB VPN представляет собой компонент ActiveX или приложение Java, выполняющее функции сервера посредника между локальными приложениями и шлюзом VPN и устанавливаемое на компьютер пользователя при первом обращении к шлюзу. 155
Безопасность беспроводных сетей I DP Client ^^ VPN Client RDP Client VPN Client 127.0.0.1:6231 .. 127.0.0.1:6232 Рис. 4.11. Работа WEB VPN На рис. 4.11 приведена схема, демонстрирующая процесс подключения клиента сервера терминалов через WEB VPN. Клиент VPN устанавливает соединение с сервером по протоколу SSL и открывает серверный порт на локальной машине. Клиент сервера терминалов устанавливает соединение с этим портом (на схеме - 127.0.0.1:6231), после чего сервер VPN соединяется с сервером терминалов и начинает передавать данные между клиентом и сервером. Аналогично и браузер соединяется с организованным VPN- клиентом локальным сервером-посредником, который передает данные по защищенному каналу серверу VPN, пересылающему запросы требуемому серверу (возможно, через еще один, на этот раз корпоративный сервер-посредник). Еще одна функция, часто реализуемая WEB VPN - преобразование протоколов. Например, доступ к файлам на сервере через CIFS/SMB осуществляется сервером VPN, а клиенту передается HTML-страница, содержащая информацию о файлах и папках и позволяющая манипулировать ими. На рис. 4.12 иллюстрируется использование WEB VPN SSLExplorer для доступа к общей папке. Ограничения WEB VPN довольно очевидны - далеко не любое приложение может работать в подобном режиме. С другой стороны, наглядны и достоинства - отсутствие необходимости в настройке клиента, работа практически через любое соединение с Internet, независимость от рабочего места. Из решений с открытым исходным кодом наиболее функциональным в настоящее время является WEB VPN шлюз SSLExplorer (http://sourceforge.net/projects/sslexplorer/). 156
Глава 4. Безопасность сетевого уровня -3https:.//10.10.10.10.-/fs/cifs/srv-505-250.infosecru/(B«lr/W^->ioeSptl Home I ЕЙ Up | 3 Refresh I CD WebFolder I Name Ik: Audit/ [■' Docs/ Ш HTTP/ fcNet/ IB OS/ SB SOU IjgVulns/ I^WebGoat/ ^ Examples.zip |g cookie txt j^ hacmebank zip Щ web. zip Щ| xss.asp Size 9.2 kb 0.3 kb 2040.4 kb 20.2 kb 0.1 kb Date Tue, 07 Mar 20ОБ 0Б:51:27 GMT Thu, 11 Aug 2005 13:45:00 GMT Tue, 06 Sep 2005 14:17:14 GMT Thu, 20 Oct 2005 11:01:05 GMT Mon, 25 Oct 2004 05:10:00 GMT Tue, 31 May 2005 12:12:14 GMT Tue, 06 Sep 2005 15:37:33 GMT Mon, 25 Oct 2004 05:07:42 GMT Fri, 08 Oct 2004 13:15:10 GMT Tue, 07 Mar 2006 11:32:22 GMT Tue, 09 Aug 2005 08:34:30 GMT Fri, 02 Sep 2005 10:21:27 GMT Tue, 07 Mar 2006 13:50:50 GMT Mark Г Г Г Г Г г г г г г г г г Move Рис. 4.12. Просмотр общей папки через браузер Серверная часть шлюза работает под управлением операционных систем Linux и Windows, мобильная клиентская часть использует Java, что обеспечивает переносимость между платформами. Для аутентификации клиента могут быть использованы пароли (в том числе и совместно со службой каталога Active Directory), цифровые сертификаты или альтернативные методы аутентификации (вопрос/ответ, одноразовые пароли). В базовом варианте шлюз обеспечивает функции защищенного HTTP-Proxy, организует доступ к файлам по протоколам CIFS/SMB через Web-браузер или функции WebDAV проводника Windows, позволяет организовать защищенные туннели для различных приложений и поддерживает работу клиентов серверов терминалов Microsoft и Citrix ICA. Для использования WEB VPN не обязательно развертывать шлюз в своей сети. В Internet существует достаточно много бесплатных 157
Безопасность беспроводных сетей I He завыть рассказать тому, кто в&ат аугвитифйкацик писать ^А;^..ТнлывхедавСйс специзпвные гр^тты тоже Глро beckiip и отказоустойчивость j меня >жв фактически все есть Рис. 4.13. Работа со службой Megaproxy сервисов, позволяющих использовать SSL для работы с WEB, например www.megaproxy.com (см. рис. 4.13). Не стоит забывать и о том, что многие серверы, в том числе и бесплатной электронной почты, поддерживают работу по протоколу HTTPS. Еще одна система, которая может использоваться для обеспечения конфиденциальности при работе в общедоступной беспроводной сети - это система TOR (http://tor.eff.org/). Созданная для обеспечения анонимности работы в Internet система TOR основывается на связанной сети шлюзов. Периодически, около одного раза в минуту клиент TOR строит цепочку из нескольких шлюзов, которая используется для передачи данных. Отправляемые пакеты зашифрованы на сессионных ключах всех маршрутизаторов в цепочке. Таким образом, только первый шлюз знает реальный адрес отправителя, но только последний имеет возможность прослушивать незашифрованный трафик (рис. 4.14). Такая система обеспечивает не только конфиденциальность передаваемой информации, но и анонимность доступа к сети, поскольку с точки зрения получателя адрес отправителя пакета будет соответствовать адресу последнего шлюза в цепочке, который постоянно изменяется. 158
Глава 4. Безопасность сетевого уровня *& s^-l Рис. 4.14. Работа системы TOR Компрометация последнего шлюза тоже не дает возможности установить реальный адрес отправителя, только адрес предыдущего шлюза. Принципы, заложенные в дизайн системы, описаны в документе «Tor: The Second-Generation Onion Router», доступном по адресу http://tor.eff.org/tor-design.pdf. Большинство шлюзов, исключая наиболее доверенные, которые работают в качестве серверов каталога, поддерживается сообществом пользователей TOR, что усложняет контроль со стороны одной организации. В принципе, любой человек, обладающий достаточными ресурсами, может развернуть у себя сервер TOR. С точки зрения клиента TOR представляет собой локальный сервер-посредник, поддерживающий протокол Socks. Клиентские приложения настраиваются на работу через Socks-сервер, ожидающий соединений по адресу localhost:9050. Такой подход ограничивает применение TOR протоколом TCP, но сейчас идет разработка технологии передачи UDP-датаграмм. С другой стороны, отсутствие необходимости установки драйвера или модификации ядра ОС облегчает развертывание системы. При использовании TOR для обеспечения безопасности работы с WWW рекомендуется применять обеспечивающие анонимность серверы-посредники для HTTP, например Privoxy (http://www.privoxy.org) 159
Безопасность беспроводных сетей или Зргоху (http://www.security.nnov.ru/soft/3proxy/). Эти программы вырезают ряд заголовков, посылаемых клиентом, которые могут быть использованы для идентификации пользователя, контролируют содержание заголовков Cookie и удаляют из загружаемых страниц различный рекламный мусор, снижая загрузку канала. В такой конфигурации разрешение DNS-запросов также происходит через сеть TOR, что уменьшает вероятность утечки информации. Развертывание клиента TOR для Windows занимает буквально несколько минут. Заранее настроенный дистрибутив клиента TOR для Windows включает в себя собственно TOR, графический интерфейс контроля TORCP и сервер-посредник Privoxy (http://tor.eff.org/download.html.ru). Сразу после установки комплект готов к работе. Посредник Privoxy настроен на передачу трафика клиенту TOR, который, в свою очередь, пересылает данные в сеть TOR. Браузер настраивается на работу через сервер HTTP-Proxy, расположенный по адресу localhost:8118 (Privoxy). Клиенты, поддерживающие Socks, должны быть настроены на соединение с Socks сервером, ожидающим соединения на порту 9050 (см. рис. 4.15). Естественно, эти параметры в случае необходимости могут быть изменены путем модификации файлов настроек сервера Privoxy и клиента TOR. Пользователи Mozilla Firefox могут воспользоваться удобным расширением TorButton, позволяющим быстро переключаться между прямым соединением и TOR. В случае если между пользователем и Internet расположен сервер-посредник, необходимо настроить клиента TOR на работу через него. Для этого в файле конфигурации в параметрах HttpProxy и HttpsProxy указываются адреса и порты серверов, через которые TOR будет посылать HTTP-GET запросы для получения списка шлюзов и запросы на соединения по методу CONNECT для передачи данных. Если сервер-посредник требует использования аутентификации по протоколу NTLM, на машине можно развернуть сервер-посредник Зргоху или NTLM Authorization Proxy Server (http://asprmux.net/modules/mvarticles/article.php7storyid-48), поскольку TOR не поддерживает данный тип аутентификации. Примечание. В последнее время многие администраторы столкнулись с тем, что пользователи используют TOR для обхода фильтров корпоративного межсетевого экрана. Для блокировки обращения к серверам каталога можно использовать контроль запросов по URL вида http://7tor/server*. Если используемое решение поддерживает фильтрацию по содержимому трафика, то можно заблокировать установление сессии по ключевым словам TOR, client, <identity> 160
Глава 4. Безопасность сетевого уровня Proxy Settings - Servers ' 1щ1_, Type ; Ч"^-^ HTTP: ; Secure: FTP: Gopher: Socks: Proxy address to use Port | localhost : ) S113 | localhost : j 8113 j localhost : |' 81 IS I localhost : 18113 I locahost : Г Use the same proxy server for all protocols pExcepttons - Do rptuse proxy server for addresses beginning with: Use semicolons {; ) to separate entries. I OK j Cancel | Рис. 4.15. Настройка Internet Explorer на работу с TOR или youwontgetmyip (см. рис. 4.16). Пример сигнатуры для Snort, предложенной Mark Tombaugh, приведен на листинге 4.2. Листинг 4.2. Сигнатура Snort для обнаружения клиента TOR alert tcp $HOME_NET any -> $EXTERNAL_NET any (msg:»BLEEDING- EDGE POLICY TOR 1.0 Client Circuit Traffic»; flow:established,to_server; content:»|54 4f 521»; content:»|63 6c 69 65 6e 74|»; distance:10; within:20; threshold:type both, track by_src, count 1, seconds 60; classtype:policy-violation; reference:url,tor.eff.org; sid:2001728; rev:2;) Для проверки корректности настроек можно воспользоваться любым online-сервисом проверки анонимности работы в Internet либо страницей проверки работы службы TOR (http://serifos.eecs.harvard.edu/cgi-bin/ipaddr.pl?tor=1, см. рис. 4.17). Самой большой проблемой при применении TOR является непредсказуемость пропускной способности в данный конкретный момент времени. Ну и не стоит также забывать, что владелец послед- 161
Безопасность беспроводных сетей Otolbvv TCP stream Sirearn Content ■ — ■ ~~ ■■•- —-■- ■•■ ■■ 06-O5O205 2330Z. .U. .TORI.0...U....yoimontgetryspO. .0 О "u.... z... a. 9 4. .n. . . К. . *. H. . h.t. . V--.'.. .А.'й I.Ik.. .1.-3 Бх. .•' -RS''> .. .hd,. .5 /. . ,T9.h K. , h ~.v. 225Z. '„:. .yn9. .#3.... G. . .Ъ-Pw. . .G10.. . '. H.. 021.0 .1. .TORl'O . . U.. . .усил-ontget^yip о denti ty>D. . 0705020528302021.0 . U. .TORl'O . . U. . . . ycuivontgetiRyio <"identity;-O. . a . -. H.. 0 D..7I.7FA.D.t.. . ..D7.e. i "i.K rih.S. .=. .M-r.SCd' -M74. < {1.6... }. S. .._.. ,7| Й. Ю US. . -G. 8. ,>9. .9+ G О i nSpRI. *Q 1 i. vE.. сf. R.. . vk.. >. Fv. .. . /...L.v*...6}3.A2Ht( Т.. | Z C..P3. . |ЬНХ. ,.g.«B. :I_ 111.4 ._.70.ShotQ.E. ..vbA~. .LB..7.k..\ 8k.Z S. |K..I(fQ. . S. .3 3C. h. .?. .xv..; ' . . 1. . .x' 1.: .&.0e. .v.. r.-j. |_.V+.= NH&: . 6q. ,. YV. u. .k 7-.. -'Re 4. ..*&.£•!. e.v S= ■ 0.. . ij. . ) DvV. . 0 0*1. 0( 060502534^3520.1.0 I И I Pnnt I Enfare conversation (7162bytes! H^ Asai Г вСМС Г НехСш^? Г с Arrays Г Raw Nter out ifcis stream 1 Oose | Рис. 4.16. Начало сессии клиента TOR в Ethereal него шлюза в цепочке имеет прекрасную возможность прослушивать незашифрованный трафик. Так что не следует доверять TOR серьезные корпоративные тайны, но для быстрого защищенного доступа к Internet через общедоступную беспроводную сеть эта технология вполне может использоваться. Файл Орзвм g*ia Переход З&сшхкн г ■ , -& • ^ff^ You seem to be You connected to this site from Congratulations! i Готово №<струмемты ' tenths ee:s (-a using ^правка ard eds. cQf-Ь" ipadd p"'t^-=J Tor! 140.247.62.119 which is a valid 3 0 Перейти (I Tor exit node named serifos Рис. 4.17. Проверка работы TOR 162
Глава 4. Безопасность сетевого уровня Таким образом, использование технологий построения виртуальных частных сетей в качестве основных средств защиты беспроводной сети имеет довольно много недостатков. Шлюз VPN, обрабатывающий соединения множества пользователей, может стать узким местом с точки зрения производительности. Служебный трафик и дополнительные заголовки, вносимые протоколами VPN, снижают и без того не очень большую пропускную способность беспроводного канала. Отсутствие защиты на канальном уровне позволяет злоумышленнику, подключившемуся к точке доступа, проводить атаки на клиентов беспроводной сети. Кроме того, подобные решения, как правило, плохо масштабируются и могут вызывать сбои при роуминге клиентов. Подобные решения скорее применимы для провайдеров, использующих при организации «последней мили» беспроводную сеть. Однако существуют ситуации, когда VPN является или единственным или наиболее надежным решением, например, при объединении нескольких сетей через беспроводные мосты или доступе к Internet через общедоступные беспроводные сети. В первом случае наиболее подходящим решением будет использование IPSec-ESP в туннельном режиме, а во втором - решение на основе протоков SSL/TLS. 4.3. Протокол IPv6 Используемый в настоящее время в качестве основного сетевого протокола Internet Protocol version 4 (IPv4) был разработан в семидесятых годах прошлого века и практически не менялся с 1981 г., когда был опубликован стандарт RFC791. Однако за это время требования к сетям значительно изменились, и IPv4 подчас не отвечает современным тенденциям. Прежде всего это относится к относительно небольшому адресному пространству (под адрес в IPv4 отведено 32 бита), что приводит к необходимости использования для построения корпоративных сетей адресов из внутреннего диапазона (RFC1918) и выделения небольшого количества внешних адресов для взаимодействия с Internet через трансляцию адресов. Структура маршрутизации в IPv4 приводит к разрастанию таблиц маршрутизации, что требует использования все более и более мощных устройств. Так, например, наличие более восьмидесяти тысяч записей в таблице маршрутизации магистрального маршути- затора Internet является вполне нормальной ситуацией. В протоколе IPv4 слабо проработаны вопросы, связанные с предоставлением гарантированной полосы пропускания и управления 163
Безопасность беспроводных сетей качеством обслуживания. Кроме того, текущая версия IP разработана без учета требований безопасности. Протокол IPv6, учитывающий эти пробелы, является стандартом IEFT с 1998 г. Базовым документом стандарта в настоящее время является RFC2460. Все стандарты рабочей группы IETF IPv6 доступны по следующему адресу: http://www.ietf.org/html.charters/ipv6-charter.html. Учитывая увеличивающееся количество операционных систем и устройств, поддерживающих протокол IPv6, а также наметившуюся тенденцию включать поддержку этого протокола в стандартной конфигурации (RedHat Linux, Windows Mobile, Windows Vista), в скором времени администраторам придется столкнуться с этим протоколом, даже если они не планируют его развертывание в своей сети. 4.3.1. Отличия протокола IPv6 от протокола IPv4 В протоколе IPv6 по сравнению с IPv4 увеличено адресное пространство, изменен формат заголовка, включена поддержка функций безопасности и обеспечения качества обслуживания, добавлены механизмы автоматической конфигурации. Кроме того, изменения коснулись реализации механизмов управления передачей данных (см. табл. 4.2). Таблица 4.2 Протоколы IPv4 и IPv6 IPv4 Под адреса отправителя и получателя отведено по 32 бита (4 байта) Использование IPSec не обязательно Функции качества обслуживания не предусмотрены протоколом Фрагментация может осуществляться маршрутизатором или отправляющим узлом Минимальный размер пакета 68 байт Максимальный размер датаграм- мы 64 Кбайт IPv6 Под адреса отправителя и получателя отведено по 128 бит (16 байт) Встроенная поддержка IPSec АН и IPSec ESP Информация об идентификаторе качества обслуживания содержится в поле «Flow Label» заголовка За фрагментацию отвечает отправляющий узел Фрагментация на промежуточных устройствах не поддерживается (PMTU Discovery) Минимальный размер пакета 1260 байт Максимальный размер датаграммы 4 Гбайт (jumbogram) 164
Глава 4. Безопасность сетевого уровня IPv4 В заголовке IP присутствует контрольная сумма Заголовок может содержать дополнительные поля (Options) Для связи адресов канального и сетевого уровней используется ARP Для объединения узлов в группы используется протокол IGMP Обработка сообщений ЮМР Router Discovery является необязательной (как правило, отключено по соображениям безопасности) В локальном сегменте используются широковещательные адреса Для автоматической настройки узлов используется DHCP В системе DNS используются записи типа А IPv6 Контрольная сумма заголовка не рассчитывается маршрутизаторами Заголовок всегда имеет фиксированную длину При необходимости добавляются новые заголовки Для связи адресов канального и сетевого уровней используются сообщения Neighbor Discovery протокола ICPMv6 Для объединения узлов в группы используется протокол Multicast Listener Discovery (MLD) Сообщения 1СМР Router Discovery заменены сообщениями ICMPv6 Router Solicitation и Router Advertisement и являются обязательными Широковещательная адресация в IPv6 не используется Вместо нее используется групповая адресации Предусмотрена автоматическая настройка узлов, изменение параметров узлов через сообщения ICMP Router Discovery и DHCPv6 В системе DNS используются записи типа ААА Заголовок IPv6 имеет фиксированный формат и содержит следующие поля: • Version - версия протокола. • Traffic Class - указывает приоритет пакета, аналогично полю «Type of Service» в протоколе IPv4. Использование поля описано в стандарте RFC3697. • Flow Label - указывает на то, что пакет принадлежит определенной серии пакетов, требующих специальной обработки на промежуточных маршрутизаторах (например данные должны передаваться в режиме реального времени). • Payload Length - объем данных, передаваемых в пакете. Если объем данных превышает 64 кбайт, в поле указывается нуль и к пакету добавляется дополнительный заголовок типа Нор-Ьу-Нор. 165
Безопасность беспроводных сетей • Next Header - тип протокола вышестоящего уровня (TCP, UDP, ICMPv6 и т.д.). «Hop Limit - аналогично полю Time To Live (TTL) в заголовке IPv4. • Source Address - адрес отправителя (128 бит). • Destination Address - адрес получателя (128 бит). В случае использования маршрутизации «от источника» (дополнительные заголовки типа Routing) указывает на адрес следующего маршутиза- тора, а не реального получателя. Пример пакета протокола IPv6, перехваченного с помощью сетевого анализатора Ethereal, приведен на рис. 4.18. 4.3.2. Адресация в протоколе IPv6 Адресное пространство в протоколе IPv6 существенно расширено по сравнению с IPv4. Выделенных 128 бит хватит для обозначения 340,282,366,920,938,463,463,374,607,431,768,211,456 уникальных адресов. Естественно, для работы Internet в ближайшем будущем необходимо гораздо меньше адресов, но меньше и реальное количество доступных адресов, поскольку выбор 128 бит для обозначения адреса прежде всего связан с необходимостью перехода к иерархической адресации, основанной на автоматическом объединении маршрутов. Архитектура адресации протокола IPv6 описана в стандарте RFC3514. Адреса IPv6 обычно записываются в шестнадцатеричном В Ethernet II, Src: 192.12.12.12 (ОО:0с:29:Ь8:еЗ:54), Dst: IPv6-Neighbor Destination: lPv6-Neighbor-Discovery_00:O0:00:02 (33:33:00:00:00:02) Source: 192.12.12.12 (O0:0c:29:b8:e3:54) Type: IPv6 (0x86dd) В internet Protocol version 6 version: 6 Traffic class: 0x00 Flowlabel: 0x00000 Payload length: 16 Next header: ICWPV6 (ОхЗа) нор limit: 255 В internet control Message protocol v6 Type: 133 (Router solicitation) code: 0 Checksum: 0x60fc [correct] В ICMPV6 options Type: 1 (Source link-layer address) Length: 8 bytes (1) Link-layer address: OO:0c:29:b8:e3:54 Рис. 4.18. Пакет ICMPv6 166
Глава 4. Безопасность сетевого уровня виде, где каждые 2 байта разделяются с помощью двоеточия, например: 3ffc:ffff:0002:020c:29ff:feb8:e354. Если в адресе содержится последовательность нулей, то они могут быть опущены. Например, адрес FF02:0:0:0:0:0:0:1 может быть представлен в виде FF02::1. Допускается не указывать только нулевые 16-битовые блоки, например адрес FF02:1100:0:0:0:0:0:1 может быть записан как FF02:1100::1, но не как FF02:11 ::1. В протоколе определены три класса адресов: • Unicast: уникальный идентификатор конкретного сетевого интерфейса. • Anycast: идентификатор нескольких интерфейсов. При доставке выбирается «ближайший» с точки зрения маршрутизации интерфейс узла, которому принадлежит адрес. • Multicast: идентификатор нескольких интерфейсов. Пакет доставляется на все интерфейсы. Ниже приведены типы адресов, определяемые областью действия: • Global Unicast: глобальные адреса, используемые в Internet. • Site-Local Unicast: внутренние адреса, аналогичные диапазонам, описанным в стандарте RFC1918. • Link-Local Unicast: адреса, действующие в рамках одного сегмента. • IPv4-Compatible: используются для туннелирования пакетов IPv6 в IPv4. • IPv4-Mapped: используются для работы сетевых стеков, поддерживающих одновременно IPv6 и IPv4. Глобальные адреса IPv6 имеют префиксы от 2000::/3 до Е000::/3 и используются для передачи пакетов в Internet. Адрес состоит из 48-битового глобального идентификатора маршрутизации (global routing prefix), 16-битового идентификатора подсети (Subnet ID) и 64-битового идентификатора интерфейса (EUI-64). Идентификатор маршрутизации назначается провайдером, идентификатор подсети выбирается владельцем адресного блока, а идентификатор интерфейса генерируется на основе МАС-адреса путем добавления между двумя 24-битовыми частями константы FFFE. Текущее распределение префиксов можно узнать на сайте IANA (http://www.iana.org/assignments/ipv6-unicast-address-assignments). Внутренние адреса (Site-Local) состоят из префикса FEC0::/10, 16-битового идентификатора подсети и идентификатора интерфейса EUI-64. Внутрисегментные адреса (Link-Local) состоят из префикса fe80::/10 и идентификатора интерфейса EUI-64. Адрес отправителя пакета, приведенного на рис. 4.18 - внутрисегментный. 167
Безопасность беспроводных сетей Идентификаторы многоадресной рассылки в зависимости от типа получателя могут принимать следующие значения: • FFO1 ::1 - все интерфейсы данного узла; • FF02::1 - все узлы данного сегмента; • FF01::2 - все маршрутизаторы данного узла; • FF02::2 - все маршрутизаторы сегмента; • FF05::2 - все маршрутизаторы сети (сайта). Во время перехода сети Internet на новый протокол используется несколько видов туннелей. Организация туннеля может происходить как стандартными средствами IPv4 (например, с помощью GRE), так и на основе специфичных для IPv6 механизмов, таких как 6to4, 6over4, ISATAP или Teredo. Туннели 6to4 настраиваются автоматически и позволяют взаимодействовать узлам и сетям, поддерживающим IPv6 через инфраструктуру IPv4. Узлы 6to4 используют адреса вида 2002:WWXX:YYZZ::/48, где WWXX:YYZZ - адрес IPv4. Механизм 6over4 позволяет передавать поверх IPv4 пакеты группой рассылки. Использование ISATAP дает возможность узлам, поддерживающим и IPv4 и IPv6, взаимодействовать в рамках одной сети IPv4. Протокол Teredo разработан для передачи трафика IPv6 с использованием инкапсуляции в UDP пакеты. Подробную информацию о различных типах туннелей можно получить в соответствующих RFC или в базе знаний Microsoft по следующему адресу: http://wmw.microsoft.comAechnet/itsolutions/network/ipv6/ipv6coexist.mspx Протокол ICMPv6 реализует функции сопоставления адресов сетевого и канального уровней, управления маршрутизацией, контроля размера пакета и передачи сообщений об ошибках. Для получения MAC адреса, соответствующего 1Ру6-адресу узла, используются сообщения ICMPv6 Neighbor Solicitation и Neighbor Advertisement, соответствующие ARP Request и ARP Response. При инициализации интерфейса узел отправляет пакет ICPMv6 Router Solicitation, в ответ на который маршрутизаторы сегмента отсылают пакет Routing Advertisement, данные из которого используются для назначения глобального адреса и других задач по настройке интерфейса. Таким образом решается задача автоматического назначения адресов. 4.3.3. Основы безопасности протокола IPv6 Благодаря своему большому адресному пространству и механизмам автоматической настройки протокол IPv6 расширяет возможности использования сетевых устройств. Однако, это приводит 168
Глава 4. Безопасность сетевого уровня к тому, что протокол становится менее понятным и прозрачным для человека. Внешний вид записанного в шестнадцатеричном виде 128-битового IP-адреса на первых порах вызывает некоторое недоумение. В связи с этим широкое внедрение IPv6 приведет к еще большему возрастанию роли DNS. Если сейчас в корпоративной сети администратор может воспользоваться «резервным» методом и продиктовать пользователю IP-адрес вместо имени важного сервера, то довольно трудно представить себе пользователя, вбивающего в строке адреса браузера что-то типа 3ffc:ffff:0002:020c:29ff:feb8:e354. В случае использования DIMS для распространения открытых ключей/сертификатов, применяемых для аутентификации в IPSec, возможность установления связи между двумя узлами (даже если 1Ру6-адреса известны) зависит от доступности службы DNS. Часто IPv6 выпадает из поля зрения сетевых администраторов. При настройке межсетевых экранов, сканировании устройств на наличие «лишних» открытых портов, обнаружении атак администраторы обычно используют протокол IPv4, а не IPv6. Это позволяет злоумышленнику использовать IPv6 для установки скрытых троянских программ, обхода межсетевых экранов и так далее. Например, тривиальная задача инвентаризационного сканирования в сети, построенной на основе IPv6, весьма затруднена, поскольку стандартное количество адресов в одной подсети равняется 2 . Использование простого перебора здесь не подойдет. Похоже, что сканерам уязвимостей, которые будут поддерживать протокол IPv6, придется реализовывать поиск узлов не на сетевом уровне, как сейчас, а, используя многоадресные запросы Конечно, можно возразить, что, во-первых - устройство должно поддерживать протокол IPv6, во-вторых, его должна поддерживать сетевая инфраструктура. Дело в том, что многие операционные системы уже сейчас поставляются с IPv6, включенным в стандартной конфигурации. В качестве примеров можно привести Linux RedHat (включая Fedora Core) и даже Windows Mobile 2004. Кроме того, существует ряд технологий туннелирования, позволяющих передавать трафик IPv6 поверх IPv4 или IPv4 UDP. Как известно, туннели - враг межсетевых экранов. У узла всегда есть IP-adpec Дизайн IPv6 предполагает, что у любого интерфейса всегда есть как минимум один адрес IPv6, так называемый Local Link Address, начинающийся с префикса FE80. Этот адрес генерируется на основе идентификатора EUI-64. В Windows Server 2003 и в Linux Fedora 169
Безопасность беспроводных сетей Link encap:Ethernet HWaddr 88: 8C: Z9: B8 : ЕЗ : 54 inet addr:192.1Z.lZ.lZ Beast:132■12.12.255 Mask:255. inet6 addr: 3ffe:mf :0 :Z:2J0c7z9if f ■{ efb~8:e354>64 Scope: inet6 addr: t e80 : :2Bc ;Z3t f :Te"raTe3S4/64Scope: Link UP BROftDCfiST RUNNING MULTICAST MTU:1580 Metric:1 RX packets:1 errors:8 dropped.'8 overruns:B frame:0 TX packets:lZ errors:B dropped:8 oucrruns:B carrier:В collisions:8 txqueuelen:1088 ПХ bytes:118 (118.В Ь) TX bytes:652 (652.8 b) Interrupt:? Base address:0x1468 Рис. 4.19. Автоматическое назначение адресов в Linux Fedora Core 4.0 Core 4.0 идентификатор интерфейса генерируется на основе MAC адреса не только при назначении локальных адресов (т.е. действующих в пределах сегмента), но и при конфигурации глобальных адресов через сообщения Routing Advertisement (один из механизмов автоматического назначения адресов в IPv6 показан на рис. 4.19). Если в первом случае это совершенно нормально, то наличие в глобальном адресе идентификатора сетевой карточки наверняка порадует поклонников «1984» и вызовет некоторые вопросы у сторонников неприкосновенности частной жизни. Представьте, покупаете вы ноутбук с рук, а потом оказывается, что его предыдущий владелец взломал несколько десятков серверов в зоне .gov, или, что хуже, загружал нелицензионные тр4. Использование этой информации позволит злоумышленникам получать информацию об используемом оборудовании, отслеживать перемещение узла между различными провайдерами и следить за деятельностью конкретного пользователя. Кроме того, наличие локального адреса, не требующего настройки, дает злоумышленнику ряд дополнительных возможностей. В 2005 г. в прессе бурно обсуждалась возможность атаковать клиентов беспроводных сетей на базе Windows, автоматически назначающих адрес из диапазона APIPA и широковещательно рассылающих адрес в сообщениях NetBIOS: (http://www.theta44.org/karma/aawns.pdf). С IPv6 такие ухищрения не нужны. Дело в том, что клиентский компьютер: • самостоятельно присваивает себе адрес типа Local Link; • рассылает свой Local Link адрес в ICMPv6 сообщении и Router Solicitation; Реализация IPv6 в Windows Vista позволяет задействовать присвоение случайного идентификатора EUI-64, основанного на расширениях стандарта RFC3041. При развертывании IPv6 рекомендуется задействовать данную функцию. 170
Глава 4. Безопасность сетевого уровня • всегда готов назначить адрес, предложенный маршрутизатором в сообщении Routing Advertisement. Таким образом включать на клиенте DHCP нет нужды, он уже работает. Злоумышленнику достаточно установить ложную точку доступа и прослушать трафик, после чего он может напрямую соединяться с сетевыми службами клиента.* Если злоумышленник соединился с беспроводной сетью, он может легко определить все узлы, поддерживающие протокол IPv6, послав запрос на широковещательный адрес, например с помощью команды ping6 ffO2::1. ARP ушел - Spoofing остался Наверняка каждый человек, знакомый с безопасностью IP помнит о неприятных моментах, связанных с протоколом ARP. Широко известна возможность удаленного манипулирования значениями в ARP-таблице другого узла путем отправки ложных сообщений ARP- Response или ARP-Request (ARP-Spoofing, ARP-Poisoning). В IPv6 протокол ARP отсутствует. Когда узлу требуется определить адрес канального уровня, принадлежащий другому узлу, он посылает запрос Neighbor Solicitation, который получают все узлы сегмента (рис. 4.20). В Ethernet II, Src: 192.168.17.128 (OO:Oc:29:5b:a3:4a), Dst: lPv6-Neighbor-Oisi Destirtation: IPv6-Neighbor-Discovery_ff:Ь8:еЗ: 54 (33:33:ff:Ь8:еЗ: 54) source: 192.168.17.128 (00:0c:29:5b:a3:4a) Type: IPv6 (Ox86dd) internet Protocol version 6 version: 6 Traffic class: OxOO Flowlabel: 0x00000 payload length: 32 Next header: ICMPV6 (ОхЗа) нор limit: 255 source address: 3ffe:ffff:O:2:2Oc:29ff:fe5b:a34a Destination address: ffO2::l:ffbS:e354 a internet control Message Protocol v6 туре: 135 (Neighbor solicitation) code: 0 checksum: 0x6dl5 [correct] Target: 3ffe:ffff:O:2:2Oc:29ff:feb8:e354 _____ туре: 1 (source link-layer address) Length: 8 bytes (1) Link-layer address: 00:0c:29:5b:a3:4a Рис. 4.20. Запрос Neighbor Solicitation * Подробнее сценарии атак на клиентов беспроводной сети обсуждаются в следующей главе. 171
Безопасность беспроводных сетей 3 Ethernet II, Src: 192.12.12.12 (00:Ос:29:Ь8:еЗ:54), Dst: 192.16S.17.128 ( Destination: 192.168.17.128 (00:0с:29:5b:a3:4a) source: 192.12.12.12 (ОО:Ос:2Э:Ь8:еЗ:54) туре: IPv6 (0x86dd) 3 internet Protocol version 6 version: 6 Traffic class: 0x00 Fiowlabel: 0x00000 payioad length: 32 Next header: ICMPv6 (ОхЗа) нор limit: 255 source address: 3ffe:ffff:0:2:20c:29ff:feb8:e354 Destination address: Effe:ffff:0:2:20c:29ff:fe5b:a34a 3 internet control Message Protocol v6 туре: 136 (Neighbor advertisement) code: 0 Checksum: 0x5ea6 [correct] Ш Flags: 0x60000000 Target: 3ffe:ffff:0:2:20c:29ff:feb8:e354 В icmpv6 options туре: 2 (Target link-layer address) Length: 8 bytes (1) Link-layer address: 00:0c:29:bS:e3:54 Рис. 4.21. Сообщение Neighbor Advertisement Если узел, адрес которого указан в поле ICMPv6 Target, присутствует в сегменте, он отвечает сообщением Neighbor Advertisement, в котором содержится его адрес канального уровня (рис. 4.21). Как и в протоколе IPv4 данные сообщения не аутентифицирова- ны, что порождает схожие проблемы. Злоумышленник, посылая ложное сообщение Neighbor Advertisement, может изменить таблицу «соседей» (netsh int ipv6 show neighbors в Windows) на узле и выполнять атаку «человек посередине» в локальном сегменте. В процессе тестирования оказалось, что реализовать данную атаку с IPv6 несколько сложнее, чем с IPv4. Дело в том, что большинство операционных систем не воспринимали Neighbor Advertisement без отправки Neighbor Solicitation. Однако практически все удаляли существующую запись из таблицы соседних узлов и при необходимости отправки пакета снова посылали Solicitation. Таким образом, злоумышленник может посылать атакуемому узлу поток ложных сообщений Neighbor Advertisement, чтобы его сообщение было принято раньше ответа легитимного узла. Еще одна проблема, связанная с механизмом поиска соседних узлов заключается в том, что согласно RFC2462, тот узел не должен использовать адрес, который уже используется в сети. Для этого при инициализации интерфейса компьютер рассылает сообщения Neighbor Solicitation с целью определения доступных адресов. Таким образом, находящийся в локальном сегменте злоумышленник вполне может реализовать DoS атаку, отвечая на все Neighbor Solicitation, что данный адрес уже занят. 172
Глава 4. Безопасность сетевого уровня И снова про ICMP Redirect Протокол IPv6 довольно широко использует ICMPv6. Одна из задач, решаемых этим протоколом, это обмен маршрутной информацией в рамках Neighbor Discovery Protocol. Этот протокол может также использоваться для автоматического назначения адресов в сети (см. рис. 4.21). Поскольку аутентификация сообщений NDP обычно не используется, злоумышленник имеет возможность подделывать сообщения для выполнения ряда атак, таких как: • внедрение ложных шлюзов для клиентов (аналог ложного DHCP-сервера) и маршрутизаторов путем отправки ответов на запросы Router Solicitation; • реализация DoS атак путем снижения MTU в сети (минимум 1260); • внедрение ложного маршрута; • изменения маски сети; • снижение ограничения на количество ретрансляций пакета (Current Hop Limit). Б Ethernet II, Src: 192.168.17.128 (0O:Oc:29:5b:a3:4a), Dst: iPv6-Neighbor-oiscovery_00:00: Destination: Ipv6-Neighbor-Discovery_00:00:00:01 (33:33:00:00:00:01) source: 192.168.17.128 (0O:0c:29:5b:a3:4a) Type: IPv6 (0x86dd) Б internet protocol version б version: 6 Traffic class: 0x00 Flowlabel: 0x00000 payload length: 64 Next header: icmpv6 (ОхЗа) ^^sourceaddress^feeOx^Oc^eff^eSpaiSa^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Destination address: ffO2::l Б Internet Control Message protocol v6 туре: 134 (Router advertisement) code: 0 checksum: 0x51fa [correct] cur hop limit: 0 В Flags: 0x00 Router lifetime: 0 Reachable time: О Retrans time: 0 В icmpv6 options Type: 1 (source link-layer address) Length: 8 bytes (1) Link-layer address: OO:Oc:29:5b:a3:4a В ICKPV6 options туре: S (мти) Length: 8 bytes (1) мти: 1500 в ICfPv6 options Type: 3 (prefix information) Length: 32 bytes (4) Prefix length: 64 и flags: OxcO valid lifetime: Oxffffffff Preferred lifetime: Oxffffffff Prefix: 3ffe:ffff:0:2:: Рис. 4.22. Сообщение Router Advertisement 173
Безопасность беспроводных сетей Описанные выше атаки работают в большинстве реализаций протокола IPv6. Для тестирования их наличия в своей сети можно воспользоваться набором инструментов THC-IPv6 (http://thc.org/thc- ipv6/). В этот набор входят следующие программы: • parasite6: программа для отправки поддельных сообщений Neighbor Solitication/Advertisement, реализующих атаку «человек посередине»; • alive6: сканирование IPv6 узлов в локальной сети; • fake_router6: позволяет выступать в локальном сегменте в качестве шлюза по умолчанию; • redir6: перенаправление трафика в сети с помощью управляющих сообщений icmp6; • toobig6: позволяет снижать значение MTU путем отправки ложных сообщений icmpv6; • detect-new-ip6: определяет появление новых узлов в сегменте; • dos-new-ip6: блокирует подключение новых узлов к сегменту, путем генерации сообщения о занятости адреса; • fake_mld6: позволяет подключатся к группам многоадресной рассылки; • fake_mipv6: позволяет использовать чужой адрес Mobile IP в случае отсутствия IPSEC; • fake_advertiser6: отправка ложных пакетов Neighbor Advertisement; • smurf6, rsmurf6: реализация атак smurf (отправка ICMP Echo request на адрес сети) в локальном и удаленном сегментах. Программы работают под управлением ОС Linux на платформе 1386. Кроме инструментов, в набор входит комплект библиотек для генерации IPv6 пакетов в своих программах. Рекомендации Если IPv6 не используется - отключайте его в настройках ОС. Фильтруйте на межсетевых экранах и граничных маршрутизаторах трафик IPv6 и различные туннели (особенно это относится к трафику между клиентами беспроводной сети). Настройте системы обнаружения атак на распознавание IPv6 в локальной сети. Проверьте, что реализованные в ОС механизмы самонастройки изменяют Interface Identifiers. В противном случае используйте механизмы присвоения IPv6 адресов. 174
Глава 5. Безопасность клиентов Старая поговорка гласит: «Цепь сильна настолько, насколько сильно ее самое слабое звено». К сожалению, в погоне за новыми технологиями и средствами защиты мы часто забываем об избитых истинах, но о них хорошо помнят злоумышленники. Как и в традиционных сетях, «слабым звеном» в обороне беспроводной сети являются пользователи и их рабочие места. Угрозы, связанные с клиентами беспроводной сети гораздо более разнообразны по сравнению с традиционными рабочими местами. Прежде всего потому, что мобильные пользователи мобильны в буквальном смысле этого слова. Пользователи проводных сетей подключаются к корпоративным ресурсам и сети Интернет под «присмотром» множества серьезных средств защиты, анализирующих сетевую активность узла, журналы безопасности операционной системы, наличие необходимых обновлений и т.д. Мобильные пользователи могут подсоединяться к корпоративным ресурсам через любые сети без использования каких-либо средств защиты. В этом отношении они очень похожи на пользователей виртуальных частных сетей, за одним исключением, стать провайдером доступа к Internet для беспроводного пользователя может практически любой желающий. 5.1. Атаки на пользователей WLAN Как и в проводных сетях, где усиление защиты серверов привело к смещению внимания злоумышленников на рабочие станции пользователей, применение WPA и 802.11 i вынуждает атакующих искать обходные пути использования беспроводных сетей для взломов. Надо отметить, что точно так же как и в традиционных сетях, атаки на клиентов беспроводных сетей по эффективности могут превосходить традиционный взлом защиты точек доступа. Можно выделить четыре основные угрозы безопасности, связанные с мобильными клиентами: • атаки на ОС и прикладное ПО клиентов беспроводной сети; • перехват трафика при использовании незащищенных беспроводных соединений; • атаки «человек посередине», которые могут быть использованы для реализации других атак; 175
Безопасность беспроводных сетей • использование беспроводных клиентов в качестве канала удаленного доступа к корпоративной сети. Конечно, существует ряд других проблем, связанных с мобильными клиентами, например кража устройств и т.д., однако мы остановимся на тех из них, которые специфичны именно для беспроводных сетей. При использовании для защиты беспроводной сети технологий VPN или при подключении к Internet возникает ситуация, о которой мечтают многие злоумышленники: атакуемый находится с ним в одном сегменте. Возможность подключиться к той же точке доступа, что и клиент, позволяет реализовать атаки, использующие перенаправление трафика (внедрение ложного маршрута), такие как: • удаленное изменение таблицы ARP (ARP-Spoofing); • внедрение ложного DHCP сервера; • внедрение ложного сервера DNS или подмена DNS-ответов (DNS-spoofing); • изменение таблицы маршрутизации (ICMP Redirect); • внедрение ложного шлюза по умолчанию через сообщения Neighbor Advertisement (в случае использования IPv6). В результате злоумышленник, направив трафик через свой узел, получает возможность модифицировать данные, передаваемые между клиентом и серверами, и даже реализовать атаки на криптографические протоколы защиты данных, например атаку «человек посередине», против протоколов SSL, SSH и RDP или атаки на понижение уровня защиты протокола РРТР. Установленный на компьютере злоумышленника HTTP-посредник, выполняющий также функции DNS сервера и шлюза по умолчанию для клиента, может заменять рекламные блоки на загружаемых Web- страницах на WMF-файл, эксплуатирующий уязвимость CVE-2005- 4560 (http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2005-4560), и устанавливать на машину пользователя троянские программы. Для этого не понадобится никаких специализированных «хакерских» программ. Вполне достаточно обыкновенных серверов DHCP, DNS, HTTP-посредника и функций маршрутизации ОС. Хотя, конечно, можно использовать специализированные утилиты, такие как DHCP Gobbler, ettercap, Karma, airsnarf или Cain. В случае если пользователь сразу же после подключения к точке доступа устанавливает VPN-соединение, и все данные передаются по защищенному каналу, злоумышленник может попробовать использовать уязвимости серверного программного обеспечения, установленного на компьютере пользователя. На рабочих станциях под управлением ОС семейства Windows открыты сетевые порты 176
Глава 5. Безопасность клиентов 135, 137, 139 и 445, соответствующие службам RPC, NetBIOS и CIFS/SMB. Эти серверные приложения имеют довольно богатую историю уязвимостей. Учитывая тот факт, что в 2006 г. в Internet еще встречается червь SQL Slammer, распространяющий уязвимость CAN-2002-0649, как следует из индекса, устраненную в 2002 г., вероятность найти на клиентской машине какую-либо из более новых лазеек в системе безопасности весьма велика. Даже если серверные службы не содержат известных в настоящее время уязвимостей, злоумышленник всегда может попытаться подобрать пароль пользователя «администратор» или другой учетной записи, чье имя он получил, например, через так называемый «нулевой сеанс» (Null Session). Естественным методом защиты в таких ситуациях является использование персонального межсетевого экрана или системы предотвращения атак уровня узла. 5.1.1. Ложная точка доступа Если пользователь работает с беспроводной сетью, использующей технологии WPA или 802.11 i, ситуация с точки зрения злоумышленника усложняется, но не становится абсолютно безнадежной. Один из эффективных способов обхода защиты беспроводной сети заключается в использовании дополнительных профилей подключения, зачастую присутствующих на клиентских рабочих местах. Большинство мобильных пользователей подключается не только к беспроводной сети компании, но и настраивают свою рабочую станцию на доступ к менее защищенным сетям, например к домашней беспроводной сети. В зависимости от используемой реализации клиента беспроводных сетей и его настроек злоумышленник имеет возможность получить информацию об используемых клиентом подключениях. Клиент беспроводных сетей в ОС семейства Windows реализован в виде системной службы Wireless Zero Configuration (wzcsv) и работает по следующему алгоритму (http://technet2.microsoft.com/ Windows Server/en/Library/370b019f-711 f-4d5a-8b1 e-4289db0bcafd1033.mspx). 1. Составляется список доступных сетей путем рассылки запросов Probe Request с пустым значение SSID по всем каналам. 2. Последовательно рассылаются запросы Probe Request с указанием SSID сетей, указанных в свойствах клиента и присутствующих в списке доступных сетей. Порядок опроса сетей задается их порядком в списке preferred networks. 3. Если ни одна из сетей не ответила на запрос или соединение с сетью не было установлено, опрашиваются сети, которые отсут- 177
Безопасность беспроводных сетей ствуют в списке доступных сетей, что позволяет определить наличие сети, не рассылающей идентификатор во фреймах Beacon и Probe Response. 4. В случае если ассоциация с точками доступа не была установлена и соединение с одноранговыми сетями не запрещено (не включен режим Access point networks only) проводится попытка установить соединение Ad-Hoc сетями, которые указаны в свойствах клиента. 5. Если одноранговые сети не обнаружены, клиент настраивает беспроводной интерфейс в качестве первого узла такой сети и ожидает подключения других клиентов. 6. В случае если подключение к сетям Ad-Hoc запрещено, Wireless Auto Configuration проверяет значение параметра Automatically Connect To Non-Preferred Networks (по умолчанию этот режим отключен). Если данная опция отключена, то адаптер переходит в режим инфраструктуры со случайным значением SSID. 7. Если параметр Automatically Connect To Non-Preferred Networks равен единице, клиент беспроводных сетей пытается соединиться с доступными сетями, полученными при опросе радиоэфира (см. пункт 1). В случае сбоя подключения цикл повторяется через 60 с. Для удобства восприятия логика работы представлена в виде схемы на рис. 5.1.* Логика работы клиента беспроводной сети подсказывает и логику действий злоумышленника (см. рис. 5.2). 1. Если клиент соединен с точкой доступа, он отключается от нее. 2. Трафик беспроводной сети прослушивается с целью получения списка сетей, на работу с которыми настроен клиент (пункты 2, 3 и 4 работы клиента). 3. На основе полученных данных злоумышленник настраивает ложную точку доступа с SSID, полученным в пункте 2. При этом клиент отключается от других точек доступа. Чтобы подробно разобраться в логике работы клиента беспроводной сети Windows можно использовать беспроводной сетевой анализатор, либо протоколы службы Wireless Zero Configuration. Протоколирование включается командой netsh ras set tracing WZCTrace enable Журналы сохраняются в файле %SystemDrive%\Windows\Tracing\WZCTrace.log. Дополнительная информация доступна по следующему адресу: http://www.rnicrosoft.com/technet/prodtechnol/winxppro/maintain/wlansupp.mspx 178
Глава 5. Безопасность клиентов Составление списка доступных сетей В списке есть настроенные сети? Сети отвечают на запросы? Нет Сети Ad-hoc настроены? Нет Разрешено соединение с любыми сетями? Нет Ожидание 60 секунд Да ^ \ Да Попытка соединения удачна? Нет Да ^ \ Да Попытка соединения удачна? Нет Да Формирование Ad-hoc сети Да Да Попытка соединения удачна? Нет Работа до изменения ситуации Рис. 5.1. Схема работы службы Wireless Zero Configuration 179
Безопасность беспроводных сетей 4. Если предыдущий этап не был успешен, то с помощью настройки ложной точки доступа с заранее настроенным SSID злоумышленник проверяет, настроен ли клиент на соединение с любыми точками доступа (Automatically Connect To Non-Preferred Networks, пункт 7) и уязвимость пользователя к атакам с использованием социальной инженерии. 5. Если клиент не установил соединение ни с одной из предложенных сетей, злоумышленник дожидается момента, когда клиент перейдет в состояние 6, извлекает из пакета Probe Request случайное значение SSID и устанавливает точку доступа с этим значением. Аналогичных результатов можно достичь, используя точку доступа, отвечающую на любой запрос Probe Request, без анализа указанного в пакете значения SSID. Именно таким образом работает утилита Karma Tools. Отключение пользователя от текущей беспроводной сети может осуществляться различными методами, которые подробно будут рассмотрены в следующей главе. Что касается пятого пункта действий злоумышленника, то возможность соединения с точкой доступа со случайным значением SSID зависит от используемого беспроводного адаптера. Например, популярные карточки D-link (по крайней мере, линейки DWL-520) прекрасно ассоциируются с точкой доступа, даже если в профиле подключения не указано ни одной сети. Если хотя бы одна из сетей использует незащищенное соединение, сценарий действия злоумышленника мало отличается от описанного ранее: • настройка IP-адреса на клиенте с помощью ложного DHCP сервера, сообщений Router Advertisement в IPv6 или определение назначенного адреса путем прослушивания трафика клиента (например, широковещательных запросов NetBIOS или UPNP); • атаки на клиентское или серверное программное обеспечение рабочей станции, фишинг и т.д. Как показывают результаты исследования с использованием методики Gnivirdraw (см. далее), около 25% всех клиентов беспроводной сети устанавливают соединение с ложной точкой доступа, и для 50% из них можно определить IP-адрес, а около 40% беспроводных сетей используют DHCP. Обследование, проводившееся на выставке «Infosecurity Moscow 2006», показало гораздо менее утешительные результаты - с «подставными» сетями соединились 70% всех мобильных устройств. 180
Глава 5. Безопасность клиентов Составление списка используемых сетей Настройка ложной точки доступа Клиент подключается к произвольным сетям? Рис. 5.2. Процесс организации атак на клиентов беспроводной сети В ситуации, когда клиент использует для защиты соединений WEP, злоумышленник может пойти по накатанной дороге получения ключа шифрования путем анализа пакетов с различными векторами инициализации. Для этого может быть использовано пассивное прослушивание трафика (если клиент настроен на работу в режиме Ad-Hoc, он будет периодически рассылать зашифрованные широковещательные запросы NetBIOS) либо активные атаки, на- 181
Безопасность беспроводных сетей правленные на генерацию трафика, т.е. для взлома WEP необходимо спровоцировать подключившегося клиента на передачу достаточного количества пакетов с различными значениями векторов инициализации. Решить эту задачу можно путем передачи клиенту сообщений, требующих ответа (ARP, ICMP-Echo, IPv6 NDP). Но сделать это необходимо без знания ключа WEP. Существует достаточно много методов формирования пакетов WEP без знания ключа шифрования. Наиболее эффективным является использование фрагментации на канальном уровне 802.11 . Суть этого метода заключается в эксплуатации атаки с известным открытым текстом. Используя предсказуемый формат заголовков LLC, существует возможность восстановить 8 байт гаммы (выхода алгоритма PRGA в RC4, далее PRGA). Для этого первые восемь из зашифрованных байт складываются по модулю два с константой, содержащей стандартное значение заголовков LLC. В заголовке LLC два последних байта могут меняться. Их значения определяет тип используемого протокола вышестоящего уровня. Возможные значения данных полей описаны в документах IANA (http://www.iana.org/assignments/ethernet-numbers). В большинстве случаев беспроводные сети используются для передачи IP-трафика. Следовательно, поле Ether type может принимать одно из трех возможных значений: • 0x0800 - при передаче IP пакетов; • 0x0806 - для пакетов ARP; • 0x86DD - для пакетов IPv6. Пакеты ARP легко отличить от других по их фиксированному размеру (28 байт данных). Использование протокола IPv6 достаточно просто идентифицируется по наличию широковещательных пакетов на МАС-адреса 33:33:хх:хх:хх:хх, используемых протоколом IPv6 NDP. Полученные 8 байт гаммы могут быть использованы для передачи в сеть произвольных данных той же длины. Но с практической точки зрения это не представляет большого интереса, поскольку все «"байт в передаваемом пакете будет занимать заголовок LLC. Чтобы обойти это ограничение, может использоваться функция фрагментации на канальном уровне. Беспроводные сети реализуют механизм, позволяющий передать один пакет вышестоящего уровня в нескольких (до 16) фрагментах 802.11. После перехвата одного из пакетов клиента и восстановления PRGA отправляемый пакет разделяется на несколько фрагментов, содержащих по 4 байта данных. Каждый их них передается как отдельный фрейм с использованием функции фрагментации 802.11. Пакеты дополняются кон- 182
Глава 5. Безопасность клиентов трольной суммой (WEP ICV) и зашифровываются с использованием отрезка восстановленной гаммы. Таким образом, без знания ключа WEP в сеть можно передать пакеты длиной до 64 байт. На практике в сеть можно передать пакеты большего размера. Для этого используется IP-фрагментация, а также структура некоторых служебных пакетов. Например, при перехвате пакета ARP можно восстановить не 8, а 24 байта гаммы. Для этого используются предсказуемые значения заголовков LLC, ARP, а также МАС-адрес отправителя, указанный в заголовках 802.11 в открытом виде. При использовании в сети IPv6 можно восстановить и больший отрезок гаммы. Например, при перехвате пакетов IPv6 NDP Neighbor Solicitation или Router Solicitation можно восстановить до 50 байт гаммы (заголовки LLC + заголовки IP + 2 байта заголовков ICMP). Это связано с тем, что в заголовке IPv6 отсутствует поле контроля целостности. Кроме того, при использовании Local-Link адресации адрес IPv6 можно восстановить по МАС-адресу в заголовках 802.11 (см. http://www.securitylab.ru/contest/264659.php), если узлом не используются механизмы рандомизации адресов. Отличить разные типы сообщений IPv6 можно по МАС-адресам получателей и размеру. Например, пакет IPv6 Router Solicitation имеет длину 70 байт и передается на МАС-адрес 33:33:00:00:00:02. С использованием 50 байт PRGA в сеть можно передать пакеты размером до 736 байт ((50-4)16), что более, чем достаточно для практических целей. При использовании атаки с фрагментацией у злоумышленника, установившего ложную точку доступа, появляется возможность передать подключившейся станции зашифрованный пакет, который будет гарантированно обработан получателем. Таким образом, остается только сформировать пакет, на который клиент ответит. Примером подобного пакета является ARP-запрос. Дополнительным плюсом является тот факт, что ARP-пакеты не блокируются персональными межсетевыми экранами. Однако, для того, чтобы станция ответила на ARP-запрос, необходимо, чтобы поле Target IP содержало текущий IP-адрес интерфейса. Этой информацией злоумышленник не обладает, поскольку адрес передается в пакетах в зашифрованном виде. Чтобы получить IP-адрес станции, можно воспользоваться ARP- сканированием, т.е. отправкой ARP-запросов на различные адреса получателей, и ожиданием ответа на один из них. Если ответ был получен, значит, станция использует запрошенный IP-адрес. В качестве диапазонов для сканирования могут выбираться адреса из диапазона APIPA (169.254/32) или распространенные адре- 183
Безопасность беспроводных сетей са RFC 1918 (например, 192.168.0/24). После того, как IP-адрес станции был определен, используется повторная передача ARP- запроса с целью получения необходимого для KoreK-атак количества пакетов с различными векторами инициализации. Для того чтобы отличить ARP-запросы, отправленные на разные IP-адреса, могут использоваться различные МАС-адреса отправителя. В случае поддержки станцией IPv6 ситуация упрощается. Поскольку большинство реализаций стека IPv6 отвечает на широковещательные (например, направленные на адрес ff02::01) ICMPv6-echo запросы, то злоумышленнику достаточно отправить подобный пакет в сеть. Также в IPv6 может применяться пакет IPv6 Neighbor Solicitation (аналог ARP-Request в IPv4). В этом случае осуществлять подбор IP-адреса нет необходимости, поскольку Local-Link IP-адрес может быть определен по МАС-адресу стации. Для демонстрации практической возможности описанной атаки была разработана утилита wepOff (http://www.securitylab.ru/analytics/ 287596.рпр). После запуска, программа ожидает пакетов от соединившихся клиентов. Из полученного пакета извлекаются значение вектора инициализации и МАС-адреса станции, восстанавливается PRGA. Затем программа в течение полутора минут оправляет широковещательные ICMPv6-Echo запросы, после чего пытается провести ARP- сканирование сети для диапазона APIPA (169.254/32). Как показали эксперименты, сканирование всех адресов данного диапазона в режиме 802.11 g only занимает мене 2 мин. После этого используется любая программа сбора беспроводного трафика, например airodump-ng, для накопления необходимого количества пакетов с различными векторами инициализации. После чего используется KoreK-атаки для восстановления ключа WEP. 5.1.2. Атаки на 802.1 X Если в списке сетей, с которыми работает пользователь, присутствуют только сети, требующие аутентификации 802.1 X с использованием РЕАР или EAP-TTLS, злоумышленник может попытаться использовать одну из атак, изложенных в докладе Rogue Squadron (http://www.blackhat.com/presentations/bh-usa-05/bh-us-05- beetle-update.pdf) группы Shmoo. Эти атаки работают в случае, если при настройке клиента администратор не указал удостоверяющий центр, сертификаты которого могут быть использованы для аутентификации по протоколу 802.1 X, и имена корпоративных серверов Radius (см. рис. 5.3). 184
Глава 5. Безопасность клиентов Smart Card or other Certificate —When connecthg: Usemyanartcard Use a certificate on this conpiier 17 Use ОщАе cerfficate selection (Recommended) Г" Г" Conner^ 117 f I'tu?b:-d R jo1 O"iiit-i'.iinAuif.-c:ihe; П VeriSgn Trust Network □ VenSgn Tmst Network П VenSgn Tiust Network П VetiSgn Тшй Мй»тогк П VedSgn Тшй Network П VenSgn Tmst N^wotk □ VeriSgn Тшй Netwoik П XcertEZbyDST ±\ VJewCertfcate | Г" Usea^feientusernamefortheconnection OK Cancel Рис. 5.3. Ошибочная настройка аутентификации 802.1 X В такой ситуации злоумышленник может, используя сертификат для Web-сервера, полученный у удостоверяющего центра, которому по умолчанию доверяет ОС Windows (например, Thwate или VerySign), на произвольное имя развернуть ложную точку доступа с сервером RADIUS. Подключившийся клиент успешно аутентифици- рует сервер Radius и, соответственно, сеть атакующего (поскольку его сертификат выдан доверенным удостоверяющим центром), после чего начинает процесс аутентификации своей системы. Дальнейшие действия злоумышленника зависят от используемого клиентом механизма аутентификации. Если клиент использует EAP-TTLS-PAP, то никаких проблем не возникает, поскольку пароль передается по каналу TLS в открытом виде. При применении РЕАР- MS-CHAPv2 задача усложняется, но поскольку злоумышленник имеет возможность перехватить незашифрованные данные MS- CHAPv2, задача сводится к канонической - подбору пароля по перехваченной сессии аутентификации. Общая схема реализации подобных атак приведена на рис. 5.4. 185
Безопасность беспроводных сетей radius.domain.com Подписан ca.domain.com www.attacker.net Подписан Verisign <$Г Рис. 5.4. Атаки с ложным сервером Radius 1. Клиент устанавливает соединение с точкой доступа, что дает злоумышленнику информацию об используемых протоколах. 2. Злоумышленник разрывает соединение клиента и устанавливает более мощную точку доступа и сервер Radius с доверенным сертификатом. 3. Клиент подключается к точке доступа злоумышленника. 4. Злоумышленник, получивший пароль клиента, подключается к точке доступа. Использование описанного в публикации Rogue Squadron метода «обратного» подбора паролей MS-CHAPv2, когда ложный сервер RADIUS перебирает значения хэшей паролей пользователя, крайне малоэффективно, поскольку клиент Windows после трех неудачных попыток аутентификации заносит сеть в черный список, после чего прекращает попытки соединения с ней до инициализации интерфейса. 5.1.3. Неконтролируемое использование беспроводных сетей Возможность поддержки беспроводных соединений в стандартных сетевых устройствах создает неконтролируемый канал утечки информации, пробивая бреши в периметре корпоративной сети. Можно подключить к локальной сети беспроводную точку доступа или настроить на своем ноутбуке сетевой мост между беспроводным адаптером и локальной сетью. Можно забыть отключить беспроводной адаптер после работы с домашней сетью и т.д. Все это 186
Глава 5. Безопасность клиентов дает внешнему злоумышленнику возможность получения доступа к корпоративным данным. Однажды в ходе выездного обучения проводились практические работы по курсу «Безопасность беспроводных сетей», в ходе которых слушатели обнаружили «несанкционированную» точку доступа до того, как преподаватель подключил ее к сети. При анализе трафика было обнаружено, что эта точка доступа не только позволяет устанавливать подключения без аутентификации, но и выдает IP- адреса с корпоративного сервера DHCP. Оказалось, что один из сотрудников компании решил «поэкспериментировать» со своей домашней точкой доступа на работе и подключил ее к сети предприятия. В результате слушатели обнаружили не учебный, а вполне реальный инцидент. Авторам приходилось сталкиваться с ситуациями, когда ушлые пользователи, неудовлетворенные жесткой политикой фильтрации трафика на корпоративном межсетевом экране, находили доступные с рабочего места беспроводные сети и (не всегда легально) использовали их для подключения к Internet. Разве это не мечта любого злоумышленника: рабочая станция, одновременно подключенная к контролируемой им сети (а любая незащищенная беспроводная сеть потенциально контролируется злоумышленником) и к корпоративным ресурсам? 5.1.4. Уязвимости драйверов Программное обеспечение драйверов и «прошивки» (firmware) беспроводных сетевых адаптеров гораздо сложнее программы «Hello World», что повышает вероятность возникновения различных ошибок. Одной из уязвимостей является возможность установления соединения в «припаркованном» режиме. Как уже говорилось ранее, в этот режим адаптер устанавливается в случае, если не было обнаружено ни одной подходящей сети. В «припаркованном» режиме адаптеру присваивается случайное значение SSID, и по логике вещей он не должен соединяться ни с одной сетью. Поскольку SSID продолжает рассылаться в запросах Probe Request, злоумышленник может построить точку доступа, отвечающую на такие пакеты, и установить соединение со станцией. Некоторые адаптеры используют фиксированные значения идентификатора сети в режиме парковки, например Intel Pro Wireless 2200B/G «паркуется» с SSID «WXYZ». Как показывают исследования с использованием методики Gnivirdraw, для такой атаки уязвимы от четырех до десяти про- 187
Безопасность беспроводных сетей центов всех беспроводных адаптеров. Метод проверки наличия данной уязвимости описан в конце данной главы. Драйверы беспроводных устройств гораздо сложнее программы «Hello World» и в них вполне могут содержаться различного рода ошибки, в том числе и приводящие к проблемам с безопасностью. Некоторые драйверы уязвимы для атаки со снижением уровня защиты (WEP-Client-Communication-Dumbdown, http://www.security startshere.net/page-vulns-wccd.htm). Уязвимость заключается в том, что станция, настроенная на поддержку WEP, устанавливает соединение с точкой доступа, даже если та WEP не поддерживает и во всех ответах устанавливает значение бита WEP (Privacy Bit) поля Frame Control заголовка равным 0. Более того, клиент и сам отключает поддержку WEP и начинает работать с такой точкой доступа без шифрования. Сети, использующие WPA, для данной атаки не уязвимы. На конференции BlackHat USA 2006 прозвучал довольно интересный доклад Джонни Кэша (Johnny Cache) (http://www.blackhat. com/presentations/bh-usa-06/BH-US-06-Cache.pdf). В нем излагались методы использования традиционных уязвимостей, например переполнения буфера в драйверах беспроводных карточек. В частности, была продемонстрирована возможность выполнения произвольного кода в различных системах путем отправки специальным образом сформированных пакетов протокола 802.11. Уязвимость обнаружена в наиболее популярных адаптерах Intel. Для устранения этой уязвимости было выпущено обновление (http://www.security.nnov.ru/Gnews475.html). Пока не опубликована программа с большой красной кнопкой, позволяющая не вдаваясь в детали использовать произвольные уязвимости беспроводных адаптеров. В связи с этим для использования недостатков потенциальному злоумышленнику требуется знать, с какой системой он имеет дело в данный момент. Самый простой вариант определения производителя - анализ МАС-адреса по спискам OUI - не дает достаточной точности и легко обходится с помощью смены МАС-адреса. Существуют и более сложные методы, например анализ интервала передачи Probe Requested, обсуждаемый в статье «Passive Data Link Layer 802.11 Wireless Device Driver Fingerprinting» (http://www.sandia.gov/news/resources/releases/ 2006/images/wireless-fingerprinting.pdf). Другой метод, основанный на особенностях реализации драйверов различных производителей, позволяет с большой точностью идентифицировать даже конкретную версию того или иного драйвера. Этот метод обсуждается в уже упоминавшемся докладе Джонни Кэша и реализован в библиотеке lib802finger (http://www.802.11 mercenary.net/lib802finger/). 188
Глава 5. Безопасность клиентов В связи с этим рекомендуется отслеживать появление обновлений для беспроводных адаптеров, тестировать и своевременно их устанавливать. Для контроля актуальности настроек драйверов рекомендуется использовать специализированные сканеры, например XSpider (www.ptsecurity.ru). 5.2. Защита мобильных пользователей Рекомендации по защите от описанных атак довольно просты: • компьютеры беспроводных клиентов должны быть защищены с помощью персональных межсетевых экранов или систем предотвращения атак; • клиент не должен соединяться с произвольными сетями (Automatically Connect To Non-Preferred Networks); • профиль беспроводных сетей клиента не должен содержать незащищенных сетей; • при работе с сетями, контролируемыми третьими лицами, должна использоваться технология VPN; • пользователь, подключенный к корпоративной сети, не должен использовать беспроводной адаптер, настроенный на работу с другими сетями; • на клиентские компьютеры должны быть установлены последние обновления безопасности ОС и драйверов; • неконтролируемое подключение к корпоративной сети точек доступа и других беспроводных устройств должно быть запрещено. 5.2.1. Контроль беспроводных клиентов В простейшем случае, когда беспроводные сети в компании не используются, можно отключать беспроводные интерфейсы компьютеров при входе в сеть. Это достаточно просто реализуется с помощью механизмов групповой политики, а именно - сценариев загрузки (Startup Script). Поскольку сценарии этого типа выполняются с правами Local System, у них достаточно привилегий для управления компонентами ОС. Пример сценария, отключающего беспроводные интерфейсы, приведен на листинге 5.1. Листинг 5.1. Файл stopwifi.vbs 'Disable wireless network interfaces 1 (c)oded by Sergey V. Gordeychik 2005 1 offtopicOmail.ru strComputer = «.» Path=«\\infosec.ru\SYSVOL\infosec.ru\scripts\» Const HKEY_LOCAL_MACHINE = &H80000002 189
Безопасность беспроводных сетей Dim strComputer, strKey, strSubKey, strNicKey, strNicId, strTmp Dim objRegistry Dim arrSubKeys() strKey = «SYSTEM\CurrentControlSet\Control\Class\» & _ «(4D36E972-E32 5-11CE-BFC1-08002BE10318}» strNicKey = «SYSTEM\CurrentControlSet\Control\Network\» & _ «{4D3 6E972-E32 5-11CE-BFC1-08002BE10318}» Set WShell = Wscript.CreateObject(«Wscript.Shell») Set objRegistry = GetObject(«winmgmts:» & _ <<{impersonationLevel=Impersonate}!\\» & _ strComputer & «\root\default:StdRegProv») objRegistry.EnumKey HKEY_LOCAL_MACHINE, strKey, arrSubKeys For Each strSubKey In arrSubKeys objRegistry.GetStringValue HKEY_LOCAL_MACHINE, strKey & _ «\» & strSubKey, «NetCfglnstanceld», strNicId objRegistry.GetDwordValue HKEY_LOCAL_MACHINE, strNicKey & «\» & _ strNicId & «\» & «Connection» , «MediaSubType», strTmp If strTmp=«2» Then objRegistry.GetStringValue HKEY_LOCAL_MACHINE, strNicKey & _ «\» & strNicId & «\» & «Connection» , «Name», strTmp WScript.Echo «Disabling adapter «& strTmp objRegistry.GetStringValue HKEY_LOCAL_MACHINE, strNicKey & «\» & _ strNicId & «\» & «Connection» , «PnpInstancelD», strTmp wShell.Run Path&»devcon disable <<«@» & strTmp & «««« ,2,true End If Next Программа считывает все зарегистрированные сетевые интерфейсы из реестра и определяет их тип по значению параметра MediaSubType. Если обнаружен беспроводной адаптер, он отключается путем вызова утилиты devcon (http://support.microsoft. com/?kbid=311272). Эта программа не входит в стандартную поставку Windows, она публикуется на общем ресурсе (переменная Path). Использование для получения списка интерфейсов и типа подключения разных ключей реестра обусловлено некоторой труднообъяснимой особенностью поведения WMI, неверно перечисляющего подключи в ключе Control\Network\{4D36E972-E325-11СЕ- BFC1-08002BE10318}. В случае, если сценарий будет использоваться для периодической удаленной проверки компьютеров в сети, значение перемен- 190
Глава 5. Безопасность клиентов ной strComputer должно указывать имя или адрес контролируемой машины. Функции программы можно расширить путем добавления проверки на наличие нескольких беспроводных интерфейсов или активного подключения к локальной сети. Пример сценария, определяющего наличие проводного соединения, приведен в листинге 5.2. Листинг 5.2. Файл checklan.vbs 'Check for enabled wired network interfaces '(c)oded by Sergey V. Gordeychik 2005 'offtopic@mail.ru strComputer = «.» Path=«\\infosec.ru\SYSVOL\infosec.ru\scripts\» Const HKEY_LOCAL_MACHINE = &H80000002 Dim strComputer, strKey, strSubKey, strNicKey, strNicId, strTmp Dim objRegistry Dim arrSubKeys() strKey = «SYSTEM\CurrentControlSet\Control\Class\» & _ «{4D36E972-E325-11CE-BFC1-08002BE10318}» strNicKey = «SYSTEM\CurrentControlSet\Control\Network\» & _ «{4D36E972-E325-11CE-BFC1-08002BE10318}» Set WShell = Wscript.CreateObject(«Wscript.Shell») Set objRegistry = GetObject(«winmgmts:» & _ <<{impersonationLevel=Impersonate}!\\» & _ strComputer & «\root\default:StdRegProv») Set objWMIService = GetObject(«winmgmts:\\» & strComputer & «\» & _ strNameSpace) objRegistry.EnumKey HKEY_LOCAL_MACHINE, strKey, arrSubKeys For Each strSubKey In arrSubKeys objRegistry.GetStringValue HKEY_LOCAL_MACHINE, strKey & «\» & _ strSubKey, «NetCfglnstanceld», StrNicId objRegistry.GetDwordValue HKEY_LOCAL_MACHINE, StrNicKey & «\» & _ strNicId & «\» & «Connection» , «MediaSubType», strTmp If strTmp=«l» Then objRegistry.GetStringValue HKEY_LOCAL_MACHINE, strNicKey & «\» & _ strNicId & «\» & «Connection» , «Name», strTmp Set colNetAdapters = objWMIService.ExecQuery(_ «Select * from Win32_NetworkAdapter Where NetConnec- tionlD = '« & _ strTmp &»'«) 191
Безопасность беспроводных сетей For Each objNetAdapter in colNetAdapters If objNetAdapter.NetConnectionStatus = 2 Then Wscript.Echo «Wired interface « & _ objNetAdapter.NetConnectionID & « connected» End If Next End If Next He стоит забывать и об устройствах Bluetooth. Наличие ненастроенного (или настроенного злоумышленником) адаптера Bluetooh является прекрасным каналом утечки информации, правда, несколько ограниченным по пропускной способности и радиусу действия по сравнению с 802.11. Пример сценария, позволяющего локально или удаленно проверять компьютеры на наличие активного интерфейса Bluetooth (стек WIDCOMM), приведен в листинге 5.3. Листинг 5.3. Файл stopbt.vbs 'Disable Bluetooth adapters 1(c)oded by Sergey V. Gordeychik 2005 'offtopic@mail.ru strComputer = «.» Path=«\\infosec.ru\SYSVOL\infosec.ru\scripts\» Dim strComputer, strKey, strTmp Dim objRegistry Const HKEY_LOCAL_MACHINE = &H80000002 strKey = «SYSTEM\CurrentControlSet\Services\BTWUSB\Enum» Set WShell = Wscript.CreateObject(«Wscript.Shell») Set objRegistry = GetObject(«winmgmts:» & _ <<{impersonationLevel=Impersonate}!\\» & _ strComputer & «\root\default:StdRegProv») objRegistry.GetDwordValue HKEY_LOCAL_MACHINE, strKey, _ «Count» , Count For i=l to Count objRegistry.GetStringValue HKEY_LOCAL_MACHINE, strKey, i- 1, PNPid WScript.Echo «Disabling bluetooth adapter «& PNPid wShell.Run Path&»devcon disable ««@» & PNPid & «««« , 2,true Next В более сложной ситуации, когда возникает необходимость контроля текущих настроек беспроводных адаптеров, возможностей WMI уже не хватает. К сожалению, авторам не удалось обнаружить легитимных способов определения текущих настроек с помощью 192
Глава 5. Безопасность клиентов сценариев. Единственный более или менее подходящий способ- это анализ параметров Static* в ключе реестра SOFTWARE\Microsoft\WZCSVC\Parameters\lnterfaces, но, к сожалению, структура сохраняемого параметра не документирована, и, более того, меняется с выпуском обновлений. Поэтому максимум чего удалось добиться, это получения списка SSID без детальной информации (листинг 5.4). Листинг 5.4. Файл listssid.vbs 'List configured wireless networks '(c)oded by Sergey V. Gordeychik 2005 1 offtopicSmail.ru strComputer = «.» Path=«\\infosec.ru\SYSVOL\infosec.ru\scripts\» Dim strComputer, strKey, strSubKey, strNicKey, strNicId, strTmp Dim strWZKey, objRegistry Dim arrSubKeys(), arrSsid Const HKEY_LOCAL_MACHINE = &H80000002 strKey = «SYSTEM\CurrentControlSet\Control\Class\» & _ «{4D3 6E972-E325-11CE-BFC1-08002BE10318}» strNicKey = «SYSTEM\CurrentControlSet\Control\Network\»& _ «{4D36E972-E325-11CE-BFC1-08002BE10318}» StrWZKey = «SOFT- WARE\Microsoft\WZCSVC\Parameters\Interfaces» Set WShell = Wscript.CreateObject(«Wscript.Shell») Set objRegistry = GetObject(«winmgmts:» & _ <<{impersonationLevel=Impersonate}!\\» & _ strComputer & «\root\default:StdRegProv») objRegistry.EnumKey HKEY_LOCAL_MACHINE, strKey, arrSubKeys For Each strSubKey In arrSubKeys objRegistry.GetStringValue HKEY_LOCAL_MACHINE, strKey & «\» & _ strSubKey, «NetCfglnstanceld», strNicId objRegistry.GetDwordValue HKEY_LOCAL_MACHINE, strNicKey & «\» & _ strNicId & «\» & «Connection» , «MediaSubType», strTmp If strTmp=«2» Then objRegistry.GetStringValue HKEY_LOCAL_MACHINE, strNicKey & «\» & _ strNicId & «\» & «Connection» , «Name», strTmp WScript.Echo «Networks for adapter «& strTmp Wscript.Echo String(60,»=«) for i=0 to 9 objRegistry.GetBinaryValue HKEY_LOCAL_MACHINE, strWZKey & «\» & _ 193
Безопасность беспроводных сетей strNicId, «Static#OOO»&i, arrSsid If isNull(arrSsid)=0 Then strTmp = «« j = 20 While arrSsid(j)<>0 strTmp = strTmp + Chr(arrSsid(j)) 3 = 3+1 Wend WScript.Echo strTmp Else Exit For End If Next Wscript.Echo String(60,»=«) End If Next Приведенные сценарии можно использовать несколькими способами. Один из них, запуск в процессе загрузки компьютера, уже описан ранее. В этом случае сценарии можно использовать совместно с другими механизмами, например, с методами управления устройствами, изложенными в статье «От каждого по максимуму, каждому - по минимуму. Разграничение доступа к устройствам в Windows» (http://www.securitylab.ru/contest/212096.php). Другой способ заключается в периодическом сканировании устройств на соответствие политике безопасности. Приведенные сценарии подходят для удаленной работы и могут быть использованы при условии наличия административного доступа к службам WMI на удаленном компьютере. Таким образом, мы получаем некоторый сканер уязвимостей, контролирующий настройки беспроводных компонентов на компьютерах пользователей. Из коммерческих сканеров подобные проверки выполняет программа XSpider (http://www.xspider.ru). Еще один способ - использование подобных проверок при подключении пользователя через VPN с помощью механизма карантина. Если в сети используются клиенты, поддерживающие Network Access Control или Network Admission Control, проверки могут осуществляться и при подключении к локальной или беспроводной сети. Приведенные способы являются только одними из средств контроля беспроводных клиентов. Для эффективного решения этой задачи, описанные способы желательно комбинировать с корпоративными и персональными системами обнаружения беспроводных атак. 194
Глава 5. Безопасность клиентов 5.2.2. Централизованная настройка Wi-Fi Компьютеры под управлением Microsoft Windows XP имеют возможность централизованной настройки политики безопасности беспроводных соединений с помощью групповых политик. Настройки расположены в ветви объекта групповой политики Computer Configuration\Windows Settings\Security SettingsWVireless Network (IEEE 802.11) Policies и применяются к компьютеру при входе машины в домен. Настройки также могут периодически обновляться через заданный временной интервал. Механизм применения данной группы настроек ничем не отличается от стандартных правил работы групповых политик и таким же образом может быть применен к различным группам компьютеров на основе их членства в организационных подразделениях или группах безопасности. Параметры объекта групповой политики дублируют настройки Wireless Zero Configuration за исключением невозможности указания значения статического ключа в WPA-PSK или WEP. На закладке General (см. рис 5.5) доступны следующие параметры: • Name - название политики. • Check for policy changes every - интервал, который будет использоваться беспроводным клиентом для проверки изменения настроек. • Any available network (access point preferred) - разрешен доступ как к сетям с точкой доступа, так и к одноранговым сетям. • Access point (infrastructure) networks only - разрешен доступ только к сетям с точкой доступа. • Computer-to-computer (Ad-Hoc) networks only - разрешен доступ только к одноранговым сетям. . Use Windows to configure wireless network settings for clients - использовать для настройки клиентов службу Wireless Zero Configuration, а не утилиты производителя. • Automatically connect to non-preferred networks - автоматическое соединение с произвольными беспроводными сетями На закладке Preferred Networks указывается список сетей, к которым будет подключаться клиент. Для каждой из сетей можно настроить основные свойства (рис. 5.6) и параметры аутентификации 802.1Х(см. рис. 5.7). В свойствах сети указывается значение SSID, тип используемой аутентификации и механизм шифрования трафика. 195
Безопасность беспроводных сетей Йв&->4- / -2J*i Genaal j Preferred Networks | tjame: Desertion: Правша настройки Wi-Fi для всего предприятия. WPA-802.1X-PEAP-M S CHAPv2 Check loi policy jhanges every: d Networks to access; (Access point (infrastructure) networks only P Use Windows to configure wireless network sellings foi clients Г" Automaticailii connect to non-pieferred networks OK Cancel | Apply Рис. 5.5. Основные настройки беспроводной политин eferred Setting Properties Network Properties | |E£E 802.1x | Network name (SSIDJ: j corporate Descrption: Основная сеть компании d - Wireless netwoik key Network fiutheiTtfcatJon: [wpa £ata encryption: W Tfys к&ц в provided automatic^;,8 zl Г~ This is a £Orrputer-to-computer (ad hoc) network; wifeless access points ate not used OK Рис. 5.6. Свойства сети
Глава 5. Безопасность клиентов New Preferred Setting Properties Network Properties IEEE 802.1k | P Lrib'i.t neKvak acoe"s cor.':t usng IFEE vGiMx EAPOL-Start message: | Transmit Parameters (seconds) - Max start: [з~ Start period: [60 Authentication period: 130 EAP type: | Protected EAP (PEAP) Settings... г— Authenticate as guest when user or computer information is unavailable f? Authenticate as computer when c.omputei information is available Computer authentication: With user authentication With user re-authentication Computer only Cancel | Рис. 5.7. Настройки аутентификации 802.1 X Настройки IEEE 802.1 X включают следующие параметры: • EAPOL-Start message - указывает правила отправки сообщения EAPOL-Start. Доступны следующие опции: Do not transmit- не посылать сообщение; Transmit- посылать сообщение; Transmit per 802.1 Х- посылать сообщение при установлении сессии 802.1Х. • Max start - максимальное количество повторов сообщения EAPOL-Start. • Start - таймаут между запросами EAPOL-Start. • Held - таймаут при ошибке аутентификации. • Authentication period - таймаут повторной передачи пакетов 802.1 X при работе в аутентифицированном режиме. • EAP type - используемый тип ЕАР. • Authenticate as guest when user or computer information is unavailable - если данная опция включена, компьютер будет пытаться пройти аутентификацию с пустым именем пользователя и паролем. 197
Безопасность беспроводных сетей • Authenticate as computer when computer information is available - указывает на то, будет ли ОС пытаться подключится к сети до входа пользователя. • Computer authentication - указывает параметры аутентификации после интерактивного входа пользователя. Доступны следующие опции: With user authentication - ОС аутентифицируется от имени учетной записи компьютера. После входа пользователя соединение не разрывается. При переходе на другую точку доступа аутентификация происходит от имени пользователя. With user re-authentication - ОС аутентифицируется от имени учетной записи компьютера. После входа пользователя соединение разрывается и происходит аутентификация от имени пользователя. При выходе пользователя происходит аутентификация от имени компьютера. Рекомендованное значение. Computer only Authentication* - аутентификация только от имени компьютера. К сожалению, доступный в настоящее время механизм настройки беспроводных сетей через групповые политики не позволяет настраивать адаптеры для работы с 802.11L Поддерживаются только протоколы WEP и WPA. Возможность работы с 802.11 i предусмотрена в клиенте групповых политик Windows Vista. Однако авторы надеются, что в ближайшем будущем настройка 802.11 i будет доступна в клиенте групповых политик Windows XP и Windows Server 2003. Новое в Windows Vista Новая версия ОС Windows Vista содержит ряд изменений в настройке и механизмах работы клиента беспроводной сети. Можно выделить следующие ключевые отличия: • Единый интерфейс подключения к беспроводным, коммутируемым и виртуальным частным сетям. • Расширение возможностей настройки через групповые политики (поддержка 802.11 i). • Изменение механизма работы со «скрытыми» сетями и добавление списка запрещенных сетей. В случае если задействован гостевой вход (Authenticate as guest when user or computer information is unavailable) необходимо обязательно указывать имя сервера Radius и используемый сервер сертификатов. В противном случае вероятность успеха атак с ложным сервером Radius и произвольным доверенным сертификатом будет равна 1. 198
Глава 5. Безопасность клиентов • Поддержка настроек из командной строки с помощью команды netsh wlan. В свойствах беспроводной сети (см. рис. 5.8) кроме разрешения автоматического подключения появились еще две опции. Настройка Connect to more preferred network if available позволяет указать, что при наличии данной сети попытки соединения с другими настроенными сетями осуществляться не будут. Это хороший выбор при конфигурации основного корпоративного SSID. Опция Connect even if network is not broadcasted специально вынесена для настройки подключения к сетям, в которых широковещательная рассылка значения SSID запрещена. Использование этого параметра помогает предотвратить раскрытие списка сконфигурированных сетей, поскольку рассылка Probe Request с указанием идентификатора сети производится только для сетей, в настройках которых указан данный флаг. Как было показано ранее, Windows XP рассылает Probe Request для всех настроенных сетей. Таким образом, отключение широковещательной рассылки SSID в сетях, где используется Windows Vista, становится еще более спорным методом защиты. По сути, эта функция позволяет только -_н_- if Manually connect to a w;reless network Enter information for the wireless network you want to add Network name: homework Security type: I WPA-PersoiMl Encryption type: ТИР Security Key/Passphrase: ••••••••••••••••• fljgispjay characterss Ш Start thts connection automatically №} Connect even if the network is not broadcasting Warning: If you select this option, your computer's privacy might be at risk. Рис. 5.8. Окно настройки профиля сети в Windows Vista 199
Безопасность беспроводных сетей усложнить обнаружение сети для злоумышленника, не обладающего возможностью прослушивать эфир в режиме мониторинга. С другой стороны, клиент, находясь вне зоны действия сети, будет пытаться ее обнаружить, рассылая запросы на подключение. В случае, если рассылка SSID не отключена, злоумышленник сможет определить наличие сети в близи точки доступа (что он сможет сделать в любом случае), но клиент будет осуществлять попытки подключения только в случае наличия беспроводной сети. Поддержка утилитой netsh контекста wlan дает возможность отказать от копаний в реестре Windows и получать полный доступ к настройкам беспроводного клиента из сценариев. Утилита реализует следующие функции: • чтение и настройку значения SSID, типа аутентификации и шифрования, настроек протокола 802.1 X; • настройку списка разрешенных и запрещенных сетей; • изменение порядка подключения к сетям; • импорт и экспорт настроек в текстовый файл. Таким образом, администратор получает утилиту командной строки, поддерживающую полнофункциональную работу с настройками беспроводного клиента. Что не может не радовать. 5.2.3. Персональные межсетевые экраны Довольно часто мобильный пользователь остается без мощных корпоративных средств защиты, один на один с агрессивной средой Internet. В этой ситуации его компьютер сам должен выполнять функции фильтрации трафика, предотвращения атак, противодействия вредоносному программному обеспечению и контроля каналов утечки конфиденциальной информации. В настоящее время все эти функции пытаются совместить в одном программном продукте, называемом персональным межсетевым экраном (personal firewall), превращающем компьютер пользователя в цифровую крепость с возможностями, иногда не уступающими серьезным системам защиты уровня предприятия. Современный персональный межсетевой экран (ПМСЭ) ориентирован на выполнение следующих функций: • фильтрация сетевого трафика; • контроль действий приложений; • контроль целостности приложений; • контроль защищенности системы; • фильтрация трафика по содержимому; • противодействие атакам. 200
Глава 5. Безопасность клиентов Поскольку ПМСЭ работает «вблизи» контролируемого объекта, его функция фильтрации трафика расширяется за счет контроля прикладного процесса, взаимодействующего с сетью. Проще говоря, в правилах персонального МСЭ можно указывать не только номера портов отправителя и получателя, но также и исполняемый файл, инициирующий или принимающий соединение. Это позволяет реализовать функцию противодействия троянским программам и сетевым червям за счет ограничения приложений, имеющих возможность взаимодействия с сетью. Контроль целостности сетевых приложений позволяет снизить вероятность подмены процесса, которому разрешен доступ к сети троянской программой. Контроль действий приложений направлен на противодействие различным механизмам использования доверенного процесса для взаимодействия с сетью. Многие ПМСЭ контролируют небезопасные вызовы API, такие как WriteProcessMemory, CreateRemoteThread и т.д., позволяющие одному приложению работать с памятью другого. Также контролируются хорошо известные методы обхода защиты, такие как создание скрытого окна браузера. Некоторые из них осуществляют противодействие атакам типа Shatter*. Некоторые ПСМЭ (обычно это продукты, ориентированные на корпоративный рынок) содержат сканер уязвимостей, позволяющий администратору удаленно сканировать машины пользователей, не создавая дополнительного трафика в сети. Функции фильтрации содержимого прикладных протоколов позволяют блокировать потенциально небезопасное содержимое, такое как компоненты ActiveX или сценарии VBScript. Эти же функции могут использоваться для противодействия известным атакам Shatter - это общее название для класса атак, использующих систему сообщений Windows. Изначально это класс атак использовался для выполнения произвольного кода в контексте более привилегированного процесса. Например, если системная служба, запущенная с правами Local System, создает на рабочем столе пользователя окно (например, диалог сохранения конфигурации), другая программа может передать в строку с именем файла исполняемый код в виде ASCII-строки и передать на него управления, получив, таким образом, максимальные привилегии в системе. Используя сообщения Windows, троянская программа может запускать код в контексте доверенного процесса, либо управлять им, например, имитируя взаимодействие пользователя с браузером. Подробнее об этом классе атак можно узнать по адресу: http://www.security.nnov.ru/news2241.html 201
Безопасность беспроводных сетей на клиентские приложения, такие как браузер или программа работы с электронной почтой.* Во многие ПМСЭ встроены сигнатурные системы обнаружения атак, позволяющие блокировать известные атаки на серверные приложения компьютера. Персональные межсетевые экраны различных производителей реализуют различный набор функций, по-разному решают одни и те же задачи, что сказывается на эффективности защиты. В рамках данной книги авторам не хотелось бы останавливаться на достоинствах или недостатках тех или иных продуктов, в связи с чем мы приведем общие рекомендации. Прежде всего, необходимо определиться с требованиями к набору возможностей. Минимум их (разве что за исключением поиска уязвимостей) приведен ранее. Для корпоративного развертывания весьма полезной является функция централизованного управления и контроля протоколов работы. Затем необходимо решить, достаточно ли эффективно реализованы те или иные защитные механизмы. Задача эта непростая и требует довольно много времени. Зачастую публикуемые обзоры либо явно заказаны тем или иным производителем либо не содержат описания используемой при тестировании методики, что снижает доверие к результатам. Для оценки эффективности функции противодействия утечке конфиденциальной информации можно воспользоваться набором тестов, опубликованных на сайте «Firewall Leak Tester» (www.firewallleaktester.com). Сайт содержит утилиты, использующие распространенные методы обхода межсетевых экранов, и сводные результаты тестирования продуктов (см. рис. 5.9). Что касается функций фильтрации протоколов данных прикладных, межсетевой экран должен противостоять хотя бы широко известным методам обхода фильтров. Для начала можно воспользоваться тестами, приведенными в статье «Марш консерваторов». Одной из важных функций ПСМЭ является контроль целостности настроек, поскольку вредоносное программное обеспечение может с легкостью добавить себя в список разрешенных приложений. Обычно это реализуется либо с помощью использования пароля на изменение настроек, либо разрешением проведения этих операций только привилегированным пользователям. Функция фильтрации трафика, несомненно, является весьма полезной возможностью, но не стоит чрезмерно на нее уповать. Как сказано в статье «Марш консерваторов» (http://www.security.nnov.ru/advisories/bypassing.asp): «Аксиома: всегда можно найти еще один способ обхода фильтров содержимого». 202
Глава 5. Безопасность клиентов ......I. к ь № . .„?,.... El * с ч в ш о *• «,-1ЧИ •■"■"' <:..,! ••-•: к... ....... .... ■«» ...i.i ,..= ,„,„ .. .-•:?•"" у у У у У У У / У У у / у у у X У / X т У у у У X у у У у X у X / X у У у у У X У у у у у X У У У у У у у У у X у У X у у X у X у у у у X X X X X X X ...11- ,.»х ..,1 !■ и г У .= .У ,...х .1...У ,..х .... • .-.X ,,iX ,,.х ..... »■ :.,х X У X / X г X X X Г X X X !- X X у X X X X X X X X X X У X у X У X X X / X X X X X X X X X X у X X X X X X X X у X / X У у X X X X X X X у У X у У У у X X X у X X _ X X X X X X X у X X у X X X X X X у У X X У У у у X у X у X X + X X У X X X X X X X X X X X X X у X X X X X X X X X X X X X X ! i X X X X X X X X X X X X у / / X у у у У X у X у У у У X [■:.:'..:Л ■-■• \— ..„ .... .... .... .... .... .... .... .... .... .... .... .... .„. .... Рис. 5.9. Результаты тестирования утечки данных через ПМСЭ на сайте www.firewallleaktester.com В стандартные поставки Windows XP и Windows Server 2003 входит персональный межсетевой экран Windows Firewall (до Service Pack 2 называвшийся Internet Connection Firewall). К сожалению, список реализуемых этой программой функцией гораздо скромнее, чем мы привыкли ожидать от современного персонального межсетевого экрана. По сути, он ограничивается фильтрацией входящих соединений для приложений и противодействию распространенных атак сетевого уровня. Однако если бюджет предприятия на ближайшее время не предполагает развертывания персональных межсетевых экранов, можно воспользоваться встроенными возможностями ОС* Начиная с Service Pack 2 для Windows XP, настройки Windows Firewall могут распространяться через групповые политики (http://www.microsoft.comAechnet/prodtechnol/winxppro/maintain/mangxps p2/mngwfw.mspx). Настройки располагаются в разделе объекта политики Computer Configuration\Administrative Templates\Network\Network Connections\Windows Firewall. Стандартная настройка встроенного в ОС Windows Firewall разрешает соединения со службами NetBIOS и CIFS с компьютеров, адреса которых принадлежат локальному сегменту сети (см. рис. 5.10). Естественно в этот список попадают и все пользователи беспроводной сети, с которой соединяется пользователь. В связи с этим рекомендуется отключать в настройках Windows Firewall для беспроводного адаптера поддержку всех исключений (Don't allow exceptions) или исключений для службы File and print sharing. 203
Безопасность беспроводных сетей General Exceptions | Advanced | Windows firewall is turned off. Your computeris at risk of attacks and intrusions from outside sources such as the Internet. We recommend that you dtckthe General tab and select On. Programs and Services: Name_ ПИ *ctiveSync Connection Manager 0 file and archive manager 0 File and Printer Sharing Edit a Service xj [ You can individualV configure the port(s)that are associated with this ,- sen/ice. To open a port, select the check box next to it. E Naroe 0 TCP 445 0UDP 137 0UDP 13S Change scope... Subnet Subnet Subnet OK Cancel J icel Рис. 5.10. Стандартные разрешения Windows Firewall Можно настраивать два профиля защиты: • Доменный (Domain Profile), используется при соединении с корпоративной сетью. • Стандартный (Standard Profile), используется при соединении со всеми остальными сетями. Обычно стандартный профиль содержит гораздо более жесткие настройки, чем доменный, например, запрещает все входящие соединения без исключения. К сожалению, механизм определения текущей сети не очень надежен. В работе этого механизма используется значение текущего домена DNS (параметр 15 DHCP, DNS Domain Name), которое сравнивается с именем домена, последний раз использованным для обновления групповой политики (HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion \Group Policy\History\NetworkName). Таким образом, злоумышлен- 204
Глава 5. Безопасность клиентов ник, обладающий знанием имени атакуемого домена, может переключить межсетевой экран в более мягкий режим, соответствующий доменному профилю. Зачастую серверные службы на рабочих станциях не отключаются и не блокируются с помощью межсетевого экрана, поскольку они необходимы для выполнения различных задач удаленного управления, например получения списка установленных обновлений с помощью Microsoft Baseline Security Analyzer. В этом случае в правилах межсетевого экранирования можно указать список IP- адресов рабочих станций и серверов, которые должны иметь возможность соединения с машиной по протоколау RPC или CIFS/SMB. Это позволит ограничить список лиц, имеющих доступ к серверным службам компьютера. Другой, более надежный, но сложный в настройке метод заключается в использовании для доступа к службам IPSec с аутентификацией на основе протокола Кег- beros или цифровых сертификатов. В этом случае появляется возможность задействовать опцию Allow authenticated IPSec bypass, в которой указывается список контроля доступа, содержащий учетные записи компьютеров (или групп компьютеров), на которые правила межсетевого экранирования не распространяются. Список контроля доступа указывается с использованием языка SDDL, описание применения которого для данной задачи можно найти в статье «Configuring IPsec Settings», доступной по следующему адресу http://technet2.microsoft.com/WindowsServer/en/Library/8dd628fe- С346-41 fc-8902-e32430ff49261033.mspx. Межсетевой экран может вести журналы установленных соединений и отброшенных пакетов (текстовый файл). Кроме того, в системном журнале Security сохраняются события с идентификаторами с 848 до 861, содержащие информацию о настройках экрана или нарушениях политики доступа приложений к сети (см. рис. 5.11). Для работы этой функции должны быть активизированы категории аудита Audit policy change и аудита Audit process tracking. События 848-850 содержат информацию о текущих настройках программы. Описание других событий приведено в табл. 5.1. Таблица 5.1 События, генерируемые Windows Firewall Идентификатор события 851 852 Описание Изменения в списке разрешенных приложений Изменения в списке разрешенных портов 205
Безопасность беспроводных сетей Продолжение табл. 5.1 Идентификатор события 853 854 855 856 857 860 861 Описание Изменения в глобальных настройках МСЭ Изменения в настройках протоколирования Изменения в настройках фильтров ICMP Изменения в настройках многоадресных рассылок Изменения в настройках удаленного управления Изменения в неактивном профиле Запрещенное приложение ожидает соединения Event Properties Event Date: 08.05.2Ш5 Source: Security Time: 21:09:30 Category: Detailed Tracking Type: Failure Audi Event ID: 861 JJser WORKwffiopic Computer: WORK Description: The Windows firewal has detected an application listening for incoming traffic. Name: iCQUte Path: C:\Program Files\lCQLite\ICQUe.exe Process identifier 3504 User account: offtopic User domain: WORK Service: No RPC server: No * f» В;д&:.. Г 'чк.si's zl okJ ■i:'?'y Рис. 5.11. Событие Windows Firewall 206
Глава 5. Безопасность клиентов 5.2.4. Персональные системы обнаружения атак Как было показано ранее, одной из наиболее распространенных атак на клиентов беспроводной сети является установка ложной точки доступа, а наиболее надежный способ защиты от таких атак- правильное использование аутентификации на основе 802.1 X. Однако если пользователь подключается к сети Internet через общедоступную сеть в аэропорту или через беспроводную сеть провайдера, как правило, ни о какой стойкой аутентификации не может быть речи. Для контроля текущего состояния беспроводного адаптера можно воспользоваться персональными системами обнаружения беспроводных атак. Как и персональная IDS или персональный межсетевой экран подобное программное обеспечение устанавливается на каждый компьютер пользователя и может контролировать его безопасность даже в случае работы вне офиса. Теоретически персональная беспроводная система IDS может выполнять следующие функции: • контролировать SSID сетей, с которыми работает пользователь; • определять тип точки доступа, с которой установлено соединение; • извещать пользователя и блокировать использование опасных настроек; • извещать пользователя и блокировать атаки на канальном уровне; • вести журналы работы пользователя с беспроводными сетями; • работать с системой централизованного управления основной беспроводной IDS. Однако особенность реализации стека беспроводных сетей в ОС Windows не позволяет реализовать функции обнаружения атак в полной мере, поскольку без создания собственного драйвера практически невозможно получить доступ к содержимому управляющих фреймов 802.11. Это накладывает ограничения на возможности подобных систем. К сожалению, пока авторам известно только о двух программах, в той или иной степени реализующих функции персональных беспроводных систем обнаружения атак: Shmoo Group HostSpotDefen- seKit и Airdefense Personal.* Клиент беспроводных сетей, входящий в состав ОС Windows Vista, содержит ряд функций, выполняемых персональными беспроводными системами обнаружения атак. При соединении с точками доступа, не использующими шифрование, ОС выводит предупреждение, поддерживается возможность задания черного списка запрещенных сетей. 207
Безопасность беспроводных сетей Программа HostSpotDefenseKit разработана группой Shmoo Group, распространяется в исходных кодах и доступна для загрузки по следующему адресу: http://airsnarf.shmoo.com/. Эта программа позволяет задавать «белый список» МАС-адресов точек доступа (см. рис. 5.12) и контролирует текущее состояние беспроводного адаптера на предмет соединения с точкой доступа, отсутствующей в списке. В случае установления ассоциации с «чужой» точкой доступа программа выводит предупреждение и изменяет цвет иконки в системной панели. К сожалению, на этом функции HostSpotDefenseKit заканчиваются. Последняя доступная версия программы имеет номер 0.2 и датирована августом 2004 г. Контроль точки доступа по МАС-адресу - не очень эффективный механизм, поскольку при реализации атаки «человек посередине» на физическом уровне зло- pV' Trosted ■ — ! SSID: Ьотетхк ! АР MAC: OftOF 2 В:ЗД:4В:"5 6WMAC: i link Quality: My IP: 192168.0.158 WEP: OFF Default Gateway: 192.168.0.1 Wireless Inteffec*: 1 ] I | J lag fWerences | Settings j —Shew Log Wndow. ] On Startup S, For Warnings О Fc* Critical Erents -ТпвЫ Access Риг* MAC list Add Remove Hi* Reset State State. NORMAL Рис. 5.12. Настройки HostSpotDefenseKit 208
Глава 5. Безопасность клиентов AirDefense By Severity: jALL Alert History Last Run ■ 23:44 C2 05.2006 —i Scan Frequency: 3 minutes шят 9 Date 02 05 X C20520 C2 CS 2C C2CE20 02C5 2C Э2С5 25 02C52G 12 0520 320520 C2t520 02C520 02C52C 02C520 320520 Time 2151 2151 21 У 215" 215" 22K 22 00 2223 22 23 22 53 22 58 23 01 23 01 23^1 I Seventy Ignore Critical Ignore ignore Major ignore Major ignore Major Ignore ignore Ignore Major Ignore 1 Name Wireless Connection is formed Connected tc non-preferred SSiD Wireless Connection is formed Wireless Connection is formed Blue Tooth adapter detected Wireless Connection is formed BlueTooth adapter detected Wireless Connection is formed Blue Tooth adapter detected Wireless Connection is formed Wireiess Connection is formed Wireless Connection is formed BiueTooth adapter detected '.Vireiess Connection is formed 1 jCategc-. Risky С Risky1. Risky С Risky i Risky С Risky С Risky С Risky С Risky С Risky С Risky t Risk/С Risk)' С Risky Ci PERSONAL Рис. 5.13. Окно событий Airdefense Personal умышленник может установить ложную точку доступа с таким же адресом, что и корпоративная точка доступа, но на другом канале. Программа Airdefense Personal является разработкой компании Airdefense (http://www.airdefense.net/products/adpersonal/index.php) и поставляется как в коммерческом, так и в бесплатном варианте. Бесплатная версия программы не поддерживает функции удаленной настройки и сбора журналов. Так же как и HostSpotDefenseKit, программа периодически проверяет состояние беспроводного интерфейса и в случае, если его конфигурация не соответствует политике безопасности, выдает предупреждение пользователю и заносит информацию о событии в журнал (см. рис. 5.13). Программа поддерживает три группы идентификаторов беспроводных сетей: белый список, черный список и список идентификаторов общедоступных беспроводных сетей. Для каждой из групп можно настроить свою политику безопасности, определяющую уровень риска, соответствующего одному из четырнадцати событий (см. рис 5.14). Как видно из рисунка, программа определяет небезопасные настройки ОС, такие как возможность соединения с любыми сетями, одновременное использование проводного и беспроводного адаптеров, работа без шифрования или в режиме Ad-Hoc. Кроме того, программа напоминает пользователю о бдительности при подклю- 209
Безопасность беспроводных сетей AirDefense" Preferences Home Pcfcies (configuration) (Weired SSlDs | HotSpotsj Back US н* Curreni Severity Minor Ortica! Major Minor Minor Critical Crfficat Major Major Critical Minor Major p. Security Level Preferred SSID J Descrigfrort • BtueTooth adapter detected Wireless LAN sd hoc network enabled Wireless LAN ad hoc mode enabled Redirected to another AP Connected !o non-preferred SSID Simuttaneous connection to wired and wireless LAN Network Bridging is enabled Connection to Unsecured Access Font No Encryption found Access Pont Phishing More than one WIAN card present in the system Connected to a Hot Spot Connected lo Blacklisted SSID ef SSID 1 Category \ R sky Configuration Rjsky Configura^on Я sky Cornguratran R:sky WUN connectivrty Risky WLAN cc-nnectiv% Ft&ct WLAN connectivity Risk>' WLAN connectivit>' Rek/WLAN'connectivily insecure communication insecure communicat'on Su^jicious WLAN settings Insecure communication insecure communication -I I PERSONAL Рис. 5.14. Настройка политик Airdefense Personal чении к небезопасным сетям, например общедоступным узлам доступа. Журналы системы сохраняются либо в конфигурационном профиле текущего пользователя, либо в профиле всех пользователей (в зависимости от опций установки) в формате XML (см. рис. 5.15), так что реализовать централизованную систему сбора журналов с беспроводных клиентов не представляет особого труда. 5.3. Безопасность для самых маленьких В последний год рынок мобильных устройств переживает настоящий бум. Стремительно совершенствуясь, мобильные телефоны по уровню «интеллектуальной» начинки догоняют карманные компьютеры (КПК), а те, в свою очередь, развивают свои коммуникационные возможности. Порой уже трудно понять, чем является то или иное устройство - смартфоном (т.е. интеллектуальным сотовым телефоном) или коммуникатором (КПК с расширенными сетевыми возможностями и сенсорным дисплеем). Большинство современных КПК оснащено модулями беспроводной связи 802.11, и имеют возможность использовать функции GPRS сотового телефона для подключения к Internet (причем делают это тоже «по воздуху», через инфракрасный порт или Bluetooth). 210
Глава 5. Безопасность клиентов пД - 9 j Address fj^C:Cocuments3ndSenmcs^ltuseft^pp*«atonDaaiAirDefense'PersonaiAgenW 10 lOWerwutc* (gj To heto protect your seaHty, internet Explorer has restricted Ws fle from showing active content that could acce» your computef. Cfck here for opcons. <?xm! verston='1.0" encoding="utf-8" standalone="no" ? - <SENTINELALEP.THISTORY> - <ERRORDATA 0ate="02.05.2O06' Time="21:51:14" RunSeverity='101- Statu5=TlotSent"> - <EFIROR1TEM> <ITEMKEY>AirDefenselO02 </ITEMK£Y> <ITEMKEY>AirDcfenselO08</ITEMKEY> <IGNORE>1</IGNORE> <MA3OR30</MAJOR> <CRmCAL>l<,'CRTriCAL> <DATE>20O6 05 02 21:51:14 +04:00</DATE> <TIMEa21:51:14<;.'TIME> <5CANNUM6ER>K/SCANNUMBER> <AGE^П•ID/> <COMPNAME>HOMEWORK<('C0MPNAME> <OPERATINGMODE >HIGH </OPERATINGMODE > <RUNSEVERlTY>101<,'RUNSEVERITy> <THREATLEVEL>2<TrHREATi-EVEL> <USERHAME>offtopiCC-U5ERNAME> <ADAPTERNAME>Intel(R) PRO/Wireless 220OBG Network Connection</ADAPTERNAME> <ADHOCSTATUS>O<,'A0HOCSTATUS> <BR]DGESTATUS>O<,'BRIDGESTATUS> <8TSTATUS>O</8TSTATUS> <GATEWAY>192.168.0.1</GATEWAY> <DHCP5ERVER>192.168.0.1 <yDHCPSERVER> <DNSSERVER /> <IPAODRESS /> <MACADDRESS>O0-13-CE-9F-34-90</MACADDRESS> cSUBNETMASK /> cSSID>homework</SSID> <LEASEEXPIRED>1147196907</L£ASEEXPIRED> <LEASE03TAINED>1146592107</LEASEOBTAINED> «STATUS >0</STATUS> <WEP >Present <^WEP> OVLANRADIO >1 ^WLANRADIO :■ </ERRORITEM> </ERRORDATA> Рис. 5.15. Файл событий Airdefense Personal Эти возможности поначалу поражают, но быстро становятся привычными, и через некоторое время отсутствие возможности синхронизировать свой КПК с корпоративным сервером Exchange воспринимается как нечто совершенно «дикое». Однако, как обычно бывает в жизни, удобства в одной области приносят проблемы в других сферах. С точки зрения специалиста в области безопасности смартфон или КПК представляет собой рабочую станцию пользователя, содержащую конфиденциальную информацию и зачастую подключенную к глобальной сети без использования средств защиты, определенных политикой безопасности. Некоторые компании пытаются применять административные меры защиты и запрещают использовать мобильные устройства на своей территории или подключаться с их помощью к корпоратив- 211
Безопасность беспроводных сетей ным ресурсам. Однако, как и любой другой нормативный механизм защиты, он должен быть подтвержден функцией контроля исполнения, иначе его эффективность будет стремиться к нулю. Например, запрет использования КПК на территории желательно подкреплять досмотром лиц, проходящих на предприятие. Но и это не является панацеей, поскольку охрана часто не поспевает за развитием информационной технологии. Так, во время проведения тестирования на проникновение авторы сумели пронести на тщательно охраняемую территорию КПК не смотря на запрет использования подобных устройств. Просто на вопрос лица, проводящего досмотр, о том, что это такое в сумке, было честно сказано, что в сумке находится смартфон. Поскольку в списке запрещенных устройств такой зверь указан не был (хотя пронос мобильных компьютеров и ноутбуков не был разрешен), больше никаких вопросов не возникало. Несмотря на все запреты мобильные устройства все шире и шире будут использоваться в корпоративных сетях, и специалисты в области безопасности должны быть готовы к этому. 5.3.1. Модель безопасности ОС Windows Mobile В настоящее время на рынке присутствуют три версии ОС Windows для мобильных устройств: Windows Mobile 2003 (WM2003), Windows Mobile 2003 Second Edition (WM2003SE) и Windows Mobile 5 (WM5). Если WM2003 и WM2003SE мало чем отличаются друг от друга, последняя версия ОС имеет ряд существенных отличий, в том числе и в области безопасности. Кроме того, существует редакция для мобильных телефонов (Windows Mobile powered Smart- phone), отличающаяся меньшим набором программного обеспечения, входящего в стандартную поставку, и расширенными коммуникационными возможностями. В WM реализованы две модели архитектуры безопасности: одноуровневая и двухуровневая. В зависимости от версии ОС могут быть задействованы либо обе, либо одна из них (см. табл. 5.2). Таблица 5.2 Поддерживаемые модели безопасности Платформа Смартфон Windows Mobile 2003 Смартфон Windows Mobile 5.0 КПК Windows Mobile 2003 КПК Windows Mobile 5.0 Модели архитектуры безопасности Одноуровневая Тоже - Одноуровневая Двухуровневая Тоже - - 212
Глава 5. Безопасность клиентов Модель безопасности используется для контроля следующих функций: • запуск приложений; • доступ приложения к API, реестру, файловой системе; • доступ к функциям управления и изменения политики безопасности; • возможности RemoteAPI (ActiveSync) по управлению устройством. Одноуровневая архитектура Одноуровневая архитектура предполагает, что устройство различает подписанные и неподписанные приложения. В зависимости от наличия и корректности ЭЦП процессу либо дистрибутиву присваивается флаг «Доверенный» или «Не доверенный». Доверенные приложения запускаются на Windows Mobile без ограничений и имеют полный доступ к API операционной системы. Если приложение не подписано, проверяется значение UNSIGNEDAPPS политики безопасности (см. далее). Если значение этого параметра равно единице, то проверяется значение параметра UNSIGNEDPROMPT, в противном случае запуск приложения не разрешается. В случае если значение UNSIGNEDPROMPT равно нулю, пользователю выдается предупреждение с запросом на запуск приложения. При других значениях данного параметра приложение запускается как доверенное. Двухуровневая архитектура При использовании двухуровневой архитектуры (PRIVELEGEDAPPS) ОС дополнительно ограничивает уровень привилегий запускаемого программного обеспечения. В зависимости от типа использованного при подписи приложения сертификата и политики безопасности приложение запускается как доверенное (Trusted) либо как нормальное (Normal). Приложение, запущенное как «доверенное», имеет полный доступ к системным ресурсам. Приложение, запущенное как «нормальное», имеет следующие ограничения: • запрет на вызов ряда функций API; • запрет на операции с файлами, имеющими атрибут SYSTEM; • запрет на отладку программ (запуск процесса с параметрами DEBUG_ONLY_THIS_PROCESS и DEBUG_PROCESS); • запрет на модификацию ряда ключей реестра (см. ниже). 213
Безопасность беспроводных сетей Защищаемые ключи реестра 1. HKEY_LOCAL_MACHINE\Comm 2. HKEY_LOCAL_MACHINE\Drivers 3. HKEY_LOCAL_MACHINE\HARDWARE 4. HKEY_LOCAL_MACHINE\lnit 5. HKEYJ_OCAL_MACHINE\Services 6. HKEY_LOCAL_MACHINE\SYSTEM 7. HKEY_LOCAL_MACHINE\WDMDrivers 8. HKEYJ_OCAL_MACHINE\Security (WM5) 9. HKEY_CURRENT_USER\Security (WM5) 10 HKEY_LOCAL_MACHINE\Loader (WM5) Полный список блокируемых вызовов API доступен на сайте Microsoft по адресу: http://msdn.rnicrosoft.com/library/default.asp7urlWlibrary/en-us/ wceosdev5/html/wce50conTrustedAPIs.asp. Использование двухуровневой архитектуры безопасности позволяет превратить КПК на основе Windows Mobile 5 в систему с так называемой «замкнутой программной средой». При правильной настройке установка или запуск программ жестко контролируется на основе электронной цифровой подписи. Однако эти же функции могут серьезно усложнить работу пользователя или администратора, с чем пришлось столкнуться многим владельцам сматрфонов и коммуникаторов на основе Windows Mobile 5. Политика безопасности Работа описанных выше механизмов защиты определяется политикой безопасности (Security Policy). Кроме обработки подписанных приложений и используемой архитектуры безопасности политика позволяет задавать уровень привилегий ActiveSync, настраивать функции автозагрузки с карт расширения, менять правила безопасности при обработке управляющих сообщений SMS. Возможные параметры политики безопасности приведены в табл. 5.3. Таблица 5.3 Параметры политики безопасности Политика Auto Run Policy DRM Security Policy Идентификатор 2 4129 Описание Автозагрузка с карт расширения 0 - разрешено Поддержка DRM 214
Глава 5. Безопасность клиентов Политика Message Authentication Retry Number Policy OTA Provisioning Policy Privileged Applications Policy RAPI Policy Service Loading (SL) Message Policy SL Security Policy Trusted Provisioning Server (TPS) Policy Unauthenticated Message Policy Unsigned Applications Policy Unsigned CABS Policy Unsigned Prompt Policy Unsigned Themes Policy Идентификатор 4105 4111 4123 4097 4108 4124 4104 4110 4102 4101 4122 4103 Описание Максимальное количество ошибок аутентификации WAP- сообщения (1-256) Ограничение на принимаемые и обрабатываемые Push- сообщения 0 - одноуровневая архитектура безопасности, 1 - двухуровневая архитектура Ограничения для ActiveSync: 0 - RAPI отключен, 1 - неограниченный доступ по RAPI, 2 -доступ по RAPI в рамках пользователя Обработка SL сообщений SMS Требование к использованию защиты при обработке SL (0 - обязательное использованием https или wsps) Определяет, может ли мобильный оператор менять политику безопасности (по умолчанию разрешено) Определяет возможность обработки PUSH-сообщений без аутентификации Запуск приложений без подписи: 0 - запрещено 1 - разрешено Обработка CAB файлов без ЭЦП Уведомление о запуске неподписанных приложений: 0 - уведомлять 1 - не уведомлять Роли, которым разрешена установка неподписанных модификаций оболочки 215
Безопасность беспроводных сетей Политика WAP Signed Message Policy WSP Push Policy Grant Manager Идентификатор 4107 4113 4119 Описание Устанавливает порядок обработки подписанных WAP сообщений Разрешает маршрутизацию сообщений WSP (Wireless Session Protocol) Определяет роль, имеющую административный доступ к устройству Значения политики безопасности, связанные с настройкой привилегий, представляют собой двоичную маску, содержащую идентификаторы типов пользователей, имеющих право на выполнение той или иной операции. Идентификаторы ролей пользователей описаны в базе знаний Microsoft и доступны по следующему адресу: http://msdn.microsoft.com/library/default.asp7urh/library/en- us/mobilesdk5/html/wce51conSecurityRoles.asp. Текущая политика безопасности сохраняется в реестре, в ключе HKEY_LOCAL_MACHINE\Security\Policies\Policies. Параметры имеют тип REG_DWORD. Название параметра совпадает с соответствующим номером параметра политики в шестнадцатеричном виде 4101=00001005, 4102=00001006, 4119=00001017 и т.д. Например, для отключения функции автозагрузки файлов с карт расширения нужно присвоить значение, отличное от нуля, параметру реестра HKEY_LOCAL_MACHINE\Security\Policies\Policies\00000002. Однако это работает далеко не всегда и не на всех устройствах. Дело в том, что, например стандартная политика безопасности для смартфонов на основе Window Mobile 5 основана на двухуровневой архитектуре и запрещает запуск и установку неподписанных приложений. Кроме того, эта политика ограничивает функции ActiveSync привилегиями нормального пользователя. Пользователь не только не может установить на свое устройство неподписанные программы, он не может воспользоваться редактором реестра для того, чтобы изменить мешающие ему параметры. Эта же проблема ждет и администраторов, пытающихся настроить доверие к корпоративному удостоверяющему центру при конфигурировании аутентификации 802.1 X или VPN на основе L2TP-IPSec. У них просто не будет прав на установку сертификата корневого удостоверяющего центра. 216
Глава 5. Безопасность клиентов Изменение политики безопасности Единого рецепта в этой нелегкой задаче нет. В этом разделе авторы попытаются изложить наиболее проверенные варианты изменения политик, которые могут быть использованы пользователями и администраторами на своих устройствах. Самый простой способ - изменить параметры реестра, отвечающие за политику безопасности через ActiveSync, с помощью одного из редакторов реестра для Windows Mobile (например, Mobile Registry Editor доступней для загрузки по адресу http://www.breaksoft.eom/Blog/Utilities/2005/1/Mobile_Registry_Editor.a spx) и перезагрузить устройство. Но этот способ будет работать только в том случае, если политика безопасности не запрещает административный доступ через RAPI. Как правило, смартфоны содержат в списке доверенных корневых сертификатов сертификат удостоверяющего центра сотового оператора или производителя мобильных устройств. Если производитель вашего устройства опубликовал на своем сайте утилиту, подписанную ЭЦП своего удостоверяющего центра, которая либо снимает блокировку, либо позволяет пользователю редактировать реестр, то вам крупно повезло - задача решена. Просто загружаем утилиту с сайта производителя, запускаем ее и меняем необходимые нам ключи реестра. Например, для сматр- фонов НТС доступна утилита regeditSTG, подписанная удостоверяющим центром НТС (см. рис. 5.16). То, что сертификат, использованный при подписи, не доверен на настольном компьютере, ничего не значит. Главное, чтобы ему доверял смартфон. Если вы стали обладателем «заблокированного», т.е. привязанного к определенному сотовому оператору смартфона, то можно использовать механизмы разблокировки, предоставляемые этим оператором. Хотя в России эта ситуация (как приобретение «заблокированного» сматрфона, так и предоставление сотовым оператором сервиса по его настройке) маловероятна, возможно, положение изменится в будущем. Зачастую «заблокированные» устройства настроены на поддержку управляющих сообщений WAP-Push, что позволяет воспользоваться сервисом ОМА-OTA для изменения настроек. По запросу оператор отправляет SMS сообщение, содержащее ссылку на файл, подписанный с помощью идентификатора сети и IMSI SIM-карты, и включающее необходимые изменения политики. Устройство проверяет корректность подписи и применяет содержащиеся в сообщении модификации. Например, для ряда моделей производителя Orange доступна функция отключения проверки подписи приложений через Internet (см. рис. 5.17). 217
Безопасность беспроводных сетей General | CompatiMty Digftal Signatures Г Signature list Name of signer _ j E-ma|addnessj (Tunes HTCCertificates signing authority Not available Not a> Digital Signature Details General | Advanced | ==V 0*9rtal Signature Information :'^w J"6 certificate in Йте signature carnotbe verified. ! Sgner hforroaSon — ! Name; jHTCCerhficates signing authonty j E-mal; pot available Signing «me: |Not available WewCerSfcaie "Counteragnatures - (teraeqfagner: I E-mail address: OK Рис. 5.16. Редактор реестра для Windows Mobile с ЭЦП Пользователь, зайдя на страницу http://developer.orangews.com/ orgspv/comdefq.aspx, указывает номер телефона, свой IMSI и получает XML файл с настройками политики безопасности, которые применяются к системе. Другой способ разблокировки подходит для устройств, сохраняющих файлы на флэш-карте, а не в ОЗУ, поскольку требует перезагрузки. Для этого с помощью ActiveSync в папку Windows копируется файл с расширением provxml, представляющий собой XML документ определенного формата. При перезагрузке этот файл импортируется в политику безопасности. Пример подобного файла приведен на листинге 5.5. 218
Глава 5. Безопасность клиентов Ne £dit We» Ffivonbw loots ^j bttp ('developer weiflews ccm,orgspv/5P. a Update Handset SPV / SPV E10O / SPV E200 i MPx200 Enter your detstls in the fields below and click the OK button to update your handset Name |~" Email Address j ~ Mobile phone number |* [Example +4478881235S7] 1MB number | To obtain the IMEI number type "#06# on the SPV Heypad and note the displayed number I would like to receive further information and updates from Orange W Disable Certificate Security on my handset <? Рис. 5.17. Настройка безопасности сматрфона через Web Листинг 5.5. Файл unlock.provxml characteristic type=«SecurityPolicy»> <parm name=«4101» value=«64»/> <parm name=«4102» value=«l»/> <parm name=«4119» value=«114»/> </character is tio Данные настройки отключают проверку ЭЦП для исполняемых приложений и файлов CAB. Кроме того, изменение параметра 4119 дает административный доступ аутентифицированному пользователю, т.е. доступ через RAPI будет осуществляться в привилегированном режиме. Еще один способ - более радикальный и подходящий, пожалуй, для продвинутых пользователей или масштабных внедрений однотипных устройств, заключается, в модификации файла дистрибутива операционной системы (так называемой «прошивки»), путем добавления в него файлов provxml, изменяющих политику безопасности. Этот же способ можно применять для модификации ключей реестра в файле прошивки. Для редактирования файла прошивки можно использовать утилиты imgfs и makejiv, доступные по адресу http://mamaich.uni.cc/wm_re/. 219
Безопасность беспроводных сетей Однако не следует оставлять устройство в «открытом» состоянии. Сразу после добавления сертификата корневого удостоверяющего центра и персональных сертификатов пользователей стоит вернуться к начальным настройкам. Разблокированное устройство весьма уязвимо для вредоносного программного обеспечения. 5.3.2. Управление сертификатами Одна из первых задач, которую необходимо решить при настройке безопасности Windows Mobile, это настройка доверия устройства к корпоративному удостоверяющему центру. Конечно, есть и другой путь. Можно получить сертификаты для электронной цифровой подписи программ, серверов RADIUS, Web-серверов, серверов и клиентов VPN у одного из вендоров, удостоверяющим центрам которых Windows Mobile доверяет изначально, но, как правило, это экономически не оправдано. В мобильной версии Windows нет разделения хранилища сертификатов для пользователя и компьютера. Существует только одно хранилище сертификатов, управлять которым можно с помощью приложения Certificates (Start - Settings - System - Certificates). В приложении имеется две закладки: Personal и Root (см. рис. 5.18). В закладке Root перечислены доверенные удостоверяющие центры. Settings Manage Certificates к 15:15 ф Use root certificates to positively identify root certification authorities. Issued By j Expires GlobalSign Root CA 28.01.14 GTE Cyber Trust Globa... 13.08.18 GTE CyberTrust Root 23.02.06 Secure Server Certific,.. 07.01.10 Thawte Premium Serv... 31.12.20 Thawte Server CA 31.12.20 Personal Root Рис. 5.18. Доверенные сертификаты на Windows Mobile 220
Глава 5. Безопасность клиентов ^[certificate certs « Name w J cert new 02.05.05 1,1IK Certificate Ф Do you want to install \My Documents\certs\certnew. cer, a certificate issued by ru, infbsec, domOl, dc? Ves 1 No Edit Open U 0 Щ Рис. 5.19. Установка сертификата из файла Можно использовать несколько вариантов настройки доверия корневому УЦ. Самый простой из них - скопировать сертификат на КПК с помощью ActiveSync и щелкнуть на нем (см. рис. 5.19). После этого пользователю будет предложено подтвердить добавление. Получить сертификат СА можно и через Web, для чего необходимо зайти на основную страницу WEB-интерфейса удостоверяющего центра и щелкнуть по ссылке «Download a CA certificate, certificate chain, or CRL». Затем необходимо загрузить сертификат в кодировке DER и установить его как в предыдущем случае. Еще один способ позволяет сформировать на основе сертификата XML-файл или САВ-файл. Для этого необходимо экспортировать сертификат удостоверяющего центра в файл в формате BASE64, что можно сделать с помощью оснастки управления Certificates (см. рис. 5.20). Затем необходимо узнать отпечаток сертификата, доступный в поле «Thumbprint» (см. рис. 5.21). После этого необходимо скопировать в буфер обмена содержимое файла сертификата, для чего его можно просто открыть в Блокноте (см. рис. 5.22). Содержимое файла копируется в XML-документ (структура приведена на рис. 5.23) в качестве значения параметра EncodedCertifi- cate. Значение отпечатка указывается в поле «characteristic type». 221
Безопасность беспроводных сетей ■^j E(e A,cbon yew Favorites ^jndow _] Console Ro« - £j] Certificates • Current User - _J Trusted Root Certiffcacton Authorities _j Certificates _J Intermediate Certification Authorities _J Active Directory User Object _J Trusted PuMshers | Untrusted Certtficates _J Third-Party Root Certfication Authoritie _J Trusted People _J Other People ► _j Certificate Enrolment Requests <l 1 И ** Issued To ■ 3http //www vakert com/ ^http.//www.vaficert.com/ EillPSSERVIDORES Swicrosoft Authenticode(tm) Root ... SMicrosoft Root Authority liMlcroscft Root Certifcate Authority ^NetLock Expressz (Class C) Tanusi... ^NetLock Kozjegyzoi (Class A) Tanu... ИЭ NetLock Uzleti (Cbss B) Tanustva... HNO LIABILITY ACCEPTED, (c)97 V.,, 1ЭРТТ Post Root CA ^Saunalahden Serveri CA Ssaunalahden Serveri CA ^Secure Server Certification Authority DsecureNet CA Class A SlSecureNet CA Class В 1] SecureNet CA Root S) SecureNet CA SGC Root SsecureSign RootCAl ISbecureSign RootCA2 L^isecureSHjn RootCA3 OSERVIQOS DE CERTfflCACION -... Trusted Root Certficabon Authorities store contains 105 cerfjfIcates. Issued By' http //www vakert com/ http://www.valicert.com/ IPS SERWDORES M«:rosoft Authenteodeftm) Root Au... Microsoft Root Authority Microsoft Root Certificate Authority NetLockExpressz (Class C)Tanusitv... NetLock Ko:)egy2Oi (Class A) Tanusit. NetLock Uzleti (Class B) Tanusitvany... NO LIABILITY ACCEPTED, (c)97 Veri... PTT Post Root CA Saunalahden Serveri CA Saunalahden Serveri CA Secure Server Certfication Authority SecureNet CA Class A SecureNet CA Class В SecureNet CA Root SecureNet CA SGC Root SecureSign RootCAl SecureSign R00CCA2 SecureSign RootCA3 SERVICIOS DE CERTIFICACION - A.... 1 Expiration Date •* 26 06.2019 26.06.2019 30.12.2009 01.01.2000 31.12.2020 10.05.2021 20.02.2019 20.02.2019 20.02.2019 08.01.2004 26.06.2019 26.06.2019 26.06.2019 08.01.2010 16.10.2009 _J 16.10.2009 16.10.2010 16.10.2009 15.09.2020 15.09.2020 15.09.2020 10.03.2009 i ' *r Рис. 5.20. Оснастка управления сертификатами Файл сертификата также может быть преобразован в САВ-файл с помощью утилиты makecab. При необходимости можно переименовать файлы CAB в файлы с расширением CPF, что позволит осуществлять «тихую» установку на устройствах Windows Mobile 5. Следующим этапом является получение персональных сертификатов пользователя. В стандартную поставку Windows Mobile входит утилита Enroll, которая генерирует ключевую пару, создает запрос на получение сертификата и отправляет его удостоверяющему центру. Для взаимодействия с сервером используются http- запросы к WEB-интерфейсу стандартного УЦ Windows 2000/2003. Утилита Enroll имеет возможность запрашивать только сертификаты, основанные на шаблоне «Authenticated Session». Сертификаты данного типа могут быть применены для аутентификации устройства при использовании протоколов ЕАР, IPSec и SSL. Чтобы настроить сервер сертификатов на выдачу сертификатов данного типа необходимо открыть оснастку управления сервером сертификатов, щелкнуть правой кнопкой мыши на пункте «Certificate Templates» и выбрать пункт Manage. В появившемся окне открыть свойства шаблона «Authenticated Session», перейти на закладку Security и присвоить право Enroll группе мобильных пользователей. Затем нужно снова щелкнуть на пункте Certificate 222
Глава 5. Безопасность клиентов Certificate U*l General Details | Certification Path j Show: |<All> Field E3Public key Щкеу Usage Щ Subject Key Identifier SHcRL Distribution Points !§СА Version 3Basic Constraints 2s|Thumbprint algorithm ^Thumbprint JValue '_±J RSA (2048 Bits) Digital Signature, Certificate 5i... a4 1e72f8a5 516ffeb5 58... [1]CRL Distribution Point: Distr... VO.O Subject Type=CAj PathLengt... shal 95 3f8e02 37e6f5 3aae8b.,. ■» Edit Properties... J Copy to File... I J Рис. 5.21. Просмотр свойств сертификата Templates в оснастке управления СА и выбрать пункт контекстного меню New - Certificate Template To Issue, после чего дважды щелкнуть на пункте «Authenticated Session» (см. рис. 5.24). Затем на мобильном устройстве запускается утилита Enroll (Start - Settings - System - Enroll). В утилите необходимо указать имя пользователя, пароль и адрес сервера сертификатов. Утилита Enroll обладает рядом недостатков. Во-первых, она позволяет запрашивать только сертификаты, основанные на шаблоне «Authenticated Session». Во-вторых, она не поддерживает возможность запроса сертификата у сервера, требующего использования SSL. Кроме того, утилита имеет возможность работать только с сервером сертификатов Microsoft. 223
Безопасность беспроводных сетей Ш root.cer - Notepad Hie ЕЛ Format View Help BEGIN CERTIFICATE MIIDhjCCAm6gAWIBAgIQQ2XFmLmTqIhNEJRS3HFG9ZANBgkqhkiG9wQBAQUFADAY MRYWFAYDVQQDEWlt eC 5 pbmZVc2Vj Ln31MB4XDTAlMDMyMzExMDYyNVOXDTEwMDMy NZEXMTIlNFOWGDEWMBQGAlUEAXMNbXguaW5mb3NlYy5ydTCCASIWDQYJK02IhvcN AQEBBQADggEPADCCAQocggEBAM12l24/7:)UJAAXeqBQRrf69mkLlf4TkIxP8i:8pj UiZOG3A7RIBXZiKaiL72BYjdVW4StjC+RaR43 5VHBXaeX8YMJ 5VTiORCUclnStPK u+kQvx4R5fkEidnpo7zwcb2d5Bcch3DdhlEJTpcyN7Hnyb/Ymau9JrlvN+dJAywg y3qohGfephtz5vrdHn81/x8a8oiQkT/xN4kp+zvu7jvicF9YtvDoa493Lp/3Ft79 7QhmnppKmqGCMfWQpwrtaivt0xyk6ut9mwqjY3EuBsszRnfwp/6'iQuluCMba/rQo ■EB/zAdBgNVHQ4EFgQUpB5y+KVRb/61 WCEi3UvLr5HifS8wdwYDVR0fBHA1«bjBsoGqgaIYxaHR0cDovL214Lm"luzm9zZWMu cnUvQ2vydEVucm9sbC9teC5pbmzvc2vjLn31LmNlyblYzzmlsZT0VLlxcbxguaW5m b3NTYy5ydVxDZXJ0RW5yb2xsXG14LmluZm9zZWMucnUuY33sMBAGCSsGAQQBgjcV AQQDAgEAMA0GCSqGSIb3DQEBBQUAA4IBAQBiCWPbol9A93NZQ/5/VN3t9y8A8A9E dRZ9T+WnTYSLdnGDZ8LJmOKQ00+eM7WCIaqJSlVtBhbMhfLrmUp2wDGvQE2+WnUV NTJU/cCK0HV2UyFGobdlXdSHaNpM4plF3ibt5xNlneLBDyt4RmmXEuTFURVES/mA LJ+Ga8guvqxREn+kRb4t84mAyoykjiB4spKmua71svmYoDVO5xON7yiGyuEMl403 4yM5MhsCliRK4ofmZBDtDc6bPTByLEfhgjv36hg+Rx0qxswlnK3PhdBVbBBGYKYf PKkpWAJKfVXAY65cOjSW3mSlSjyQEoCBpbqoA01ZVAJOQPd2bGkAXL+U END CERTIFICATE Ы . . . 2JI т cert.xml - Notepad Рис. 5.22. Сертификат в кодировке BASE64 Hie EA Format View <wap-provisioningdoc> «zharacteristic type="CerfificateStore"> <characteristic type="ROOT" > <char act eristic type=('95|3f8e0237e6f53aae8b4e233d601efcclf 57780" <parm name="Encodedcertificate" value=" MIIDhjCCAm6gAwlBAglQQzXFmLmTqlhNEjRs3HFG9zANBgkqhkiG9wOBAQUFADAY MRYWFAYDVQQDEWlteC5pbmZVC2VJLnJlMB4XDTAlMDMyNzExMDYyNVOXDTEV«MDMy NZEXMTIlNF0WGDEV/MBQGAlUEAxMNbXguaW5mb3NlYy5ydTCCASIWDQY3K0ZIhvcN AQEBBQADggEPADCCAQOCggEBAMl2l24/73UJAAXeqBCiRrf69mkLlf4TkIXP8T8pj UizOG3A7RIBXZlKaiL72BY3dVW4stjC+RaR435VHBXaeX8YMJ5VTiORCUClnstPK U+kQvx4R5fkEidnpo7zwcb2d5Bcch3DdhlEJTpcyN7Hnyb/YmaU9JrlvN+dJAywg y3qQhGfephtz5vrdHn81/x8a8O]QkT/xN4kp+zvu7jVicF9YtvDoa493Lp/3Ft79 7QhmnPPKmqGCMfWQpwrtalvt0xyk6ut9mwgjY3EuBsszRnfwP/6iQuluCMba/rQo OSin+C9Hikf 5euYV2IFrtiQHKOvESEyez4bqeEprlOFpdiRmcCAWEAAaOByzCByDAL BgNVHQ8EBAMCAYYWDwYDVR0TAQH/BAUWAWEB/ZAdBgNVHQ4 EFgQUpB 5y+KVRO/61 WCEi 3UVLr 5HifS8wdwYDVR0fBHAwb jBsoGqgaIYxaHR0cDovL214Lm1uZm9z2WMu cnUvQ2vydEVucra9sbc9tec5pbraZvc2vjLnJlLmNyblYzzm1sZTovLlxcbXguaw5m b3NlYy5ydVxDZXJORW5yb2xS)«514LmluZm9zZWMUcnUUY33SMBAGCSsGAQQBgjcV AQQDAgEAMA0GCSqGSIb3 DQEBBQUAA4IBAQBT CWPbol9A93 NZQ/5/VN3t 9y8A8A9E dRZ9T+WnTYSLdnGDZ8LjmOKQOO+eM7WCIaqJSlvtBhbMhfLrmUp2wDGvQE2+WnUV NTJU/cCKOHv2UyFGObdlXdSHaNpM4plF3ibt5xNTneLBDyt4RmmXEuTFURVES/mA L3+Ga8gUvqxREn+kRb4t84fflAyOykjiB4spKmua71sVmYoDVO5xON7ylGyuEMI403 4yM5MhsCliRK4ofmZBDtDc6bPTByLEfhgiv36hg+Rx0qXswlnK3PhdBVbBBGYKYf PKkpwAJKfVXAY65cOiSW3mSlSjyQEoCBpbqoA01zvA:OQPd2bGkAxL+u"/> </characteristic> </c </ch .'characteristio . 'charact er i st i c> </wap-provi si oni ngdoo iL Рис. 5.23. Файл XML для установки сертификата 224
Глава 5. Безопасность клиентов I Certftcabon Authority (Local) _J Revoked Certificates „J Issued Certificates _J Pending Requests _J Failed Requests _i Certificate tonpiates t Intended Рипхяе jj IPSec (Offline request) |ras and IA5 server 3 IPSec SJDrectory Etna! Replication ^Domain Controier Authentication (jJEFS Recovery Agent IP security IKE mtermedute Ctent Authentication, Server Authentication IP security IKE intermediate Directory Service Emal Replcation Clent Authenticabon, Server Authenticatlo... File Recovery Encrypting Fie System S3St- Л AlUUIIIir Illlllll Illllllllllli EgCA Exchange E^CEPEncypticn Ejjjj) Code Signing @ Copy of IPSec {Offline request) Щ Cf ost Cei№cation Atihotitv {§ E nroknent Agent (Computa] E^E-change Enrolment Agent (Qffbe request) ^Exchange Signature Only Intended Pupese -■ Piwatt tCey AicKval Certtficate Request Agent Code Signing IPsecurirylKEinte(med«te <АЬ Certificate Request Agent Certificate Request Agent Certificate Request Agert Secure Email ^ftri** FnuHl — — zi - __ _ _ .. _ ... __ I __ ,-.- Рис. 5.24. Добавление шаблона сертификатов Если возникает необходимость получать сертификаты, основанные на других шаблонах, можно модифицировать содержимое файла %systemroot%\system32\certsrv\certfnsh.asp. В строке 47 необходимо заменить sAttributes=Request.Form(«CertAttrib») на название требуемого шаблона, например sAttributes=«CertificateTemplate:User». В случае, если на предприятии используется удостоверяющий центр, отличный от Microsoft Certification Authority, либо по другим причинам нет возможности получения персональных сертификатов с помощью утилиты Enroll можно использовать другой подход. Например, существует ряд утилит, позволяющих импортировать сертификаты из файлов в формате PKCS#12. Для этого можно воспользоваться одной из программ, приведенных в табл. 5.4 Таблица 5.4 Утилиты импорта сертификатов Название PFXimprt P12imprt Платформы WM5 WM5, WM2003 Домашняя страница http://www.jacco2.dds.nl/networking/pfximprt.html http://www.jacco2.dds.nl/networking/p12imprt.html 225
Безопасность беспроводных сетей Название Crtimprt PPCCertlmport Платформы WM5, WM2003 WM5, WM2003 Домашняя страница http://www.jacco2.dds.nl/networking/crtimprt-org. html http://webs.ono.com/usr030/kiko_vives/ppccert В этом случае сертификат получают на настольном компьютере, затем он экспортируется вместе с закрытым ключом в файл PKCS#12, копируется на КПК и с помощью утилиты импортируется в хранилище сертификатов. Достоинством использования утилиты Enroll по сравнению с импортом PKCS#12 является тот факт, что в первом случае запрос на сертификат, включая пару ключей, генерируется мобильным устройством, и закрытый ключ никогда не покидает устройство. Еще одна распространенная проблема, связанная с поддержкой инфраструктуры открытых ключей Windows Mobile, возникает, когда сертификат сервера, к которому обращается устройство, выдан не корневым удостоверяющим центром. К сожалению, Windows Mobile не имеет возможности построения цепочки доверия. В связи с этим сертификаты всех промежуточных центров сертификации нужно импортировать вручную. Это удобно делать с помощью файлов XML или CAB. Процесс создания этих файлов был описан выше, поскольку один такой файл может включать несколько сертификатов. 5.3.3. Защита коммуникаций В этом разделе будут рассмотрены настройки клиентских компонентов Windows Mobile для защиты беспроводных соединений, использования VPN и безопасного доступа к ActiveSync. Беспроводные сети Основой современных стандартов защиты беспроводных сетей, таких как WPA и 802.11i, является технология 802.1Х. ОС Windows Mobile поддерживает стандарт защиту трафика WPA с аутентификацией по протоколу 802.1 X. При использовании 802.1 X для аутентификации клиента может быть задействован цифровой сертификат (EAP-TLS) либо пароль пользователя (PEAP-MS-CHAPv2). Если на КПК был успешно импортирован корневой сертификат удостоверяющего центра и установлен персональный сертификат, 226
Глава 5. Безопасность клиентов Settings Configure Network Authentication i 19:19 ф J£$ Sellings Configure Network Authentication Authentication: Data Encryption: TKIP I у11 Use IEEE 802,1 x network access control EAP type: Smart Card or Certificate [у*I The Key is provided for me automatically PEAP Smart Card or certificate Щ Network key: ***« Kev index; fi General Network Key 802. General Network Key 802. lv [ Рис. 5.25. Настройка безопасности протокола 802.11 то настройки со стороны устройства довольно просты. После активации беспроводного интерфейса необходимо перейти в пункт настроек беспроводного подключения (Settings - Connections - Connections - Advanced - Network Card) и нажать на ссылке Add new. В появившемся окне указывается SSID сети, после чего на закладке Network key выбираются тип аутентификации WPA и шифрование TKIP. На закладке 802.1Х указывается используемый тип аутентификации (см. рис. 5.25). В случае, если был выбран метод «Smart Card or Certificate», на устройстве должен присутствовать действующий клиентский сертификат. При использовании метода PEAP-MS-CHAPv2 необходимо указать имя и пароль пользователя. Построение VPN Мобильный клиент на основе Windows Mobile может использовать технологию VPN для подключения к ресурсам сети. Поддерживаются протоколы РРТР и L2TP/IPSec. В случае использования IPSec для аутентификации сервера и клиента могут применяться цифровые сертификаты или общий ключ. В связи с описанной в разделе, посвященном VPN, особенностью работы клиента IPSec могут использоваться сертификаты, основанные на шаблоне «Authenticated Session». 227
Безопасность беспроводных сетей Network Management i 10:Ю ф '$$ Settings My Work Network Programs that automatically connect to the Internet should connect using: I Internet connection ***-■ 1Г New... Programs that automatically connect to a private network should connect using: Work Network Edit... New... Exceptions are needed if your company uses periods (,) in intranet addresses, Exceptions.. To create a connection, tap New. Tap and hold on an existing connection for more options. General Modem VPN Proxy Settings Рис. 5.26. Настройка профилей подключения В случае, если для связи с сервером VPN используется не модем, а беспроводное соединение, необходимо настроить профили подключения. Для этого необходимо перейти к настройкам соединения Settings - Connections - Connections - Advanced и нажать на кнопку Select Network. В появившемся окне необходимо открыть настройки «внутренней» сети, нажав на нижнюю кнопку Edit, после чего на закладке VPN нажать кнопку New и указать параметры подключения к VPN (см. рис. 5.26). Затем необходимо указать, что беспроводной адаптер подключает устройство к Internet. Это делается для того, чтобы Windows могла задействовать VPN при уже установленном активном соединении по локальной сети. Для этого в настройках соединений (Settings - Connections - Connections - Advanced) необходимо нажать на кнопку Network Card и указать, что данные сетевые карты подключены к Internet (см. рис. 5.27). После того как беспроводной адаптер подключится к точке доступа, можно инициировать VPN соединение. Доступ к серверу Exchange Для доступа к почтовому ящику на сервере Exchange из Windows Mobile может использоваться синхронизация с помощью ActiveSync или доступ через Outlook Mobile Access (ОМА). Обе эти 228
Глава 5. Безопасность клиентов Configure Network Adapters My network card connects to: Tap an adapter to modify settings: L2TP NDISWAN Miniport AsyncMac NDISWAN Miniport PPTP NDISWAN Miniport Bluetooth PAN User Driver Рис. 5.27. Настройка адаптеров и подключение к VPN технологии используют в качестве транспорта HTTP и должны быть защищены с помощью SSL* Для включения поддержки этих функций на сервере Exchange необходимо в оснастке Exchange System Manager открыть свойства пункта Mobile Services, а также разрешить синхронизацию со стороны пользователя (Enable user initiated synchronization) и поддержку ОМА. Дополнительно можно включить обработку запросов от неподдерживаемых устройств (см. рис. 5.28). Это бывает удобно, когда доступ к Exchange осуществляется с настольного компьютера или ноутбука, но посредством слабого канала связи. Поскольку интерфейс ОМА гораздо более «лаконичен» чем интерфейс 0WA, Система ActiveSync поддерживает синхронизацию через сетевые соединения с настольным компьютером. Однако этот механизм синхронизации содержит ряд ошибок проектирования, что приводит к возможности реализации атак с внедрением ложного сервера или ложного клиента. В связи с этим использование синхронизации данного типа без дополнительных криптографических механизмов защиты не рекомендуется. Видимо, поэтому Microsoft не поддерживает эту возможность в ActiveSync 4.O. Подробнее узнать об уязвимостях сетевой синхронизации ActiveSync можно из статьи «Безопасность Microsoft ActiveSync», доступной по следующему адресу: http://www.securitylab.ru/contest/212128.php. 229
Безопасность беспроводных сетей 'fy &> a* "OifJ ; eg В Ej 1 (Exchange) a Global Settings ■#3 Internet Message Form* ■J Message Delvery ЫмоЫе Services _d Recipients J2 Servers Л Connectors J Tods Э Folders j Hot*» Services Senetal| Details | ЩЗ MoMeSetvices r E«changeAcliveSync- Г Enable up-to-date nctificafior» P IniJt._?»*'j:.-<. vUiS' ^«chtw SMГ" 8-Ji t- OutlookMobJeAccen -- -- — - - — 17 Enable OJtookMobJs Access I 17 EnaUeunsupcntedgwbas | OK | Cancel | ня* ; мал i j ! Рис. 5.28. Настройка мобильного доступа к Exchange его использование помогает экономить время и нервы при чтении почты. Начиная со второго пакета обновлений, Microsoft Exchange Server 2003 поддерживает дополнительную настройку, позволяющую указать, каким пользователям запрещено использовать мобильный доступ к ОМА или ActiveSync. Для настройки опции в окне Mobile Services необходимо нажать на кнопку Device Security, а затем на кнопку Exceptions. Если второй пакет обновлений еще не развернут, можно добиться таких же результатов, установив соответствующие разрешения на папки ОМА и ActiveSync в fnternet Information Server. Поскольку и ОМА и ActiveSync используют аутентификацию Basic, необходимо убедиться, что в настройках аутентификации сервера IIS установлено правильное имя домена по умолчанию. Кроме того, необходимо задействовать протокол SSL при обращении к виртуальным директориям ОМА и Microsoft-Server-ActiveSync. Это можно проделать с помощью стандартных средств настройки безопасности Internet Information Server. Настройка ActiveSync на КПК довольно проста. Необходимо запустить приложение ActiveSync (Start- Programs- Activesync), вы- 230
Глава 5. Безопасность клиентов I Jf flctiveSync £ч •* Server Synchronization When syncing with a serve Use this server: | dc. domO 1. infosec. ru 0 This server uses an SSL со Sync these items: - HSCalendar HEContacts ВЙИпЬох >C [Server Mobile Schedule •ii 11:11 (J r inection | Options... ! Settings.» SI- > Ш\Internet EkpIoi ^^^П:П © ^^^^H |https://dc.dom01.infbsec.ru/oma/( ■»! & *HA: Пооблемы пал настройке ОМА (Administrator) НА: Проблемы пои настройке ОМА (Administrator) Псюблемы по» настройке ОМА (Administrator) Тор New Folders Home ' View Toob 4 % Q $z ШУ Рис. 5.29. Настройка ActiveSync и работа с ОМА брать пункт меню Tools - Options и на закладке Server указать имя сервера и синхронизируемые объекты. Дополнительно можно настроить автоматическую синхронизацию через заданные интервалы времени (кнопка Options). Если сервер настроен на поддержку SSL, то необходимо установить опцию «This server uses an SSL connection» (см. рис. 5.29). Использование SSL вызывает проблемы при работе с аутентификацией на основе Web-форм (forms-based authentication), для решения которых можно воспользоваться рекомендациями из базы знаний Microsoft (http://support.microsoft.com/ Default.aspx?kbid=817379)*. Для работы с ОМА достаточно подключиться к сети, запустить Pocket Internet Explorer и ввести в строку адреса команду вида https://<servername>/oma. Лаконичный интерфейс ОМА мало под- При условии, что несмотря на все ухищрения, импортировать корневой сертификат на мобильное устройство не удалось, можно, пойдя на компромисс, отключить проверку сертификата SSL в ActiveSync. При этом шифрование будет использоваться, но, поскольку сертификат не аутентифицируется, злоумышленник сможет проводить атаки «человек посередине» на протокол SSL. В Windows Mobile 2003 можно использовать утилиту CERTCHK, доступную на сервере Microsoft по адресу (http://www.microsoft.com/downloads/details. aspx?famityid=D88753B8-8B3A- 4F1D-8E94-530A67614DF1). В Windows Mobile 5 для решения этой задачи необходимо создать на КПК равный нулю параметр реестра Secure типа DWORD в ключе HKCU\Software\Microsoft\ActiveSync\Partners\<ID>. Значение <ID> зависит от модели устройства и содержит уникальный идентификатор настроек ActiveSync. 231
Безопасность беспроводных сетей ходит для работы с заполненными почтовыми ящиками, но позволит сэкономить ресурсы устройства. Хотя, если пропускная способность канала связи не является ограничивающим фактором, даже при разрешении экрана 320x240 можно комфортно работать с полнофункциональной версией Outlook Web Access. В современных КПК, поддерживающих расширение 640x480, OWA практически не отличается от своего настольного варианта. 5.3.4. Централизованное управление В этом разделе будут рассмотрены под управлением Windows Mobile вопросы централизованного контроля устройств. Контроль использования мобильных устройств Для контроля использования мобильных устройств на предприятии можно воспользоваться разными способами. Самый простой - использование сетевого сканера для определения компьютеров, на которых открыт серверный порт ТСР/5679. Если такие компьютеры найдены, значит, на них установлена программа ActiveSync с поддержкой сетевой синхронизации, об уязвимостях которой говорилось ранее. Более эффективный способ заключается в использовании сценариев, контролирующих текущие настройки программы ActiveSync на настольном устройстве. Пример подобной утилиты приведен на листинге 5.6. Листинг 5.6. Файл checkasync.vbs 'Check ActiveSync settings 1(c)oded by Sergey V. Gordeychik 2004 1 offtopicSmail.ru strComputer = «.» strKey = «Software\Microsoft\Windows CE Services\Partners» Dim strComputer, strKey, strSubKey, strSynSubKey, strTmp, strSynTmp Dim objRegistry, WShell, objFSO Dim arrSubKeys(), arrSynSubKeys() Const HKCU = &H80000001 Set WShell = Wscript.CreateObject(«Wscript.Shell») Set objFSO Wscript.CreateObject(«Scripting.FileSystemObject») Set objRegistry = GetObject(«winmgmts:» & _ <<{impersonationLevel=Impersonate}!\\» & _ strComputer & «\root\default:StdRegProv») 232
Глава 5. Безопасность клиентов objRegistry.EnumKey HKCU, strKey, arrSubKeys For Each strSubKey In arrSubKeys WScript.Echo «ActiveSync settings for current user on «& strComputer Wscript.Echo String(60 ,»=«) objRegistry.GetStringValue HKCU, strKey & «\» & _ strSubKey, «DisplayName», strTmp WScript.Echo «Device name : «& strTmp objRegistry.GetStringValue HKCU, strKey & «\» & _ strSubKey, «Oemlnfo», strTmp WScript.Echo «Device model: «& strTmp strTmp = strKey & «\» & strSubKey & _ «\Services\Synchronization\Objects» objRegistry.EnumKey HKCU, strTmp, arrSynSubKeys For Each strSynSubKey In arrSynSubKeys objRegistry.GetDwordValue HKCU, strTmp & «\» & _ strSynSubKey , «Disabled», strSynTmp If strSynTmp=0 Then WScript.Echo StrSynSubKey & _ « sync enabled» Next Wscript.Echo String(60,»=«) Next Этот сценарий, как и предыдущие, может быть использован и в качестве сценария входа в систему и для удаленной проверки компьютера. Для получения настроек устройства можно воспользоваться утилитой RapiConfig, бесплатно распространяемой Microsoft и входящей в различные комплекты программ, например Exchange ActiveSync Certificate-based Authentication (http://go.microsoft.com/ fwlink/?linkid=55032). Эта утилита может использоваться как для настройки, так и для получения конфигурационных параметров устройства. Результат работы утилита сохраняет в XML-файле RapiConfigOut.xml. Пример файла, используемого для запроса имени устройства, параметров парольной защиты и некоторых значений политики безопасности, приведен на листинге 5.7. Листинг 5.7. Файл QuerySettings.xml <wap-provisioningdoc> characteristic type=«Registry»> characteristic type=«HKLM\Ident>» <parm-guery name=«Name»/> </character is tio characteristic type=«HKCU\ControlPanel\Owner»> <parm-query name=«PowrPass»/> 233
Безопасность беспроводных сетей </characteristic> </characteristic> •ccharacteristic type=«SecurityPolicy»> <parm-query name=«4097»/> <parm-query name=«4101»/> <parm-query name=«4102»/> <parm-query name=«4119»/> </char act eristio </wap-provisioningdoc> Для получения данных с мобильного устройства, подключенного к удаленной машине, могут использоваться различные утилиты дистанционного запуска программ, например, PsExec (http://www.sysinternals.com/Utilities/PsExec.htm!). Управление через Active Directory Если все мобильные клиенты в сети используют ОС Windows Mobile 5 и на предприятии развернут Microsoft Exchange 2003 Service Pack 2, у администратора появляется возможность задействовать для централизованного управления службу каталога Active Directory. Для того чтобы реализовать эту возможность, необходимо сформировать XML-файл в уже известном читателю формате Wap Provisioning и сохранить его в каталоге. Для этого может использоваться сценарий EASAuthUploadXMLtoAD.vbs из комплекта Exchange ActiveSync Certificate-based Authentication. Параметры из файла могут быть использованы для конфигурации различных настроек Windows Mobile. Например в документе Step-by-Step Guide to Deploying Windows Mobile-based Devices with Microsoft Exchange Server 2003 SP2, доступном на сервере Microsoft по адресу http://www.microsoft.com/technet/itsolutions/mobile/deploy/msfp_a.mspx, описывается, как использовать эту возможность для автоматической выдачи сертификатов для мобильных устройств. Однако не стоит забывать, что данный замечательный инструмент не отменяет политики безопасности устройства. Например, с его помощью нельзя установить корневой сертификат удостоверяющего центра, если ActiveSync не имеет привилегированных прав на устройстве. Другие решения Существует множество разнообразных решений централизованного управления устройствами Windows Mobile. He отдавая предпочтения конкретному производителю, предлагается самостоятельно оце- 234
Глава 5. Безопасность клиентов нить их возможности. Для этого можно использовать аналитические обзоры Gartner серии «Magic Quadrant for Mobile Data Protection», (http://www.gradian.co.uk/Resource_Lib/PointSec/Gartner%20Quadrant %20Feb%202005.pdf). Из продуктов Microsoft для целей управления Windows Mobile можно использовать Device Management Feature Pack (DMFP) для Microsoft Systems Management Server (SMS) 2003, доступный для загрузки по адресу http://www.microsoft.com/smserver/downloads/2003/dmfp.asp. Данное расширение системы SMS дает возможность выполнять следующие задачи: • инвентаризация аппаратного обеспечения устройств с Windows Mobile; • инвентаризация программного обеспечения; • управление установкой программного обеспечения; • управление настройками устройств; • управление паролями и политикой безопасности. При развертывании DMFP могут возникать проблемы с устройствами, поддерживающими двухуровневую модель безопасности (в основном со смартфонами на основе Windows Mobile 5). Поскольку клиент SMS настольного компьютера устанавливает на КПК мобильную версию клиента SMS, при использовании двухуровневой модели дистрибутив должен быть подписан с помощью ЭЦП. Входящий в поставку дистрибутив клиента подписан с помощью сертификата программы Mobile2Market, которой Windows Mobile в стандартной конфигурации доверяет. Однако в некоторых конфигурациях доверие может быть нарушено в связи с модификациями стандартных настроек производителями конкретного устройства или операторами связи. Решить эту проблему можно с помощью механизмов, описанных ранее. В случае, если на мобильном устройстве требуется изменить какие-либо настройки, недоступные через стандартные функции сервера SMS, всегда можно воспользоваться файлами формата CAB, которые содержат документы XML в формате Wap Provisioning. Многие из решений сторонних разработчиков могут функционировать как расширения Device Management Feature Pack. Управление обновлениями Вопрос установки обновлений для Windows Mobile стоит весьма остро. Дело в том, что эта платформа поставляется в основном в OEM вариантах, за выпуск обновлений для конкретного устройства несет ответственность не Microsoft, а его производитель. Таким образом, даже если проблема была устранена Microsoft, придется 235
Безопасность беспроводных сетей ждать, пока исправление появится в «прошивке» конкретного устройства. Ситуация усложняется тем, что при чтении информации на сервере Microsoft возникает некоторое непонимание текущей ситуации. Например, в разделе «Critical Updates» сайта MSDN (nttp://msdn.microsoft.com/mobility/security/wm/default.aspx) в сентябре 2006 г. было указано «There are currently no reported security vulnerabilities for Windows Mobile», т.е. - сообщений об уязвимостях в Windows Mobile не было. С другой стороны, на сайте опубликовано обновление для Windows СЕ 4.2 (http://download.microsoft.com/ download/7/f/f/7ff144d4-9ffc-4017-94da-3cd0650e282b/Windows%20CE %20. NET%204.2_Product_Update_Rollup_2005.htm), в котором устранено несколько уязвимостей, включая различные переполнения буфера. Таким образом, отсутствие информации об уязвимостях, сложный доступ к обновлениям значительно затрудняют процесс управления уязвимостями в Windows Mobile. 5.4. Gnivirdraw или Wardriving наоборот Техника Wardriving предполагает сбор информации об общедоступных точках доступа. При обратном Wardriving предполагается сбор информации об «общедоступных» станциях, т.е. о станциях, которые соединяются с точками доступа без аутентификации сети. Практически Gnivirdraw может быть реализован несколькими методами. Самый простой вариант - установка ложной точки доступа с каким-либо привлекательным значением идентификатора сети и отслеживание попыток подключения к ней. Этот метод ничем не отличается от беспроводного Honeypot, описанного ранее. Больший интерес представляет активный вариант исследования, при котором мы подстраиваемся под требования станций и «предоставляем услуги по запросу». В этом случае радиоэфир прослушивается на предмет возникновения фреймов Probe Request, из них извлекается значение идентификатора сети, после чего станциям отправляется ответ Probe Response, содержащий указанный клиентом SSID. В случае если станция установила соединение с сетью, можно проанализировать наличие DHCP запросов или другого трафика, позволяющего определить ее настройки. Из собранной информации можно извлечь следующие статистические данные: • статистику по производителям беспроводных адаптеров; 236
Глава 5. Безопасность клиентов • количество неассоциированных станций; • клиенты, допускающие соединение с произвольными сетями; • клиенты, с ненастроенными профилями подключения; • клиенты, использующие DHCP; • клиенты, использующие IPv6; • клиенты, для которых удалось определить IP-адрес станции. 5.4.1. Методика работ С практической точки зрения для проведения исследования понадобится ноутбук под управлением Linux или вашей любимой операционной системы. Для эмуляции точек доступа можно воспользоваться утилитами «автоответа» на запросы Probe Request, например probemapper или Karma Tools (http://www.securitystartshere.net/downloads/tool-probemapper0.5.htm, http://www.theta45.Org/software/karma-0.5.tar.gz). Утилита Karma Tools позволяет не только эмулировать точку доступа, но и работать в режиме серверов DHCP, DNS и прозрачного сервера-посредника для HTTP. Поскольку эти функции явно излишни и их применение может трактоваться как попытка несанкционированного доступа, их лучше отключить путем редактирования конфигурационных файлов XML в папке etc. За основу лучше взять файл karma-scan.xml и закомментировать или удалить строчку <run module="DHCP-SERVER"/>. После этого эмулятор точки доступа запускается командой #bin/karma etc/karma-war.xml и система готова к работе. Журналы соединений сохраняются в файле /var/log/messages и могут использоваться для формирования статистики. Получить список неассоциированных станций можно двумя способами. Если на используемом ноутбуке установлены две беспроводные карточки, то одна из них переводится в режим мониторинга, и на ней запускается анализатор трафика, перехватывающий запросы Probe Request. Если карточка только одна, то можно просто отредактировать исходный код модификации драйвера таким образом, чтобы утилита сохраняла информацию о запросах Probe Response. Для этого в раздел обработчика фреймов Probe Request файла ieee80211_input.c добавляется функция вывода сообщения о запрошенном значении SSID и МАС-адресе клиента. Пример изменений для драйвера madwifi версии 20060124 приведен на рис. 5.30. Для получения информации о клиентах, настроенных на работу с DHCP, и тех, IP-адрес которых можно определить, используется сетевой анализатор, работающий на том же сетевом интерфейсе, что 237
Безопасность беспроводных сетей Рис. 5.30. Модификация драйвера и Karma Tools. Для того чтобы избежать сохранения пакетов на жестком диске и потенциальных проблем с законодательством лучше использовать консольный анализатор, вывод которого дополнительно отфильтровывается для выбора статистики. Например, для получения списка МАС-адресов станций, запросивших IP-адрес по протоколу DHCP или отправляющих широковещательные запросы NETBIOS, можно воспользоваться следующей конструкцией #tethereal -i athO -V | egrep «Ethernet.ll|IPv6|User.Datagram» К приведенному примеру желательно добавить анализ пакетов ARP. Стандартный вывод перенаправляется в файл, который сохраняется для анализа. 5.4.2. Анализ данных На основе собранных пакетов Probe Request создается список уникальных МАС-адресов, который затем анализируется на соответствие списку OUI с целью получения производителей сетевых адаптеров. Эти же данные используются в качестве общего количества неассоциированных станций. Количество клиентов, не использующих аутентификацию при подключении, определяется по количеству уникальных МАС-адресов, установивших ассоциацию с эмулятором точки доступа. Эти данные содержатся в системных журналах ОС (рис. 5.31) (/var/log/messages). 238
Глава 5. Безопасность клиентов Session Edit View Bookmarks Settings Help гоотЭ1Ьт201 -]# tail -f /var/log/»essages mg 1 11:17:59 ibii201 kernel: device athO entered promiscuous node tug 1 11:18:14 ibn201 kernel: KARMA: Node r0O:0ct:88:8b:e8:9d] associating to ssid |;OxObOgOd04040318060flfl716131cl<>lbOcOfl e0fO219181708O9O6Obl0ObleOa] Aug 1 11:1«:15 ibn201 kei 11:15:33 ibn201 kernel 11:18:33 ibitffll dhcpd: 13:38:33 ibn201 dhcpd: 11:15:33 ib«201 dhcpd: 11:18:33 ibn201 dhcpd: 11:18:59 ibn201 kernel. Jug SUB d0dlS0614111alSlfl7O7Od0cl8] 11:19:02 ibn201 kernel 90c0302101219090fOS080b090b] 11:19:11 i.b«i201 kernel .3Q117110e.l 50419031218] 11:19:22 ibu201 kernel U:2S:28 ibn20t kernel ■0aldlal607181al50f09] 11:25:41 ib»2fll kernel 11:26:48 ibn201 kernel KARMA: Node [00:Qd:88:8b:e8:9d] Associating to ssid ["lestl"] KARMA: Node [OO:3O:O5:93:ld:b2] associating to ssid Г test1'] DHCPREQUEST tor 169.254.0.254 fron O0:3O:05:S3:ld:b2 (MI'S) via axhQ DHCPACK on 169.254.0.254 to OO:30:05:93:3d:b2 t^fTSJ via athO DHCPREQUEST for 1.69.2S4.0.254 fron 00:30:OS:93:.ld:b2 (HTS> via athfl MICPACK on 169.254.0.254 to O0:30:0S:93:ld:b2 (MTS) via athO KARMA: Node [00:0d:88:8b;e8:9d] associating to ssid [0x0fl50GG214i409idQ307110Glf06121U204O KARMA: Node [00:0d:e8:8b:<;8:9dl associating to ssid [0x0cOcO61»O8O707111dO3l5OcOal3090aO61dO KARMA: Node [0O:0d:88:8b:eS:9d] associating tn ssid [OxldOdlSld3b0bK1J6191eO21eO20d02Ogl90f0 device athD left proniscuous node KARMA: Node [00:0c:a6:a6:a8;53] associating to sstd [OxO819O81cOe0elbO713O7O31cl91716OBOfleO KARMA: Node [00:0е:а6:з6:а8:53] associating to ssid ["SB"J KARMA: Node [00:Oe:aG:a6:a8:53| associating to ssid ["SB11] 11:26:SI ibn2Ol dhcpd; DHCPDISCOVB from 0Q:Oe:a6:aG:a8:S3 via arhO 11:26:52 ibn201 dhcpd: DHCPOFFER on 169.254.0.253 to 00:0е:а6:а8:Ь6:53 (sergey^out} via athO 11:26:52 ibn201 dhcpd: DHCPREOUEST for 169.2S4.0.253 (169.254.133.7) fron O0:0e:a6:a6:ii8;53 (sergey.nout) via athO 11:26:52 ib«201 dhcpd: DHCPACK on 169.2^4.0.253 to 00:0e:afi:a6:aS:53 tssergeyjinat) via atliO 11:26:52 ibitfGl dhcpd: DHCP8EWEST for 189.254.0.253 (169.254.133.7) froB 00:0e:a6:aS:a8;53 (ttergey^nout) vU athO ll!27:2O ibn201 kernel: KARMA: Node [00:Of:iu:S9~.87;Sr] associating to ssid ['"'] 11:27:25 ibn2OX dhcpd: DHCPDISCOVER fron 00:de:59:59:87:5f via athO 11:27:26 ibn201 dhcpd: DHCTOFFDl on 169.254.O.2S2 to OO:de;59:59:87:5t (your-90f2bb2c51) via athO 11:48:12 ibn201 kernel: device athO entered promiscuous rode 12:01:01 ibn2Ql crond(pan_unix)[3648]: session opened for user root I?y (uid=O) 12:01:02 ibn201 стош1Срвв_ип1х)[Зв48]: session closed for user root 1.2:05:57 ibn201 kernel: KARMA: Node [00:40:de:59:8c:57] associating то ssid ["Salve"] 12:06:00 ibe201 dhcpd: DHCPREQOEST for 192.168-0.21 from 00:40:de:59:Sc:57 via athO: unknown lease 192.168.0.21. 12:06:04 ibii201 ; Aug 1 12:11:57 ibn201 kernel: device athO left prorascuous rode Рис. 5.31. Журналы Karma Выделить клиентов, допускающих соединение с произвольными сетями, можно по системному журналу. В нем модифицированный драйвер сохраняет значение идентификатора сети, и если идентификатор записан в шестнадцатеричном виде, например 0х4987аЬ39843Ь2345с5656с67с78с78с834332347с978, то соединение было установлено, когда карточка находилась в «припаркованном» режиме. Станции, использующие DHCP и IPv6, и станции, транслирующие свои сетевые настройки через широковещательные пакеты, определяются по журналам сетевого анализатора. Эту, наверное, наиболее трудоемкую часть работы есть смысл автоматизировать. В результате получается интересный отчет, показывающий реальное положение с безопасностью клиентов в той или иной точке планеты. Но не спешите его публиковать. Дело в том, что авторам не удалось добиться внятного ответа на вопрос о законности данного мероприятия. Наиболее прямой из них выглядел следующим образом: «Уголовного дела я здесь не вижу, но вполне можно усмотреть следы административного правонарушения. Хотя, могу дать телефоны как минимум трех человек, которые за скромную сумму возьмутся доказать неправомерность таких работ». Таким образом, все вышеизложенное относится к описанию методики обследования 239
Безопасность беспроводных сетей 32% 52% 5% Рис. 5.32. Распределение клиентов беспроводных сетей по производителям: 52% - Intel; 6% - Fujitsu (справа); 6% - Samsung (слева); 5% - Gemtek Tech; 32% - Другие беспроводной сети в рамках работ по аудиту безопасности или оценке защищенности. В заключение главы приведем результаты исследования, выполненного авторами с использованием методики Gnivirdraw на выставке l»nfosecurty Moscow 2006». Всего в течение нескольких часов на территории выставки было замечено около двух сотен клентов. Большая часть из них была построена на базе технологии Centrino (см. рис. 5.32). С эмулируемыми в ходе тестирования сетями соединились почти семьдесят процентов всех клиентов беспроводных сетей, причем 29% клиентов, были готовы соединяться с любыми сетями, 66% 32%' . t -V . •,:..;,Vr'T- ' "■■'■'-. ' v •'* -ИГ —- ' " ■ — ш - 1 Соединились Свой SSID «Режим парковки» Любая сеть Рис. 5.33. Станции, установившие ассоциацию 240
Глава 5. Безопасность клиентов 90<К 80% 70°Л 60»/ 50°/! 40°Л 30»/< 20°/ 0% ' яз% 63% 17% Используют DHCP Используют IPv6 Определен IP Рис. 5.34. Анализ сетевого уровня т.е. либо имели некорректно настроенный профиль соединения, либо искали открытую беспроводную сеть. В режиме «парковки» работало около 8%. Эти станции также соединялись с произвольными сетями, причем на этот раз абсолютно точно - без ведома своих хозяев (рис. 5.33) На сетевом уровне удалось «договориться» с более чем 80% всех соединившихся станций (см. рис. 5.34), причем количество клиентов беспроводной сети, использующих IPv6, оказалось достаточно велико, целых 17%. Авторы связывают это со спецификой места, в котором проводились работы, и большим количеством карманных компьютеров. 241
Глава 6. Обнаружение атак и контроль защищенности Несмотря на мощные механизмы, заложенные в современные протоколы защиты беспроводных сетей, устранить все угрозы, связанные с использованием Wi-Fi в корпоративной сети, они не в состоянии. В связи с этим, если мы не хотим принимать остаточные риски, необходимо задействовать детективные и корректирующие средства защиты, которые позволяют своевременно обнаружить нарушение политики безопасности и помочь минимизировать последствия инцидента. Комплекс безопасности беспроводной сети, как и любая система, со временем отходит от начального состояния и может превратиться в свою полную противоположность. Чтобы контролировать текущий уровень безопасности необходимо иметь хотя бы базовые навыки анализа защищенности и проведения тестирования на проникновение. Это поможет проводить подобные работы самостоятельно или оценивать результаты работ независимых аудиторов. 6.1. Нерешенные проблемы стандарта 802.11 i 6.1.1. Отказ в обслуживании Отказ в обслуживании является ахиллесовой пятой беспроводной сети. На качестве сигнала могут сказаться погодные условия, развертывание беспроводной сети соседями по офису и многие другие факторы. Это должно быть учтено при проектировании сети. Беспроводная сеть либо не должна использоваться для передачи информации с высокими требованиями по доступности, либо риск, связанный с возможными отказами, должен быть принят. Потенциальный злоумышленник может выбирать для осуществления DoS атак свой любимый уровень модели OSI - физический, канальный или любой из вышестоящих. Физический уровень Для осуществления DoS-атаки на физическом уровне в традиционных проводных сетях злоумышленник должен находиться в непосредственной близости от атакуемого узла или линии связи или же иметь доступ к «большому рубильнику», отключающему электроэнергию в атакуемом здании. В случае беспроводных сетей 242
Глава 6. Обнаружение атак и контроль защищенности это далеко не так. Среда передачи не привязана жестко к какой- либо физической точке, и злоумышленник может осуществлять атаки на физическом уровне, не имея доступа к сети, и оставаться при этом незамеченным. Спецификация физического уровня определяет диапазон частот, которые могут быть использованы беспроводными устройствами для взаимодействия. Любой злоумышленник имеет возможность создать устройство, которое будет генерировать сигнал достаточной мощности в этом диапазоне. В результате отношение сигнал/шум для точек доступа и беспроводных клиентов в зоне атаки станет неудовлетворительным, и они потеряют возможность подключения к сети. Создание такого устройства не представляет особых проблем. Для этой цели может быть использован генератор радиошума в диапазоне ISM. В настоящее время существует достаточное количество подобных устройств, которые могут быть приобретены по сходной цене или собраны из подручного материала, например на основе старой микроволновой печи. Проблемы канального уровня Если в сети присутствуют клиенты, поддерживающие стандарт 802.11b, то злоумышленник может воспользоваться уязвимостью процедуры Clear Channel Assessment (CCA) метода доступа к несущей CSMA/CA. За выполнение процедуры ССА отвечает физический уровень, реализующий спецификацию DSSS, поэтому уязвимыми оказываются беспроводные сети, использующие данную спецификацию. Учитывая, что большинство точек доступа работает в режиме совместимости с 802.11b, атака может быть проведена и в сетях 802.11 д. Каждый фрейм протокола 802.11 содержит поле «Duration», в котором указывается количество миллисекунд, на которое клиент занимает канал. Это значение используется для расчета значения Network Allocation Vector (NAV) для каждого клиента. Когда значение NAV достигает нуля, клиент получает возможность передавать в сеть. Такой подход используется во время процесса согласования параметров RTS/CTS. Злоумышленник может использовать этот механизм для занятия несущей путем отправки пакетов с большим значением поля «Duration». Использование RTS дает злоумышленнику наибольшую возможность занятия несущей. Максимальное значение NAV равно 32767, или примерно 32 миллисекунды для сетей 802.11b. Соответственно, злоумышленнику требуется только тридцать пакетов в 243
Безопасность беспроводных сетей секунду для того, чтобы подавить все взаимодействие на определенном канале. Описание этой уязвимости можно найти в работе «802.11 Denial- of-Service Attacks: Real Vulnerabilities and Practical Solutions» Джона Бэллардо (John Bellardo) и Стефана Сэвиджа (Stefan Savage). Атаки на ассоциацию Описываемый далее механизм реализации отказа в обслуживании является излюбленным методом злоумышленников и очень часто используется в качестве дополнительного механизма при проведении атак на клиентов беспроводной сети. Перед началом передачи данных клиент должен пройти аутентификацию на точке доступа. Злоумышленник, прослушивающий трафик беспроводного сегмента, имеет возможность узнать MAC адреса точки доступа и ее клиентов. Именно MAC адреса используются для идентификации управляющих сообщений аутентификации. Соответственно, если злоумышленник имеет возможность сгенерировать пакет отказа от доступа (Deauthentication) от MAC адреса клиента в адрес точки доступа, она примет этот пакет и откажет клиенту в доступе. Подобной атаке подвержен и механизм установления ассоциации (Association Request - Association Response), когда у злоумышленника появляется возможность послать от MAC адреса клиента пакет Disassociate, который будет принят и обработан точкой доступа. Поскольку эти пакеты также не аутентифицированы, злоумышленник имеет возможность отключить от точки доступа любую станцию, не считаясь с используемой технологией защиты. Некоторые точки доступа подвержены атакам Authentication Flood, когда злоумышленник генерирует большое количество запросов на аутентификацию от различных MAC адресов. Одни из них в результате подобной атаки могут полностью потерять возможность обслуживать клиентов на какое-то время и обрабатывать новых клиентов во время атаки. Описанные атаки могут быть реализованы с помощью различных утилит, например уже упоминавшейся aircrack или voidi 1. Функции энергосбережения В стандарт 802.11 встроены функции энергосбережения, которые помогают более экономно расходовать электроэнергию беспроводных устройств. В спящем режиме клиент не передает и не получает данные. Перед переходом в спящий режим клиент сообщает об этом точке доступа, после чего точка доступа начинает сохранять пакеты, направленные этому клиенту, в буфере. 244
Глава 6. Обнаружение атак и контроль защищенности Периодически клиент переходит в активный режим и передает точке доступа уведомление об этом. Если в буфере есть информация для этого клиента, то точка доступа передает ему данные из буфера. Злоумышленник может сгенерировать ложный пакет, в котором уведомит точку доступа, что клиент перешел в активный режим, после чего точка доступа передаст данные. После того как реальный клиент перейдет в активный режим, он не получит своих данных. Вышестоящие уровни Атаки на сетевом и более высоких уровнях модели OSI в основном связаны с особенностями реализации программного обеспечения точек доступа. Конечно, сейчас трудно найти устройство, которое бы переставало нормально функционировать при обработке много лет наводящего ужас «Ping of Death», но зависание при сканировании сканером уязвимостей происходит довольно часто, особенно среди точек доступа класса SOHO. Авторам приходилось сталкиваться с точками доступа, позволяющими через TFTP сервер загружать прошивку (т.е. заново устанавливать операционную систему), что в лучшем случае приводило к сбросу всех настроек и переходу к начальной конфигурации, а в худшем - к получению злоумышленником полного контроля над беспроводной сетью. 6.1.2. Уязвимости ЕАР Протокол ЕАР также может использоваться для организации атак типа «Отказ в обслуживании», поскольку сообщения ЕАР (например, Request, Response, Success, Failure) не аутентифициро- ваны. Например, для принудительного отключения клиента нарушитель может отправить от его имени (МАС-адреса) фрейм ЕАР Logoff. Фрейм ЕАР Logoff не аутентифицируется и, следовательно, для нарушителя достаточно перехватывать трафик беспроводной сети и формировать фреймы. Если клиент успешно прошел процедуру аутентификации, от точки доступа приходит сообщение «ЕАР Success». При этом стандарт 802.1Х требует, чтобы процедура обмена пакетами была полностью завершена. Если нарушитель отправит пакет ЕАР Success от имени точки доступа до того как полностью завершится процедура обмена пакетами, клиент не сможет взаимодействовать с сетью несмотря на то, что было получено сообщение «ЕАР Success». Точно таким же образом может быть отправлен фрейм ЕАР Failure, приводящий к тому же результату - сбою подключения клиента 245
Безопасность беспроводных сетей к точке доступа. Как и любой сетевой протокол, ЕАР уязвим к DoS- атакам, основанным на переполнении точки доступа запросами разного рода. Например, точка доступа может быть переполнена запросами EAPOL Start. 6.1.3. Контроль политики безопасности Несмотря на все предпринимаемые меры по контролю настроек на рабочих местах, вполне вероятны ситуации, когда пользователи будут изменять настройки сетевых интерфейсов, подключаться к беспроводной сети с неконтролируемых устройств, соединять к сети свои точки доступа и другими методами нарушать политику безопасности. Точки доступа, формирующие беспроводную сеть, могут перезагружаться в результате технического сбоя, изменять свою конфигурацию из-за ошибок разработчиков или вмешательства злоумышленника. Для контроля текущей ситуации в радиоэфире необходимо иметь инструментарий, выполняющий задачи инвентаризации и контроля защищенности настроек беспроводных устройств. К сожалению, хорошо зарекомендовавшие себя сканеры уязвимостей, хотя и могут выполнять эти задачи, но не в полном объеме. Например, в настоящее время ни один из сканеров уязвимостей не может даже определить версию Windows Mobile, или проверить корректность настройки беспроводных интерфейсов этой ОС. Естественно, что сканер уязвимостей не в состоянии указать точку доступа, через которую тот или иной клиент подключился к беспроводной сети. В отличие от проводной сети специализированные «беспроводные» сканеры как класс практически отсутствуют и их нишу занимают системы обнаружения беспроводных атак, использующие пассивный мониторинг трафика для инвентаризации беспроводной сети и контроля защищенности. 6.1.4. Обнаружение беспроводных атак Системы обнаружения беспроводных атак (Wireless Intrusion Detection Systems, WIDS) сочетают в себе функции сигнатурных и поведенческих IDS. С их помощью также решается ряд задач, характерных для сканеров уязвимостей. В настоящее время существует достаточно много разнообразных реализаций подобных систем. В данном разделе делается попытка описания возможностей систем обнаружения беспроводных атак, принципов их работы и места в комплексе средств обеспечения безопасности беспроводной сети. 246
Глава 6. Обнаружение атак и контроль защищенности 6.1.5. Возможности WIDS Поскольку системы обнаружения беспроводных атак являются молодым классом средств защиты, набор функций и подходов к их реализации у различных производителей довольно серьезно различаются. Несмотря на это, можно выделить следующие основные задачи, решаемые с их помощью: • составление карты беспроводной сети, инвентаризация сетевых устройств; • диагностика проблем с пропускной способностью беспроводной сети; • контроль политики безопасности; • определение уязвимостей конфигурации беспроводных сетей; • обнаружение и противодействие атакам в беспроводных сетях; • позиционирование сетевых устройств. Все приведенные категории задач в той или иной мере пересекаются, например неверная конфигурация может приводить к отклонению от политики безопасности или снижению пропускной способности сети. Основным механизмом, используемым WIDS, является пассивный мониторинг трафика. В связи с этим большинство подобных систем обнаружения может быть использовано в качестве беспроводного сетевого анализатора, и наоборот - многие системы обнаружения атак основаны на сетевых анализаторах. Инвентаризация беспроводных устройств Функция инвентаризации позволяет администратору составить списки беспроводных устройств, формирующих сеть. Списки могут составляться либо вручную, либо на основе анализа текущего сетевого трафика. Основной характеристикой при настройке списков устройств является МАС-адрес узла. Дополнительно могут быть задействованы другие параметры беспроводных устройств, такие как: • используемый канал 802.11 b/g/a; • идентификатор производителя в МАС-адресе (IEEE OUI); • используемый вариант протокола 802.11 (802.11а, 802.11b, 802.11g или различные сочетания); • идентификатор сети (SSID). В качестве дополнительного динамического параметра может использоваться минимальный уровень сигнала. Как правило, в WIDS можно задавать несколько различных списков, например: корпоративных сетей, гостевых сетей, сетей соседей. Полученные списки являются основой для дальнейшей настройки системы, но и сами могут быть источниками событий. Например, обнаружение точки доступа с 247
Безопасность беспроводных сетей SSID корпоративной сети, но отсутствующей в списке легальных устройств, может быть признаком атаки «человек посередине». Диагностика пропускной способности Большинство систем обнаружения беспроводных атак имеет возможность контроля состояния физического и канального уровней сети 802.11. Ситуации, приводящие к срабатыванию системы, можно разбить на следующие категории. • Перегрузка канала или устройства: большое количество клиентов на точку доступа; чрезмерная загрузка беспроводной сети или точки доступа; падение качества сигнала; большое количество широковещательных пакетов. • Ошибки в настройке: перекрытие каналов; точка доступа не поддерживает максимально доступную для стандарта скорость передачи; конфликтующие настройки точек доступа с одним идентификатором сети; большое количество неассоциированных клиентов, рассылающих Probe Request на скорости 1 Мбит/с. • Проблемы совместимости: передатчик не использует методы предотвращения конфликтов для смешанных (802.11 b/g) сетей; клиентская станция постоянно переключается между 802.11д и 802.11b; использование нестандартных скоростей передачи. • Аномальный трафик в сети: высокий процент фрагментированных фреймов; большое количество повторных передач; передача данных на низких скоростях; большое количество ошибок при подсчете контрольной суммы; большое количество переключений между точками доступа; сеть перегружена управляющим трафиком. Контроль политики безопасности Контроль политики безопасности осуществляется на основе заранее сформулированных списков корпоративных точек доступа и клиентов и заключается в обнаружении отклонения от некоторого базового состояния, заданного администратором. В большинстве систем предусмотрены следующие возможности контроля принятой в компании политики безопасности беспроводной сети: 248
Глава 6. Обнаружение атак и контроль защищенности обнаружение несанкционированных клиентов; обнаружение несанкционированных точек доступа; обнаружение нарушений принятой политики защиты трафика. Проверки каждой из групп могут применяться либо ко всем обнаруживаем сетевым пакетам, либо для определенных групп точек доступа на основе SSID и списков контроля доступа по МАС- адресам. Это позволяет задавать разные правила для различных сетей, например, контролировать клиентов, точки доступа и применение 802.1 X и WPA в основной сети и не обращать внимания на незащищенные взаимодействия в рядом расположенной сети соседней компании. Кроме того, в разных частях корпоративной WLAN (основная сеть, гостевая сеть) могут действовать различные политики безопасности. Может контролироваться использование следующих технологий защиты беспроводных сетей: • шифрование (любое); • использование WEP; • аутентификация Open System/Shared Key; • применение виртуальных частных сетей на основе L2TP, IPSec, PPTP, SSH и т.д.; • использование 802.1Х с динамическим распределением ключей WEP; • шифрование TKIP (WPA); • аутентификация Protected ЕАР (РЕАР); • аутентификация на общих ключах (WPA-PSK, 802.1 H-PSK); • аутентификация EAP-FAST/LEAP; • шифрование AES (802.11 i). Соответственно, если администратор указывает, что в сети с SSID «Corporate» должно использоваться шифрование TKIP с аутентификацией РЕАР, любые точки доступа с подобным идентификатором сети, пытающиеся использовать другие технологии защиты, будут вызывать срабатывание системы обнаружения атак. Определение уязвимостей сети Задача определения ошибок в конфигурации беспроводных сетей тесно переплетается с задачей контроля соблюдения политики безопасности. В проводных сетях подобные функции реализуются с помощью средств анализа защищенности (сканеров), представляющих собой активные утилиты. В беспроводных сетях используется комбинированный подход, сочетающий активные и пассивные методы с приоритетом последних. Ошибки в конфигурации можно разбить на следующие группы: 249
Безопасность беспроводных сетей • ошибки в настройке беспроводных клиентов; • ошибки в настройке точек доступа; • ошибки в настройке механизмов защиты. Можно выделить следующие типичные ошибки в настройке различных компонентов беспроводной сети. Рабочие места пользователей: наличие рабочих станций в режиме Ad-Hoc; клиент с несколькими профилями соединений; наличие неассоциированных клиентов; использование аутентификации типа Open System/Shared Key; использование клиентом в режиме Ad-Hoc идентификатора SSID точки доступа. Точки беспроводного доступа: использование настроек «по умолчанию»; широковещательная рассылка SSID; использование аутентификации типа Open System/Shared Key; работа точки доступа в режиме сетевого моста. Механизмы защиты: использование LEAP; не использование шифрования на точке доступа или клиенте; повторное использование вектора инициализации WEP; слишком большой промежуток смены ключей WEP (при использовании стандарта 802.1 X); использование векторов инициализации WEP, уязвимых для FSM-атак (представляет чисто исторический интерес); отсутствие шифрования широковещательного трафика при использовании стандарта 802.1 X; несоответствие используемых протоколов защиты заданному профилю (см. предыдущий раздел). Часть приведенных проверок требует дополнительного внимания со стороны администратора. Так, для определения точек доступа со стандартными настройками система обнаружения атак должна обладать списком, содержащим OUI производителя и стандартный идентификатор сети. Как правило, подобные списки предоставляются производителем, но практика показывает, что они немного отстают от действительности. В связи с этим рекомендуется следить за списками стандартных настроек точек доступа и добавлять их в конфигурацию WIDS. Собственно атаки Количество обнаруживаемых беспроводной IDS атак сильно отстает от подобной характеристики проводных систем, где список правил обнаружения атак может исчисляться тысячами. Это связа- 250
Глава 6. Обнаружение атак и контроль защищенности но с тем, что WIDS сконцентрированы на канальном уровне модели OSI, обладающем гораздо меньшей энтропией, чем например прикладной, для которого создана большая часть сигнатур проводных систем обнаружения атак. Конечно, система обнаружения атак может расшифровать трафик WEP, WPA или 802.11 i в случае использования для аутентификации статических ключей, но в корпоративной сети это скорее исключение, чем правило. Если в сети используется аутентификация 802.1 X, система обнаружения атак просто не имеет доступа к ключам шифрования и не может анализировать данные и заголовки более высоких уровней, чем канальный. Ниже в табл. 6.1 приведен список атак, обнаруживаемых системами AirMagnet. Таблица 6.1 Атаки, обнаруживаемые AirMagnet Название атаки Airsnarf attack detected ARP Request Replay attack Device probing for AP Dictionary attack on EAP methods Faked APs detected Fake DHCP server detected Hotspotter tool detected Illegal 802.11 packets detected Man-in-the middle attack detected Описание Обнаружены попытки использования утилиты Airsnarf для организации ложных точек доступа и fishing-атак Проводится атака с повтором перехваченного зашифрованного пакета для ускорения вскрытия WEP Клиент настроен на установление соединения с любой точкой доступа Большое количество неудачных попыток установить сессию по протоколу ЕАР Обнаружено большое количество точек доступа, с которыми не установлено не одного соединения. Это характерно для ситуаций, когда используется утилита FakeAP В беспроводной сети обнаружен сервер DHCP Обнаружены попытки использования утилиты Hotspotter для организации ложных точек доступа и fishing-атак Обнаружен пакет, нарушающий правила стандарта 802.11 Обнаружена попытка организации атаки «человек посередине» 251
Безопасность беспроводных сетей Название атаки NetStumbler detected Potential ASLEAP attack detected Potential Honey Pot AP detected PSPF violation Soft AP or Host AP detected Spoofed MAC address detected Wellenreiter detected Описание Обнаружен трафик, характерный для утилиты NetStumbler Обнаружен трафик, характерный для атак на протокол LEAP с использование утилиты ASLEAP Обнаружена точка доступа, маскирующаяся под корпоративную Обнаружена прямая передача пакетов между клиентами, что является нарушением политики Publicly Secure Packet Forwarding (PSPF) Обнаружено использование программной реализации точки доступа (HostAP, SoftAP) Обнаружена подмена МАС-адреса, с целью обхода фильтров на основе МАС-адресов Обнаружен трафик, характерный для утилиты Wellenreiter В последнее время в связи с большим количеством обнаруженных уязвимостей в драйверах беспроводных адаптеров в системы WIDS стали включать сигнатуры для подобных атак. Естественно, сигнатуры такого рода не свободны от ошибок первого и второго рода. Например, использование карточки Orinoco 802.11b со стандартными драйверами для Windows приводило к срабатыванию сигнатуры, обнаруживающей заполнение Clear To Send (CTF) пакетами. Инициализация сетевой карточки или переключение ее на другую точку доступа может вызвать обнаружение подмены (spoofing) МАС-адреса. Проблемы могут возникать при использовании злоумышленником нестандартных средств. Например, при использовании программных точек доступа на основе драйвера madwifi, а не HostAP, и «зашумлении» с их помощью эфира ложными фреймами beacon атака может быть не обнаружена. Механизмы реагирования Основной задачей системы обнаружения атак является своевременное уведомление администратора о потенциальных проблемах. В беспроводных IDS используются традиционные для систем подобного класса механизмы оповещения, такие как: • отправка сообщения по электронной почте; • уведомление через службу Messenger; • отправка SMS или сообщения на пейджер; 252
Глава 6. Обнаружение атак и контроль защищенности • уведомление через систему мгновенного обмена сообщениями; • передача POST или GET запроса Web-серверу; • передача управляющих сообщений SNMP; • запись сообщений в журнал событий Windows или на сервер Systlog; • печать сообщений на принтере. Как и проводные системы обнаружения атак, беспроводные IDS могут использовать механизмы, направленные на снижение возможных последствий обнаруженной атаки. И точно так же, как и в проводных сетях, таких механизмов два: 1) реализация DoS-атаки на узел возможного злоумышленника; 2) блокирование атакующего средствами активного сетевого оборудования. Кроме того, беспроводные системы обнаружения атак, как правило, реализуют функции определения координат источника сигнала и блокирования попыток соединения из точек, находящихся за пределами периметра сети. В беспроводных сетях роль поддельных TCP-RST пакетов, применяемых проводными IDS, выполняют управляющие фреймы Disassociate или Deauthentication. По сути система обнаружения атак сама проводит атаку, описанную ранее в этой главе, причем эта атака может быть направлена как на точку доступа (Disassociate All), так и на конкретного клиента беспроводной сети. При настройке этого механизма необходимо соблюдать осторожность, поскольку Вы наверняка являетесь не единственным пользователем радиоэфира в округе. Если WIDS настроена на блокировку всех клиентов и точек доступа, отсутствующих в «белом списке» беспроводной сети компании, вашим соседям просто не дадут нормально работать. Некоторые из продуктов данного класса, особенно те, которые интегрированы с точками доступа, могут включать МАС-адрес потенциального злоумышленника в черный список на точке доступа, предотвращая попытки повторного соединения. Эту возможность тоже желательно использовать аккуратно. Например, при тестировании защищенности одной из беспроводных сетей авторам удалось вывести ее из строя, потратив буквально несколько десятков пакетов на каждого клиента. Просто WIDS надолго блокировала на точке доступа МАС-адрес машины, осуществляющей атаку. Естественно многие атаки проводились от адреса клиента сети или точки доступа. Хотя в этой ситуации попытки провести атаки типа «человек посередине» обречены на провал, вывод сети из строя сам по себе может причинить довольно серьезный ущерб. 253
Безопасность беспроводных сетей При блокировке подключений несанкционированных точек доступа к корпоративной сети системы обнаружения беспроводных атак могут взаимодействовать с коммутаторами локальной сети. Как правило, на WIDS существует возможность задать список адресов коммутаторов или строить его динамически на основе опроса устройств по протоколу SNMP. При обнаружении несанкционированной точки доступа, нарушающей политику беспроводной безопасности, система по протоколу SNMP опрашивает известные устройства на предмет наличия ее МАС-адреса в таблице коммутации. Если поиск успешен, то система посылает коммутатору команду на блокировку порта, к которому подключена точка доступа. К сожалению, этот механизм не может быть применен для блокировки клиентов с ненастроенными беспроводными адаптерами, поскольку установить адрес проводного интерфейса по МАС- адресу беспроводного интерфейса достаточно трудно. Проверить тот факта, что точка доступа подключена к проводной сети компании, можно отправив контрольный ARP-запрос, который будет ретранслирован в беспроводную сеть. Поскольку МАС-адрес отправителя передается в открытом виде даже при использовании протоколов шифрования трафика, он может быть использован для контроля появления пакета в беспроводной сети. Справедливо и обратное - перехватив и повторно послав зашифрованный ARP-пакет в локальную сеть через несанкционированную точку доступа, можно по наличию его в проводном сегменте определить место подключения устройства. Одной из полезных функций систем обнаружения беспроводных атак является возможность определения координат устройства, нарушившего политику безопасности. В случае, если система использует один мобильный сенсор, то для позиционирования понадобятся направленная антенна, план здания и некоторая физкультурная подготовка. Сделав замеры уровня сигнала от искомого объекта с трех точек, определяются векторы, по которым наблюдается максимальный уровень. Точка пересечения этих линий является местоположением источника радиосигнала (см. рис. 6.1). В большинстве случаев векторы не пересекутся в одной точке, а образуют так называемый «треугольник ошибок», размеры которого при небольших расстояниях будут очень велики. Этот метод пеленгации, или триангуляции, хорошо известен по военным фильмам и «охоте на лис». Очень похожий метод используется в распределенных системах обнаружения беспроводных атак. При обнаружении сигнала искомого объекта несколькими сенсорами по уровню сигнала определяется 254
Глава 6. Обнаружение атак и контроль защищенности Рис. 6.1. Триангуляция с направленной антенной примерное расстояние до его источника. Вокруг каждого сенсора строится окружность, радиус которой обратно пропорционален уровню принимаемого сигнала. Место расположения источника сигнала будет находиться в районе пересечения окружностей (см. рис. 6.2). Рис. 6.2. Позиционирование устройств 255
Безопасность беспроводных сетей В реальных условиях для повышения точности работы этого метода требуется учет особенностей помещения, поскольку в большинстве случаев отражение и рассеяние сигнала уменьшают точность определения его мощности. Для этого проводят предварительные замеры уровня сигнала от источников, находящихся в различных точках помещения, и на основании этих данных рассчитывают соответствующие поправки. Естественно, в современных системах все расчеты проводятся автоматически. Некоторые системы автоматически вносят корректировки, связанные с затуханием и отражением сигнала, на основе текущей ситуации в эфире. Для корректного выполнения этой функции администратор указывает расположение сенсоров WIDS и точек доступа на плане здания, что позволяет системе определять расстояния от сенсоров до источников сигнала и вычислять дополнительно затухание, вносимое за счет особенностей помещения. С функцией определения местоположения источника сигнала связан еще один интересный механизм, в настоящее время широко внедряемый многими производителями WIDS. Суть его заключается в том, что система обнаружения атак блокирует попытки подключения с территорий, находящихся за пределами физического периметра, даже если подключается вполне легальный клиент. Это позволяет ограничить соединения к сети только пределами физического периметра. Однако не стоит считать этот механизм очередной панацеей. Грамотное использование антенн и физических особенностей здания, а также некоторая толика удачи вполне позволяют квалифицированному злоумышленнику создать видимость, что соединение происходит с разрешенной территории. 6.1.6. Развертывание WIDS Первым этапом при построении системы обнаружения атак является выбор типа используемой системы. Система может быть интегрирована в активное сетевое оборудование либо поставляться в качестве отдельного продукта. Как правило, специализированные решения поддерживают большее количество функций. Большинство систем обнаружения атак может поставляться как в качестве мобильного анализатора на базе КПК или ноутбука, так и в виде распределенной системы с централизованным управлением. Мобильные анализаторы ограничены по покрываемой территории и зачастую не поддерживают такие функции как активное противодействие атакам и позиционирование беспроводных устройств. После определения типа внедряемой системы производится определение мест расположения сенсоров. Это, наверное, самый 256
Глава 6. Обнаружение атак и контроль защищенности важный этап в процессе внедрения WIDS. Количество и месторасположение сенсоров зависят от тех задач, которые будут решаться с помощью WIDS. Например, при использовании системы для усиления периметра безопасности путем контроля атак в беспроводных сетях необходимо удостовериться, что сенсоры покрывают всю территорию компании. Лучшим способом здесь является проведение предварительных замеров с использованием реального сенсора и реальных точек доступа и станций. Не стоит забывать, что система обнаружения беспроводных атак должна контролировать не только точки доступа, но и активность клиентов, мощность передатчиков которых меньше. Соответственно, при тестировании замеры должны проводиться и для точки доступа и для клиента. В некоторых ситуациях, например в небольших удаленных офисах, достаточно поставить один сенсор WIDS с антенной, достаточно мощной для покрытия всей контролируемой территории. В этом случае снижается эффективность функции позиционирования устройств. С другой же стороны, если сеть офиса состоит из одного сетевого сегмента, определение места подключения несанкционированной точки доступа не является большой проблемой. После установки сенсоров начинается настройка системы под конкретную ситуацию. Первым этапом здесь является инвентаризация беспроводных устройств. Необходимо составить списки МАС-адресов точек доступа и беспроводных клиентов, расположить их на плане здания. В большинстве систем существует возможность добавления обнаруженных устройств в тот или иной список и импорта их из файлов различных форматов. Неплохим подспорьем при составлении списка МАС-адресов беспроводных клиентов являются журналы DHCP-сервера. Следующим этапом является разработка и применение политики обнаружения атак. Здесь определяются события, которые должны обнаруживаться системой, и используемые механизмы реагирования. На самом деле данный этап не заканчивается никогда, поскольку ситуация в беспроводной сети изменяется, производители выпускают обновленные сигнатуры, появляются новые узлы и т.д. Последним этапом является контроль эффективности внедрения системы. Для этого целесообразно провести ряд тестовых атак на сеть либо своими силами, либо в рамках тестирования на проникновение. Не следует забывать и о том, что сама система обнаружения беспроводных атак представляет собой достаточно сложный продукт и может быть подвержена разнообразным атакам. В связи с этим целесообразно выполнить рекомендации, приведенные далее. 257
Безопасность беспроводных сетей Проверьте реакцию системы на нестандартный трафик в беспроводной сети. Для этой цели можно воспользоваться различными «фаззерами», описанными в разделе, посвященном оценке защищенности. Обратите внимание на уровень привилегий, используемый WIDS для работы с СУБД. Если при этом используется учетная запись суперпользователя, последствия атак могут быть весьма серьезными. При проектировании сетевой инфраструктуры для WIDS учитывайте требования к разделению сетей. Выносите управляющий трафик в отдельный сегмент/VLAN. Отключайте неиспользуемые протоколы удаленного управления сенсорами. Использование telnet в 2006 г. может быть оправдано только при построении honeypot. Просканируйте сетевые интерфейсы сенсоров и серверов WIDS с помощью сканера уязвимостей, поддерживающего Web- приложения. Для организации Web-сервера вполне может использоваться старая версия сервера Apache (или другого приложения), содержащего уязвимости. В большинстве случаев Вы будете неприятно удивлены. Но обязательно сделайте резервную копию системы. Сканер, не разбираясь в сути вопроса, может получить доступ к удаленному управлению, и порядком набедокурить, нажимая на все доступные кнопки. Серьезно относитесь к настройке рабочей станции, с которой происходит управление системой. Авторы используют следующий подход, легко реализуемый с помощью настройки Proxy-сервера: • браузер, используемый для работы в корпоративной сети, не имеет доступа к ресурсам Internet; • браузер, работающий с Internet, ограничен в использовании корпоративных ресурсов и работает в «песочнице». Дополнительно можно заблокировать выполнение сценариев в зоне безопасности My Computer (http://support.microsoft.com/kb/833633). Попытайтесь отнестись к системе WIDS как к критичному бизнес-приложению и выполнить сформулированные в политике безопасности требования для данного класса продуктов. Кроме внеочередного пересмотра политики Dbi получите уникальную возможность побывать на месте специалистов ИТ и пользователей, ежедневно выполняющих требования политики. 6.1.7. Примеры систем обнаружения беспроводных атак В этом разделе приведены описания нескольких решений, которые могут быть использованы для построения системы обнаруже- 258
Глава 6. Обнаружение атак и контроль защищенности ния беспроводных атак. Каждое из них является представителем целого класса подобных решений. В случае, если у читателя возникнет необходимость в оценке системы обнаружения беспроводных атак, в качестве базы можно использовать рекомендации SNAC NSA «Guidelines for the Development and Evaluation of IEEE 802.11 Intrusion Detection Systems (IDS)», доступные по адресу: http://www.nsa.gov/snac/downloads_wireless.cfm?MenulD=scg10.3.1. Этот документ не отражает некоторые возможности современных WIDS, но построен вполне логично и легко может быть расширен таким образом, чтобы отражать конкретные требования. Продукты компании AirMagnet Комплекс AirMagnet представляет собой полнофункциональную систему обнаружения беспроводных атак и контроля производительности сети. Система поставляется в трех вариантах: AirMagnet Handled Analyzer, AirMagnet Laptop Analyzer и AirMagnet Enterprise. Программы AirMagnet Handled Analyzer и AirMagnet Laptop Analyzer представляют собой мобильные системы обнаружения атак, развертываемые на базе КПК с ОС Windows Mobile и ОС Windows ХР соответственно. По функциям эти решения мало отличаются друг от друга, за исключением того, что вариант на базе КПК работает только с беспроводными адаптерами 802.11b, тогда как AirMagnet Laptop поддерживает адаптеры 802.11a/b/g. Программы реализуют следующие функции: • составление карты беспроводной сети, инвентаризация сетевых устройств; • диагностика проблем с пропускной способностью беспроводной сети; • контроль политики безопасности; • определение уязвимостей конфигурации беспроводных сетей; • обнаружение и противодействие атакам в беспроводных сетях. Принцип реализации системы - пассивный сбор информации с беспроводной сетевой карты в режиме мониторинга. Программное обеспечение устанавливается на операционную систему Microsoft Windows (XP/2003) и может применяться как в качестве отдельного продукта, так и в качестве сенсора распределенной системы контроля беспроводной сети AirMagnet Enterprise. Система поддерживает работу с GPS, что позволяет определять текущее положение рабочего места. Данная функция может использоваться для построения карты беспроводной сети, а также при локализации беспроводных устройств. 259
Безопасность беспроводных сетей Для сбора трафика на всех каналах сетей 802.11a/b/g используется сканирование, т.е. карточка прослушивает трафик на одном из каналов, затем переходит на другой и т.д. На основе анализа собранного трафика отображается информация об обнаруженных клиентах и точках доступа, используемых сетевых протоколах и технологиях защиты. Имеется возможность сохранять и анализировать трафик беспроводной сети, используя встроенный сетевой анализатор или внешние программы. В поставку программы входят дополнительные утилиты, позволяющие измерять уровень сигнала для выбранной точки доступа или клиента, проводить диагностику качества связи в беспроводной сети и т.д. При наличии направленной антенны программы могут использоваться для позиционирования беспроводных устройств с помощью направленной антенны. Архитектура AirMagnet Enterprise Система AirMagnet Enterprise представляет собой многофункциональный комплекс, позволяющий решать следующие задачи в распределенной беспроводной сети: • упорядочивание использования беспроводных сетей; • контроль радиосетей (определение несанкционированных точек доступа и клиентов); • контроль политики безопасности в отношении использования сетей на основе 802.11; • обнаружение атак в беспроводной сети; • локализация нарушителей и противодействие атакам как через проводную сеть, так и в радиоэфире. Система состоит из следующих компонентов: • сенсоры системы (AirMagnet SmartEdge Sensor); • сервер (AirMagnet Enterprise Server); • консоль управления (AirMagnet Enterprise Console). Взаимодействие компонентов системы показано на рис. 6.3. В качестве сенсоров системы AirMagnet Enterprise могут выступать: • сенсоры SmartEdge; • мобильные сенсоры AirMagnet Laptop; • точки доступа Cisco. Сенсоры SmartEdge представляют собой программно- аппаратные комплексы, имеющие форм-фактор точки доступа (170x210x35). Сенсоры имеют разъемы для подключения внешних антенн для диапазонов 2,4 и 5 ГГц. Поддерживается подвод питания по Ethernet (РОЕ). Сенсоры выпускаются в двух реализациях - для внутреннего монтажа (рабочий диапазон температур О...5О°С) и для внешнего монтажа (сенсоры А5023). 260
Глава 6. Обнаружение атак и контроль защищенности AirMagnet Sensor ___ »- н^ , , / AirMagnet Enterprise Server AirMagnet Sensor ^ ■^ AirMagnet AirMagnet LaPt0P Console Рис. 6.З. Взаимодействие компонентов системы Сенсоры поддерживают возможность настройки по интерфейсу RS-232 (кроме А5023). При конфигурировании по сети могут использоваться следующие интерфейсы: • Telnet (TCP/23), по умолчанию деактивизирован; • Web-интерфейс HTTPS (TCP/443), по умолчанию активизирован; • консоль AirMagnet Laptop (TCP/443); • консоль AirMagnet Enterprise (TCP/443). При настройке сенсора через HTTPS используется самоподписанный сертификат, генерируемый сенсором при установке. Взаимодействие между сенсором и консолью также осуществляется с использованием HTTPS. Использование консоли AirMagnet Enterprise позволяет настраивать основные параметры сенсора, такие как адрес, имя, часовой пояс. С помощью консоли AirMagnet Laptop можно в режиме реального времени получать доступ к событиям и трафику сенсора, т.е. полностью дублировать функции AirMagnet Laptop Analyzer. В качестве сенсоров также могут применяться компьютеры с установленной системой AirMagnet Laptop Analyzer. При подключении в систему они работают как полнофункциональные сенсоры системы AirMagnet Enterprise, передают события серверу и поддерживают функции удаленного управления. Точки доступа Cisco также могут быть использованы в качестве сенсоров системы обнаружения атак. В этом случае точки доступа не могут работать в качестве сетевого моста, только в режиме мониторинга. Поскольку весь трафик с точки доступа передается на Enterprise Server для дальнейшей обработки, такое решение должно быть тщательно проанализировано с точки зрения пропускной способности сети и мощности сервера. 261
Безопасность беспроводных сетей Рис. 6.4. Консоль управления AirMagnet Сервер представляет собой программное обеспечение, работающее на основе Web-сервера Apache и сервера баз данных Microsoft SQL Server (входит в поставку) или базы Microsoft Access. В качестве базовой платформы используется Microsoft Windows 2000/ХР/2003. Управление сервером может осуществляться с помощью браузера или консоли управления. Управление системой Управление осуществляется с помощью консоли управления. Копия экрана стартовой страницы приведена на рис. 6.4. Интерфейс консоли управления очень похож на интерфейс системы AirMagnet Laptop. Основные функции вынесены в закладки AirWISE, Infrastructure, IDS/Rogue, Charts. Сенсоры группируются по этажам, этажи группируются по зданиям, здания могут быть объединены в группы (кампусы, города). Для каждого этажа либо здания можно импортировать план, на котором разместить имеющиеся точки доступа и сенсоры AirMagnet. Это позволяет иметь под рукой графический план беспроводной сети. На плане здания можно указать территорию, с ко- 262
Глава 6. Обнаружение атак и контроль защищенности торой разрешено соединение с сетью. Политики обнаружения атак могут задаваться для групп сенсоров (группа зданий - здание - этаж). Такой подход позволяет применять одинаковые настройки для групп сенсоров, работающих в схожей среде (например, задавать белые списки точек доступа и «соседей» на этом этаже). Всегда есть возможность перейти на сенсор, обнаруживший то или иное событие, и, используя интерфейс AirMagnet Laptop, уточнить причину срабатывания (вплоть до перехвата трафика). При запуске консоли пользователи AirMagnet аутентифицируют- ся и в зависимости от принадлежности к определенной роли получают фиксированный набор прав. Система AirMagnet поддерживает следующие методы аутентификации: • AirMagnet - учетная запись пользователя сохраняется в базе системы AirMagnet (AirMagnet Enterprise Server database); • Active Directory - учетная запись пользователя сопоставляется с его учетной записью в домене Windows; AirM.iiom New User AuthenfcAonT)(* JA»MagrW User Now: | PMswori- j p Enable user account R*«| Location |РюЯе| . ' - UserRok JBasicUset = - . Remember password on toflin Display Sacurly Poicies and Everts ' Display Performance Polaes ana Event! vjj AirMagnet New User АЛепвсайвТи» Patswont Enable user accowit Rote Location | UicaiiDriNme - * 101010 to В & Moscow 9 Obratsova Ш S floor Рис. 6.5. Настройка прав доступа в AirMagnet Рис. 6.6. Настройка разграничения доступа в AirMagnet 263
Безопасность беспроводных сетей • Open LDAP - учетная запись пользователя сопоставляется с его учетной записью в базе LDAP-сервера. В системе предусмотрено три уровня привилегий: • Administrator (WLAN Administrators) - роль с полным набором привилегий; • Power User (Engineers) - роль, позволяющая выполнять просмотр и анализ событий, редактировать ACL, а также управлять механизмами реагирования; • Basic User (Technicians) - роль, позволяющая выполнять только просмотр и анализ событий. Набор прав для роли фиксирован, но при создании пользователя этот набор можно изменить (см. рис. 6.5). Для пользователя можно подкорректировать доступ к объектам сетевой инфраструктуры, созданным ранее и определяющим местоположение беспроводных средств (см. рис. 6.6). В системе AirMagnet предусмотрена возможность задания различных правил обнаружения атак, контроля политики безопасности и реагирования для разных групп беспроводных устройств. Группы могут формироваться на основе SSID, МАС-адресов и других параметров (см. рис. 6.7). Возможен импорт списков МАС-адресов из текстовых файлов и конфигураций различных систем управления, например Cisco WLSE. ~чз1 Air'.i ■ nrt Manage Access Control List Groups r Groups ~~—*— ' т-Devices ~ ~~~~ J|>00:0E:ED:C0:2E:.. i'ij00:0D:88:07:3A:.. DPiC-2 JEg00:12:F0:18.6E:6E default M, 0O:10:F4.D3:8C:57 :F8:D1:19:... 101 4iOO:OC:F1:2F:EF:41 «No current ssid» flbOO:OF:20:94 1 zl S Cancel Рис. 6.7. Настройка списка устройств в AirMagnet 264
Глава 6. Обнаружение атак и контроль защищенности AirMagnet Enterprise Console . ^li™ *f" i £on,ied Manage Help # I e t ttde AOmowtedged Location Г24 Holts) Seourtv DS*>s Pert crmence и CH I Sotrce Device «:„ 4 usco 39 69 H &,, Э СисоВЭТСгВА И:_ 11 Cisco 38 60 B2 Sl 11 Oseo44A2F3 *^AP operating in bridged mode detected Access Point Oft.OFDI'AlVAA,D2 (SSH>. ma.ftndim) is detected to be operating m the wireless bridged mode. An attacker or a rogue insider could install such a wireless bridge inside the corporate network that would invariably extend the corporate network to any location outade the corporate premises Detection of such wireless bridge devices mdicaies that something is wrong and &e security ofifae corporate network could be compromised The system suggests using the Tnacgulatwn feature to be a» this wzdsss bridge and takf appropriate steps ■-J OccurrencEs JJWrastracmre ф IDS/Rogue «Back J Рис. 6.8. Информация об атаке В случае обнаружения атаки выдается подробное описание причин ее возникновения и возможных ложных срабатываний, а также приводятся рекомендации по устранению проблемы (рис. 6.8). Механизмы реагирования Кроме методов извещения об атаке, поддерживаемых AirMagnet Laptop, система AirMagnet Enterprise позволяет использовать дополнительные методы реагирования, такие как: • позиционирование беспроводного устройства; • блокировка устройства в беспроводной сети; • блокировка устройства в проводной сети. Функция триангуляции позволяет определять местоположение беспроводного устройства, нарушившего политику безопасности. Для корректной реализации данной функции необходимо импортировать в систему план этажа и осуществить привязку сенсоров к плану. Точность триангуляции повышается при привязке к плану здания корпоративных точек доступа за счет автоматической юстировки системы. 265
Безопасность беспроводных сетей i AirM(11;nci Rogue Trlangulation *i* Rogue Active / i\ Г OtsffeyName MAC Address Device Name Alas Name ssc 11 IgDevice 0Channd U Privacy first Seen Time L«t Seen Time D-Lf*.64 A2B1 OaOD:88-84 A2B1 'exec master jtp. »"t,'/ --- T '* Active Access Port Б Y 03/2016-3&51 030017:4211 J€- 1 cm = AA ot logoe device n Ыие shaded «ea. The daikei Ыие shade ndicdes the more 1 X i 3 1ФТЫ Locatnn ■■Molt Рис. 6.9. Триангуляция устройства Точное определение координат устройства возможно в случае обнаружения его как минимум двумя сенсорами (см. рис. 6.9). Система AirMagnet устойчиво обнаруживает как точки доступа, так и клиентов беспроводной сети. Однако для повышения достоверности определения местоположения клиента необходимо, чтобы он генерировал довольно большой трафик. Для блокировки устройства в беспроводной сети один из сенсоров AirMagnet осуществляет по отношению к указанной цели атаку Deauthentication Flood. Эта атака позволяет устойчиво блокировать как точку доступа, так и отдельных клиентов. Блокировка может происходить как автоматически, так и по указанию администратора. Эта функция также может быть использована для предотвращения соединения с сетью из-за границ физического периметра. Функция блокировки устройства в проводной сети позволяет отключить сетевой порт, к которому подключается точка доступа. Для реализации данной функции необходимо настроить взаимодейст- 266
Глава 6. Обнаружение атак и контроль защищенности вие между сервером AirMagnet и коммутаторами локальной сети. Взаимодействие с коммутаторами осуществляется по протоколу SNMP. Система AirMagnet может использовать статический список коммутаторов или осуществлять самостоятельный поиск подобных устройств в сети. В случае обнаружения беспроводной точки доступа в локальной сети AirMagnet передает команду коммутатору на блокирование порта, к которому подключено устройство. Несомненным плюсом системы AirMagnet является практически полное покрытие известных атак на канальный уровень беспроводной сети и очень подробное описание атак. Отдельно хотелось бы выделить гибкую систему отчетов, позволяющую формировать документы из набора различных отчетов. Стандартные шаблоны отчетов включают в себя отчеты на соответствие различным регулирующим стандартам, таким как SOX, HIPAA, GLBA. Продукты Cisco В комплекс решений по архитектуре беспроводных сетей, поставляемых фирмой Cisco, входят компоненты, реализующие функции беспроводной системы обнаружения атак которые основаны на технологии компании Airespace. В сети на основе беспроводных коммутаторов Cisco Wireless LAN Controllers есть возможность задействовать функции системы Cisco Wireless Control System (http://www.cisco.com/en/US/products/ps6305/products_data_sheet090 0aecd802570d0.html). Этот продукт также может работать с модулями Cisco Catalyst 6500 Series Wireless Services Module (WiSM). В качестве сенсоров в системе используются точки доступа, которые кроме своих основных функций некоторое время уделяют работе в режиме мониторинга. Функции, реализуемые Wireless Control System (WCS), достаточно стандартны: • обнаружение атак; • контроль политики безопасности; • обнаружение несанкционированных точек доступа; • позиционирование устройств. В настоящее время, система обнаруживает семнадцать атак на беспроводные сети. Большинство из них направлено на обнаружение активности различных утилит, таких как Netstumbler, и аномальной сетевой активности, например, большого количества пакетов Disassociate (рис. 6.10). В описании сигнатур содержится информация о параметрах срабатывания, таких как количество пакетов за интервал времени и маска, по которой обнаруживается атака (рис. 6.11). 267
Безопасность беспроводных сетей Aci-css Co IPS** I t?r WebAuth Sta da d itroiLl ts S .t-e u^es 3 Bear. cesu;i-. erased Erasied Ёга-еЛ =мег,ея mer.aaenisr.; wb-!V3* 0 - * ■i г,;3 t! Рис. 6.10. Сигнатуры WCS В случае необходимости набор обнаруживаемых атак может быть расширен путем добавления собственных проверок. Синтаксис описания атак достаточно прост. Ниже приведен пример описания сигнатуры обнаружения DoS-атаки с использованием управляющих фреймов Disassociate. Рис. 6.11. Описание сигнатуры 268
Глава 6. Обнаружение атак и контроль защищенности Name = «Disassoc flood», Ver = 0, Preced= 7, FrmType = mgmt, Pattern = 0:OxOOAO:0x03FF, Freq=50, Quiet = 600, Action = report, Desc=«Disassociation flood» Поиск осуществляется в управляющих фреймах (FrmType = mgmt) и должно быть обнаружено 50 пакетов в секунду. Значение параметра Pattern задается в виде offset:pattern:mask. В обрабатываемых пакетах на значение по смещению offset накладывается битовая маска, указанная в параметре mask, и результат сравнивается со значением pattern. С помощью символа «!» можно указывать пакеты, которые не включают описанное значение. В каждой сигнатуре может присутствовать до 5 значений Pattern. Подробное описание стандартных сигнатур и способа создания собственных можно найти в документе «Wireless LAN Controller IDS Signature Parameters», доступном по адресу: http://www.cisco.eom/warp/public/102/controller_ids_sig.pdf. Контроль политики безопасности осуществляется на основе заранее заданного профиля сети, в котором указываются используемые протоколы защиты сети, поддерживаемый стандарт 802.11 и тип преамбулы. В случае отклонения параметров контролируемых точек доступа от заданных условий генерируется событие системы безопасности. Для обнаружения несанкционированных точек доступа и клиентов используются формируемые администратором списки МАС- адресов. Появление в контролируемой зоне точки доступа с новым МАС-адресом приводит к срабатыванию системы обнаружения атак. Кроме списка точек доступа контролируемой сети можно создавать и списки внешних сетей, например известных точек доступа, находящихся по соседству (см. рис. 6.13). Security AAA MCtt "Ail»" t.W,f г rtZl^Z лет iitrg "" i аЫ* d 3 а-гз Access control Lists IPSec Certificates С- ».e -fa i she W^b Auth Certififflte IPSet rertincdteb V/eb Auth tertificotB Trusted AP Pofcies enforced encryption policy Enforced preamble policy Enforced radio type policy jSOi.iib Validate SSID P Erab! Atert If Trusted AP is missing *" erabi Expiration Timeout for Trusted AP Entries (seconds) 'liC Atert .Г Trusted AP is irdssinq Г ЕгаЫ Fxpiratmti ГнпронГ tor Trusted AP Fntnps (second-;) 'l:c <B*fc ! "f { ijfcmwntT Рис. 6.12. Профиль сети 269
Безопасность беспроводных сетей -мм Cisco Wireless Control Syste me; root Logout Refresh Mci-ntcr » Configure - iscstior. ~ idministration ~ Alarms Alarms > goue - 00:13:19:f2:77:00 Пг1 MesM.je Help 92' arid 5N= -S Eve Mac T-e е)вй a command r:; Histcry id _i5 Client? Set Stat* tc 'Unki-слп 3,7;:£' Sadie tyc* '802.11b 3\ - -fs 4SSI so d 25.05.M06 12:45:4= Location Evg|ji_Histor^ Annotations Рис. 6.13. Несанкционированная точка доступа Полезной является функция проверки подключения точки доступа к проводной сети, так называемый Rogue Location Discovery Protocol, RLDP. Для этого через обнаруженную точку доступа в адрес беспроводного коммутатора посылается специализированный IP-пакет и, если он достиг получателя - значит, несанкционированная точка доступа имеет подключение к сети. Понятно, что этот метод работает только в случае, если несанкционированное устройство не использует шифрование. В противном случае перехватывается и повторно отправляется в сеть зашифрованный ARP-пакет. Естественно, для работы этой функции необходимо наличие в каждом сегменте контролируемой проводной сети устройства, анализирующего сетевой трафик. В случае с Cisco для этой цели могут использоваться специальным образом сконфигурированные точки доступа, так называемые Rogue detectors. Сообщение об атаке, генерируемое системой, в высшей степени лаконично (рис. 6.14). В нем указываются тип события, точка доступа, которая его обнаружила, и уровень связанного с событием риска. Для достаточно квалифицированного специалиста этой информации достаточно, но новичка подобная краткость может поставить в тупик. 270
Глава 6. Обнаружение атак и контроль защищенности Cisco Wt! Alarms | cHr;-er Controls Impers 00:14: > AP onation lb:59:f£:bO A- 'M-u-lb:;? ff :fc; History Рис. 6.14. Подмена точки доступа Дополнительной функцией, которая может быть реализована с помощью оборудования Cisco, является позиционирование устройств. Определение координат может проводиться в трех режимах: 1) режим ближайшей точки доступа; 2) триангуляция; 3) триангуляция с учетом топологии помещения (RF Fingerprinting). В последнем случае предварительно проводятся замеры, позволяющие определить уровень сигнала при нахождении передатчика в той или иной точке помещения. В целом, решения на базе точек доступа имеют меньший набор функций, чем специализированные системы обнаружения беспроводных атак, и Cisco здесь не исключение. Однако интеграция всех функций управления беспроводной сетью в одном продукте имеет достаточно серьезные преимущества. Система Kismet В качестве альтернативы приведенным коммерческим решениям можно использовать систему обнаружения беспроводных атак с открытым исходным кодом. К сожалению, ко времени написания книги большинство популярных в прошлом проектов были скорее мертвы, чем живы (см. список продуктов в конце раздела), за исключением уже неоднократно упоминавшегося анализатора Kismet. 271
Безопасность беспроводных сетей С помощью системы Kismet можно реализовать следующие функции: • централизованный контроль сенсоров (Remote Drone); • обнаружение несанкционированных точек доступа и клиентов; • обнаружение некоторых беспроводных атак. Для реализации распределенной системы обнаружения беспроводных атак на базе Kismet используется возможность развертывания удаленных сенсоров (Remote Drone). По сути сенсор представляет собой полнофункциональный вариант программы Kismet, работающий с беспроводной карточкой в режиме мониторинга, за исключением того, что ряд настроек передается с центрального сервера. Параметры сенсора хранятся в файле /usr/iocal/etc/kismet_drone.conf и мало чем отличаются от параметров сервера Kismet. Для его работы также необходимо указать источник (source), т.е. беспроводной интерфейс, поддерживающий работу в режиме мониторинга, и последовательность скачков. Кроме того, в параметре allowedhosts указывается IP- адрес сервера Kismet. На сервере Kismet каждый из удаленных сенсоров указывается в качестве дополнительного источника данных, например: source=kismet_drone,192.168.1.253:3501,drone source=kismet_drone,192.168.2.253:3501,drone Приведенные строки добавляют как источники данных два удаленных сенсора Kismet, работающие на машинах с IP-адресами 192.168.1.253 и 192.168.1.253. Информация об обнаруженных точках доступа и событиях, обнаруженных этими сенсорами, будет отображаться и сохраняться в журналах центрального сервера. В качестве аппаратной базы для построения сенсора может использоваться как стандартный ПК, так и точка доступа, на которой есть возможность запустить Linux. Примером таких устройств являются Linksys WRT54G или ASUS WL500G Deluxe. Инструкции по настройке Kimet на WRT54G можно найти в статье «WRT54G Kismet Drone How-To» (http://www.renderlab.net/projects/wrt54g/openwrt.html), дистрибутив Kimet для WL500G по адресу http://wiki.wl500g.info/ index.php/PackageKismet. Для автоматизации обнаружения несанкционированных точек доступа можно воспользоваться механизмом фильтрации, позволяющим указывать списки МАС-адресов, не обрабатываемых системой (см. рис. 6.15) В конфигурационном файле можно указать три списка МАС- адресов. В списке filter_tracker указываются адреса устройств, пакеты которых не обрабатываются никоим образом. 272
Глава 6. Обнаружение атак и контроль защищенности Session Edit View Bookmarks Settings Help Packet filtering options: filter_tracker - Packets filtered fron the tracker are not processed or recorded in any way. filter_du»p - Packets filtered at the dunp level are tracked, displayed, and written to the csv/xnl/network/etc files, but not recorded in the packet dunp filter_export - Controls what packets influence the exported CSV, network, xml, gps, etc files. All filtering options take arguments containing the type of address and addresses to be filtered. Valid address types are 'ANY', 'BSSID', 'SOURCE', and 'DEST'. Filtering can be inverted by the use of '!' before the address. For example, filter_tracker=A№f(!0O:0O:DE:AD:BE:EF) has the sane effect as the previous nac_filter config file option. filter_tracker=... Ы I filter_export=... [gBjgjjjj*1 Shell No. 2\~~ Рис. 6.15. Настройка фильтров в Kismet Для предотвращения записи некоторых пакетов в файлы журналов можно использовать фильтр filter_dump. Фильтр filter_export позволяет ограничить запись в файлы журналов. При использовании программы Kismet в качестве системы обнаружения беспроводных атак в большинстве случаев необходимо отключить сохранение пакетов, что реализуется модификацией параметра logtypes. Система Kismet поддерживает обнаружение ряда беспроводных атак. Параметры сигнатур, такие как количество уведомлений и порог срабатывания, задаются в файле конфигурации (рис. 6.16). Таблица 6.2. Атаки, обнаруживаемые Kismet Название атаки DEAUTHFLOOD LUCENTTEST WELLENREITER CHANCHANGE Описание Обнаружено большое количество запросов Deassociate/Deauthenticate Обнаружен трафик, характерный для утилит Lucent link test Обнаружена попытка подбора SSID Обнаружено изменение канала, на котором работает точка доступа 273
Безопасность беспроводных сетей Session Edit View Bookmaiks Settings Help I # Alerts to be reported and The Throttling rates. # alert=na«u>, throttle/unit,burst/unit The throttle/unit describes the number of alerts of this type that are \ # sent per time unit. Valid tine units are second, minute, hour, and day.; # Burst rates control the number of packets sent at a tine t For example; alert=F00,10/min,5/sec Would allow 5 alerts per second, and 10 alerts total per Minute. A throttle rate of 0 disables throttling of the alert. # See the README for a list of alert types. alert=NETSTUMBLER.10/min,1/sec alert=WELLENREITER.10/nin,1/sec alert=Ll)CENTTEST, 10/min, 1/sec alert=DEAUTHFL0OD,10/min,2/sec alert=BCASTDISCON,10/min,2/sec alert=CHANCHANGE.5/min,1/sec alert=AIRJACKSSID,5/min.1/sec alert=PROBEN0J0IN,10/min,1/sec alert=DlSASSQCTRAFFIC,10/min,1/see aJert=NULLPR08ERESP.10/min,1/sec alert=BSSTIMESTAMP,10/min,1/sec Shell * Shell No. 2 i LJ Ил Рис. 6.16. Настройка обнаружения атак в Kismet Список атак, обнаруживаемых Kismet, приведен в табл. 6.2. Окончание табл. 6.2 Название атаки BCASTDISCON AIRJACKSSID PROBENOJOIN DISASSOCTRAFFIC NOPROBERESP BSSTIMESTAMP Описание Обнаружено большое количество запросов Deassociate/Deauthenticate Инициализация ложной точки доступа AirJack Обнаружен клиент, не соединяющийся с точками доступа Обнаружен трафик от клиента, который отключен от сети Обнаружен пакет с нулевым значением SSID в Probe Response Возможна подмена точки доступа (неверный BSS timestamp) 274
Глава 6. Обнаружение атак и контроль защищенности Таким образом, хотя система Kismet и не обладает рядом возможностей коммерческих систем обнаружения беспроводных атак, на ее основе можно собрать распределенную WIDS с достаточно богатыми функциями. Учитывая, что цена точки доступа под управлением Linux сейчас составляет менее ста долларов, подобная система может быть и недорогой. В заключение раздела приведем список продуктов, которые могут быть использованы для развертывания системы обнаружения атак (табл. 6.3). Таблица 6.3 Системы обнаружения атак Название Airdefense AirMagnet Snort-Wireless Cisco Wireless Control System WIDZ WlanDetect Платформа Linux Windows Linux N/A Linux Linux Описание Набор продуктов для построения мобильной и распределенной WIDS http://www.airdefense.net/ Набор продуктов для построения мобильной и распределенной WIDS http://www.airmagnet.com Возможно, проект не поддерживается http://snort-wireless.org/ Встроенные в беспроводное оборудование функции системы обнаружения беспроводных атак http://www.cisco.com/ Возможно, проект не поддерживается http://freshmeat.net/projects/widz/ Поддерживается работа в качестве модуля IDS Prelude http://www.security-labs.org/wlandetect/ 6.2. Оценка защищенности беспроводных сетей Анализ (или оценка) защищенности беспроводных сетей может проводиться в качестве отдельной работы, а также в составе аудита на соответствие регулирующим документам тестирования на устойчивость к взлому и т.д. Часто употребляемое словосочетание «аудит безопасности беспроводных сетей» вызывает некоторое недоумение, поскольку любой аудит подразумевает проверку системы на соответствие фор- 275
Безопасность беспроводных сетей мальным критериям. Насколько же известно авторам, в отношении безопасности беспроводных сетей подобных критериев разработано не было. Разве если только речь идет о проверке того, что ситуация не противоречит внутренней политике безопасности компании. Оценка защищенности включает в себя анализ нормативной и технической составляющих комплекса мер по обеспечению компьютерной безопасности. Административные вопросы достаточно подробно рассмотрены в главе «Фундамент безопасной сети». Естественно, приведенные рекомендации в большинстве случаев избыточны и должны корректироваться, исходя из конкретной ситуации. Контроль эффективности технических мероприятий может осуществляться двумя методами: путем анализа конфигураций сетевого оборудования и путем тестирования на проникновение. По мнению авторов, наилучшие результаты достигаются при сочетании обоих методов. Далее будут приведен ряд атомарных работ, из которых, в зависимости от ситуации, можно формировать процесс оценки защищенности. 6.2.1. Анализ конфигураций В ходе анализа конфигураций, прежде всего, необходимо определить топологию подключения беспроводных сетей к основной сети компании. В идеальном мире для этого достаточно было бы проанализировать актуальную схему сети, но в реальности все несколько иначе. В большинстве случаев требуемый документ постепенно прорисовывается в ходе дебатов с сотрудниками отдела ИТ и анализа конфигураций активного сетевого оборудования. Если в результате рождается соответствующая действительности схема, это будет большим плюсом. На основе полученной схемы проверяется корректность реализации мер по разделению сетей на канальном и сетевом уровнях. Авторам приходилось сталкиваться с ситуациями, когда пользователи коммерческой системы беспроводного доступа к Интернет напрямую подключались к основной сети компании без какой-либо фильтрации трафика. Таким образом, стоимость реализации несанкционированного доступа к сети компании была равна стоимости стреч-карты. Реально же, не требовалась даже покупка карты, поскольку для аутентификации в сети использовался довольно слабый механизм. При наличии межсетевого экрана, разделяющего сети, необходимо проверить корректность его конфигурации. Это проще всего сделать путем анализа настроек посредством интерфейса управ- 276
Глава 6. Обнаружение атак и контроль защищенности ления. Политика фильтрации трафика должна быть построена по принципу «все, что не разрешено - запрещено», и в качестве разрешенных должны быть только протоколы, необходимые для работы сети. Межсетевой экран должен реализовывать функции протоколирования попыток нарушения политики фильтрации. Следующим этапом является проверка конфигураций серверных компонентов беспроводной сети. В ходе работ анализируются настройки точек доступа, беспроводных коммутаторов, серверов RADIUS и т.д. Параметры систем должны обеспечивать реализацию требований к защите беспроводных сетей, принятых в компании. В случае отсутствия требований, лицо, проводящее работы, должно их сформулировать хотя бы в общих чертах и, желательно, согласовать с заказчиком. Последним этапом является проверка настроек нескольких клиентов беспроводной сети. 6.2.2. Тестирование на проникновение В ходе проведения тестирования сети на устойчивость к взлому в качестве исходных данных аудитор располагает минимальным объемом информации, например данными о физическом месторасположении беспроводной сети. Естественно, что начальные этапы работы направлены на получение максимального количества информации. Построение карты сети Первой задачей является построение карты беспроводной сети. Как правило, строятся две зоны покрытия - для стандартного беспроводного адаптера и случае использования дополнительной антенны. Этот этап может иметь очень большое значение и для самого аудитора. Поскольку некоторые заказчики требуют, чтобы все было «по настоящему» несмотря на особенности российского климата, порою очень приятно обнаружить, что в качестве основного места для проведения работ можно использовать кафе, а не трещащую от крещенских морозов улицу. Авторы настоятельно рекомендуют обговаривать вопрос об отапливаемом помещении до начала работ в зимний период. Конечно, можно использовать в качестве базы автомобиль, но не у всех объектов можно достаточно комфортно припарковаться. Для выполнения этого этапа используются стандартные инструменты «боевых выездов», позволяющие измерять уровень сигнала и протоколировать координаты точек доступа. Серьезным подспорьем являются сервисы Google Map (http://maps.google.com/) и 277
Безопасность беспроводных сетей Google Earth (http://earth.google.com/), позволяющие спланировать работы и использовать красивую подложку для отчета. Поиск устройств Параллельно с построением карты сети проводится поиск несанкционированных точек доступа и ошибочно настроенных клиентов. Несанкционированные точки доступа можно обнаруживать по различным признакам. Например, при обследовании беспроводной сети, построенной с использованием оборудования Cisco и поддерживающей WPA-802.1X Вы обнаруживаете точку доступа D-Link, не защищенную даже с помощью WEP. Очевидно, что это устройство несанкционированно подключено к сети. Будьте внимательны - не «ломайте» сетей расположенных неподалеку компаний. Ситуация усложняется в процессе поиска несанкционированных клиентов беспроводной сети, и при проведении атак на них в ходе тестирования на проникновение. Здесь очень важно не ошибиться и не атаковать клиента чужой беспроводной сети, расположенной по соседству. Во избежание подобных ситуаций можно либо заранее получить список МАС-адресов, либо определять их принадлежность к сети заказчика другими методами. Базовым способом является триангуляция, позволяющая определить физическое местоположение станции. Если в компании уже развернута беспроводная сеть, то «родных» клиентов можно определить по тому, с какими точками доступа они установили ассоциацию, или по идентификаторам сети, рассылаемым в запросах на аутентификацию. Кроме того, может быть полезен анализ трафика, рассылаемого клиентами при установлении ассоциации с ложной точкой доступа. Запросы DNS, NetBIOS, UPNP зачастую позволяют определить имя машины и используемый префикс DNS. В зависимости от типа проводимых работ дополнительно могут определяться места подключения обнаруженных точек доступа и клиентов. Связанные с этим вопросы уже обсуждались ранее в этой главе. Атаки на сеть Выбор атак определяется механизмами безопасности, используемыми в испытуемой сети. В случае обнаружения несанкционированной незащищенной точки доступа работу по тестированию на проникновение можно считать выполненной. Определив диапазон IP-адресов корпоративной сети по запросам ARP или получив адрес у корпоративного 278
Глава 6. Обнаружение атак и контроль защищенности сервера DHCP, можно переходить к «проводной» части пен-теста, обсуждение которого выходит за рамки данной книги. Если в сети используется статистический ключ WEP, хорошие результаты дают статистические KoreK-атаки совместно с повторной передачей пакетов (утилиты aircrack, weplab). При использовании динамических ключей WEP и аутентификации 802.1Х можно воспользоваться атаками, использующими фрагментацию 802.11. В случае применения протокола аутентификации LEAP можно попробовать использовать словарные атаки для восстановления паролей (http://thc.segfault.net/releases.php7qrrleap). Если для обеспечения безопасности сети применяется протокол РРТР, т.е. смысл попробовать реализовать условия «человек посередине» с целью проведения атак на снижение уровня защиты или попробовать провести атаки на протокол аутентификации MS-CHAPv2. Протокол IPSEC является достаточно защищенным, но всегда есть смысл проверить корректность его применения. Использование общих ключей аутентификации всегда оставляет шанс, что администратор использует слабый пароль. Применение метода X- Auth позволяет подбирать пароль вручную или автоматизированным способом. Даже если получить доступ к сети не удастся, блокировка десятка учетных записей, обнаруженных с помощью запроса к Google, из-за большого количества ошибок аутентификации вполне заменит традиционный для беспроводных сетей DoS на канальном уровне. Если метод X-Auth применяется совместно с агрессивным режимом, возникает возможность реализации пассивной атаки, направленной на подбор пароля с помощью утилиты IKECrack (http://ikecrack.sourceforge.net/), и описанной в статье «PSK Cracking using IKE Aggressive Mode» (http://www.emw.de/download/pskattack.pdf). Теоретические основы атаки обсуждаются в публикации «Authentication Vulnerabilities in IKE and Xauth with Weak Pre-Shared Secrets» (http://www.ima.umn.edu/pliam/xauth/). Для проверки режима работы шлюза VPN и идентификации производителя устройства можно использовать программу ike-scan (http://www.nta-monitor.com/tools/ike- scan/). Если эти действия не принесли успеха, всегда остается возможность использования уязвимостей клиентов беспроводных сетей. Для этого можно использовать уже упоминавшиеся программы probemapper и Karma tools. В случае если существует необходимость эмулировать защищенную точку доступа, очень удобным инструментом является Airsnarf (http://airsnarf.shmoo.com/). Это набор программ, позволяющий на основе ноутбука и сетевого адаптера, 279
Безопасность беспроводных сетей работающего в режиме точки (mode master) доступа, эмулировать беспроводную сеть с поддержкой аутентификации по протоколу 802.1 X. Используя сертификат, выданный удостоверяющим центром, входящим в доверенные корневые центры Windows, такими как Verisign, Thawte, и т.д., можно реализовать атаку на клиентов беспроводной сети, не проверяющих идентификатор сервера Radius, указанный в сертификате. Как показывает практика, если в сети не используется жесткое централизованное управление профилями беспроводных подключений, атаки с ложной точкой доступа дают практически 100% -ный результат. Заставив клиентскую станцию присоединиться через свою точку доступа и выдав ей по протоколу DHCP поддельные адреса шлюза по умолчанию, можно воспользоваться одним из множества методов получения пароля пользователя, например, установить ложный сервер CIFS/SMB, содержащий папки, монтируемые станцией при загрузке, и перехватить сессию аутентификации. Сервер CIFS настраивается на поддержку протокола аутентификации Lan Manager, на взлом которого уходит от нескольких минут до нескольких дней (если Вы не обзавелись таблицами Rainbow Tables). Пароль пользователя можно получить, просто предоставив ему доступ в Интернет послушав сетевой трафик. Наверняка очень скоро он будет передан в открытом виде к серверам ICQ, бесплатной электронной почты и т.п. Не стоит забывать и про возможность наличия уязвимостей реализации, как серверных, так и клиентских компонентов рабочей станции. Добавление эксплойта для Internet Explorer в загружаемые пользователем страницы может дать поразительные результаты. Дополнительно желательно проверить сетевые драйверы рабочих станций и точки доступа на наличие незакрытых уязвимостей реализаций. В случае, если работы проводятся в рамках тестирования на проникновение, для определения версий сетевых адаптеров можно воспользоваться утилитой lib802finger (http://www.802.11 mercenary.net/lib802finger/), идентифицирующей стек беспроводных протоколов устройства. Внедрение закладок Если работы выполняются на территории тестируемой сети, можно воспользоваться старым способом с установкой жучков. При обнаружении неконтролируемого порта Ethernet к нему можно подключить КПК с беспроводным сетевым интерфейсом, который даст возможность в течение нескольких часов проводить удаленные 280
Глава 6. Обнаружение атак и контроль защищенности атаки на сеть. Стоимость подобной системы, собранной на базе подержанного КПК, составляет две-три сотни долларов. Другой, более простой способ заключается в подключении к компьютеру пользователя беспроводной карты. Пообщавшись с секретаршей о погоде, а, заодно установив ей на машину (возможно и на один из серверов, чем черт не шутит) USB адаптер Bluetooth или Wi-Fi, Вы получаете прекрасный канал обхода периметра сетевой безопасности. При выборе адаптера для осуществления подобной операции необходимо учитывать следующие факторы: его драйверы должны входить в стандартную поставку Windows и они должны поддерживать соеди