OSCP PWK Kali Linux 32bits VM back on track for VirtualBox

You really don't want to use this close-sourced proprietary VMWare Workstation when you could use the free libre and open-source Oracle VirtualBox?

You think Offensive Security gives you no choice by proving a PWK Kali Linux VM that is a stupid copy/paste of a VMWare VM?

You're right for the 1st statement and wrong for the second else I wouldn't be writing this article right?

Download#

First we will have to download the VM at https://support.offensive-security.com/pwk-kali-vm/#pwk-vm-download

Stupor and Consternation#

Extract the archive 7z x pwk-kali-vm.7z and see the mess:

$ ls -lh OffsecVM-2018.3-20180821 | awk '{print $5,$9}'
512K OffsecVM-2018.3-20180821-cl2-000001-s001.vmdk
512K OffsecVM-2018.3-20180821-cl2-000001-s002.vmdk
512K OffsecVM-2018.3-20180821-cl2-000001-s003.vmdk
512K OffsecVM-2018.3-20180821-cl2-000001-s004.vmdk
512K OffsecVM-2018.3-20180821-cl2-000001-s005.vmdk
512K OffsecVM-2018.3-20180821-cl2-000001-s006.vmdk
512K OffsecVM-2018.3-20180821-cl2-000001-s007.vmdk
512K OffsecVM-2018.3-20180821-cl2-000001-s008.vmdk
512K OffsecVM-2018.3-20180821-cl2-000001-s009.vmdk
512K OffsecVM-2018.3-20180821-cl2-000001-s010.vmdk
512K OffsecVM-2018.3-20180821-cl2-000001-s011.vmdk
512K OffsecVM-2018.3-20180821-cl2-000001-s012.vmdk
512K OffsecVM-2018.3-20180821-cl2-000001-s013.vmdk
512K OffsecVM-2018.3-20180821-cl2-000001-s014.vmdk
512K OffsecVM-2018.3-20180821-cl2-000001-s015.vmdk
512K OffsecVM-2018.3-20180821-cl2-000001-s016.vmdk
512K OffsecVM-2018.3-20180821-cl2-000001-s017.vmdk
512K OffsecVM-2018.3-20180821-cl2-000001-s018.vmdk
512K OffsecVM-2018.3-20180821-cl2-000001-s019.vmdk
512K OffsecVM-2018.3-20180821-cl2-000001-s020.vmdk
128K OffsecVM-2018.3-20180821-cl2-000001-s021.vmdk
1,6K OffsecVM-2018.3-20180821-cl2-000001.vmdk
3,3G OffsecVM-2018.3-20180821-cl2-s001.vmdk
3,3G OffsecVM-2018.3-20180821-cl2-s002.vmdk
1019M OffsecVM-2018.3-20180821-cl2-s003.vmdk
216M OffsecVM-2018.3-20180821-cl2-s004.vmdk
260M OffsecVM-2018.3-20180821-cl2-s005.vmdk
318M OffsecVM-2018.3-20180821-cl2-s006.vmdk
559M OffsecVM-2018.3-20180821-cl2-s007.vmdk
578M OffsecVM-2018.3-20180821-cl2-s008.vmdk
177M OffsecVM-2018.3-20180821-cl2-s009.vmdk
527M OffsecVM-2018.3-20180821-cl2-s010.vmdk
1,3G OffsecVM-2018.3-20180821-cl2-s011.vmdk
326M OffsecVM-2018.3-20180821-cl2-s012.vmdk
699M OffsecVM-2018.3-20180821-cl2-s013.vmdk
666M OffsecVM-2018.3-20180821-cl2-s014.vmdk
322M OffsecVM-2018.3-20180821-cl2-s015.vmdk
229M OffsecVM-2018.3-20180821-cl2-s016.vmdk
458M OffsecVM-2018.3-20180821-cl2-s017.vmdk
238M OffsecVM-2018.3-20180821-cl2-s018.vmdk
148M OffsecVM-2018.3-20180821-cl2-s019.vmdk
1,6G OffsecVM-2018.3-20180821-cl2-s020.vmdk
108M OffsecVM-2018.3-20180821-cl2-s021.vmdk
1,8K OffsecVM-2018.3-20180821-cl2.vmdk
8,5K OffsecVM-2018.3-20180821.nvram
29K OffsecVM-2018.3-20180821-Snapshot1.vmsn
449 OffsecVM-2018.3-20180821.vmsd
3,9K OffsecVM-2018.3-20180821.vmx
382 OffsecVM-2018.3-20180821.vmxf

Conversion time (split VMDK to single raw)#

I assume you already have VirtualBox installed and that you have not VMWare Workstation installed. None want to install it only to get their packaged OVF conversion tool.

Install QEMU for converting the disks: sudo pacman -S qemu (command given for ArchLinux).

Convert the vmdk split image to a single raw image: qemu-img convert -f vmdk -O raw OffsecVM-2018.3-20180821-cl2.vmdk OffsecVM-2018.3-2OffsecVM-2018.3-20180821-cl2.raw.

Warning take care to select the primary VMDK not a split part or the snapshot ones.

See how big our raw image is, you can say goodby the the thin provision and say hi to pre-allocated space:

$ ls -lh OffsecVM-2018.3-2OffsecVM-2018.3-20180821-cl2.raw
-rw-r--r-- 1 shark shark 80G 12 mai   14:36 OffsecVM-2018.3-2OffsecVM-2018.3-20180821-cl2.raw

But be reassured this is temporary.

More conversion (raw to VDI)#

Now convert the raw image to vdi:VBoxManage convertdd OffsecVM-2018.3-2OffsecVM-2018.3-20180821-cl2.raw OffsecVM-2018.3-2OffsecVM-2018.3-20180821-cl2.vdi

See how it is now:

$ ls -lh OffsecVM-2018.3-2OffsecVM-2018.3-20180821-cl2.vdi 
-rw------- 1 shark shark 17G 12 mai   15:01 OffsecVM-2018.3-2OffsecVM-2018.3-20180821-cl2.vdi

Create a VirtualBox VM#

Start to create a VM from scratch.

See the config used in OffsecVM-2018.3-20180821.vmx in order to put back the same amount of vCPU and vRAM (and take a look at others parameters).

$ cat OffsecVM-2018.3-20180821.vmx | grep vcpu
numvcpus = "4"
numa.autosize.vcpu.maxPerVirtualNode = "4"

$ cat OffsecVM-2018.3-20180821.vmx | grep mem 
memsize = "2048"

Specify you will use a Debian 32bits.

Then do not add a virtual hard disk:

Go in the VirtualBox disk management menu and add your converted disk.

Then edit your VM config to add the disk to a SATA controller and add the right amount of vCPU.

Boot time!#

If it don't boot either something changed or you did something wrong. Don't blame my excellent tutorial!

VirtualBox Guest Additions#

Once you started the VM, install VirtualBox Guest Additions:

  • apt update
  • apt install virtualbox-guest-x11
  • dpkg --configure -a
  • reboot
Share