Skip to content

HappyHackingSpace/vt

vt logo

Spin up vulnerable targets from your terminal 🎯

Go Version License Release Discord

Caution

This project is in active development. Expect breaking changes with releases. Review the release changelog before updating. vt creates intentionally vulnerable environments - always run in isolated networks (VMs/sandboxes) and never expose to the internet.


Table of Contents


Features

Feature Description
🐳 Docker Compose Container orchestration for vulnerable environments
πŸ“¦ Templates Community-curated vulnerable targets from vt-templates
πŸ““ Playbooks Group multiple templates into training scenarios and run them together
πŸ“Š State Tracking Track and manage running deployments
πŸ” Inspect View detailed info (CVE, CVSS, CWE, PoC, remediation) for any template or playbook
πŸ”„ Auto-Update Sync templates from remote repository

Installation

Prerequisites

  • Go 1.25.6+
  • Docker & Docker Compose

Install with Go

go install github.com/happyhackingspace/vt/cmd/vt@latest

Build from Source

git clone https://github.com/HappyHackingSpace/vt.git
cd vt
go build -o vt cmd/vt/main.go
mv vt /usr/local/bin/  # Optional: add to PATH

Quick Start

# 1. Browse available templates
vt template --list

# 2. Start a vulnerable environment
vt start --id vt-dvwa

# 3. Access the target at http://localhost:80

Usage

Command Reference

Templates

Command Description
vt template --list List all available templates
vt template --list --filter <tag> Filter templates by tag
vt template --update Update templates from remote repository

Environments

Command Description
vt start --id <template-id> Start a vulnerable environment
vt stop --id <template-id> Stop an environment
vt ps List all running environments
vt inspect --id <template-id> Show full details for a template

Playbooks

Command Description
vt playbook list List all available playbooks
vt playbook run --id <playbook-id> Start all templates in a playbook
vt playbook stop --id <playbook-id> Stop all templates in a playbook

Global Flags

Flag Values Description
-v, --verbosity debug info warn error fatal panic Set log verbosity (default: info)

Examples

# List templates with SQL injection vulnerabilities
vt template --list --filter sqli

# Start DVWA (Damn Vulnerable Web App)
vt start --id vt-dvwa

# Inspect a template β€” see CVE, CVSS, CWE, PoC, and remediation steps
vt inspect --id vt-dvwa

# Check running environments
vt ps

# Stop a specific environment
vt stop --id vt-dvwa

# Run an entire playbook (multiple targets at once)
vt playbook run --id vt-pb-1

# List all available playbooks
vt playbook list

# Stop all targets in a playbook
vt playbook stop --id vt-pb-1

Templates

Templates are automatically cloned to ~/vt-templates on first run.

Template Type Description
vt-dvwa Lab Damn Vulnerable Web Application
vt-juice-shop Lab OWASP Juice Shop
vt-webgoat Lab OWASP WebGoat
vt-bwapp Lab Buggy Web Application
vt-mutillidae-ii Lab OWASP Mutillidae II

Want more? Check out the vt-templates repository for all available templates and contribution guidelines.


Playbooks

Playbooks let you start multiple vulnerable targets in one command β€” useful for structured training sessions or red-team labs that require several services running simultaneously.

# See what playbooks are available
vt playbook list

# Launch every target in a playbook
vt playbook run --id vt-pb-1

# Tear down the whole playbook when done
vt playbook stop --id vt-pb-1

Playbooks are defined as YAML files in the playbooks/ directory of the templates repository. Each playbook specifies an ordered list of template IDs. If one template fails to start, vt skips it, continues with the rest, and reports a summary of failures at the end.


What can you do with vt?

Use Case Template
Practice SQL Injection vt-dvwa
Learn XSS Exploitation vt-dvwa
Test OWASP Top 10 vt-juice-shop
Exploit Real CVEs vt-2025-29927
API Security Testing vt-webgoat
Train Security Teams vt-mutillidae-ii

Documentation

Resource Description
πŸ“¦ Templates Browse all available templates
🀝 Contributing Contribution guidelines
πŸ› Issues Report bugs or request features

Star History

Star History Chart

Contributors

recepgunes1
Recep Gunes
dogancanbakir
Dogan Can Bakir
omarkurt
Omar Kurt
ahsentekd
Ahsen
atiilla
Atilla
mirackayikci
mirackayikci
numanturle
numan

Community


License

This project is licensed under the MIT License - see the LICENSE.md file for details.


Happy Hacking! 🎯

About

Vulnerable Target (VT) is a specialized tool designed for security professionals, researchers, and educators that creates intentionally vulnerable environments across multiple platforms.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors