At ProjectDiscovery, we are always looking for ways to make security testing more accessible and practical. Nuclei Templates Labs is a collection of vulnerable environments bundled with ready-to-use Nuclei templates, designed for both security researchers and learners. This repository serves as a real-world security testing playground, allowing users to explore vulnerabilities, understand their impact, and learn how to detect them using Nuclei.
By combining vulnerable setups with detection templates in a controlled environment, we've created an ecosystem where security enthusiasts can safely experiment with vulnerability detection, exploitation techniques, and remediation strategies without the risks associated with real-world testing. This approach not only enhances learning but also promotes responsible security practices in an industry where hands-on experience is invaluable.
With Nuclei Templates Labs, you can:
Security research is best learned through practical experience. While tools like Nuclei make vulnerability detection simple, understanding the underlying issues requires deeper exploration. Our goal is to:
These are testing labs designed for controlled environments. They contain vulnerable setups and should not be exposed publicly or deployed on internet-facing systems to prevent unintended access or exploitation.
First, clone the repository to your local machine to access all the lab environments and templates:
If you haven't already installed Docker and Docker Compose, you can do so with the following commands on Ubuntu/Debian-based systems:
For other operating systems, please refer to the official Docker documentation at https://docs.docker.com/get-docker/.
Verify your installation by running:
The repository is organized into categories based on vulnerability types and protocols. Browse through the directory structure to find labs that interest you:
Each lab directory contains:
docker-compose.yml
file for environment setupREADME.md
with detailed information about the vulnerabilityEach lab is containerized for isolation and ease of use. To launch a specific lab environment, navigate to its directory and use Docker Compose:
The -d
flag runs containers in detached mode (background). You'll see Docker downloading necessary images and starting the containers.
Verify that your environment is running correctly:
Most labs will expose web interfaces or services on localhost ports, which will be documented in the lab's README.md
file. For example, a vulnerable web application might be accessible at http://localhost:8080
.
README.md
file for background informationNuclei is a fast, customizable vulnerability scanner powered by the global security community and built on a simple YAML-based DSL, enabling collaboration to tackle trending vulnerabilities on the internet. It helps you find vulnerabilities in your applications, APIs, networks, DNS, and cloud configurations.
Ensure Go is installed and your Go bin directory is in your PATH.
Visit our releases page at https://github.com/projectdiscovery/nuclei/releases and download the appropriate binary for your operating system.
Now that you have a running vulnerable environment and Nuclei installed, you can perform vulnerability scanning:
Nuclei will execute the template against the target and report if the vulnerability is detected. The output will include details about the vulnerability and its severity.
We welcome contributions from the security community! You can contribute by:
To contribute, simply fork the repository, make your changes, and submit a pull request.
Nuclei Templates Labs is open-source and community-driven. Join us to learn, share, and collaborate!
Nuclei Templates Labs is your ultimate security testing playground. Whether you're a beginner learning about security or an expert looking to automate your scans, this repository is built for you.💡 Start testing vulnerabilities today and level up your security skills!
Security testing has always been challenging to learn and practice safely. With Nuclei Templates Labs, we’re changing that by providing a hands-on ecosystem where theory meets real-world application. Our containerized vulnerable environments, paired with detection templates, offer the perfect playground for security enthusiasts at all levels to refine their skills. As the security landscape evolves with new vulnerabilities emerging daily, practicing in controlled environments helps build both technical expertise and the critical mindset needed to identify, understand, and mitigate security risks effectively.
We believe that practical experience is the foundation of true security expertise. This repository was created to democratize access to hands-on security testing and foster a community of skilled professionals working together to improve security worldwide. Whether you’re using these labs for personal development, team training, or academic instruction, you’re contributing to a growing movement that makes security testing more accessible and effective. Clone the repository, launch your first vulnerable environment, and start your journey into hands-on security learning today—the entire ProjectDiscovery community is here to support you. Happy hacking! 🚀