Безопасность беспроводных сетей. Взлом и защита WI‑FI
Не секрет, что беспроводные сети сравнимы по скорости и гораздо более удобны, чем традиционные проводные сети.
🕛 21.09.2009, 00:06
Подумайте сами: никаких надоедливых проводов, мобильность и оперативность - вы больше не привязаны к своему рабочему месту.Все, казалось бы, идеально, если бы не одно но. Реализация системы безопасности в такой сети похожа на "шалаш дядюшки Тома". Поскольку вся сеть 802.11x работает на высокочастотных радиосигналах, передаваемые данные может легко перехватить любой пользователь с совместимой платой средством сканирования беспроводной сети, например NetStumbler или Kismet, и программами прослушивания трафика, например dsniff и snort. Но "изюм" не в этом. Применяемые в настоящее время алгоритмы шифрования, в частности WEP, не выдерживают никакой критики: требуется всего несколько часов (а иногда и несколько минут), чтобы "сломать" даже самый стойкий ключ.
Как показывает статистика, до 95 % (!) беспроводных сетей стандарта 802.11x абсолютно не защищены, взлом же остальных 20 % - всего лишь дело техники.
Немного о Wi‑Fi
Под термином Wi‑Fi (Wireless Fidelity) понимается целая линейка протоколов беспроводной передачи данных, которые, как правило, используются для соединения компьютеров. Самым популярным стандартом Wi‑Fi на сегодняшний день является IEEE 802.11b, имеющий максимальную скорость передачи 11 Мбит/с.
Изначально Wi‑Fi задумывался как альтернатива традиционным проводным сетям, и он, разумеется, имеет целый ряд преимуществ по сравнению с витой парой:
- отсутствие строгих правил построения сети;
- никакой прокладки километров проводов по кабельным каналам или в пространстве над подвесным потолком;
- гибкость сети - возможность оперативно вносить изменения в сеть без потери ее функциональности и т. д.
Появление Wi‑Fi на фоне всей этой проводной волокиты более чем желанно: для организации WLAN теперь всего‑то необходимо "поднять" несколько точек доступа (Access Point) и настроить компьютеры на работу с сетью.
Помимо популярного протокола 802.11b существуют также 802.11a и 802.11g, которые позволяют посылать и получать информацию на скоростях до 54 Мбит/с. Разработчики нового перспективного стандарта 802.11n обещают повышение скорости до 320 Мбит/с.
Топология WI‑FI.Между устройствами Wi‑Fi можно организовать по крайней мере два вида соединений. Первое из них - это так называемое ad‑hoc‑соединение (peer‑to‑peer, «точка‑точка»), которое используется для установления прямой связи между двумя компьютерами. Нетрудно догадаться, что в этом случае точка доступа не используется, а компьютеры общаются непосредственно друг с другом (что‑то наподобие одноранговой LAN‑сети).
Сеть Wi‑Fi, которая способна поддерживать большое количество клиентов, строится только с точкой доступа (infrastructure, режим клиент/сервер). Топологию такой сети можно сравнить с самой обычной LAN, построенной на основе хаба, к которому подключены все провода от клиентских компьютеров. В беспроводной сети вместо хаба используется точка доступа, которая и поддерживает все подключения беспроводных клиентов и обеспечивает передачу данных между ними. В большинстве беспроводных сетей необходимо обеспечить доступ к файловым серверам, принтерам и другим устройствам, подключенным к проводной локальной сети, - именно поэтому и используется режим клиент/сервер.
Без подключения дополнительной антенны устойчивая связь для оборудования стандарта IEEE 802.11b лежит в пределах:
- открытое пространство - 500 м;
- комната, разделенная перегородками из неметаллического материала, - 100 м;
- офис из нескольких комнат - 30 м.
Механизмы безопасности
Начиная разговор о механизмах безопасности, будет более чем резонно упомянуть тот факт, что при установке точки доступа почти все, что должно обеспечивать безопасность, отключено. Да‑да. Именно так оно и есть.
Активировать средства безопасности не составляет большого труда, но большинство администраторов не делают этого. Почему - вопрос скорее риторический.
Стандарт 802.1x для беспроводных сетей предусматривает несколько механизмов обеспечения безопасности сети. Рассмотрим пять основных, наиболее используемых.
Wired Equivalent Protocol(аналог проводной безопасности), он же WEP, разработан автором стандарта 802.1. Основная функция WEP - шифрование данных при передаче по радиоканалу и предотвращение неавторизованного доступа в беспроводную сеть. Для шифрования WEP использует алгоритм RC4 с ключом размером 64 или 128 бит. Ключи имеют так называемую статическую составляющую длиной от 40 до 104 бит и дополнительную динамическую составляющую размером 24 бит, называемую вектором инициализации (Initialization Vector или IV). Упрощенно механизм WEP‑шифрования выглядит следующим образом:
- передаваемые в пакете данные проверяются на целостность (алгоритм CRC‑32), после чего их контрольная сумма (integrity check value, ICV) добавляется в служебное поле заголовка пакета;
- далее генерируется 24‑битный вектор инициализации (IV), и к нему добавляется статический (40‑или 104‑битный) секретный ключ;
- полученный таким образом 64‑или 128‑битный ключ и является исходным ключом для генерации псевдослучайного числа, использующегося для шифрования данных;
- далее данные смешиваются (шифруются) с помощью логической операции XOR с псевдослучайной ключевой последовательностью, а вектор инициализации добавляется в служебное поле кадра.
WEP предусматривает два способа аутентификации пользователей: Open System (открытая) и Shared Key (общая). При использовании Open System‑аутентифика‑ции аутентификация как таковая отсутствует - любой пользователь может получить доступ в беспроводную сеть. Второй вариант аутентификации предусматривает применение секретного ключа, механизм генерации которого описан выше.
WEP 2был предложен в 2001 году как альтернатива WEP после обнаружения множества дырок в первой версии. WEP 2 имеет улучшенный механизм шифрования и поддержку Cerberus V.
Протокол WPA.Как вы увидите чуть позже, протокол WEP имеет ряд существенных недостатков и позволяет взломщику за короткое время получить полный доступ к WLAN. Именно поэтому в 2003 году и был предложен новый стандарт безопасности - WPA (Wi‑Fi Protected Access). Главной особенностью данного стандарта можно считать технологию динамической генерации ключей шифрования данных, построенную на базе протокола TKIP (Temporal Key Integrity Protocol), представляющего собой дальнейшее развитие алгоритма шифрования RC4.
В отличие от 24‑битного вектора WEP, сетевые устройства по протоколу TKIP работают с 48‑битным вектором инициализации, реализуя правила изменения последовательности его битов, что исключает повторное использование ключей. Для каждого передаваемого пакета в протоколе TKIP предусмотрена генерация нового 128‑битного ключа. Кроме того, контрольные криптографические суммы в WPA рассчитываются по новому алгоритму MIC (Message Integrity Code): в каждый кадр помещается специальный восьмибайтный код целостности сообщения, проверка которого позволяет отражать атаки с применением подложных пакетов. Таким образом, каждый передаваемый по сети пакет имеет собственный уникальный ключ, а каждое устройство беспроводной сети наделяется собственным динамически изменяемым ключом.
Кроме того, протокол WPA поддерживает шифрование по стандарту AES (Advanced Encryption Standard), а это не устаревший RC4. AES отличается более стойким криптоалгоритмом, что является несомненным плюсом в обеспечении безопасной передачи данных по беспроводной сети.
При построении офисных беспроводных сетей часто используется вариант протокола безопасности WPA на основе общих ключей WPA‑PSK (Pre Shared Key). Что же касается корпоративных сетей, то там авторизация пользователей чаще всего проводится на выделенном RADIUS‑сервере.
Open System Authenticationпредставляет собой систему аутентификации, по умолчанию используемую в протоколе 802.11. Если говорить более точно, то никакой системы аутентификации в данном случае нет вообще. Даже при включенном WEP в системе OSA пакет аутентификации посылается, не будучи зашифрованным.
Access Control List.В протоколе 802.11 ACL не описывается, но достаточно часто используется в качестве дополнительного средства безопасности к стандартным методам. Основа ACL - фильтрация клиентских Ethernet‑MAC‑адресов в соответствии со списком МАС‑адресов (доступ разрешен/запрещен).
Closed Network Access Control.Технология безопасности основана на использовании режима скрытого идентификатора сети SSID. Что этот такое? Каждой беспроводной сети назначается свой уникальный идентификатор (SSID), который обычно отражает название сети. Когда какой‑либо пользователь пытается войти в сеть, то драйвер беспроводного адаптера прежде всего сканирует эфир на наличие в ней беспроводных сетей.
Использование режима скрытого идентификатора (Hide SSID) препятствует отображению сети в списке доступных, и подключиться к ней можно только в том случае, если точно известен ее SSID и профиль подключения к этой сети.
Атаки
Как показывают исследования с использованием авторитетной техники Gnivirdraw, до 80 % клиентов содержат в профиле незащищенные подключения или же вообще соединяются с ложными точками доступа. Несмотря на всю кажущуюся беззащитность перед профессиональным взломом, все же использование станцией любых механизмов защиты, даже таких как WEP, уже серьезно снижает вероятность того, что ваша сеть будет взломана. Тем не менее статистика категорична: по некоторым оценкам, 95 % сетей практически беззащитны и каждый из нижеописанных методов имеет 99 % шансов на успех.
Итак, методы взлома.
MAC Sniffing&Spoofing.Атаки подобного рода возможны потому, что при передаче пакетов, даже при включенном WEP, MAC‑адрес передается по сети в открытом виде. Как следствие, MAC‑адрес можно перехватить. Далее формируются запросы взломщика к AP с применением подложного MAC. Таким образом и обходят аутентификацию на основе ACL.Access Point Spoofing.Данный вид атаки подразумевает использование подложной точки доступа, переманивающей клиентов на себя. Как следствие, пароли и все данные оказываются у взломщика. Единственное условие успешной реализации данной атаки - сигнал точки доступа взломщика должен быть соизмеримо более сильным легальной AP.
Plaintext‑атака.Условие реализации: атакующий знает исходное послание и имеет копию зашифрованного ответа. Все, что необходимо в данном случае, - ключ. Для его получения атакующий посылает в сеть некоторую часть данных и получает ответ. На основе ответа находится 24‑битный вектор инициализации, используемый для генерирования ключа.
Атака Fluhrer‑Mantin‑Shamir.Сотрудники Cisco Scott Fluhrer, Itsik Mantin и Adi Shamir из научного института Израиля обнаружили критическую уязвимость в алгоритме Key Scheduling Algorithm (KSA), который стоит в основе RC4. С ее помощью можно получить 24‑битный ключ WEP и даже 128‑битный ключ WEP 2. Результат работы исследователей - две программы: Air snort и WEPCrack, в определенных кругах пользующиеся особой популярностью.
Атаки отказа в обслуживании (DDoS‑атаки).Цель любой атаки отказа в обслуживании состоит в том, чтобы ограничить доступ легального пользователя к ресурсам сети, что обеспечивается посылкой огромного количества некорректно сформированных пакетов, затопляющих легальный трафик и приводящих к зависанию и/или последующей перезагрузке системы. Следует отметить тот факт, что беспроводные системы особенно чувствительны к DDoS‑такам из‑за особенностей организации OSI‑стека в контексте WLAN. Чтобы понять, о чем идет речь, достаточно соотнести физический уровень LAN и WLAN между собой: если в первом случае нападение на физический уровень описываемо и достаточно простое, то в беспроводной сети атака на физическом уровне есть нечто довольно абстрактное, ведь физический уровень WLAN - это воздух, некое место вокруг точки доступа.
Не будем исключать также случай, если злоумышленник создаст устройство, затопляющее весь частотный диапазон 2,4 ГГц помехами и нелегальным трафиком. В простейшем случае таким устройством может стать доработанная микроволновая печь!
Low‑Hanging Fruit.Дословно переводится как «низко висящие фрукты». Как ясно из названия, атака, собственно, является‑то и не атакой, а, скорее, получением сети «на халяву», учитывая факт того, что большинство беспроводных сетей абсолютно не защищены, в них не требуется авторизация и даже не используется WEP.
Собираем пакеты
Ну что ж, от теории плавно перейдем к практике. Ведь чтобы научится что‑то хорошо защищать, необходимо взломать это. Нижеследующий текст никоим образом нельзя расценивать как руководство к действию. Материал приведен исключительно в ознакомительных целях.
Суть технологии сводится к следующему. Для нахождения ключа WEP необходимо собрать некоторое количество пакетов, которые впоследствии надо будет пропустить через специализированное программное обеспечение. Для сбора пакетов используется ноутбук с настроенной картой WI‑FI и грудой соответствующих программ: Netstambler, Macstambler, Kismet и т. п. Сам процесс сканирования беспроводной сети осуществляется удаленно (например, из машины, припаркованной недалеко от объекта исследования). Существует даже специальный термин, отражающий суть такой атаки, - "вардрайвинг".
Количество пакетов, необходимое для успешной атаки, менятся от случая к случаю, однако существует и некоторая закономерность: как правило, для атаки на 64‑битный ключ необходимо собрать не менее 200 тыс. пакетов и не менее 500 тыс. для 128‑битного ключа, причем именно зашифрованных пакетов, содержащих в себе уникальный вектор инициализации.
В качестве программы, реализующей вышеописанные требования, можно привести aircrack, которая поставляется с утилитой для перехвата пакетов airodump.
Так вот, для взлома ключа очень часто вовсе и не требуется ждать несколько часов: часто aircrack определяет WEP‑ключ в течение нескольких секунд! Продолжительность работы программы зависит от уникальности IV и установленного значения fudge factor. Чем выше fudge factor, тем большее количество ключей будет сгенерировано, что скажется на увеличении времени атаки и вероятности того, что она окажется успешной. По умолчанию fudge factor равен 2, но может быть изменен на любое положительное целое число.
Вышеописанный метод атаки на WEP представляет собой пассивную атаку: для осуществления таковой не требуется каких‑либо активных действий вроде отправки пакетов в сеть. Все, что необходимо сделать в данном случае, - поймать некоторое количество пакетов, после чего приступить к их расшифровке.
А что если такое критически необходимое количество пакетов невозможно собрать за приемлемое время? В таком случае поступают следующим образом.
В сеть отправляется некоторое количество "провоцирующих" пакетов, заставляющих участников сети отвечать. Ответы порождают трафик - как следствие, количество перехваченных пакетов, зашифрованных одним и тем же ключом и имеющих различные IV, увеличивается.
В качестве "провоцирующих" пакетов чаще всего используют ARP‑запросы. Наверняка читателю станет интересно, почему именно ARP? А все дело в том, что ARP не фильтруется межсетевым экраном, да и к тому же использование данного протокола в этом случае не должно вызвать никаких подозрений со стороны администраторов сети.
Инъекция зашифрованных пакетов
Не секрет, что большинство современных утилит для атаки WEP «заточены» для взлома WEP‑ключа. Существуют, однако, другие уязвимости WEP, которые можно использовать для атаки.
В 2003 году Энтоном Рейджером (Anton Rager) была выпущена интересная утилита WEPWedgie, позволяющая атакующему создавать текстовые пакеты и отсылать их в беспроводную сеть без знания WEP‑ключа.
Суть атаки WEPWedgie's prgasnarf состоит в ожидании аутентификации по закрытому ключу. В случае аутентификации по закрытому ключу точка доступа передает 128 байт открытого текста, рабочая станция принимает этот текст, шифрует его и передает шифротекст, используя тот же ключ и шифр, что используется WEP для шифрования последующего трафика.
Как уже было сказано выше, знание некоторого открытого текста и результата шифрования позволяет получить ключевую последовательность как результат операции XOR между соответствующими IV. Поскольку WEP позволяет повторно использовать одинаковые IV, WEPWedgie может применять полученную ключевую последовательность для правильного шифрования и инъекции любого количества пакетов, содержание которых ограничено длиной этой последовательности.
Ломаем WPA
С принятием стандарта безопасности 802.11i и распространением сетей на основе WPA‑шифрования уверенность в защищенности беспроводной инфраструктуры начала закономерно расти. При качественной настройке безопасности WPA‑сети ее «брутфорс» - взлом практически невозможен. Криптоалгоритм AES, 256‑битный сменяющийся во времени ключ и прочие нововведения, казалось бы, должны стать неким гарантом безопасности. Но и «на старуху бывает проруха». WPA ломается. Общая идея данного подхода достаточно проста и заключается в следующем:
- необходимо найти неассоциированное клиентское устройство‑жертву;
- далее эмулируется точка доступа;
- жертве выдается IP‑адрес, а также IP‑адреса подставных шлюза и DNS‑серве‑ра через DHCP.
Далее следует атака на сеть. При успешном получении удаленного доступа к устройству последнее "отпускается" обратно на легальную беспроводную сеть, предварительно запустив на нем троянского коня.
Безопасность Wi‑Fi
При построении безопасной Wi‑Fi‑сети прежде всего необходимо обратить внимание на следующее:
- ограничение физического доступа к сети (трудновыполнимо, однако же, если не обращать внимания на такие очевидные вещи, как "вочолкинг" - так называемые пометки мелом, сигнализирующие взломщикам о наличии беспроводной сети (рис. 6.1 и 6.2), - то говорить о какой‑либо безопасности не имеет смысла вообще);
- шифрование передаваемой информации (использование WPA, а не WEP);
- использование трудновзламываемых паролей (не менее 12 знаков, сочетание цифр, букв и специальных символов);
Обозначенная сеть
- защиту от несанкционированного доступа на уровне ресурсов (применение ACL, фильтрация по MAC‑адресу);
- при построении WLAN более чем уместно использование VPN, SSH, IPSec;
- недопустимо, чтобы точка доступа была напрямую подсоединена к локальной сети;
- наличие межсетевого экрана обязательно (желательно, чтобы фильтрация клиентов осуществлялась по IP‑и MAC‑адресам совместно).
Простой язык «вочолкинга»