Хабрахабр

Kali Linux NetHunter на Android: зачем и как установить

Здравствуй, мой любознательный друг! Наверняка тебя посещали мысли о том, как хакать все вокруг, не привлекая лишнего внимания санитаров службы безопасности и окружающих, быть похожим на героев фильмов, взламывающих системы просто с мобильного устройства, или как прокачать свою мобильность с минимальной потерей функционала? У меня для тебя хорошие новости.

Той самой, что разрабатывает дистрибутив Kali Linux.
Kali Linux NetHunter — проект Offensive Security. Он позволит тебе по-другому посмотреть на свое любимое устройство на “зеленом роботе”, и всегда быть, если не во всеоружии, то с набором хорошо знакомых тебе отмычек. Это набор программ и утилит из Kali с возможностью запуска на Android.

Поддерживается многими девайсами: почти все из линейки Nexus, некоторые другие устройства от Sony, OnePlus, ZTE, Samsung. NetHunter не является полноценной прошивкой для устройств, а представляет собой программную надстройку. Полный список тут.

При этом ядро лучше использовать стандартное. Устанавливается он на штатную прошивку поддерживаемых устройств и на некоторые кастомные прошивки (CyanogenMod и LineageOS).

У пользователей, которые никогда не занимались перепрошивкой устройств, могут возникнуть трудности. Но прежде чем начать брутить соседский wi-fi, давай поговорим детальнее об установке.

Подготовительный этап установки

NetHunter устанавливается на рутованное устройство через кастомное рекавери. Следовательно, нам необходимо получить root и установить recovery (например, TWRP или CM). Перед началом установки стоит сделать backup, так как в процессе разблокировки загрузчика все личные данные удалятся.

Процесс сильно отличается в зависимости от девайса. Получение root-прав на устройстве — нетривиальная задача. Есть случаи, когда разблокировка загрузчика и получение root невозможны или крайне сложны. Как именно это делается для твоего гаджета, стоит почитать на тематических форумах 4pda.ru и xda-developers.com. Поэтому, при выборе устройства сразу обрати внимание на возможность этих действий.

Рассмотрим процесс установки на Nexus 10.

Меню разработчика обычно открывается с помощью нескольких тапов на номер сборки в меню информации об устройстве. Нам нужно: качественный кабель, usb-порты прямо из материнской платы (чтобы минимизировать возможность получения “кирпича” из устройства), доступ в меню разработчика и само устройство с компьютером. Появится всплывающее окно с разрешением на отладку — соглашаемся. Там включаем отладку по USB.


Разрешение на отладку по USB

Для разблокировки я использовал специальную программу Nexus Root Toolkit, где все происходит с помощью нескольких кликов.

Запускаем программу. 1. Стоит обратить внимание на его кодовое название — “manta”. Если все установлено корректно, то в окне лога появится наше устройство. Кодовое название других устройств можно найти в Интернете. Оно нам пригодится.


Nexus Root Toolkit

Нажимаем кнопку “Unlock Bootloader — Unlock”, это удалит все данные на устройстве.
Лог программы сообщит нам об успешной разблокировке и перезагрузит устройство. 2.

Nexus Root Toolkit v2.1.9

Nexus Root Toolkit v2.1.9 Masterlists:
- LatestToolkitFiles.ini 3135
- AndroidDeviceListFull.ini 3135
- AndroidDeviceListFlash.ini 3135 MANTARAY-MANTA: Android 5.1.1 - Build: LMY49J Live log initiated [2019-07-01]: Checking ADB/FASTBOOT Connectivity
adb devices
R32CA07P1YK device
fastboot devices + ADB Device Connected Rebooting your device into bootloader mode...
adb reboot bootloader Checking Fastboot Connectivity
fastboot devices Retrying.. Checking Fastboot Connectivity
fastboot devices Checking Fastboot Connectivity
fastboot devices
R32CA07P1YK fastboot + Fastboot Device Connected + Confirmed: Bootloader Unlocked.
Bootloader Already Unlocked. Rebooting your device.

3. Следующим действием получаем root и сразу же устанавливаем кастомный recovery (я ставил TWRP 3.0.2). Ставим галочку на “Custom Recovery” и нажимаем кнопку “Root”. Программа даст нам ссылку на свежую версию TWRP, переходим, скачиваем и указываем путь в программе на файл образа “twrp*.img”.

Nexus Root Toolkit v2.1.9

Nexus Root Toolkit v2.1.9 Masterlists:
- LatestToolkitFiles.ini 3135
- AndroidDeviceListFull.ini 3135
- AndroidDeviceListFlash.ini 3135 MANTARAY-MANTA: Android 5.1.1 - Build: LMY49J Live log initiated [2019-07-01]: Checking ADB/FASTBOOT Connectivity
adb devices
R32CA07P1YK device
fastboot devices + ADB Device Connected Rebooting your device into bootloader mode...
adb reboot bootloader Checking Fastboot Connectivity
fastboot devices Retrying.. Checking Fastboot Connectivity
fastboot devices Checking Fastboot Connectivity
fastboot devices
R32CA07P1YK fastboot + Fastboot Device Connected + Confirmed: Bootloader Unlocked.
Bootloader Already Unlocked. Rebooting your device.
Hashchecking...
Hash Verified!
Importing 'twrp-3.0.2-0-manta.img' into installer...
Checking ADB/FASTBOOT Connectivity
adb devices
R32CA07P1YK device
fastboot devices + ADB Device Connected Rebooting your device into bootloader mode...
adb reboot bootloader Checking Fastboot Connectivity
fastboot devices
R32CA07P1YK fastboot + Fastboot Device Connected + Confirmed: Bootloader Unlocked.
Flashing Custom Recovery to RECOVERY partition...
fastboot flash recovery "C:\***\Recovery_Custom\TWRP\twrp-3.0.2-0-manta.img" Temporarily Booting TWRP...
fastboot boot "C:\***\Recovery_Custom\TWRP\twrp-3.0.2-0-manta.img" Checking ADB Recovery Connectivity
adb devices
R32CA07P1YK recovery + ADB Recovery Device Connected Pushing root files to your device:
Pushing "SR1-SuperSU-v2.78-SR1-20160915123031.zip" to your device: adb push "C:\***\Root_Files\SR1-SuperSU-v2.78-SR1-20160915123031.zip" "/sdcard/!ReadyToFlash/Root_Files/SR1-SuperSU-v2.78-SR1-20160915123031.zip" 100% /sdcard/!ReadyToFlash/Root_Files/SR1-SuperSU-v2.78-SR1-20160915123031.zip Hash verifying file transfer:
627c4b98e7bf83293e81d3758accf753 = Local Hash
627c4b98e7bf83293e81d3758accf753 = Device hash + Verified! Pushing "busybox-signed.zip" to your device: adb push "C:\***\Root_Files\busybox-signed.zip" "/sdcard/!ReadyToFlash/Root_Files/busybox-signed.zip" 100% /sdcard/!ReadyToFlash/Root_Files/busybox-signed.zip Hash verifying file transfer:
0ece645c3ca95a10f9a4344300ce0f8f = Local Hash
0ece645c3ca95a10f9a4344300ce0f8f = Device hash + Verified! Pushing "quick-reboot-signed.zip" to your device: adb push "C:\***\Root_Files\quick-reboot-signed.zip" "/sdcard/!ReadyToFlash/Root_Files/quick-reboot-signed.zip" 100% /sdcard/!ReadyToFlash/Root_Files/quick-reboot-signed.zip Hash verifying file transfer:
64384a4285d14f0727ea989c17c8909b = Local Hash
64384a4285d14f0727ea989c17c8909b = Device hash + Verified! Pushing "perm-recovery-signed.zip" to your device: adb push "C:\***\Root_Files\perm-recovery-signed.zip" "/sdcard/!ReadyToFlash/Root_Files/perm-recovery-signed.zip" 100% /sdcard/!ReadyToFlash/Root_Files/perm-recovery-signed.zip Hash verifying file transfer:
f63500d8c095c0e749cd78851ba409f8 = Local Hash
f63500d8c095c0e749cd78851ba409f8 = Device hash + Verified! Pushing "openrecoveryscript" to your device: adb push "C:\***\Root_Files\openrecoveryscript" "/cache/recovery/openrecoveryscript" 100% /cache/recovery/openrecoveryscript Hash verifying file transfer:
458caf528d2dfc4e040acb6f4b37b5f5 = Local Hash
458caf528d2dfc4e040acb6f4b37b5f5 = Device hash + Verified! Rebooting your device into bootloader mode...
adb reboot bootloader Checking Fastboot Connectivity
fastboot devices
R32CA07P1YK fastboot + Fastboot Device Connected Temporarily Booting TWRP...
fastboot boot "C:\***\Recovery_Custom\TWRP\twrp-3.0.2-0-manta.img" Rooting...
Waiting for your device...
Device Detected
Automated Rooting Procedure Complete!

Вместе с root устанавливаются Supersu и BusyBox. Если не установились, можно их скачать с Play Market. Далее вручную устанавливаем пакет BusyBox через соответствующее приложение. BusyBox запросит root-права — обязательно соглашаемся!


Установка BusyBox*

Установка Kali Linux NetHunter

NetHunter состоит из компонентов ядра (kernel-nethunter) и самой программной надстройки (nethunter-generic). В релизной версии все компоненты собраны в один zip-архив. Есть сборки, где эти компоненты разделены на два архива: kernel-nethunter-manta-lollipop-*.zip и nethunter-generic-arm64-kalifs-full-rolling-*.zip. Для установки Nethunter OS необходимо через recovery установить сначала ядро, а потом программные надстройки, или установить все сразу с помощью архива, включающего в себя все компоненты.

Но, если тебе не повезло, то придется собирать установочный архив самостоятельно. Если тебе повезет, то готовый релизный архив для твоего устройства уже собран и находится на странице сайта Offensive Security. Нужно скачать директорию “nethunter-installer” из репозитория GitLab. Для этого разработчики сделали утилиту из свежих компонентов. Следуя инструкции, инициализируем хранилище устройств командой:

./bootstrap.sh

После этого с помощью скрипта на Python собираем установочный архив.

Рассмотрим несколько вариантов сборки с помощью данного скрипта:

  • Полная сборка вместе с ядром и chroot для устройства Google Nexus 10 (manta) на Android 5.1.1 Lollipop.

    python build.py -d manta -l --rootfs full

    Этот вариант сборки я использовал для установки Nethunter OS. Я не нашел информации, используются ли для сборки компоненты последней релизной версии или просто последние версии компонентов (возможно нестабильные), но у меня возникли проблемы. Например, не установились некоторые приложения NetHunter OS, но их иконки (в виде зеленого робота) были в меню приложений.

  • Полная сборка с ядром и chroot, но с указанием релиза.

    python build.py -d manta -l --rootfs full --release 2019.2

  • Сборка для обновления ядра и приложений.

    python build.py -d manta -l

  • Сборка для обновления ядра.

    python build.py -d manta -l -k

  • Сборка для обновления приложений без ядра.

    python build.py -d manta -l -nk

Полученный в результате сборки zip-архив (в моем случае nethunter-manta-lollipop-kalifs-full*.zip) сохраняем в корень устройства и загружаемся через recovery. Для каждого устройства загрузка recovery происходит по-разному.

Зажимаем их на несколько секунд, загружается bootloader, с помощью клавиш громкости выбираем “Recovery mode” и подтверждаем кнопкой блокировки. Nexus 10: “Громкость +” + “Громкость -” + кнопка блокировки.

Установка пошла, после завершения перезагружаем устройство. В recovery TWRP выбираем “Install“, выбираем наш zip-файл установщика и тащим ползунок вправо.


Процесс установки через TWRP.

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


Некорректно установленные программы.

Перед этим следует включить возможность установки приложений из неизвестных источников. Исправить это легко: распаковываем zip-архив и устанавливаем приложения вручную через apk-файлы, которые лежат в *распакованный zip-архив*/data/app. Перезагружаем устройство и видим, что иконки начали отображаться нормально. Теперь устанавливаем сначала nethunter.apk, а затем и все остальные приложения. Советую дополнительно настроить HackerKeyboard, поскольку она более адаптирована для работы с терминалом.

И устанавливаем обновления: Запускаем терминал, выбираем терминал Kali.

apt update
apt upgrade

Исправляем проблемы с репозиторием Microsoft:

wget https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -

Отметим, что домашняя директория пользователя Kali root находится на
Root-разделе: /data/local/nhsystem/kali-armhf/root.

Установка метапакетов

Метапакеты Kali можно дополнительно установить через приложение NetHunter в разделе Kali Chroot Manager — Add Metapackages.


Внизу будет ссылка на сайт, где описано какие пакеты входят в каждый пункт.

На этом установка Nethunter OS закончена, и в следующей статье мы рассмотрим практическое использование нашего кул-хацкерского девайса.

А вот и обещанная ссылка на пакеты З.Ы.

Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть