Resources
Primary Resources
Monash students/staff can access our list of resources.
Access our workshop CTF scoreboard.
Missed a workshop? Recordings are on our YouTube channel!
Kali Linux Set-up
1 Hypervisor:
- Download a hypervisor (virtual machine manager) either via the official website or via your preferred package manager.
- VirtualBox
- VMware
- UTM (for Apple Silicon on macOS)
From here, you can set-up you Kali Linux virtual machine (VM) either manually with Kali’s pre-built images, or automatically with additional tools.
2 VM Set-up
2.1 Manually
- Download your Kali Linux installer:
- Mirrored installation ISOs could be found at https://mirrors.ocf.berkeley.edu/kali-images/kali-2022.1/.
- Follow Kali’s documentation for you hypervisor:
Optional: Automatically
Please make sure to review the following configuration before proceeding.
- Download Vagrant either via their website or via your preferred package manager.
- Create a new file, named
Vagrantfile
in your current directory, with the following configuration:- Preferred hypervisor provider (
virtualbox
orvmware_desktop
) - Allocated memory
- Allocated threads
- Optional: Launch with graphical interface (
true
orfalse
) - Optional: VM name
- Synced folder between host and guest
- Preferred hypervisor provider (
- Run
vagrant up
in your command-line (at the same directory as yourVagrantfile
) in order to start the VM.- At this stage you can wait for the VM to boot and interact with it graphically when it is ready.
- You can shut-down your VM either graphically, or by running
vagrant halt
at the same directory as yourVagrantfile
.
- Run
vagrant ssh
in your command-line (at the same directory as yourVagrantfile
), in order to start an command-line session. This is a great option if your host machine does not have lots of resources for a graphical session, or if you like working with the integrated terminal of your preferred IDE. - Example
Vagrantfile
:- VirtualBox hypervisor
- 2 GiB of memory
- 2 CPU threads
Vagrantfile
’s directory on the host is synced to/home/vagrant/Documents/CTFs
on the guest.
Vagrant.configure("2") do |config|
config.ssh.insert_key = false
config.vm.provider "virtualbox" do |virtualbox|
virtualbox.memory = 2048
virtualbox.cpus = 2
virtualbox.gui = true
virtualbox.name = "Kali"
end
config.vm.box = "kalilinux/rolling"
# creating a synced folder from current directory on host to /home/vagrant/Documents/CTFs on guest
config.vm.synced_folder ".", "/home/vagrant/Documents/CTFs", create: true
end
3 Alternative Kali Mirrors
Please make sure to review the following configuration before proceeding.
It might be the case that the Administrator of your currently-used network intentionally blocked the https://kali.download and https://kali.org websites from being accessed. This means that Kali’s apt
package manager is rendered unusable by default. In this case, in order to download additional packages, you have to change to default mirror to a different one.
Notable Kali mirrors include:
- https://mirrors.ocf.berkeley.edu/kali/
- https://mirrors.dotsrc.org/kali/
- https://mirror.anigil.com/kali/
3.1 Manually
Run the following script from your Kali command-line session, with the alternative mirrors of your choosing:
sudo sed -i 's$http://http.kali.org/kali$https://mirrors.ocf.berkeley.edu/kali/$' /etc/apt/sources.list
sudo apt update
Optional: Automatically
Please make sure to review the following configuration before proceeding.
Add the following configuration to your Vagrantfile
, with the alternative mirrors of your choosing:
config.vm.provision "shell", inline: <<-SCRIPT
cp -f /etc/apt/sources.list{,.bkup}
cp -f /etc/apt/sources.list /tmp
sed -i 's$http://http.kali.org/kali$https://mirrors.ocf.berkeley.edu/kali/$' /tmp/sources.list
cat /tmp/sources.list > /etc/apt/sources.list
sudo apt update
SCRIPT
4. Additional Software
apt
sudo apt install ghidra docker.io python3-pycryptodome ropper python3-ropgadget
pip
pip install pwntools pwndbg
apt
Troubleshooting
- If
sudo apt upgrade
fails, try runningsudo apt full-upgrade
.