Building a Lab

Table of Contents


  • Install AD DS using Powershell
  • Pentest Environment Deployer
    • This repo provides an easy way to deploy a clean and customized pentesting environment with Kali linux using vagrant and virtualbox.
  • DumpsterFire
    • Slides
    • The DumpsterFire Toolset is a modular, menu-driven, cross-platform tool for building repeatable, time-delayed, distributed security events. Easily create custom event chains for Blue Team drills and sensor / alert mapping. Red Teams can create decoy incidents, distractions, and lures to support and scale their operations. Turn paper tabletop exercises into controlled "live fire" range events. Build event sequences ("narratives") to simulate realistic scenarios and generate corresponding network and filesystem artifacts.

Resources for VMs

VMs Designed to be Attacked

  • Vulnhub
    • Vulnhub is a website dedicated to cataloging various vulnerable VMs from across the web. It also has a healthy community that creates and submits new VMs on a regular basis. As I write this now, I believe there is around 100 or so different VMs on Vulnhub, so you have a bit of variation.
  • iv-wrt
    • An Intentionally Vulnerable Router Firmware Distribution
  • List of VMs that are preconfigured virtual machines
  • The Hacker Games - Hack the VM before it hacks you
    • I have talked about counterattacks here before, and this system has implemented a number of aggressive anti-hacker measures. In fact, this VM is downright evil. I am probably legally obligated to tell you that it will try to hack you. So if a calculator or message declaring your pwnedness pops up or shows up on your desktop, you asked for it. But don’t worry, it won’t steal your docs or rm you, it will just demonstrate compromise for the game. To save precious bandwidth, this has been implemented in a minimal tinycore-based VM, and will require VirtualBox to run.
  • Down by the Docker
    • Ever fantasized about playing with docker misconfigurations, privilege escalation, etc. within a container? Download this VM, pull out your pentest hats and get started
  • OWASP Broken Web Applications Project
    • OWASP Broken Web Applications Project is a collection of vulnerable web applications that is distributed on a Virtual Machine.
  • OWASP Juiceshop
  • Vulhub - Some Docker-Compose files for vulnerabilities environment
  • exploit_me
    • Very vulnerable ARM application (CTF style exploitation tutorial for ARM, but portable to other platforms)
  • OWASP Damn Vulnerabl Web Sockets
    • OWASP Damn Vulnerable Web Sockets (DVWS) is a vulnerable web application which works on web sockets for client-server communication. The flow of the application is similar to DVWA. You will find more vulnerabilities than the ones listed in the application.
  • Damn Vulnerable Web App
    • Damn Vulnerable Web Application (DVWA) is a PHP/MySQL web application that is damn vulnerable. Its main goal is to be an aid for security professionals to test their skills and tools in a legal environment, help web developers better understand the processes of securing web applications and to aid both students & teachers to learn about web application security in a controlled class room environment.
  • Damn Small Vulnerable Web
    • Damn Small Vulnerable Web (DSVW) is a deliberately vulnerable web application written in under 100 lines of code, created for educational purposes. It supports majority of (most popular) web application vulnerabilities together with appropriate attacks.

Installing Active Directory

  • Install AD DS using Powerhsell
  • AutomatedLab
    • AutomatedLab is a provisioning solution and framework that lets you deploy complex labs on HyperV and Azure with simple PowerShell scripts. It supports all Windows operating systems from 2008 R2 to 2016 including Nano Server and various products like AD, Exchange, PKI, IIS, etc.
  • Automated-AD-Setup
    • A PowerShell script that aims to have a fully configured domain built in under 10 minutes, but also apply security configuration and hardening.
  • Invoke-ADLabDeployer
    • Automated deployment of Windows and Active Directory test lab networks. Useful for red and blue teams.
  • ADImporter
    • When you need to simulate a real Active Directory with thousands of users you quickly find that creating realistic test accounts is not trivial. Sure enough, you can whip up a quick PowerShell one-liner that creates any number of accounts, but what if you need real first and last names? Real (existing) addresses? Postal codes matching phone area codes? I could go on. The point is that you need two things: input files with names, addresses etc. And script logic that creates user accounts from that data. This blog post provides both.

Guides to setting up a Pen test lab: