Вардрайвингом всерьез можно заниматься и со смартфона, но для этого мало встроенного радиомодуля и приложений для Android. В продвинутых атаках используются внешние Wi-Fi-адаптеры и консольные программы для Linux. Все необходимые утилиты уже есть в дистрибутиве Kali NetHunter. Сегодня мы разберемся, как его установить и использовать для атак на точки доступа, подключив отдельный Wi-Fi-донгл.

WARNING

Согласно пункту 4.1.1 стандарта PCI DSS v. 2, требуется регулярно проводить аудит безопасности точек доступа Wi-Fi. Корректно это можно сделать только теми же инструментами, какие используются в реальных атаках. Статья носит информационный характер. Она адресована специалистам по ИБ и тем, кто собирается ими стать.

 

Введение

Поскольку Android базируется на ядре Linux, в нем вполне могут работать утилиты из традиционных дистрибутивов Linux (в том числе специализированные программы для тестов на проникновение). Надо всего лишь параллельно запустить привычный дистрибутив (например, Kali Linux ARM) в изолированной среде.

Решается эта задача с помощью системной утилиты chroot и приложений, использующих ее возможности. Она создает отдельный корневой каталог и позволяет запустить две ОС одновременно — например, Android и Kali Linux, каждую в своем окружении. Однако дальше пентестера ждут неприятные сюрпризы. Все программы, требующие использования внешних устройств и патчей уровня ядра, откажутся работать. К примеру, ты без проблем запустишь на смартфоне Aircrack-ng, Reaver или тот же Wifite через Linux Deploy, но не сможешь ничего сделать с ними «в прямом эфире» — только анализировать ранее перехваченные хендшейки с черепашьей скоростью.

Происходит так потому, что на встроенный в смартфоны модуль Wi-Fi обычно нет открытых спецификаций и написание драйвера с поддержкой режима мониторинга для него максимально затруднено. Любой внешний адаптер (даже из списка заведомо подходящих) тоже вряд ли заведется в дистрибутиве Linux, запущенном на смартфоне с использованием chroot. Мешают этому разные причины — отсутствие драйверов и прошивок на нужный чипсет, отсутствие поддержки USB OTG или невозможность загрузить сторонний драйвер в ядро.

Запуск программы — только полдела!
Запуск программы — только полдела!

Поэтому, если ты хочешь использовать Kali Linux на первом попавшемся смартфоне, простым монтированием образа в Linux Deploy не обойтись. Необходимо также найти драйверы, выполнить их кросс-компиляцию, пропатчить ядро и совершить прочие увлекательные действия с довольно высоким уровнем красноглазия.

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

 

NetHunter

Kali NetHunter — это облегченный Kali Linux для смартфонов, который можно установить поверх обычной прошивки устройства. Кроме самих утилит Kali, NetHunter содержит набор драйверов для беспроводных адаптеров, а также модифицированное ядро Linux с поддержкой модулей ядра и патчами для корректной работы Aircrack-ng.

Дополнительные драйверы и прошивки Wi-Fi-модулей в NetHunter
Дополнительные драйверы и прошивки Wi-Fi-модулей в NetHunter

Официально работа NetHunter гарантируется на следующих устройствах:

  • смартфонах и планшетах серии Nexus (Nexus 4 (mako), 5 (hammerhead), 5x (bullhead), 6 (shamu), 6P (angler), 7 2013 (flo), 9 (flounder), 10 (manta));
  • смартфонах OnePlus (OnePlus One (oneplusl), 2 (oneplus2), 3 и 3T (oneplus3), X (oneplusx));
  • смартфонах Samsung серии Galaxy (Note 3 (hlte), S5 (kite), S7 (herolte), S7 edge (hero2lte));
  • смартфонах LG (G5 T-Mobile (h830), G5 International (h850), V20T-Mobile(h918), V20 US Unlocked (us996))
  • смартфонах HTC One M7GPE (onem7gpe) и HTC 10 (htc.pmewl);
  • смартфонах Sony Xperia ZR (dogo) и Sony Xperia Z (yuga);
  • планшетах Nvidia SHIELD (shieldtablet) и SHIELD tablet K1;
  • смартфоне ZTE Axon 7 (ailsa_ii).

Также на xda-developers.com встречаются любительские порты NetHunter. Искать их удобнее по типовому запросу в Google:

[модель_устройства] kali nethunter site:forum.xda-developers.com

Однако с любительскими портами надо быть осторожнее. Например, сборка для Samsung I9300 оказалась кривой. NetHunter установился, запустился, но внезапно впал в маразм. Теоретически можно было отловить и пофиксить баги или сделать более удачный порт NetHunter самостоятельно, однако это неопределенно большие затраты времени.

Поэтому лучше раздобыть проверенный смартфон с официальной поддержкой Kali NetHunter. Например, Nexus 5 — отличный аппарат стоимостью 5–8 тысяч рублей. Я использовал именно его и дальнейший рассказ буду вести с оглядкой на Nexus 5, однако для других моделей последовательность действий будет аналогичной.

 

Установка

NetHunter следует устанавливать поверх стандартной прошивки смартфона или CyanogenMod. В данный момент NetHunter поддерживает стоковые прошивки Android 5.1.1 и 6.0.1 и CyanogenMod/LineageOS разных версий. Узнать, изменилась ли ситуация после выхода статьи, можно в wiki.

Сами сборки NetHunter для разных смартфонов и планшетов можно найти на этой странице.

Также тебе понадобится инструмент fastboot и драйверы для ADB. В Windows и то и другое можно установить с помощью простого инсталлятора. В Linux можно установить пакет android-platform-tools.

Еще проще использовать утилиту Nexus Rootkit Tool. Она сама скачает все необходимое и выполнит большую часть муторных операций, а если и застрянет на какой-то из них, то выдаст подробный мануал о том, что делать дальше.

Пошаговые инструкции в NRT
Пошаговые инструкции в NRT

Есть еще два необходимых компонента:

  • кастомный рекавери TWRP для твоего смартфона, его можно найти на сайте twrp.me;
  • SuperSU, он нужен в форме ZIP-архива, то есть Recovery Flashable.zip.

Когда все необходимые файлы будут на руках, можно приступить к установке кастомного рекавери и рутингу. Во время этого процесса ты лишишься всех данных на устройстве, поэтому предварительно сохрани их.

Сначала выключаем смартфон и включаем его с зажатой клавишей увеличения громкости. Он перейдет в режим fastboot. Подключаем смартфон к компу с помощью кабеля и выполняем следующую команду в ADB:

$ fastboot oem unlock

Эта команда разблокирует загрузчик, попутно стирая все данные со смартфона. Теперь устанавливаем TWRP:

$ fastboot flash recovery образ-twrp.img

Если операция прошла успешно, выключаем смартфон и включаем его снова с зажатой клавишей уменьшения громкости. После перезагрузки должен появиться интерфейс TWRP. Записываем на смартфон SuperSU с помощью ADB:

$ adb push путь\к\SuperSU.zip /sdcard/

Нажав кнопку Install, прошиваем SuperSU. По окончании установки перезагружаем смартфон, делаем первичную настройку и устанавливаем BusyBox в /system/bin (путь установки важен!).

Далее снова перезагружаемся в TWRP и записываем на смартфон архив с NetHunter:

$ adb push путь\к\nethunter.zip /sdcard/

Прошиваем и перезагружаемся.

Установка NetHunter на Nexus 5
Установка NetHunter на Nexus 5

Установка может зависать на 90%, но при этом выполняется корректно. Просто убедись, что в отображаемом на экране логе есть строка успешного обнаружения BusyBox, и подожди еще минут десять. После можешь перезагрузить смартфон вручную, если он не сделает этого сам.

Во время установки NetHunter предложит установить несколько дополнительных приложений. Не отказывайся от установки Hacker’s Keyboard. На этой клавиатуре есть клавиши Ctrl, Alt, Shift, Break, F1–F12 и другие, без которых в консоли как без рук. Теоретически можно обойтись и встроенной клавиатурой, имитируя нажатие функциональных клавиш кнопками управления громкости, но это не так удобно, да и порой они просто не срабатывают.

Продолжение статьи доступно только подписчикам

Вариант 1. Оформи подписку на «Хакер», чтобы читать все статьи на сайте

Подписка позволит тебе в течение указанного срока читать ВСЕ платные материалы сайта, включая эту статью. Мы принимаем оплату банковскими картами, электронными деньгами и переводами со счетов мобильных операторов. Подробнее о подписке

Вариант 2. Купи одну статью

Заинтересовала статья, но нет возможности оплатить подписку? Тогда этот вариант для тебя! Обрати внимание: этот способ покупки доступен только для статей, опубликованных более двух месяцев назад.


13 комментария

Подпишитесь на ][, чтобы участвовать в обсуждении

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

Check Also

Конкурс хаков: пишем на PowerShell скрипт, который уведомляет о днях рождения пользователей Active Directory

В компаниях часто встречается задача уведомлять сотрудников о приближающихся днях рождения…