An introduction to Kali Linux
For this book, Kali Linux will be our platform of choice. Kali Linux is a free penetration testing distribution platform that offers a vast range of tools, such as Metasploit for network penetration testing, Nmap for port and vulnerability scanning, Aircrack-Ng for wireless network testing, the Social engineering toolkit (SET) for social engineering attacks, and many more.
Kali Linux is a maintained distribution; this means that it's constantly updated and maintained. At the time of writing, the current version of Kali Linux is 2019.1.
Version 2019.1 introduced a massive update to Metasploit (Metasploit will be covered in Chapter 5, Diving into the Metasploit Framework), including bug fixes, kernel updates, and more.
Kali Linux can be downloaded at https://www.kali.org/downloads, and there are a number of options available for downloading the platform. You can choose to download a 32-bit or 64-bit .iso of the latest version of Kali Linux, as shown in Figure 1:
There are also prebuilt virtual machines for VMware and VirtualBox, which are available to download from Offensive Security; these can be found at https://www.offensive-security.com/kali-linux-vm-vmware-virtualbox-image-download/, as shown in Figure 2:
Kali has the ability to run either as an installed operating system or as a live version, as shown in Figure 3. With the live version, you will need to set up persistent storage on a USB drive—that is, if you want to keep any of the data that is collected while using Kali in live mode:
As you will know, there are various ways to get Kali Linux up and running. For instance, you can leverage a USB disk with Kali Linux for portability. This means that you have the ability to plug it into any PC in order to get Kali up and running. Additionally, some users might prefer having a prebuilt virtual machine—this takes the effort out of installing the operating system from scratch. Alternatively, other users prefer to customize Kali Linux during installation and will want to install Kali Linux directly using the .iso file.