Анализ безопасности беспроводных wi-fi сетей

Дата: 19.10.2018
Автор: Дмитрий Морозов, помощник аналитика

Что такое Wi-Fi?

Wi-Fi – это технология, которая используется для создания беспроводной локальной сети на основе стандартов IEEE 802.11. В отличие от обычной локальной сети, где средой передачи данных являются проводные соединения, Wi-Fi позволяет обмениваться информацией через радиоэфир, используя ограниченные диапазоны частот и только определенные каналы. За преобразование цифровых данных в радиосигнал и обратно отвечает специальное устройство – сетевой адаптер, который является обычной сетевой картой с поддержкой технологии беспроводной связи. Краткий обзор стандартов из группы IEEE 802.11 представлен в таблице 1:

Таблица 1. Стандарты из группы IEEE 802.11

Стандарт

Год ратификации

Рабочая частота (ГГц)

Скорость (Мбит/сек)

802.11

1997

2,4/IR

2

802.11b

1999

2,4

11

802.11a

1999

5

54

802.11g

2003

2,4

54

802.11n

2009

2,4/5

600

802.11ac

2014

5

6800

802.11ad

2016

2,4/5/60

7100

802.11ax

2017-2019

2,4/5

10700

Все Wi-Fi сети работают в ограниченных диапазонах частот: 2,4 ГГц (полоса частот 2400 – 2483,5 МГц) и 5 ГГц (полоса частот 5,180 – 5,825 ГГц), причём в разных странах границы этих диапазонов могут быть различны. Диапазоны частот разбиты на каналы, на которых может работать оборудование. Для 2,4 ГГц стандарты 802.11b и 802.11g определяют следующие каналы:

Таблица 2. Каналы, определенные для диапазона 2,4 ГГц

Канал

Центральная частота, ГГц

Страны

1

2,412

США, Европа, РФ, Япония

2

2,417

США, Европа, РФ, Япония

3

2,422

США, Европа, РФ, Япония

4

2,427

США, Европа, РФ, Япония

5

2,432

США, Европа, РФ, Япония

6

2,437

США, Европа, РФ, Япония

7

2,442

США, Европа, РФ, Япония

8

2,417

США, Европа, РФ, Япония

9

2,452

США, Европа, РФ, Япония

10

2,457

США, Европа, РФ, Япония

11

2,462

США, Европа, РФ, Япония

12

2,467

Европа, РФ, Япония

13

2,472

Европа, РФ, Япония

14

2,484

Япония

В связи с тем, что шаг каналов в диапазоне 2,4 ГГц составляет 5 МГц, а ширина канала при этом составляет 20 МГц, часть рабочих частот оборудования перекрывается (рисунок 1). Для устранения помех в работе беспроводной сети необходимо использовать независимые каналы, частоты которых отличаются друг от друга как минимум на 20 МГц (например, каналы 1, 6 и 11).

Рисунок 1. Перекрытие рабочих частот в диапазоне 2,4 ГГц

Для 5 ГГц стандарты 802.11а и 802.11n определяют следующие группы каналов:

Таблица 3. Блок каналов UNII-1

Канал

Центральная частота, ГГц

36

5180

40

5200

44

5220

48

5240

Таблица 4. Блок каналов UNII-2

Канал

Центральная частота, ГГц

52

5260

56

5280

60

5300

64

5320

100

5500

104

5520

108

5540

112

5560

116

5580

120

5600

124

5620

128

5640

132

5660

136

5680

140

5700

Таблица 5. Блок каналов UNII-3

Канал

Центральная частота, ГГц

149

5745

153

5765

157

5785

161

5805

Таким образом, спектр рабочих частот в диапазоне 5 ГГц так же перекрывается (рисунок 2), но при ширине канала в 20 МГц для работы без взаимных помех существует уже 23 независимых канала.

Рисунок 2. Перекрытие рабочих частот в диапазоне 5 ГГц

Единственным стандартом, который дополнительно поддерживает работу в диапазоне 60 ГГц, является стандарт 802.11ad. Использование высокочастотной связи позволяет обмениваться информацией на скорости до 7 Гбит/сек, но при этом сильно сужает радиус зоны покрытия роутера (около 10 метров). При этом такой сигнал хорошо поглощается стенами, что позволяет организовать две Wi-Fi сети в разных комнатах без создания взаимных помех. Всего стандарт определяет 4 канала:

Таблица 6. Каналы, определенные для диапазона 60 ГГц

Канал

Центральная частота, ГГц

1

58,32

2

60,48

3

62,64

4

64,80

Стандартная схема Wi-Fi сети содержит не менее одной точки доступа и не менее одного клиента, причем оба участника по очереди исполняют роль и приёмника, и источника (схема hotspot). Для того чтобы клиент мог различать несколько сетей в определенной области, каждая точка доступа использует свой идентификатор – SSID (Service Set Identifier), который она транслирует при помощи специальных пакетов на скорости 0.1 Мбит/с каждые 100 мс. Зная SSID сети, клиент, в свою очередь, может попробовать подключиться к этой точке доступа. При одновременном подключении нескольких клиентов ширина канала доступа к интернету распределяется между всеми подключенными устройствами равномерно.

Одним из важнейших преимуществ беспроводной сети является мобильность пользователей: после успешного подключения клиент может легко перемещаться в пределах зоны действия точки доступа вместе со своим устройством, не переживая о возможном обрыве связи. Кроме того, отсутствие большого количества проводов позволяет построить сеть там, где нет возможности протянуть кабели, причем скорость такого подключения не уступает скорости проводной сети. Благодаря этому технология Wi-Fi сейчас используется почти во всех общественных местах, а также является важной частью инфраструктуры многих компаний.

От чего нужно защищать Wi-Fi?

Как и любая технология передачи данных, Wi-Fi при небезопасном использовании несёт в себе определенные угрозы. Злоумышленник, используя некорректные настройки точки доступа или неосторожность пользователя, может перехватить персональные данные этого пользователя, провести атаку на его устройство или проникнуть во внутреннюю сеть компании. На сегодняшний день основными видами угроз, связанными с технологией Wi-Fi, являются:

1. Перехват и анализ сетевого трафика

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

2. Атака вида «отказ в обслуживании»

Согласно модели OSI, физический уровень в беспроводной сети представляет собой пространство вокруг точки доступа, что делает технологию Wi-Fi особенно уязвимой к атакам вида «отказ в обслуживании»: на качество связи могут повлиять расположение антенны, погодные условия, работа других устройств в этом же диапазоне частот. Злоумышленник может использовать устройство, которое будет генерировать помехи на рабочей частоте точки доступа, полностью парализуя работу сети.

3. Создание ложной точки доступа

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

4. Несанкционированное подключение к точке доступа

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

5. Атака вида «человек-в-середине»

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

Как можно защищать Wi-Fi?

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

На сегодняшний день существуют следующие механизмы обеспечения безопасности передаваемых данных:

1. WEP (Wired Equivalent Privacy) шифрование

Данный вид обеспечения безопасности трафика был первым и не самым удачным методом защиты. Основой этого механизма шифрования является поточный шифр RC4, а для подсчёта контрольных сумм используется алгоритм CRC32. Шифрование осуществляется с помощью 40 или 104-битного ключа, причем сам ключ представляет собой набор ASCII-символов длиной 5 (для 40-битного ключа) или 13 (для 104-битного ключа) символов. Для рандомизации оставшейся части ключа используется так называемый вектор инициализации (Initialization Vector, IV), который выбирается случайным образом и передаётся в незашифрованном виде. Его длина составляет 24 бита, поэтому общая длина ключа в результате равна 64 (40 + 24) или 128 (104 + 24) бит. Важно, что IV всегда располагается в начале ключа.

Шифр RC4 был выбран из-за своей высокой скорости работы и возможности использования переменной длины ключа. Позднее было доказано, что при влиянии определенных факторов криптосистема с использованием этого шифра становится небезопасной. Однако главная уязвимость WEP шифрования заключается в длине вектора инициализации: из-за того, что его длина составляет всего 24 бита, количество различных векторов относительно невелико – всего 224 ≈ 17 миллионов вариантов. Благодаря этому факту злоумышленнику необходимо лишь собрать достаточное количество пакетов, чтобы найти повторы векторов инициализации, после чего подбор статической составляющей ключа (набора ASCII-символов) не занимает большого количества времени.

2. WPA (Wi-Fi Protected Access) шифрование

Технология WPA была разработана для временного исправления недостатков своего предшественника – технологии WEP. Шифрование данных в WPA обеспечивает протокол TKIP, основой которого, как и в WEP, является поточный шифр RC4. TKIP отвечает за увеличение размера ключа с 40 до 128 бит и использует специальную методологию управления ключами, которая убирает их излишнюю предсказуемость. Разрядность вектора инициализации при этом увеличена до 48 бит, дополнительно реализованы правила изменения последовательности битов этого вектора. Для подтверждения целостности пакетов используется 64-битная контрольная сумма MIC. Кроме того, в WPA шифровании внедрен расширяемый протокол аутентификации (Extensible Authentication Protocol, EAP), который можно использовать в режиме pre-shared key (WPA-PSK), когда каждый узел вводит пароль для доступа к сети, и в режиме enterprise (WPA-EAS), когда проверка узлов осуществляется серверами RADIUS.

В режиме WPA-PSK (рисунок 3) из введённой парольной фразы генерируется 256-разрядный ключ PSK (Pre-Shared Key), который используется для генерации временных сеансовых ключей PTK (Pairwise Transient Key) совместно с SSID, Authenticator Nonce (ANonce), Supplicant Nonce (SNonce), Authenticator MAC-address (MAC-адрес точки доступа) и Supplicant MAC-address (MAC-адрес клиента сети). PTK в дальнейшем используется для взаимодействия беспроводных устройств. В режиме WPA-EAS точка доступа перенаправляет все аутентификационные запросы на соответствующий сервер аутентификации, благодаря чему решаются вопросы распределения статических ключей и управления ими, а также обеспечивается контроль доступа на основе учетных записей. Таким образом, WPA-PSK больше подходит для применения в небольших сетях, состоящих из нескольких устройств, а WPA-EAS является оптимальным для корпоративных сетей.

Рисунок 3. Аутентификация клиента в режиме WPA-PSK

Несмотря на то, что протокол TKIP является достаточно криптостойким, он остается уязвимым к некоторым атакам, которые связаны с алгоритмом RC4. Так, например, злоумышленник может восстановить сеансовый ключ конкретного клиента и расшифровать ту часть трафика, для которой действовал этот сеансовый ключ. Кроме того, злоумышленник может получить доступ к сети, воспользовавшись атакой по словарю. Для этого ему необходимо перехватить пакеты, связанные с аутентификацией клиента (так называемое «рукопожатие», handshake), а затем, составляя свой PTK для каждой парольной фразы из словаря, вычислять соответствующее значение MIC и проверять его равенство со значением, хранящимся в одном из пакетов handshake. Если контрольные суммы совпадут, то парольная фраза будет считаться правильной.

3. WPA2 шифрование

Основным отличием WPA2 от WPA является замена шифрования TKIP на более быстрый и безопасный CCMP (Counter Mode with Cipher Block Chaining Message Authentication Code Protocol) – протокол блочного шифрования с проверкой аутентичности сообщения (MAC) и режимом сцепления блоков и счётчика, построенный на алгоритме AES. В отличие от RC4, AES является более защищенным: для взлома даже самого слабого уровня шифрования с использованием этого алгоритма злоумышленнику придётся потратить огромное количество времени. Несмотря на это, WPA2 по-прежнему остается уязвимым к атаке перебором по словарю. Кроме того, в 2016 году исследователи обнаружили новый вид атаки – «KRACK» (Key Reinstallation Attack), которая позволяет принудить участников сети переустановить уже согласованный PTK со сброшенными параметрами. Благодаря этому атакующий может прослушивать весь трафик в сети или даже «подделывать» данные, передаваемые между клиентом и точкой доступа.

4. WPA3 шифрование

Для устранения уязвимостей, обнаруженных в предыдущих версиях технологии WPA, был анонсирован новый протокол безопасности беспроводной связи – WPA3. Как было сказано в пресс-релизе, WPA3 «добавляет новые функции для упрощения безопасности Wi-Fi, обеспечения более надежной аутентификации и повышения криптографической стойкости». В этой версии протокола так же, как и в предыдущих, будут предусмотрены два режима работы: WPA3-Personal и WPA3-Enterprise. В режиме WPA3-Personal протокол аутентификации будет заменён с PSK на SAE (Simultaneous Authentication of Equals), обеспечивающий более надежную защиту от атак по словарю, а в режиме WPA3-Enterprise будет обеспечиваться дополнительная защита сетей, в которых передаются важные данные. Кроме того, была представлена технология Wi-Fi Easy Connect, которая позволит безопасно подключать новые устройства к точке доступа путём сканирования специального QR-кода.

На сегодняшний день новый стандарт уже проходит сертификацию, поэтому ожидается, что первые устройства с поддержкой WPA3 появятся до конца 2018 года.

5. Технология WPS (Wi-Fi Protected Setup)

Целью механизма WPS является упрощение процесса настройки беспроводной сети между устройствами, совместимыми с данной технологией. Благодаря WPS пользователям нет необходимости запоминать и вводить вручную такие параметры, как SSID, тип используемого шифрования и пароль: для подключения к точке доступа клиенту достаточно ввести заранее определенный PIN-код или нажать кнопку на точке доступа и на подключаемом устройстве с интервалом меньше двух минут. К сожалению, в стандарте этой технологии была допущена уязвимость, которую злоумышленник может использовать для несанкционированного подключения к точке доступа.

PIN-код, который используется для подключения, всегда состоит из 8 цифр, причем последняя цифра является контрольной суммой, вычисляемой на основе предыдущих цифр. Таким образом, перебор всех возможных комбинаций PIN-кода потребовал бы 10 000 000 попыток. Уязвимость заключается в процессе авторизации клиента: если первые 4 цифры PIN-кода некорректны, то, получив их, точка доступа отправляет EAP-NACK после отправки клиентом пакета M4; если же некорректными являются последние 4 цифры PIN-кода – то после отправки клиентом пакета M6. Знание этого факта позволяет злоумышленнику подобрать подходящий ключ доступа всего за 11 000 (104 + 103) попыток, что займёт не более суток.

Анализ безопасности беспроводной сети

В рамках данного исследования был проведён анализ безопасности гостевой сети нашей компании – «USSC-Guest». Тестирование проводилось по модели внешнего нарушителя, то есть без наличия прямого доступа к выбранной сети, поэтому основной целью возможного злоумышленника стало получение пароля для подключения к ней. Следует отметить, что знание пароля позволит нарушителю перехватывать и расшифровывать все данные, передаваемые по сети, а так же обеспечит возможность создания поддельной точки доступа с аналогичным названием и способом подключения.

Первичное сканирование беспроводного эфира показало, что для шифрования передаваемых данных в исследуемой сети используется алгоритм WPA2 с отключенной технологией WPS. На момент написания статьи WPA2 является наиболее безопасным алгоритмом защиты беспроводных сетей и не содержит уязвимостей, позволяющих злоумышленнику выявить пароль за приемлемое время. Атака под названием «KRACK», о которой стало известно еще в 2017 году, до сих пор не имеет открытой практической реализации. Для злоумышленника остаются доступными два сценария атаки: перехват пакетов, связанных с аутентификацией клиента (рукопожатие, handshake) с дальнейшим перебором пароля по словарю, и создание поддельной точки доступа с параллельным проведением атаки «отказ в обслуживании» на настоящую точку доступа.

Атака перебором по словарю

Для того чтобы в беспроводном эфире можно было перехватывать пакеты, связанные с аутентификацией клиента, необходимо предварительно перевести режим работы сетевого адаптера в состояние «монитора» – состояние, в котором адаптер принимает все пакеты, проходящие на его частоте в видимом диапазоне. После этого злоумышленнику становится доступна подробная информация о видимых точках доступа и активных клиентах:

Рисунок 4. Результат сканирования беспроводного эфира

Можно видеть, что из кабинета, в котором проводилось тестирование, было обнаружено две точки доступа с названием «USSC-Guest». Для проведения атаки была выбрана точка доступа с MAC-адресом 00:3A:99:89:D2:01, как наиболее часто используемая в доступном диапазоне:

Рисунок 5. MAC-адреса пользователей выбранной точки доступа

Через некоторое время после начала сканирования сети было зафиксировано подключение нового клиента, благодаря чему удалось перехватить необходимые аутентификационные пакеты. Об это свидетельствует строка «WPA handshake: 00:3A:99:89:D2:01»:

Рисунок 6. Результат перехвата аутентификационных пакетов

Далее была предпринята попытка подобрать пароль по наиболее популярным словарям («rockyou», «top-wpa-passwords» и набор из численных паролей). В результате атаки перебором по словарю выяснить пароль для подключения не удалось. При этом злоумышленник, скорее всего, откажется от определения пароля методом полного перебора, потому что этот метод займет у него, в лучшем случае, несколько лет.

Создание поддельной точки доступа

Реализация данного сценария состояла из двух этапов:

  1. создание ложной точки доступа с таким же названием, как и у атакуемой точки доступа, но без необходимости вводить пароль для подключения;
  2. проведение атаки «отказ в обслуживании» на исследуемую точку доступа.

Для пользователей это выглядело так, будто гостевая сеть «USSC-Guest», к которой они уже были подключены, пропала из списка доступных сетей, а вместо неё появилась точно такая же, но без аутентификации:

Рисунок 7. Результат проведения атаки «отказ в обслуживании» на исследуемую точку доступа

При подключении к ложной точке доступа пользователю всё же предлагалось ввести пароль от WPA2. Вот так, например, это выглядело для пользователей iOS:

Рисунок 8. Предложение ввести пароль после подключения к ложной точке доступа

Ввиду того, что ложная точка доступа полностью контролировалась злоумышленником, все данные, отправляемые по беспроводной сети, могли быть им перехвачены и проанализированы. Так, например, пароль, который необходимо было ввести в указанную форму, отправлялся напрямую на сервер возможного нарушителя. Предполагалось, что пользователь, подключившись к ложной точке доступа, сочтёт это за изменение способа подключения и введёт необходимые данные.

Тестирование проводилось в будний день, в период с 12 до 15 часов. За это время к ложной точке доступа было подключено четыре различных устройства, но искомый пароль так и не был введен. Дальнейшее тестирование было прекращено по причине того, что исследуемая гостевая сеть могла потребоваться для решения рабочих вопросов и должна была функционировать в нормальном режиме. Злоумышленник, в свою очередь, подобной атакой мог полностью парализовать работу конкретной беспроводной сети и через некоторое время получить требуемый пароль.

Выводы и рекомендации

По итогам сканирования одной из точек доступа гостевой сети «USSC-Guest» проблем в настройках безопасности выявлено не было: для шифрования передаваемых данных используется надежный алгоритм WPA2-CCMP со стойким паролем, технология WPS отключена. Несмотря на то, что при необходимости злоумышленник может остановить работу беспроводной сети и создать ложную точку доступа, для реализации данной атаки нарушителю необходимо будет находиться в пределах зоны действия беспроводной сети (например, этажом ниже), что сильно сокращает круг его поисков и усложняет проведение атаки.

В завершение статьи выделим основные рекомендации по использованию беспроводных Wi-Fi сетей:

  1. для обеспечения безопасности данных, передаваемых по беспроводной сети, используйте шифрование WPA2-CCMP со стойким паролем (пароль из одних только цифр не является стойким);
  2. по возможности не подключайтесь к открытым Wi-Fi сетям, даже если их название кажется Вам правдивым: они могут прослушиваться или даже полностью контролироваться злоумышленником. Если такой возможности нет, используйте VPN;
  3. закрытые Wi-Fi сети тоже могут контролироваться злоумышленником. Если Вы не уверены в безопасности подключения, используйте VPN;
  4. при использовании беспроводных сетей всегда обращайте внимание на тип соединения, используемый браузером: HTTP или HTTPS. Безопасным является последний тип соединения – HTTPS.