Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #98, ФЕВРАЛЬ 2007 г.

На чем палятся вардрайверы?

Андрей «Skvoznoy» Комаров

Хакер, номер #098, стр. 044


(andrej@itdefence.ru)

Программы для обнаружения атак на беспроводную сеть

Проникнуть в чужую беспроводную сеть – чем не забава! Пошалишь — и смотаешься. Взломщик не подключается к сети по проводам и может находиться где угодно, лишь бы был уверенный прием. В автомобиле на улице, например. Попробуй поймай! Только вот что я тебе скажу: все это популярное заблуждение. Технологии защиты развиваются, и даже банальное сканирование эфира самими обычными программами выдаст тебя с потрохами. А ты не знал?

Как выявить сканирование?

Чтобы найти поблизости беспроводные устройства, а следовательно, и беспроводные сети, используют специальные сканеры эфира. Поставил такую штуку на ноутбук или КПК и гуляешь по городу, в то время как программа ведет логи всех найденных точек доступа, с указанием SSID (идентификатора сети), производителя оборудования, механизма шифрования, скорости работы и даже координат, если к ноуту подключен GPS-модуль.

Знакомые софтины — Netstambler, Macstambler, Kismet (или его версия под винду - Kiswin) — в два счета просканируют эфир и выдадут всю информацию на экран.

Но тут есть один важный момент, о котором многие даже не подозревают! Эти сканеры не просто пассивно просматривают эфир, но также используют активные методы исследования, посылая в сеть специальные пакеты. Если ты просканировал эфир Netstambler’ом, то считай, ты уже выдал свое присутствие. Хорошо, если беспроводная сеть — это одинокая точка доступа, которой вряд ли даже поменяли пароль для администрирования через веб-панель. Но если это серьезная компания, то к любой подобной активности (внутри закрытой сети) отнесутся с подозрением. И дело тут вот в чем.

Когда осуществляется пассивное сканирование (в соответствии со стандартом 802.11, то есть Wi-Fi), ничего страшного не происходит, но и эффективность такого сканирования нулевая! Как только дело касается интимной информации о сети (которая может быть очень полезна взломщику), стемблер выдает свое присутствие из-за специального LLC/SNAP-фрейма.

Еще 3 года назад (23 марта 2002 года) хакер-исследователь Mike Craik предложил уникальный идентификатор, по которому можно задетектить трафик программы NetStumbler: LLC-фреймы, генерируемые сканером и содержащие уникальный идентификатор (OID) 0x00601d и идентификатор протокола (PID) 0x0001. Кроме того, специальная строковая переменная, передающаяся через 58-байтное поле данных, содержит информацию о версии продукта в так называемом «пасхальном яйце»:

0.3.2 Flurble gronk bloopit, bnip Frundletrune

0.3.2 All your 802.11b are belong to us

0.3.3 " intentionally blank"

Причин для таких подвохов может быть много, в том числе просьба оперативных органов, ссориться с которыми автору бесплатной программы, естественно, не хочется. Чтобы устранить «пасхальное яйцо», следует поковырять бинарник netstumbler.exe редактором ресурсов и изменить его. Но это не решит проблему обнаружения сканирования (с LLC-фреймом ничего не сделать). И к слову, Ministumbler - тулза из той же серии, только для платформы Pocket PC, -содержит аналогичные подвохи.

А как насчет альтернативы Netstumbler’у?

Теперь понятно, каким образом тебя может выдать обычное сканирование? И вроде бы ничего не делал, а по шапке получить уже можешь. Причем что с Netstumbler’ом, что с любым другим софтом. Рассмотрим лишь несколько примеров.

DStumbler (www.dachb0den.com/projects/dstumbler.html)

Это известнейший BSD-сканер беспроводных сетей, который, в отличие от Netstumbler, может проводить пассивное сканирование (режим RFMON), то есть определяет наличие точки доступа и ее SSID. Тем не менее, в режиме активного сканирования в нем тоже существуют эксклюзивные свойства. В поисках точки доступа программа генерирует огромное количество запросов (frame_control 0x0040). После получения ответа точки доступа на подобный запрос, будет произведена попытка запроса авторизации (0x0b) и ассоциации (0x0c). Эти значения являются константами, что дает право на их использование в качестве уникального идентификатора.

Wellenreiter (www.wellenreiter.net)

Может быть, кто-то, прочитав это, подумает: «А в чем проблема? Заюзай тот самый, пассивного сканирования, и все дела!» Возьмем сканер Wellenreiter, включенный в состав известного хакерского LiveCD-дистрибутива — BackTrack. Утилита заточена под Unixware-окружение и в качестве базового условия для старта, естественно, использует iwconfig. После опознавания беспроводной карточки ESSID будет автоматически выставлен на «This is used for wellenreiter», а MAC-адрес сконфигурирован на произвольный. Опять палево!

После такого разгрома даже руки опускаются. Не софт, а настоящее западло для хакера. Что же делать? Заюзать Windows-механизм? Скачивать ничего не надо, и работает он, в общем-то, неплохо — хороший, вроде бы, вариант… Как бы не так! Его механизм тоже использует активный режим сканирования, посылаются те же запросы с широковещательным SSID и уникальным программным идентификатором, что и будет основой детекта подобного рода сканирования. Уникальный фрагмент находится в части «SSID Parameter Set» и состоит из 32 байтов.

Воспользовавшись функциональными способностями снифера Ethereal (Wireshark), можно без труда определить подобную активность потенциального «воздушного» хакера:

Netstumbler: wlan.fc.type_subtype eq 32 and llc.oui eq 0x00601d and llc.pid eq 0x0001

Dstumbler: (wlan.seq eq 11 and wlan.fc.subtype eq 11) or (wlan.seq eq 12 and wlan.fc.subtype eq 00)

Здесь 11 (0x0b) – значение во фрейме авторизации, 12 (0x0c) – константа из запроса ассоциации.

Как поймать хулигана?

Важно не столько засечь несанкционированные действия в сети, сколько выявить нарушителя. Здесь возникает определенная головоломка, так как мобильность самой технологии Wi-Fi изначально подразумевает таких же мобильных клиентов, которые могут перемещаться во время сеанса пользования сетью. Нашей задачей будет выработка схемы сетевой инфраструктуры, в которой существовало бы как минимум две предпосылки, свидетельствующих о наличии злоумышленника среди доверенного радиопокрытия. Способы обнаружения злоумышленника обычно базируются на данных, поступающих из разных удаленных друг от друга источников. При этом анализируются данные об уровне приема абонента, а также информация из логов систем обнаружения вторжений (IDS).

На представленной схеме (смотри рисунок) перед нами модель тривиальной постановки: точки Y и Z выступают в роли AP-«мониторов» (сенсоров нападения), так или иначе передающих событие «произошло сканирование» на специальную систему. Конец коридора ограничен бетонными стенами, изолирующими сигнал от помех извне. Задавая границу в радиопокрытии точки (к примеру, 10 метрами), можно выработать действия по реагированию на подозрительные события.

Не трудно догадаться, что если будет заподозрен последовательный Stumbling от точек z,y к x, то злоумышленник находится в вполне определенном квадрате пространства. Соответственно, создавая подобную архитектуру по флагам и опираясь на внимание и определенный набор ПО, можно давать указание службе безопасности выдвигаться в соответствующие стороны.

Остается вопрос: чем фиксировать действия сканера? Это реализуется следующими программными решениями.

Snort Wireless

Эдакая «пожарная сигнализация», которая предупредит практически о любой попытке взлома. Главное, чтобы были грамотно настроены все правила или, иначе говоря, предварительно заданные шаблоны атак и вредоносных объектов. Snort Wireless работает подобно популярному Snort, но в беспроводных сетях 802.11x, защищая их от нападения. Настройка сводится к следующим пунктам:

  • указание информации об охраняемой территории (параметры сети, имя точки доступа);
  • конфигурация предпроцессоров;
  • конфигурация плагинов;
  • дополнительные собственные правила.

Наиболее важный пункт здесь – конфигурация предпроцессоров, благодаря которым и происходит переход с намека на атаку к боевой тревоге.

Предпроцессор Anti Stumbler. Для обнаружения точек доступа Netstumbler рассылает широковещательные нулевые SSID, которые заставляют другие точки доступа прислать свои SSID нам. Snort осознает массовость этого дела с одного MAC-адреса и объявляет тревогу. Помимо этого, в наборе Snort Wireless присутствуют предпроцессоры для детекта пассивного скана и попытки подмены MAC.

Предпроцессор Anti Flood. При превышении определенного количества кадров в единицу времени или попыток авторизации происходит распознавание Denial Of Service Atack.

Предпроцессор Anti Mac spoofing. Выявление несоответствий и сравнение с базой данных доверенных клиентов.

После редактирования всех параметров файл snort.conf обновится, и ты сможешь запустить демон в фоновый режим:

snort -D -A full

 

Nssys glass

Netstumbler Spyglass использует тот же принцип, что и предпроцессор Snort Wireless. К сожалению, из-за малого спектра поддерживаемого оборудования его не так часто применяют. Рассмотрим его настройку на примере роутера LinkSys. Перед работой необходимо позаботиться о наличии драйвера WinPcap (winpcap.polito.it). Далее вся настройка осуществляется через довольно странный конфигурационный файл NSSpyglass.ini, состоящий из следующих 12 строк:

0402011110BB Access Point MAC Address (No colons and No spaces)

C:\windows\calc.exe

0

5

C:\windows\notepad.exe

0

1

1

0

1

0

1

В таком непонятном конфиге сам черт ногу сломит, поэтому я объясню все по порядку. В первой строке требуется прописать MAC-адрес точки доступа. Вторая строка указывает путь к приложению, которое будет запущено в момент опознания злоумышленника. Третья принимает значения 0 или 1, в зависимости от твоего желания запускать указанное приложение или нет. Четвертая строка – таймаут в секундах до запуска следующего приложения после обнаружения вардрайвера. Пятая и шестая строка аналогичны второй и третьей, но как раз следующего приложения. Седьмая определяет запись истории событий в лог NSSpyglassLog.txt. Остальное неважно – скопируй как есть.

Airsnare

Если в сети работают одни и те же устройства (например, ноутбуки сотрудников), то можно легко внести их MAC-адреса в «белый список» и отслеживать появление посторонних устройств, которые в этот список не входят. На таком простом принципе, в частности, базируется программа Airsnare. Все, что тебе понадобится для работы, — это библиотека WinPcap (winpcap.polito.it) и свободный компьютер, подсоединенный к беспроводной точке доступа. В настройках программы не забудь выбрать требуемый адаптер и внести в Friendly Mac list все доверенные устройства, подключенные к твоей сети, включая Mac'и, Xbox'ы, сетевые принт-серверы, лэптопы, iPod'ы с поднятым Wi-Fi и тому подобные излишки моды. Нажимаем «Start», и экран меняет цвет на красный, что говорит о том, что твоя тачка перешла в боевой режим, режим поиска прыщавых хакеров.

Активные методы

Во всех этих примерах так или иначе были задействованы статические системы обнаружения атак в беспроводной среде. Но наверняка есть и более сложные и эффективные техники обнаружения злоумышленника! Хочу обратить твое внимание на систему Distributed Wireless Security Auditor (research.ibm.com/gsal/dwsa/), которая принципиально отличается от остальных. Возможности DWSA позволяют определять физическое положение злоумышленника и даже отображать его на интерактивной карте, то есть осуществлять самую настоящую привязку к местности. Это становится вполне реальным за счет постоянного распределенного мониторинга сети. Осуществляется это следующим образом: определенному количеству сотрудников компании, предположим, службе безопасности, выдаются портативные компьютеры со специальным программным оснащением. Параллельно с этим устанавливается back-end сервер безопасности, который будет считывать целевую информацию с устройств сотрудников и заодно определять их местоположение относительно точек доступа на основе сведений о сигнале и их радиопокрытии. Обработку этих данных централизованно выполняет специальный сервер. Он анализирует состояние радиоэфира различных источников и с помощью законов геометрии и дискретной математики определяет примерное расположения объекта. Понятно, что чем больше элементов будет участвовать в работе распределенной системы мониторинга, чем выше будет точность определения на данной территории.

Какой же принцип лежит в основе определения координат объекта? Банальная триангуляция, которая также применяется в глобальной системе позиционирования GPS. В качестве тех самых портативных девайсов было принято задействовать разработку IBM, именуемую Wireless Security Auditor (WSA). Девайс представляет собой самый обычный iPAQ PDA со специальным дистрибутивом Linux. Девайс представляет собой самый обычный iPAQ PDA со специальным дистрибутивом Linux и набором предустановленных тулз для пен-тестов и аудита беспроводных сетей: wlandump, ethereal, Sniffer и т.п. Используя их, сотрудники, по сути, проводят активный аудит, отчитываясь главному серверу.

Ох уж этот MAC-адрес

Даже просто обнаружив чужого в сети, о нем можно кое-что узнать. Тот же MAC-адрес, который является уникальным признаком любого оборудования, выдаст некоторую информацию. Ведь очень просто установить связь между ним и производителем девайса. Дело в том, что по первым октетам MAC'a и базе OUI (standards.ieee.org/regauth/oui/oui.txt) можно сделать соотношение, определив производителя. Вспомни, на это, в частности, опирается Netstumbler при нахождении точки, высвечивая в графе VENDOR используемое оборудование, например CISCO. В базе OUI это выглядит вот так:

00-00-0C (hex) CISCO SYSTEMS, INC.

00000C (base 16) CISCO SYSTEMS, INC.

Специализированные структуры ведут учет подобных сведений с привязкой к продаваемым устройствам. Обратившись к компании-производителю, компетентные структуры в первую очередь выявят, по каким точкам оно было распределено и каким лицам продано. Кредиты и пластиковые карты еще никто не отменял, поэтому при определенном везении и наличии возможностей (которая есть у органов) можно найти хакера, даже зная, казалось бы, какой-то, MAC-адрес. Ну что, ты засомневался в своей полной анонимности?

Кто следующий?

Посетитель кофейни арестован за злоупотребление хотспотом. Персонал кофейни Brewed Awakenings в Ванкувере совместно с полицией задержал двадцатилетнего Эрика Смита, который юзал сетку забегаловки на протяжении трех месяцев.

Семнадцатилетнему жителю Сингапура Гэрил Тан Цзя Люэ грозит до трех лет тюрьмы за несанкционированный доступ к точке доступа своего соседа. Бенжамин Смит Третий, житель Флориды, впервые за всю историю штата был осужден за взлом публичной беспроводной сети.

В штате Иллинойс арестована целая команда вардрайверов, подробно это событие освещалось на fark.com и forum.defcon.org.

В мае 2005 года, после нескольких атак на правительственные сети США, контрольно-счетная палата США составила доклад, в котором фигурировали следующие статистические данные: из 24 крупнейших правительственных агентств 9 не имеют планов по обеспечению защиты Wi-Fi сетей; в 13 агентствах не установлена защита; около 90 ноутбуков одного из выбранных агентств были настроены на автоматический поиск сигнала, что является основополагающим при проведении атак Evil Twin/Rogue AP; а большинство агентств не отслеживает происходящее в своих беспроводных сетях.

Глоссарий

Запросы ассоциации – это набор запросов, посылаемых к точке доступа, ответ на которые зависит не только от наличия в радиусе активных точек, но и от режима, в котором находятся эти устройства.

Запросы аутентификации – методы, применяемые для успешной авторизации в Wi-Fi сетях с использованием специальных фреймов.

SSID (Service Set Identifier)/ESSID (Extended Service Set IDentifier) – идентификатор, позволяющий отличать сети друг от друга, задающий им определенное название.

LLC–кадры используются в стандарте 802.2, который является базовым для популярных технологий сетей, проводных и беспроводных. LLC – это подуровень канального уровня сетевой модели OSI (отвечает за организацию канала связи).

DVD

Дистрибутив Backtrack, программы MySLAX Creator, Bart PE Builder, MKBT, Syslinux, а также все вспомогательные утилиты ты найдешь на DVD.

VIDEO

Если, прочитав статью, у тебя по-прежнему остаются вопросы или что-то не получается, посмотри видеоинструкцию на диске.

DVD

На диске ты обязательно найдешь весь описанный в статье софт и полезные доки по методам трилатерации.

INFO

Некоторые методы триангуляции используются для слежки за абонентами сотовой связи. Чисто теоретически, если стандартными средствами можно определить расстояние от базовой станции до телефона, то по расстояниям от трех базовых станций можно получить точные координаты аппарата, а по расстоянию от двух БС - две точки, в одной из которых будет находиться телефон. Вот такая математика…

Содержание