Building a Security Lab in VMware Workstation Pro

In this project, broken up into multiple modules, you will build a comprehensive cybersecurity home lab using VMware Workstation Pro. Upon completion, you will have an environment where you can safely practice penetration testing against a wide variety of targets, as well as detection in your SIEM.
Building a Security Lab in VMware Workstation Pro
In: VMware, VMware Cybersecurity Lab Project, Home Lab, Computer Networking, Active Directory, Cybersecurity, Ethical Hacking, Penetration Testing, Attack, Defend, CTF
⚠️
This lab has been built and tested on a computer running Windows 11 with VMware Workstation Pro 17.x. If you plan on following this guide with VMware Fusion on a Macbook with Apple silicon, your mileage may vary.

All of the VMs featured in this project leverage x86-64 CPU instruction set and Apple silicon is ARM based. You may experience poor performance due to the overhead of VMware Fusion emulating a x86-64 CPU and converting the CPU instructions to and from ARM.

Change Log

View Change Log


Mar 16, 2026

Feb 9, 2026

  • Refactored the FLOATING rule when configuring pfSense
  • Adheres to best practcve with an implicit deny, whereby approved networks and/or IPs must be explicitly whitelisted to access firewall management ports

Sep. 16, 2025

  • Update the Hack Your VMware AD Lab Step step with corrected Remote Desktop GPO configuration
  • Thanks, Eggzy (@hcb420) in the HackTheBox Discord server for all the effort in tracking down the lapse in documentation

July 3, 2025

  • Project first published

What We'll Build


Click here to view this diagram in a new tab



Reviewing the Network Diagram

⚠️
pfSense is acting as the NAT router and firewall for the lab environment. Therefore, pfSense will need to be the first VM to boot when running your lab. After pfSense boots, you can start your other VMs.

Lab Overview (Show / Hide)

  1. A pfSense VM acts as a NAT firewall for the entire lab

    • Segmenting the lab from the hosts's network
    • More granular control than VMware's NAT mode
    • pfSense firewall rules control traffic between subnets
       
  2. A Kali VM sits in the default LAN

    • Kali is used as the pentest VM
       
  3. The ISOLATED network will house our vulnerable VMs

    • Firewall rules here prevent Internet access
    • You will import Vulnhub and HackMyVM boxes
    • Only allowed to communicte with Kali
       
  4. The AD_LAB network is for the Active Directory lab

    • You will stand up a basic AD forest
    • You will also configure it to make it vulnerable
       
  5. The SEC_EGRESS network is added later

    • Shows you how to configure additional networks in VMware and pfSense
    • This network can be used for vulnerable hosts that...
      • May access the Internet
      • May NOT access any other private IP addresses
         
  6. The final module adds a SIEM to the lab

    • You'll configure packet capture on all of your networks
    • Captured packets will pass through a Suricata NIDS
    • And, all logs will be sent to a Wazuh SIEM for analysis



Usage Scenarios

Desktop

You have a desktop – either your daily-use computer or backup computer – you do not want to reimage it, but would like to run some labs on your computer.

Laptop

Your daily-use computer. You want to run some labs on it and would like a mobile security lab.



Recommended System Specifications

  • Multithreaded CPU with Virtualization Support
  • At least 16GB RAM – 32GB would be better
  • Plenty of free disk space, preferably more than one internal disk



Enabling Virtualization in the BIOS

ℹ️
This process is unique to different PC vendors. I am going to demonstrate this on a HP EliteBook 840 G3. Use Google to find the procedure for your computer model.
  1. Turn on the laptop
  2. Press the ESC key multiple times until you get to the system setup menu.

Warning: you might need to press a different key on your system to get to the BIOS menu. From my HP laptop, ESC is the key to get to the BIOS.

  1. Choose BIOS Setup
    1baaf37eb8e7480fa90a6dfa36655298
  2. Go to Advanced > System Options
    b097c6946c2649efb32d64a28e3206ae
  3. Enable VTx and VTd (For AMD processors, there is a different name)
    b04da48f70ad40e6aaef2ab84c5027a5
  4. Save changes and exit the BIOS setup



Install VMware Workstation Pro

ℹ️
As of May 2024, Broadcom made VMware Workstation Pro free for personal use. However, you'll need to register for a Broadcom account to download the product.

Please follow along with the help articles below and install VMware Workstation Pro on your PC. Once installed, proceed to the next step.

Downloading VMware Workstation Pro
Installing VMware Workstation Pro



Next Steps

Building a pfSense VM for Our Cyber Range

Building a pfSense VM for Our VMware Cyber Range
In this module, we will look at setting up a pfSense firewall VM in VMware Workstation to segment our home lab network

Importing Kali from Offensive Security Images

Importing Kali Using the Official VMware Image
In this module, we will look at the process of importing the pre-packaged Kali VM for VMware directly from the official source.

Configuring the pfSense Firewall

Configuring the pfSense Firewall for Our VMware Lab
In this module, we will log into the pfSense web portal and configure firewall rules for our VMware Workstation lab using our Kali VM.

Adding Vulnhub VMs to the Lab

Adding Vulnhub VMs to Our VMware Cyber Range
In this module, we will look at two different ways, based on file type, to import VMs from Vulnhub into our VMware cyber range.

Adding HackMyVM Boxes to the Lab

Adding HackMyVM Boxes to Our VMware Cyber Range
In this module, we will look at the process to import a VM from HackMyVM into our VMware Cyber Range.

Building the Active Directory Lab

Adding an Active Directory Forest to Our VMware Lab
In this module, we will cover the steps to set up a small Active Directory forest in VMware, including a domain controller and two client computers

Hack Your Active Directory Lab

Hack Your VMware AD Lab
In this module we will look at using a publicly available script to make our Active Directory domain susceptible to multiple vulnerabilities.

Set up a Pivoting Lab

External Pentest Practice in Your VMware AD Lab
In this module of the VMware Workstation cybersecurity home lab project, we are going to look at the process of setting up a dual-homed target to serve as a pivot point into an Active Directory network.

Adding Another Interface to pfSense

Adding Another Interface to pfSense in VMware Workstation
In this module, we will look at the process of adding an additional interface to the pfSense VM when the VMware Workstation GUI only shows four available interfaces.

Adding a Comprehensive Wazuh SIEM and Network Intrusion Detection System (NIDS) to the Lab

Adding a Comprehensive Wazuh SIEM and Network Intrusion Detection System (NIDS) to the VMware Lab
In this module, we will take a look at the process setting up a comprehensive Wazuh SIEM, including a NIDS and some HIDS agents, in our VMware Workstation Pro home lab.



Appendices

Appendix A: Double NAT Diagram

Learn more about NAT here: https://www.youtube.com/watch?v=wg8Hosr20yw




Other Projects

Installing Proxmox on a Laptop and Building a Cybersecurity Lab
In this project, broken up into multiple modules, you will build a comprehensive cybersecurity home lab using Proxmox VE. Upon completion, you will have an environment where you can safely practice penetration testing against a wide variety of targets, as well as detection in your SIEM.
Building a Security Lab in VirtualBox
In this project, broken up into multiple modules, you will build a comprehensive cybersecurity home lab using VirtualBox. Upon completion, you will have an environment where you can safely practice penetration testing against a wide variety of targets, as well as detection in your SIEM.
Comments
More from 0xBEN
Table of Contents
Great! You’ve successfully signed up.
Welcome back! You've successfully signed in.
You've successfully subscribed to 0xBEN.
Your link has expired.
Success! Check your email for magic link to sign-in.
Success! Your billing info has been updated.
Your billing was not updated.