Kali Linux – Raspberry Pi

The Raspberry Pi is a low-cost, credit-card-sized ARM computer. Despite being a good bit less powerful than a laptop or desktop PC, its affordability makes it an excellent option for a tiny Linux system and it can do far more than act as a media hub.

The Raspberry Pi provides a SD card slot for mass storage and will attempt to boot off that device when the board is powered on.

By default, the Kali Linux Raspberry Pi image has been streamlined with the minimum tools, similar to all the other ARM images. If you wish to upgrade the installation to a standard desktop installation, you can include the extra tools by installing the kali-linux-full metapackage. For more information on metapackages, please refer to our tools page.

Download and validate the Kali Linux Raspberry Pi image from the Offensive Security downloads area. The process for validating an image is described in more detail in the article on “Downloading Kali Linux”.

Use the dd utility to image this file to your SD card. The full process for creating a bootable USB or SD device is described in the article on “Making a Kali Live USB Drive”. In the following example, we assume that the image is named “kali-2.1.2-rpi.img”, that it’s is in your current working directory, and that the SD card is located at /dev/sdb. Do not simply copy these value, change this to the correct drive path corresponding to your SD card.

This command will overwrite any existing data on your SD card. If you specify the wrong device path, you could wipe out your computer’s hard disk!

root@kali:~ ddif=kali-2.1.2-rpi.img of=/dev/sdb bs=512k

This process can take a while depending on your SD card’s device speed and image size. Once the dd operation is complete, insert the SD card into the Raspberry Pi and power it on.

You should be able to log into Kali (as user root, using the password toor) and execute the startx command at the shell prompt to start up the XFCE desktop environment.

IMPORTANT! Please change your SSH host keys as soon as possible as all ARM images are pre-configured the same keys. You should also change the root password to something more secure, especially if this machine will be publicly accessible!

Changing the SSH host keys can be accomplished by doing the following:

Kali Linux on Raspberry Pi — Custom Build

If you are a developer and want to tinker with the Kali Raspberry Pi image, including changing the kernel configuration, customizing the packages included, or making other modifications, you can work with the rpi.sh script in the kali-arm-build-scripts repository on github, and follow the README.md file’s instructions.