Booting Kali in Live Mode

2.2. Booting a Kali ISO Image in Live Mode

2.2.1. On a Real Computer

As a prerequisite, you need either a USB key prepared (as detailed in the previous section) or a DVD-ROM burned with a Kali Linux ISO image.

The BIOS/UEFI is responsible for the early boot process and can be configured through a piece of software called Setup. In particular, it allows users to choose which boot device is preferred. In our case, we want to select either the DVD-ROM drive or USB drive, depending on which device you have created.

Starting Setup usually involves pressing a particular key very soon after the computer is powered on. This key is often Del or Esc, and sometimes F2 or F10. Most of the time, the choice is briefly flashed onscreen when the computer powers on, before the operating system loads.

Once the BIOS/UEFI has been properly configured to boot from your device, booting Kali Linux is simply a matter of inserting the DVD-ROM or plugging in the USB drive and powering on the computer.

Disable Secure Boot


While the Kali Linux images can be booted in UEFI mode, they do not support secure boot. You should disable that feature in Setup.

2.2.2. In a Virtual Machine

Virtual machines have multiple benefits for Kali Linux users. They are especially useful if you want to try out Kali Linux but aren't ready to commit to installing it permanently on your machine or if you have a powerful system and want to run multiple operating systems simultaneously. This is a popular choice for many penetration testers and security professionals who need to use the wide range of tools available in Kali Linux but still want to have full access to their primary operating system. This also provides them with the ability to archive or securely delete the virtual machine and any client data it may contain rather than reinstalling their entire operating system.

The snapshot features of virtualization software also make it easy to experiment with potentially dangerous operations, such as malware analysis, while allowing for an easy way out by restoring a previous snapshot.

There are many virtualization tools available for all major operating systems, including VirtualBox®, VMware Workstation®, Xen, KVM, and Hyper-V to name a few. Ultimately, you will use the one that best suits you but we will cover the two most frequently-used in a desktop context: VirtualBox® and VMware Workstation Pro®, both running on Windows 10. If you don't have corporate policy constraints or personal preference, our recommendation is that you try out VirtualBox first, as it is free, works well, is (mostly) open-source, and is available for most operating systems.

For the next sections, we will assume that you have already installed the appropriate virtualization tool and are familiar with its operation.

2.2.2.1. Preliminary Remarks

To fully benefit from virtualization, you should have a CPU with the appropriate virtualization features and they should not be disabled by the BIOS/UEFI. Double check for any "Intel® Virtualization Technology" and/or "Intel® VT-d Feature" options in the Setup screens.

You should also have a 64-bit host operating system, such as amd64 architecture for Debian-based Linux distributions, x86_64 architecture for RedHat-based Linux distributions, and Windows ... 64-bit for Windows.

If you lack any of the prerequisites, either the virtualization tool will not work properly or it will be restricted to running only 32-bit guest operating systems.

Since virtualization tools hook into the host operating system and hardware at a low level, there are often incompatibilities between them. Do not expect these tools to run well at the same time. Also, beware that professional versions of Windows come with Hyper-V installed and enabled, which might interfere with your virtualization tool of choice. To turn it off, execute "Turn windows features on or off" from Windows Settings.

2.2.2.2. VirtualBox

After the initial installation, VirtualBox's main screen looks something like Figure 2.6, "VirtualBox's Start Screen".

VirtualBox

Figure 2.6. VirtualBox's Start Screen

Click on New (Figure 2.7, "Name and Operating System" to start a wizard that will guide you through the multiple steps required to input all the parameters of the new virtual machine.

Name

Figure 2.7. Name and Operating System

In the first step, shown in Figure 2.7, "Name and Operating System", you must assign a name to your new virtual machine. We will use "Kali Linux." You must also indicate what kind of operating system will be used. Since Kali Linux is based on Debian GNU/Linux, select Linux for the type and Debian (32-bit) or Debian (64-bit) for the version. Although any other Linux version will most likely work, this will help distinguish between the various virtual machines that you might have installed.

Memory

Figure 2.8. Memory Size

In the second step, you must decide how much memory to allocate to the virtual machine. While the recommended size of 768 MB is acceptable for a Debian virtual machine acting as a server, it is definitely not enough to run a Kali desktop system, especially not for a Kali Linux live system since the live system uses memory to store changes made to the file system. We have increased the value to 1500 MB (Figure 2.8, "Memory Size") and highly recommend that you allocate no less than 2048 MB of RAM.

Hard

Figure 2.9. Hard disk

In the third step (shown in Figure 2.9, "Hard disk"), you are prompted to choose a physical or virtual hard disk for your new virtual machine. Although a hard disk is not required to run Kali Linux as a live system, we will add one so that we can demonstrate the installation procedure later in Chapter 4, Installing Kali Linux.

Hard

Figure 2.10. Hard Disk File Type

The content of the hard disk of the virtual machine is stored on the host machine as a file. VirtualBox is able to store the contents of the hard disk using multiple formats (shown in Figure 2.10, "Hard Disk File Type"): the default (VDI) corresponds to VirtualBox's native format; VMDK is the format used by VMware; QCOW is the format used by QEMU. We keep the default value, because we don't have any reason to change it. The ability to use multiple formats is interesting mainly when you want to move a virtual machine from one virtualization tool to another.

Storage

Figure 2.11. Storage on Physical Hard Disk

The explanation text in Figure 2.11, "Storage on Physical Hard Disk" clearly describes the advantages and drawbacks of dynamic and fixed disk allocation. We accept the default selection (Dynamically allocated), since we are using a laptop with SSD disks. In our case, we don't want to waste space and won't need the extra bit of performance as our machine is already quite fast to begin with.

File

Figure 2.12. File Location and Size

The default hard disk size of 8 GB shown in Figure 2.12, "File Location and Size" is not enough for a standard installation of Kali Linux so we increase the size to 20 GB. You can also tweak the name and the location of the disk image. This can be handy when you don't have enough space on your hard disk, allowing you to store the disk image on an external drive.

NewFigure 2.13. The New Virtual Machine Appears in the List

The virtual machine has been created but we can't really run it yet, because there is no operating system installed. We also have some settings to tweak. Click on Settings on the VM Manager screen and let's review some of the most useful settings.

Storage

Figure 2.14. Storage Settings

In the Storage screen (Figure 2.14, "Storage Settings"), you should associate the Kali Linux ISO image with the virtual CD/DVD-ROM reader. First, select the CD-ROM drive in the "Storage Tree" list and then click on the small CD-ROM icon on the right to display a contextual menu where you can "Choose Virtual Optical Disk File...".

SystemFigure 2.15. System Settings: Motherboard

In the System screen (Figure 2.15, "System Settings: Motherboard"), you will find a "Motherboard" tab. Make sure that the boot order indicates that the system will first try to boot from any optical device before trying a hard disk. This is also the tab where you can alter the amount of memory allocated to the virtual machine, should the need arise.

System

Figure 2.16. System Settings: Processor

In the same screen but on the "Processor" tab (Figure 2.16, "System Settings: Processor"), you can adjust the number of processors assigned to the virtual machine. Most importantly, if you use a 32-bit image, enable PAE/NX or the Kali image will not boot since the default kernel variant used by Kali for i386 (aptly named "686-pae") is compiled in a way that requires Physical Address Extension (PAE) support in the CPU.

There are many other parameters that can be configured, like the network setup (defining how the traffic on the network card is handled), but the above changes are sufficient to be able to boot a working Kali Linux live system. Finally, click Boot and the VM should boot properly, as shown in Figure 2.17, "Kali Linux Boot Screen in VirtualBox". If not, carefully review all settings and try again.

Kali

Figure 2.17. Kali Linux Boot Screen in VirtualBox

2.2.2.3. VMware

VMware Workstation Pro is very similar to VirtualBox in terms of features and user interface, because they are both designed primarily for desktop usage, but the setup process for a new virtual machine is a bit different.

VMware

Figure 2.18. VMware Start Screen

The initial screen, shown in Figure 2.18, "VMware Start Screen", displays a big Create a New Virtual Machine button that starts a wizard to guide you through the creation of your virtual machine.

New

Figure 2.19. New virtual Machine Wizard

In the first step, you must decide whether you want to be presented with advanced settings during the setup process. We don't have any special requirements so we've chosen a typical installation as shown in Figure 2.19, "New virtual Machine Wizard".

Guest

Figure 2.20. Guest Operating System Installation

The wizard assumes that you want to install the operating system immediately and asks you to select the ISO image containing the installation program (Figure 2.20, "Guest Operating System Installation"). Select "Installer disc image file (iso)" and click on Browse to select the image file.

Select

Figure 2.21. Select a Guest Operating System

When the operating system (OS) cannot be detected from the selected ISO image, the wizard asks you which guest OS type you intend to run. You should select "Linux" for the OS and "Debian 8.x" for the version, as shown in Figure 2.21, "Select a Guest Operating System".

Name

Figure 2.22. Name the Virtual Machine

We have chosen Kali Linux as the name of the new virtual machine (Figure 2.22, "Name the Virtual Machine"). As with VirtualBox, you also have the option to store the VM files in an alternate location.

Specify

Figure 2.23. Specify Disk Capacity

The default hard disk size of 20 GB (Figure 2.23, "Specify Disk Capacity") is usually sufficient but you can adjust it here depending on your expected needs. As opposed to VirtualBox, which can use a single file of varying size, VMware has the ability to store the disk's content over multiple files. In both cases, the goal is to conserve the host's disk space.

Ready

Figure 2.24. Ready to Create Virtual Machine

VMware Workstation is now configured to create the new virtual machine. It displays a summary of the choices made so that you can double-check everything before creating the machine. You will notice that the wizard opted to allocate only 512 MB of RAM to the virtual machine, which is not enough so click on Customize Hardware... (Figure 2.24, "Ready to Create Virtual Machine") and tweak the Memory setting, as shown in Figure 2.25, "Configure Hardware Window".

Configure

Figure 2.25. Configure Hardware Window

After a last click on Finish (Figure 2.24, "Ready to Create Virtual Machine"), the virtual machine is now configured and can be started by clicking "Power on this virtual machine" as shown in Figure 2.26, "Kali Linux Virtual Machine Ready".

Kali

Figure 2.26. Kali Linux Virtual Machine Ready