Kali linux nethunter ядра
In order to port NetHunter to a new device, it’s important to understand how NetHunter is separated. NetHunter is divided by the rootfs (also known as the chroot but will be referred to here as rootfs) and the kernel. For the most part, the rootfs is not important to your Android device as it only contains Kali Linux. The kernel is integral to getting things like Bluetooth, wireless USB, and HID keyboard (etc) working.
You also need a device with an unlocked bootloader, for flashing the kernel, and you must be able to get root on the device. Root is needed so we can write applications to system, such as busybox and bootkali, and execute commands that allow us to get Kali running.
If you are looking to port a device, it’s all about the kernel. Device must be unlockable/rootable.
Getting Started
Let’s assume that you’ve already followed the directions on the main docs page. You have all the dependencies met and you are ready to go. The first thing we want to do is build a test kernel.
Kernel Version
If your device is older, please check to make sure your kernel version is 3.4+ and above. With the switch to kali rolling we are starting to see errors inside chroot where the kernel is not able to support loading Kali.
Finding Kernel Sources
One of the reasons why Nexus was chosen is because all kernel sources are made available through Google’s own website. Finding sources can be easy or difficult depending on the manufacturer. A good resource is usually the XDA forums as someone else has probably already built a working kernel and they must provide the sources under GPL. Most kernel development pages on XDA must provide a link to their sources.
Making a Test Kernel
Assuming you don’t have a toolchain downloaded already, you can begin by cloning our kernel builder to the root of your kernel’s folder, and prepare the environment:
[email protected]:~$ git clone https://gitlab.com/kalilinux/nethunter/build-scripts/kali-nethunter-kernel [email protected]:~$ cd kali-nethunter-kernel
Find your best matching local.config example file, modify if necessary, and copy to kernel builder folder:
[email protected]:~$ cp local.config.examples/local.config.example.sdm660 local.config [email protected]:~$ ./build.sh
Select S. Setup Environment and download toolchains. When ready, build your test kernel with 2. Configure & compile kernel from scratch
Select your device’s defconfig, then save and exit to start the building process.
If the build was successful, add your device details like codename, boot_block, slot_device, etc with 8. Edit Anykernel config Create your first test kernel installer with 6. Create Anykernel zip
Now flash your kernel to see it in action!
Please note if you will continue and modify the kernel, you can use 3. Configure & recompile kernel from previous run to save time.
Updated on: 2023-Mar-06
Author: yesimxev
kali linux nethunter
Для 64х битной линукс и 64ч битной андроид: тот же самый, т.к. 64битная линукс поддерживает 32битные программы.
- binutils 2.29.1
- gmp 6.1.2
- mpfr 3.1.5
- mpc 1.0.3
- isl 0.18
- bionic r15c
Там увидите много много файлов и папок, открывайте терминал в этой папке (правой кнопкой мыши на пустом месте и далее в контекстном меню выбрать «открыть терминал»).
Будет много много текста, просто крутим вниз пока не увидим строчки с _defconfig.(это и есть файлы конфигурации)
(управление стрелками вверх вниз, для перехода по меню enter , и стрелки влево вправо, чтобы внизу выбрать select(для подтвержения), exit (для выхода из меню и подменю),
Переходим в networking support, затем в wireless и ставим галку там, где показанно для того чтобы включить возможность подключения устройств
и как раз тут мы выбираем те wifi адаптеры, которые хотим добавить(лично я буду добавлять эти)(некоторые надо помечать пробелом и переходить в них с помощью ентера)
обратно в device drivers и переходим в hid support (подразумивается что вы выбрали исходники ядра уже с поддержкой hid)
$ make -j4 #чтобы начать компиляцию в папку out(-j4 это значит использовать 4 ядра пк! ставте больше или меньше смотря сколько у вас ядер!)пойдет процесс сборки
Если у вас ошибки при компиляции, просто удалите папку out командой $ rm -R out, затем заного делаете все команды, надо будет писать make O=$TARGET *команда*
Собираем ядро для nethunter
Собрать ядро Андроид под Kali Nethunter не совсем сложно. Этот процесс идентичен сборке ядра Linux или OpenWRT.
Сложно найти исходники ядра.
Ведь исходники операционной системы от различных девайсов отличаются друг от друга.
А производители вовсе не обязаны выкладывать их на «растерзание» публики ))
lev13
не работают там ссылки на ядро
Собрать ядро Андроид под Kali Nethunter не совсем сложно. Этот процесс идентичен сборке ядра Linux или OpenWRT.
Сложно найти исходники ядра.
Ведь исходники операционной системы от различных девайсов отличаются друг от друга.
А производители вовсе не обязаны выкладывать их на «растерзание» публики ))
Для тебя вот здесь всё выложено.
pasha678
Собрать ядро Андроид под Kali Nethunter не совсем сложно. Этот процесс идентичен сборке ядра Linux или OpenWRT.
Сложно найти исходники ядра.
Ведь исходники операционной системы от различных девайсов отличаются друг от друга.
А производители вовсе не обязаны выкладывать их на «растерзание» публики ))
Подскажи,чем обычное ядро отличается от того которое надо kali nethunter.И что ты имеешь ввиду «Этот процесс идентичен сборке ядра Linux»?Я нашел мануал по созданию кастомного ядра,но про nethunter не слова,что надо добавить/дописать/сделать чтоб поддерживалось? nethunter
Gold
Что за траблы .
1. Все linux телефоны могут выходить только под GPL v2.0-3.0 лицензиях, это означает что полные исходники должны быть опубликованы. Например вон какой бугур поднялся по поводу xaomi Xiaomi не открывает ядро прошивки Mi A1, Android-сообщество расстраивается .
2. По поводу сборки ядра есть официальная статья от NetHunter offensive-security/kali-nethunter. Я так понял патч для внешних вифи адаптеров один для всех устройств, а вот hid нужно искать под ваш.
А и по поводу видео. Там всё немного сложнее он собирает полный пак, как те которые представлены
. А для самого ядра он не ставит патч на эмуляцию HID (мэйби я не понял, возможно этот патч не нужен для современных ядер, мэйби ему это не надо). А вообще очень похоже что видео сделано по статье про Honor 6X ну или наоборот, но я где то встречал эту статью.
Я посмотрел файлы вон той проги с помощью которой осуществляться сборка, там есть что-то похожее на HID патчи. И по пути pelya/android-keyboard-gadget есть патч и файлы с названием процессоров на которых его проверяли. Возможно данная составляющая ядра патчит автоматически и тогда сборка показанная в видео установит полноценное ядро. Но что то я в этом сомневаюсь, потому что иначе весь интернеты был бы завален этими сборками. А там кто его знает про NetHunter в рунете дельной инфы. И в заключении хочу сказать, что поиск ядра это как зараза и вы будете возвращаться к этому снова и снова. И за 11 месяцев, я дошёл до того что готов уже сам компилировать и тестить! Скоро проверю работоспособность патчей и тогда отпишусь
Так первые результаты таковы
Собираю на последней версии Kali исходники взял LineageOS 15.1
(
как найти?
LineageOS
поиск по названию компании и модели процессора
android_kernel_xiaomi_msm8996
)
1. С HID патчем ядро отказывается собираться, ругается на API камеры (не думаю что это можно исправить)
2. Патч на WI-FI адаптеры вообще 13 строчек, не думаю что оно повлияет, но до сборки с ним дело не дошло (а вообще нафиг надо всё равно нет внешнего адаптера, как и у большинства)
3. В дополнение к 2 пункту в настройках самого ядра «make menuconfig» нет нужных адаптеров
4. Нашёл интересные настройки в ядре по пути
→ Device Drivers → USB support → USB Gadget Support
(поставил везде галочки, что бы открыть все подменю)
Это как раз про эмуляцию различных устройств . Вот только надо узнать, что будет работать стабильно потому что: (for testing) и (DEVELOPMENT) не даром написано
Тестить не очень хочется, всё надо заново качать потому что патчи всё поломали
│ │ --- USB Gadget Support │ │ │ │ [*] Debugging messages (DEVELOPMENT) │ │ │ │ [*] Verbose debugging Messages (DEVELOPMENT) │ │ │ │ [*] Debugging information files (DEVELOPMENT) │ │ │ │ [*] Debugging information files in debugfs (DEVELOPMENT) │ │ │ │ (500) Maximum VBUS Power usage (2-500 mA) │ │ │ │ (4) Number of storage pipeline buffers │ │ │ │ USB Peripheral Controller ---> │ │ │ │ USB Gadget Drivers │ │ │ │ USB functions configurable through configfs │ │ │ │ [*] Generic serial bulk in/out │ │ │ │ [*] Abstract Control Model (CDC ACM) │ │ │ │ [*] Object Exchange Model (CDC OBEX) │ │ │ │ [*] Network Control Model (CDC NCM) │ │ │ │ [*] Ethernet Control Model (CDC ECM) │ │ │ │ [*] Ethernet Control Model (CDC ECM) subset │ │ │ │ [*] RNDIS │ │ │ │ [*] Ethernet Emulation Model (EEM) │ │ │ │ [*] Mass storage │ │ │ │ [*] Loopback and sourcesink function (for testing) │ │ │ │ [*] Function filesystem (FunctionFS) │ │ │ │ [*] MTP gadget │ │ │ │ [*] PTP gadget │ │ │ │ [*] Accessory gadget │ │ │ │ [*] Audio Source gadget │ │ │ │ [*] Uevent notification of Gadget state │ │ │ │ Gadget Zero (DEVELOPMENT) │ │ │ │ Audio Gadget │ │ │ │ [*] UAC 1.0 (Legacy) │ │ │ │ Ethernet Gadget (with CDC Ethernet support) │ │ │ │ [*] RNDIS support (NEW) │ │ │ │ [*] Ethernet Emulation Model (EEM) support │ │ │ │ Network Control Model (NCM) support │ │ │ │ Gadget Filesystem │ │ │ │ Function Filesystem │ │ │ │ [*] Include configuration with CDC ECM (Ethernet) │ │ │ │ [*] Include configuration with RNDIS (Ethernet) │ │ │ │ [*] Include 'pure' configuration │ │ │ │ Mass Storage Gadget │ │ │ │ Serial Gadget (with CDC ACM and CDC OBEX support) │ │ │ │ MIDI Gadget │ │ │ │ Printer Gadget │ │ │ │ CDC Composite Device (Ethernet and ACM) │ │ │ │ CDC Composite Device (ACM and mass storage) │ │ │ │ Multifunction Composite Gadget │ │ │ │ [*] RNDIS + CDC Serial + Storage configuration (NEW) │ │ │ │ [*] CDC Ethernet + CDC Serial + Storage configuration │ │ │ │ HID Gadget │ │ │ │ EHCI Debug Device Gadget │ │ │ │ EHCI Debug Device mode (serial) ---> │ │ │ │ USB Webcam Gadget │ │