Kali Linux Cookbook

5 (1 reviews total)
By Willie L. Pritchett , David De Smet
    Advance your knowledge in tech with a Packt subscription

  • Instant online access to over 7,500+ books and videos
  • Constantly updated with 100+ new titles each month
  • Breadth and depth in over 1,000+ technologies
  1. Up and Running with Kali Linux

About this book

In this age, where online information is at its most vulnerable, knowing how to execute the same attacks that hackers use to break into your system or network helps you plug the loopholes before it's too late and can save you countless hours and money. Kali Linux is a Linux distribution designed for penetration testing and security auditing. It is the successor to BackTrack, the world’s most popular penetration testing distribution.

Discover a variety of popular tools of penetration testing, such as information gathering, vulnerability identification, exploitation, privilege escalation, and covering your tracks.

Packed with practical recipes, this useful guide begins by covering the installation of Kali Linux and setting up a virtual environment to perform your tests. You will then learn how to eavesdrop and intercept traffic on wireless networks, bypass intrusion detection systems, and attack web applications, as well as checking for open ports, performing data forensics, and much more. The book follows the logical approach of a penetration test from start to finish with many screenshots and illustrations that help to explain each tool in detail. The Kali Linux Cookbook will serve as an excellent source of information for the security professional and novice alike!

Publication date:
October 2013


Chapter 1. Up and Running with Kali Linux

In this chapter, we will cover:

  • Installing to a hard disk drive

  • Installing to a USB drive with persistent memory

  • Installing in VirtualBox

  • Installing VMware Tools

  • Fixing the splash screen

  • Starting network services

  • Setting up the wireless network



Kali Linux, or simply Kali, is the newest Linux distribution from Offensive Security. It is the successor to the BackTrack Linux distribution. Unlike most Linux distributions, Kali Linux is used for the purposes of penetration testing. Penetration testing is a way of evaluating the security of a computer system or network by simulating an attack. Throughout this book, we will further explore some of the many tools that Kali Linux has made available.

This chapter covers the installation and setup of Kali Linux in different scenarios, from inserting the Kali Linux DVD to configuring the network.

For all the recipes in this and the following chapters, we will use Kali Linux using GNOME 64-bit as the Window Manager (WM) flavor and architecture (http://www.Kali.org/downloads/). The use of KDE as the WM is not covered in this book; however, you should be able to follow the recipes without much trouble.


Installing to a hard disk drive

The installation to a disk drive is one of the most basic operations. The achievement of this task will let us run Kali Linux without the DVD.


Performing the steps covered in this recipe will erase your hard drive, making Kali Linux the primary operating system on your computer.

Getting ready

Before explaining the procedure, the following requirements need to be met:

  • A minimum of 8 GB of free disk space for the Kali Linux install (although, we recommend at least 25 GB to hold additional programs and wordlists generated with this book)

  • A minimum of 512MB of RAM

  • You can download Kali Linux at http://www.kali.org/downloads/

Let's begin with the installation.

How to do it...

  1. Begin by inserting the Kali Linux Live DVD in the optical drive of your computer. You will ultimately come to the Kali Linux Live DVD Boot menu. Choose Graphical install.

  2. Choose your language. In this case, we chose English.

  3. Choose your location. In this case, we chose United States.

  4. Choose your keyboard configuration. In this case, we chose American English.

  5. The next section to complete is the network services section. Enter a hostname. In this case, we entered Kali.

  6. Next, we have to enter a domain name. In this case, we enter kali.secureworks.com.

  7. You will now be presented with the opportunity to choose the password for the root user by entering a password twice.

  8. Choose your timezone. In this case, we chose Eastern.

  9. We are now able to select our disk partition scheme. You will be presented with four options. Choose Guided - use entire disk, as this allows for easy partitioning.

  10. At this step, you will need to acknowledge that your entire disc will be erased. Click on Continue.

  11. Next, you have the option of choosing one of three partitioning schemes: All files in one partition, Separate/home partition, or Separate/home/user/var, and/tmp partitions. Considering Kali is being used more so for penetration testing purposes, a separation of partitions is not needed nor required (even though this is a great idea for your main desktop Linux distribution). In this case, choose All files in one partition and click on Continue.

  12. Once you get to the screen which lets you know that changes are about to be made to your disks, choose Yes and click on Continue. Please note that this is the final chance to back out of having all of your data on your disc overwritten.

  13. Next, you will be asked if you want to connect to a network mirror. A network mirror allows you to receive updates for Kali as they become available. In this case, we choose Yes and click on Continue.

  14. You may skip the HTTP proxy page by clicking on Continue.

  15. Finally, you will be asked to install the GRUB boot loader to the master boot record. Choose Yes and click on Continue.

  16. You have now completed the installation of Kali Linux! Congratulations! Click on Continue and the system will reboot and bring you to the login page.


Installing to a USB drive with persistent memory

Having a Kali Linux USB drive provides us with the ability to persistently save system settings and permanently update and install new software packages onto the USB device, allowing us to carry our own personalized Kali Linux, with us at all times.

Thanks to tools such as Win32 Disk Imager, we can create a bootable Live USB drive of a vast majority of Linux distributions, including Kali Linux with persistent storage.

Getting ready

The following tools and preparations are needed in order to continue:

How to do it...

Let's begin the process of installing Kali Linux to a USB drive:

  1. Insert a formatted/writeable USB drive:

  2. Start Win32 Disk Imager.

  3. At the Image File location, click on the folder icon and select the location of the Kali Linux DVD ISO image:

  4. Make sure that Space used to preserve files across reboots is set to 4096.

  5. Select our USB drive and click on the OK button to start creating the bootable USB drive.

  6. The process will take some time to complete while it extracts and copies the DVD files to the USB and installs the bootloader.

  7. When the installation is complete, we're ready to reboot the computer and boot from the newly created Kali Linux USB drive with persistent memory:


Installing in VirtualBox

This recipe will take you through the installation of Kali Linux in a completely isolated guest operating system within your host operating system using the well-known open source virtualization software: VirtualBox.

Getting ready

The required prerequisites are listed as follows:

How to do it...

Let's begin the process of installing Kali Linux in Virtualbox:

  1. Launch VirtualBox and click on New to start the Virtual Machine Wizard:

  2. Click on the Next button, type the name of the virtual machine, and choose the OS type as well as the version. In this case, we selected an operating system of Linux and Ubuntu (64 bit) as the version. Click on the Next button to continue:

  3. Select the amount of base memory (RAM) to be allocated to the virtual machine. We're going to use the default value. Click on Next.

  4. Create a new virtual hard disk for the new virtual machine. Click on the Next button:

  5. A new wizard window will open. Leave the default VDI file type as we're not planning to use other virtualization software.

  6. We'll leave the default option as the virtual disk storage details. Click on Next to continue.

  7. Set the virtual disk file location and size:

  8. Check whether the settings are correct and click on the Create button to start the virtual disk file creation.

  9. We're back to the previous wizard with the summary of the virtual machine parameters. Click on Create to finish:

  10. With the new virtual machine created, we're ready to install Kali Linux.

  11. On the VirtualBox main window, highlight Kali Linux and then click on the Settings button:

  12. Now that the basic installation steps have been followed, we will proceed to allow you to use your downloaded ISO file as a virtual disc. This will save you from having to burn a physical DVD to complete the installation. On the Settings screen, click on the Storage menu option:

  13. Next, under Storage Tree, highlight the Empty disc icon underneath IDE Controller. This selects our virtual CD/DVD ROM drive. To the far right of the screen, under Attributes, click on the disc icon. In the pop up that follows, select your Kali Linux ISO file from the list. If the Kali Linux ISO file is not present, select the Choose a virtual CD/DVD disc file... option and locate your ISO. Once you have completed these steps, click on the OK button:

  14. Click on the Start button and then click inside the new window and proceed with the installation. The installation steps are covered in the Installing to a hard disk drive recipe of this chapter.


Installing the VirtualBox Extension Pack also allows us to extend the functionality of the virtualization product by adding support for USB 2.0 (EHCI) devices, VirtualBox RDP, and Intel PXE boot ROM.


Installing VMware Tools

In this recipe, we will demonstrate how to install Kali Linux as a virtual machine using VMware Tools.

Getting ready

The following requirements need to be fulfilled:

  • A previously installed Kali Linux VMware virtual machine

  • An Internet connection

How to do it...

Let's begin the process of installing Kali Linux on VMware:

  1. With your virtual machine's guest operating system powered on and connected to the Internet, open a Terminal window and type the following command to prepare the kernel sources:



    These instructions are assuming you are using either Linux or Mac OS machines. You will not need to perform these steps under Windows.

  2. On the VMware Workstation menu bar, navigate to VM | Install VMware Tools…:

  3. Copy the VMware Tools installer to a temporary location and then change the location to the target directory:

    cp /media/VMware\ Tools/VMwareTools-8.8.2-590212.tar.gz /tmp/; cd /tmp/


    Replace the filename according to your VMware Tools version: VMwareTools-<version>-<build>.tar.gz

  4. Untar the installer by issuing the following command:

    tar zxpf VMwareTools-8.8.2-590212.tar.gz
  5. Go to the VMware Tools' directory and run the installer:

    cd vmware-tools-distrib/
  6. Press Enter to accept the default values in each configuration question; the same applies with the vmware-config-tools.pl script.

  7. Finally, reboot and we're done!

How it works...

In the first step, we prepared our kernel source. Next, we virtually inserted the VMware Tools CD into the guest operating system. Then, we created the mount point and mounted the virtual CD drive. We copied and extracted the installer in a temporary folder and finally we ran the installer leaving the default values.


Fixing the splash screen

The first time we boot into our newly installed Kali Linux system, we will notice that the splash screen has disappeared. In order to manually fix it, we need to extract Initrd, modify it, and then compress it again. Thankfully, there's an automated bash script created by Mati Aharoni (also known as "muts", creator of Kali Linux) that makes the whole process easier.

How to do it...

To fix the disappeared splash screen, type the following command and hit Enter:


Starting network services

Kali Linux comes with several network services which may be useful in various situations and are disabled by default. In this recipe, we will cover the steps to set up and start each service using various methods.

Getting ready

The following requirement is needed in order to continue:

  • A connection to the network with a valid IP address

How to do it...

Let's begin the process of starting our default service:

  1. Start the Apache server:

    service apache2 start

    We can verify the server is running by browsing to the localhost address.

  2. To start the Secure Shell (SSH) service, SSH keys need to be generated for the first time:

  3. Start the Secure Shell server:

    service ssh start
  4. To verify the server is up and listening, use the netstat command:

    netstat -tpan | grep 22
  5. Start the FTP server:

    service pure-ftpd start
  6. To verify the FTP server, use the following command:

    netstat -ant | grep 21


    You can also use the ps-ef | grep 21 command.

  7. To stop a service, just issue the following command:

    service <servicename> stop

    Where <servicename> stands for the network service we want to stop. For example:

    service apache2 stop
  8. To enable a service at boot time, use the following command:

    update-rc.d –f <servicename> defaults

    Where <servicename> stands for the network service we want at boot time. For example:

    update-rc.d –f ssh defaults


    You can also do this from the Services menu in Kali Linux. From the Start menu, go to Kali Linux | Services.


Setting up the wireless network

At last we come to the final recipe of this chapter. In this recipe, we will see the steps needed to connect to our wireless network with security enabled by using Wicd Network Manager and supplying our encryption details. Setting up our wireless network enables us to use Kali Linux wirelessly. In a true, ethical penetration test, not having to depend on an Ethernet cable enables us to have all of the freedoms of a regular desktop.

How to do it...

Let's begin setting up the wireless network:

  1. From the desktop, start the network manager by clicking on the Applications menu and navigating to Internet | Wicd Network Manager or by issuing the following command at the Terminal window:

    wicd-gtk --no-tray
  2. Wicd Network Manager will open with a list of available networks:

  3. Click on the Properties button to specify the network details. When done, click on OK:

  4. Finally, click on the Connect button. We're ready to go!

How it works...

In this recipe, we concluded the setup of our wireless network. This recipe began by starting the network manager and connecting to our router.

About the Authors

  • Willie L. Pritchett

    Willie L. Pritchett has a Master's in Business Administration. He is a seasoned developer and security enthusiast who has over 20 years of experience in the IT field. He is currently the Chief Executive at Mega Input Data Services, Inc., a full service database management firm specializing in secure, data-driven, application development, and staffing services. He has worked with state and local government agencies as well as helping many small businesses reach their goals through technology. Willie has several industry certifications and currently trains students on various topics including ethical hacking and penetration testing.

    Browse publications by this author
  • David De Smet

    David De Smet has worked in the software industry since 2007 and is the founder and CEO of iSoftDev Co., where he is responsible for many varying tasks, including but not limited to consultancy, customer requirements specification analysis, software design, software implementation, software testing, software maintenance, database development, and web design. He is very passionate about what he does and spends inordinate amounts of time in the software development area. He also has a keen interest in the hacking and network security field and provides network security assessments to several companies.

    Browse publications by this author

Latest Reviews

(1 reviews total)
The purchasing of this e-book was simply the easiest and quickest experience I have ever had. I would highly recommend them to everyone, and I will definitely be looking to them on all of my next purchases.
Kali Linux Cookbook
Unlock this book and the full library for FREE
Start free trial