Home Lab


Table of Contents

Overview

Real-World Attack Simulations: Understanding the power of penetration testing as I replicate authentic attack vectors. Understand vulnerabilities and the importance of proactive defense.

Vulnerability Exploration: Delve into vulnerabilities, from software bugs to misconfigurations. Grasp their potential impact on security posture.

Toolbox Exploration: Discover industry-standard tools and frameworks. Gain insights into their usage, effectiveness, and how they bolster security.

Defense Strategies: It’s not just about attacks; robust defense matters. Explore the implementation of firewalls, intrusion detection systems, SIEM and more.

Shared Knowledge: Find invaluable resources, courses, and reading materials that fuel my growth in cyber security as I take certifications.

Malware Analysis: With a controlled environment, I dissect and analyze malicious software to understand its behavior, origins, and potential impact.

Network and Servers

Here’s a list of the components that form the backbone of my home lab:

  • Server Host: Optiplex 7040 SFF, i5-6500, 16GB RAM, 256GB SSD, Hostname: UKHOST01, OS: Proxmox
  • Workstation: 16GB RAM, 1TB Storage. Hostname: PC01, OS: Windows 11.
  • Network Switch: NETGEAR 5 Port Gigabit Network Switch (GS105) & Virtual switch via host.
  • Firewall: Virtual OPNsense.
  • Storage Array: Onboard storage via Host. Exploring NAS options.
  • Malware Analysis: Remnux/Cuckoo
  • Additional Hardware: I plan to extend my homelab with additional hardware, likely to explore Optiplex form factor options to host the vuln lab.

Network Diagram

Virtualization

  • Hypervisor: Proxmox.
  • Templates: Badblood - Domain Controller

Services and Applications

  • Domain Controller: BadBlood to populate https://github.com/davidprowe/BadBlood. Also look at BloodHound for attack paths.
  • DNS Server: Domain Controller will host DNS for Server LAN. Pi-Hole will handle DNS for Home PC but exploring options.
  • Web Server: TO DO Find vulnerable web server images.
  • Vulnhub Host: TO DO Find Vulnhub images.
  • Database Server: TO DO Find vulnerable database images.
  • Monitoring Tools: Currently using: Wazuh. Possibilities: Zeek, Suricata, The Elastic Stack.

Configuration Scripts

Any automation scripts or configuration files to set up my lab environment:

Resources

Provide links to external resources, guides, or tutorials that have helped me set up and maintain my home lab:

High Priority Tasks

  • Configure OPNsense Firewall: Set up basic security policies and NAT to protect the lab.
  • Implement VLANs: Segregate traffic for different lab segments (Red Team, Vulnerable LAN, Server LAN).
  • Set Up Wazuh SIEM: Get the SIEM system running for log collection and analysis.
  • Install and Configure DNS/DHCP Services: Centralize network services management on DC01.
  • Deploy Windows Server VM with Active Directory: Essential for practicing enterprise network management.
  • Network Connectivity Verification: Ensure all lab devices can communicate as intended.
  • IP Address Management: Verify no conflicts and set up DHCP server with proper scope.
  • Deploy Kali VM: Set up for penetration testing and security research.
  • Create Metasploitable/Vulnhub VMs: Set up vulnerable LAN for penetration testing practice.
  • Network File Share: Make accessible to the Server LAN and PC01.
  • Deploy IT Generic Server.
  • Deploy Win 11 Client PC.
  • Install Wazuh agents on all VMs.

Medium Priority Tasks

  • Install IDS/IPS: Use Snort or Suricata to monitor network for malicious activities, exploring options as a container.
  • Set Up Vulnerability Scanner: Integrate OpenVAS to identify potential vulnerabilities, exploring options as a container.
  • Implement Backup Solution: Ensure data redundancy for critical VMs and configurations.
  • Deploy Network Monitoring Tool: Use Nagios Core or Zabbix for real-time network status.
  • Integrate Log Management: Incorporate Graylog or ELK Stack for advanced log management.
  • Malware Lab: Deploy and implement a safe enviornment to detonate malware for analysis.
  • Deploy dummy data for AD: Using Badblood (https://github.com/davidprowe/BadBlood).

Low Priority Tasks

  • Install Endpoint Detection and Response (EDR): Configure TheHive Project or OSSEC for detailed monitoring and alerting.
  • Web Application Security: Set up OWASP ZAP or Burp Suite Community Edition for web app testing.
  • Red Team Tools: Add additional ParrotOS, Kali Linux, BlackArch, or ArchStrike VMs for diverse penetration testing environments.
  • Set Up Web Application Firewall (WAF): Configure ModSecurity with the OWASP CRS.

Additional Projects

  • Install Vulnerable Systems: Get VulnHub VMs or set up DVWA for targeted practice.
  • CTF Challenges: Set up CTFd to host or practice cybersecurity competitions.
  • Documentation and Wiki: Start a DokuWiki or MediaWiki for documenting lab configurations and procedures.
  • Physical Lab Security: Ensure the physical security of lab equipment.
  • Migrate Hosting: Migrate the hosting environment to new hardware and proxmox hyper visor.
  • VPN: Access lab remotely, configure a VPN on the firewall to ensure secure access.
  • War Room Scenarios: Set up red team/blue team scenarios within your lab for practical cybersecurity experiences.
  • Updates and Patch Management: Regularly update and patch all systems, especially the OS running on UKHOST01 and Kali machine.
  • CIS and Group Policies: Implement Group Policies through Domain Controller to manage security settings across machines.
  • Penetration Test: Perform a full scope penetration test.

Vulnhub Labs

Beginner Level

Kioptrix: Level 1 (#1): A great starting point for beginners. It focuses on basic vulnerabilities and common misconfigurations.

URL: https://www.vulnhub.com/entry/kioptrix-level-1-1,22/ Mr-Robot: 1: Inspired by the TV show “Mr. Robot,” this VM is designed for beginners and encompasses a variety of interesting challenges.

URL: https://www.vulnhub.com/entry/mr-robot-1,151/ DC-1: This is a deliberately vulnerable Ubuntu VM. It’s designed to be a somewhat realistic scenario to introduce beginners to penetration testing.

URL: https://www.vulnhub.com/entry/dc-1,292/

Intermediate Level

Toppo: 1: Good for intermediates, focusing on basic vulnerabilities with slightly more complexity than the beginner VMs.

URL: https://www.vulnhub.com/entry/toppo-1,245/ SickOs: 1.2: This VM is focused on leveraging less common vulnerabilities and misconfigurations, providing a moderate challenge.

URL: https://www.vulnhub.com/entry/sickos-12,144/ Stapler: 1: Offers a variety of ways to reach the goal, suitable for intermediate learners looking to try different penetration techniques.

URL: https://www.vulnhub.com/entry/stapler-1,150/

Advanced Level

FristiLeaks: 1.3: Aimed at more experienced practitioners, this VM requires complex problem-solving to exploit.

URL: https://www.vulnhub.com/entry/fristileaks-13,133/ HackLAB: Vulnix: This VM requires advanced enumeration and exploitation techniques, presenting a realistic challenge to experienced users.

URL: https://www.vulnhub.com/entry/hacklab-vulnix,48/ Lord of the Root: 1.0.1: An advanced-level VM that tests deep understanding and exploitation skills.

URL: https://www.vulnhub.com/entry/lord-of-the-root-101,129/

For Practice and CTFs

Symfonos: A series of VMs that are progressively challenging, and themed around Greek mythology. They’re great for practicing skills needed in Capture The Flag (CTF) competitions. URL: Search for “Symfonos” on VulnHub for various levels: https://www.vulnhub.com/