Kali NetHunter Documentation

Kali NetHunter is a free & open-source Mobile Penetration Testing Platform for Android devices, based on Kali Linux.

NetHunter Kex  

Content:

 

Overview

Kali NetHunter is available for un-rooted devices (NetHunter Rootless), for rooted devices that have a custom recovery (NetHunter Lite), and for rooted devices with custom recovery for which a NetHunter specific kernel is available (NetHunter).

The core of Kali NetHunter, which is included in all three editions, comprises of:

  • Kali Linux container that includes all the tools and applications that Kali Linux provides

  • Kali NetHunter App Store with dozens of purpose-built security apps

  • Android client to access the Kali NetHunter App Store

  • Kali NetHunter Desktop Experience (KeX) to run full Kali Linux desktop sessions with support for screen mirroring via HDMI or wireless screen casting

NetHunter Kex
Figure 2: Kali NetHunter Desktop Experience (KeX) outputting to an HDMI monitor

 

The Kali NetHunter App Store can be accessed through the dedicated client app or via the web interface.

NetHunter Kex
Figure 3: Kali NetHunter App Store

 

Both rooted editions provide additional tools & services.
A custom kernel can extend that functionality by adding additional network and USB gadget drivers as well as wifi injection support for selected wifi chips.

NetHunter App
Figure 3: The Kali NetHunter App is available in both rooted editions (NetHunter Lite & NetHunter).

 

Beyond the penetration testing tools included in Kali Linux, NetHunter also supports several additional classes, such as HID Keyboard Attacks, BadUSB attacks, Evil AP MANA attacks, and many more.

For more information about the moving parts that make up NetHunter, check out our NetHunter Components page. Kali NetHunter is an open-source project developed by Offensive Security and the community.

 

1.0 NetHunter Editions

NetHunter can be installed on almost every Android device under the sun using one of the following editions:

EditionUsage
NetHunter RootlessThe core of NetHunter for unrooted, unmodified devices
NetHunter LiteThe full NetHunter package for rooted phones without a custom kernel.
NetHunterThe full NetHunter package with custom kernel for supported devices

The following table illustrates the differences in functionality:

FeatureNetHunter RootlessNetHunter LiteNetHunter
App StoreYesYesYes
Kali cliYesYesYes
All Kali packagesYesYesYes
KeXYesYesYes
Metasploit w/o DBYesYesYes
Metasploit with DBNoYesYes
NetHunter AppNoYesYes
Requires TWRPNoYesYes
Requires RootNoNoYes
WiFi InjectionNoNoYes
HID attacksNoNoYes

The installation of NetHunter Rootless is documented here: NetHunter-Rootless

The NetHunter-App specific chapters are only applicable to the NetHunter & NetHunter Lite editions.

The Kernel specific chapters are only applicable to the NetHunter edition.

 

2.0 NetHunter Supported Devices and ROMs

NetHunter Lite can be installed on all Android devices that are rooted and have a custom recovery.

The full NetHunter experince requires a devices specific kernel that has been purpose built for Kali NetHunter.
The following table lists the NetHunter supported hardware as well as the corresponding ROM or Android versions for which NetHunter is built:

DeviceAndroid VersionNotes
Nexus 4 (mako)5.1.1
CM 13.0
Nexus 5 (hammerhead)5.1.1 or 6.0.1
CM 13.0 or CM 14.1
Nexus 5x (bullhead)6.0.1
Nexus 6 (shamu)5.1.1 or 6.0.1
LOS 16.0
Nexus 6P (angler)8.1
LOS 17.1
Our preferred low end device
Nexus 7 2013 (flo)5.1.1 or 6.0.1
CM 13.0
Nexus 9 (flounder)5.1.1 or 6.0.1
Nexus 10 (manta)5.1.1
OnePlus One (oneplus1)CM 12.1 or 13.0
OnePlus 2 (oneplus2)CM 12.1 - 16.0
OnePlus 3 (oneplus3)6.0.1 or 7.0.0Unified build in 7.0.0 (OxygenOS)
OnePlus 3T (oneplus3)6.0.1 or 7.0.0Unified build in 7.0.0 (OxygenOS)
OnePlus 7 (guacamoleb)OOS 9.5.8
OOS 10.0.4
Our preferred high end device
Important: Install Disable_Dm-Verity_ForceEncrypt
OnePlus 7 Pro (guacamole)OOS 9.5.8
OOS 10.0.4
Important: Install Disable_Dm-Verity_ForceEncrypt
OnePlus X (oneplusx)CM 13.0
Galaxy Note 3 (hlte)CM 12.1 or 13.0
TouchWiz 5.0
Galaxy S5 (klte)LineageOS 14.1
TouchWiz 5.1 or 6.0
Galaxy S7 (herolte)TouchWiz 6.0.1Warning: Exynos models only!
Galaxy S7 edge (hero2lte)TouchWiz 6.0.1Warning: Exynos models only!
Galaxy Tab S4 Wifi (830)TouchWiz 9.0.1
Galaxy Tab S4 LTE (835)TouchWiz 9.0.1Our preferred tablet
Gemini (geminipda)**7.0.0
LG G5 T-Mobile (h830)7.0.0
LG G5 International (h850)7.0.0
LG V20 T-Mobile (h918)7.0.0Warning: Requires exploit on v10d firmware to unlock flashing!
LG V20 International (990DS)7.0.0
HTC One M7 GPE (onem7gpe)5.1.1Google Play Edition
HTC 10 (htc_pmewl)6.0.1
Sony Xperia ZR (dogo)CM 13.0
Sony Xperia Z (yuga)CM 13.0
Sony Xperia Z1 (honami)CM 13.0
SHIELD tablet (shieldtablet)
SHIELD tablet K1
6.0.1
CM 13.0
Xiaomi Mi 9TMiui 11.0.4Our preferred mid range device
ZTE Axon 7 (ailsa_ii)6.0.1

 

3.0 Downloading NetHunter

Official release NetHunter images for your specific supported device can be download from the Offensive Security NetHunter project page located at the following URL:

Once the zip file has downloaded, verify the SHA256 sum of the NetHunter zip image against the values on the Offensive Security NetHunter download page. If the SHA256 sums do not match, do not attempt to continue with the installation procedure.

You may also enable zip signature verification before flashing and TWRP will verify the entire zip for you before installing.

 

4.0 Building NetHunter

Those of you who want to build a NetHunter image from our Gitlab repository may do so using our Python build scripts. Check out our Building NetHunter page for more information. You can find additional instructions on using the NetHunter installer builder or adding your own device in the README located in the nethunter-installer git directory.

 

5.0 Installing NetHunter on top of Android

Now that you’ve either downloaded a NetHunter image or built one yourself, the next steps are to prepare your Android device and then install the image. “Preparing your Android device” includes:

  • unlocking your device and updating it to stock AOSP or LineageOS (CM). (Check point 2.0 for supported roms)
  • installing Team Win Recovery Project as a custom recovery.
  • installing Magisk to root the device
  • disabling force encryption may be required if TWRP cannot access the data partition
  • Once you have a custom recovery, all that remains is to flash the NetHunter installer zip file onto your Android device.

 

6.0 Post Installation Setup

  • Open the NetHunter App and start the Kali Chroot Manager.
  • Install the Hacker Keyboard from the NetHunter Store using the NetHunter Store app.
  • Install any other apps from the NetHunter Store as required.
  • Configure Kali Services, such as SSH.
  • Set up custom commands.
  • Initialize the Exploit Database.

 

7.0 Kali NetHunter Attacks and Features

Kali NetHunter Application

3rd Party Android Applications in the NetHunter App Store

 

8.0 Porting NetHunter to New Devices

If you’re interested in porting NetHunter to other Android devices, check out the following links. If your port works, make sure to tell us about it so we can include these kernels in our releases!

  1. Getting Started
  2. Modifying a Kernel
  3. Adding Your Device

 

9.0 Known Working Hardware

  1. Wireless Cards
  2. SDR - RTL-SDR (based on RTL2832U)

 

10.0 NetHunter Apps

All apps can be installed through the NetHunter Store client.

  1. The NetHunter Store App can be downloaded here
  2. The NetHunter Web Store can be found here
  3. The source code for building the NetHunter Apps can be found on GitLab here