AppSec & DevSecOps - Training Labs
A professional catalog of deliberately vulnerable applications and environments for security training, testing, and tool validation.
This repository serves as a centralized index to help security professionals, developers, and researchers identify appropriate labs based on their training objectives.
β οΈ WARNING: For educational purposes in isolated environments only. Do not deploy these applications in production or expose them to public networks.
- π How to Use This Catalog
- π·οΈ Training Focus Legend
- ποΈ Labs by Category
- π Web Applications (14 labs)
- π APIs (5 labs)
- π± Mobile (5 labs)
- βοΈ Cloud Infrastructure (5 labs)
- π CI/CD & Supply Chain (7 labs)
- βΈοΈ Kubernetes (2 labs)
- π» Language-Specific & Code Review (7 labs)
- π Collections & Directories (20 labs)
- π οΈ Open Source Security Tools
- π― Training Paths
- π₯ Credits
| Step | Action | Description |
|---|---|---|
| 1οΈβ£ | Identify your training focus | Review the Training Focus Legend to understand available training categories |
| 2οΈβ£ | Browse by category | Navigate to the relevant section (Web, API, Mobile, Cloud, etc.) to find labs matching your needs |
| 3οΈβ£ | Review training focus tags | Each lab includes tags indicating what security testing disciplines it supports |
| 4οΈβ£ | Follow upstream documentation | All installation, setup, and usage instructions are maintained in each project's original repository |
| 5οΈβ£ | Use isolated environments | Always run these labs in isolated, controlled environments. Never deploy to production |
π‘ Tip: Click on any lab's upstream link to access detailed installation and usage documentation.
| Tag | Full Name | Description |
|---|---|---|
| SAST | Static Application Security Testing | Code analysis without executing the application |
| SCA | Software Composition Analysis | Dependency scanning and vulnerability detection |
| DAST | Dynamic Application Security Testing | Runtime security testing of running applications |
| Pentest | Penetration Testing | Manual security assessment and exploitation |
| API Security | API Security Testing | REST, GraphQL, SOAP, OpenAPI security testing |
| Mobile Security | Mobile Application Security | Android, iOS, and Hybrid app security |
| Cloud Security | Cloud Infrastructure Security | AWS, Azure, GCP security assessment |
| Kubernetes | Kubernetes Security | Container orchestration and K8s security |
| CI/CD | CI/CD Pipeline Security | Continuous Integration/Deployment security |
| Supply Chain | Supply Chain Security | Software supply chain vulnerability assessment |
| Container | Container Security | Docker and container image security |
| IaC | Infrastructure as Code | Terraform, CloudFormation security |
| Secrets | Secrets Management | Secret detection and management |
| Auth | Authentication & Authorization | Auth vulnerabilities and testing |
| Injection | Injection Vulnerabilities | SQL, NoSQL, Command injection testing |
| SSRF | Server-Side Request Forgery | SSRF vulnerability testing |
| Secure Code Review | Code Review | Manual code review and static analysis |
| Threat Modeling | Threat Modeling | Threat modeling exercises |
Modern web application with OWASP Top 10 vulnerabilities and beyond. Comprehensive training platform for web application security.
- Training focus:
DASTPentestInjectionAuthSecure Code Review - Upstream: GitHub
Deliberately insecure web application maintained by OWASP for security training.
- Training focus:
DASTPentestInjectionAuthSecure Code Review - Upstream: GitHub
Web and mobile application security training platform with various vulnerability scenarios.
- Training focus:
DASTPentestSecure Code ReviewMobile Security - Upstream: GitHub
PHP/MySQL web application containing common web vulnerabilities for security training.
- Training focus:
DASTPentestInjectionAuth - Upstream: GitHub
Vulnerable Node.js/Express application demonstrating common security issues in Node.js applications.
- Training focus:
SASTDASTPentestSecure Code ReviewAPI Security - Upstream: GitHub
WordPress installation with intentionally vulnerable plugins and themes.
- Training focus:
DASTPentestSCAWordPress Security - Upstream: GitHub
Node.js implementation of vulnerable web services for API security training.
- Training focus:
API SecurityDASTPentestWebSockets - Upstream: GitHub
Intentionally vulnerable REST API designed for learning API security testing.
- Training focus:
API SecurityDASTPentestREST - Upstream: GitHub
Application demonstrating the Log4Shell (CVE-2021-44228) vulnerability.
- Training focus:
SASTSCAPentestSupply ChainJava - Upstream: GitHub
Application with vulnerable One-Time Password (OTP) implementation.
- Training focus:
AuthPentestSecure Code Review - Upstream: GitHub
General-purpose vulnerable web application for security testing.
- Training focus:
DASTPentestSecure Code Review - Upstream: GitHub
ASP.NET Core application with security vulnerabilities.
- Training focus:
SASTDASTPentestSecure Code Review.NET - Upstream: GitHub
Collection of web application vulnerabilities for training purposes.
- Training focus:
DASTPentestSecure Code Review - Upstream: GitHub
Vulnerable banking application for web and mobile security training.
- Training focus:
DASTPentestAuthMobile SecuritySecure Code Review - Upstream: GitHub
GraphQL API with intentionally introduced security vulnerabilities for training.
- Training focus:
API SecurityDASTPentestGraphQL - Upstream: GitHub
Vulnerable REST API designed for learning API security testing techniques.
- Training focus:
API SecurityDASTPentestREST - Upstream: GitHub
API demonstrating OpenAPI security issues and misconfigurations.
- Training focus:
API SecurityDASTPentestOpenAPI - Upstream: GitHub
Cloud-based vulnerable hybrid Android application with API security issues.
- Training focus:
API SecurityMobile SecurityDASTPentest - Upstream: GitHub
C# API with security vulnerabilities for training.
- Training focus:
API SecuritySASTDASTPentest.NETSecure Code Review - Upstream: GitHub
iOS application with security vulnerabilities for mobile security training.
- Training focus:
Mobile SecuritySASTPentestiOSSecure Code Review - Upstream: GitHub
Updated version of DVIA with additional iOS security vulnerabilities.
- Training focus:
Mobile SecuritySASTPentestiOSSecure Code Review - Upstream: GitHub
Android application with security vulnerabilities for mobile security testing.
- Training focus:
Mobile SecuritySASTPentestAndroidSecure Code Review - Upstream: GitHub
iOS application with security vulnerabilities for mobile security testing.
- Training focus:
Mobile SecuritySASTPentestiOSSecure Code Review - Upstream: GitHub
Android application with security vulnerabilities for training.
- Training focus:
Mobile SecuritySASTPentestAndroidSecure Code Review - Upstream: GitHub
Deliberately vulnerable AWS infrastructure for cloud security training and attack simulation.
- Training focus:
Cloud SecurityIaCPentestAWS - Upstream: GitHub
Alternative AWSGoat implementation with vulnerable AWS infrastructure scenarios.
- Training focus:
Cloud SecurityIaCPentestAWS - Upstream: GitHub
Deliberately vulnerable Azure infrastructure for cloud security training.
- Training focus:
Cloud SecurityIaCPentestAzure - Upstream: GitHub
Deliberately vulnerable GCP infrastructure for cloud security training.
- Training focus:
Cloud SecurityIaCPentestGCP - Upstream: GitHub
Cloud-native application with security vulnerabilities across multiple cloud services.
- Training focus:
Cloud SecurityContainerIaCPentest - Upstream: GitHub
Deliberately vulnerable CI/CD environment with multiple pipeline scenarios (GitLab, Jenkins, GitHub Actions).
- Training focus:
CI/CDSupply ChainPentestIaC - Upstream: GitHub
Vulnerable GitHub Actions workflows for CI/CD security testing.
- Training focus:
CI/CDSupply ChainGitHub ActionsSecrets - Upstream: GitHub
DevSecOps lab with GitLab CE setup and pipeline security practices.
- Training focus:
CI/CDDevSecOpsGitLab CISupply Chain - Upstream: GitHub
Azure DevOps labs with pipeline security scenarios and best practices.
- Training focus:
CI/CDAzure DevOpsSupply ChainIaC - Upstream: GitHub
Microsoft Learning lab for Azure DevOps pipeline security implementation.
- Training focus:
CI/CDAzure DevOpsSupply ChainSecure Code Review - Upstream: GitHub
RailsGoat application with CI/CD security scenarios.
- Training focus:
CI/CDSupply ChainRubySecure Code Review - Upstream: GitHub
DevSecOps pipeline integration example with OWASP Juice Shop.
- Training focus:
CI/CDDevSecOpsSupply ChainDAST - Upstream: GitLab
Vulnerable Kubernetes cluster designed for learning Kubernetes security.
- Training focus:
KubernetesContainerCloud SecurityPentestIaC - Upstream: GitHub
Vulnerable AWS EKS cluster for Kubernetes security training.
- Training focus:
KubernetesCloud SecurityAWSContainerPentest - Upstream: GitHub
Java web application with security vulnerabilities for code review and SAST training.
- Training focus:
SASTSecure Code ReviewJavaInjectionAuth - Upstream: GitHub
Python web application with security vulnerabilities for code review training.
- Training focus:
SASTSecure Code ReviewPythonInjectionAuth - Upstream: GitHub
Ruby on Rails application with security vulnerabilities for code review.
- Training focus:
SASTSecure Code ReviewRubyInjectionAuth - Upstream: GitHub
Java Spring application with security vulnerabilities.
- Training focus:
SASTSecure Code ReviewJavaSpringInjection - Upstream: GitHub
Java application with security vulnerabilities for training.
- Training focus:
SASTSecure Code ReviewJavaInjection - Upstream: GitHub
Vulnerable application for demonstrating SCA and dependency scanning tools.
- Training focus:
SCASASTSecure Code ReviewSupply Chain - Upstream: GitHub
Collection of vulnerable code examples across multiple programming languages.
- Training focus:
SASTSecure Code ReviewMulti-language - Upstream: GitHub
Collection of pre-built vulnerable Docker environments for various CVEs and security issues.
- Training focus:
DASTPentestContainerMulti-vulnerability - Upstream: GitHub
PHP-based vulnerable web services for API and web security training.
- Training focus:
API SecurityDASTPentestWebSockets - Upstream: GitHub
Banking application with security vulnerabilities for financial application security training.
- Training focus:
DASTPentestAuthSecure Code Review - Upstream: GitHub
Serverless application with security vulnerabilities for cloud and serverless security training.
- Training focus:
Cloud SecurityServerlessDASTPentestIaC - Upstream: GitHub
Thick client application with security vulnerabilities for desktop application security training.
- Training focus:
SASTPentestSecure Code ReviewClient-Side Security - Upstream: GitHub
IoT device firmware with security vulnerabilities for embedded systems security training.
- Training focus:
SASTPentestFirmware SecurityEmbedded Systems - Upstream: GitHub
Router firmware with security vulnerabilities for embedded and network device security training.
- Training focus:
SASTPentestFirmware SecurityEmbedded Systems - Upstream: GitHub
Microservices architecture with security vulnerabilities for distributed systems security training.
- Training focus:
API SecurityMicroservicesDASTPentestContainer - Upstream: GitHub
Grade management system with security vulnerabilities.
- Training focus:
DASTPentestSecure Code Review - Upstream: GitLab
Application specifically designed to demonstrate SSRF vulnerabilities.
- Training focus:
SSRFDASTPentestSecure Code Review - Upstream: GitHub
Application demonstrating CORS misconfiguration vulnerabilities.
- Training focus:
DASTPentestAuthCORS - Upstream: GitHub
Application with authentication and authorization vulnerabilities.
- Training focus:
AuthDASTPentestSecure Code Review - Upstream: GitHub
Docker containerized application with security vulnerabilities.
- Training focus:
ContainerDASTPentestSecure Code Review - Upstream: GitHub
Application demonstrating template injection vulnerabilities (SSTI).
- Training focus:
InjectionDASTPentestSecure Code Review - Upstream: GitHub
Application with various security vulnerabilities for training.
- Training focus:
DASTPentestSecure Code Review - Upstream: GitHub
OWASP-maintained vulnerable application for security training.
- Training focus:
DASTPentestSecure Code Review - Upstream: GitHub
Collection of public penetration testing reports for learning and reference.
- Training focus:
PentestThreat ModelingSecurity Assessment - Upstream: GitHub
Directory and index of vulnerable web applications for security training.
- Training focus:
ReferenceDirectoryMulti-vulnerability - Upstream: GitHub
Client-server application with security vulnerabilities.
- Training focus:
SASTDASTPentestSecure Code ReviewNetwork Security - Upstream: GitHub
Application demonstrating SQLite database security issues.
- Training focus:
InjectionDASTPentestDatabase Security - Upstream: GitHub
This section lists recommended open source security tools for testing and analyzing the vulnerable labs in this catalog. All tools listed are open source and freely available.
Continuous inspection of code quality and security vulnerabilities across multiple programming languages.
- Use cases: Code review, vulnerability detection, code quality analysis
- Repository: GitHub
- Website: sonarqube.org
Fast, open source static analysis tool for finding bugs and enforcing code standards.
- Use cases: SAST, security rule enforcement, CI/CD integration
- Repository: GitHub
- Website: semgrep.dev
Security linter for Python code, designed to find common security issues.
- Use cases: Python SAST, security code review
- Repository: GitHub
- Website: bandit.readthedocs.io
Static analysis security scanner for Ruby on Rails applications.
- Use cases: Ruby/Rails SAST, vulnerability detection
- Repository: GitHub
- Website: brakemanscanner.org
ESLint plugin for identifying security vulnerabilities in JavaScript/TypeScript code.
- Use cases: JavaScript/TypeScript SAST, Node.js security
- Repository: GitHub
- Description: Open source web application security scanner for finding vulnerabilities in web applications.
- Use cases: DAST, automated security testing, API security testing
- Repository: GitHub
- Website: zaproxy.org
Free edition of Burp Suite for web application security testing and manual penetration testing.
- Use cases: Manual pentesting, web application security, API testing
- Website: portswigger.net/burp/communitydownload
- Description: Web server scanner that performs comprehensive tests against web servers for multiple items.
- Use cases: Web server scanning, vulnerability detection
- Repository: GitHub
- Website: cirt.net/Nikto2
Web application fuzzer for discovering vulnerabilities in web applications.
- Use cases: Web fuzzing, parameter discovery, brute forcing
- Repository: GitHub
- Website: wfuzz.readthedocs.io
Detects publicly disclosed vulnerabilities in application dependencies.
- Use cases: Dependency scanning, CVE detection, supply chain security
- Repository: GitHub
- Website: owasp.org/www-project-dependency-check
Open source security scanner for finding and fixing vulnerabilities in dependencies.
- Use cases: SCA, dependency vulnerability scanning, license compliance
- Repository: GitHub
- Website: snyk.io
Automated dependency update tool that creates pull requests to keep dependencies secure and up-to-date.
- Use cases: Automated dependency updates, security alerts
- Repository: GitHub
- Website: docs.github.com/dependabot
Comprehensive security scanner for containers, file systems, and Git repositories.
- Use cases: Container scanning, vulnerability detection, IaC scanning
- Repository: GitHub
- Website: aquasecurity.github.io/trivy
Vulnerability static analysis for containers and application container images.
- Use cases: Container image scanning, CVE detection
- Repository: GitHub
- Website: quay.github.io/clair
Script that checks for common best practices around deploying Docker containers in production.
- Use cases: Docker security auditing, container hardening
- Repository: GitHub
- Description: Checks whether Kubernetes is deployed securely by running checks documented in the CIS Kubernetes Benchmark.
- Use cases: Kubernetes security auditing, compliance checking
- Repository: GitHub
- Website: aquasecurity.github.io/kube-bench
Penetration testing tool for Kubernetes clusters that discovers security weaknesses.
- Use cases: Kubernetes pentesting, security assessment
- Repository: GitHub
- Website: aquasecurity.github.io/kube-hunter
Kubernetes configuration validation and best practices checking.
- Use cases: Kubernetes configuration security, best practices enforcement
- Repository: GitHub
- Website: polaris.docs.fairwinds.com
Cloud-native runtime security project that detects anomalous activity and threats.
- Use cases: Runtime security, threat detection, Kubernetes security monitoring
- Repository: GitHub
- Website: falco.org
Static code analysis tool for infrastructure as code (Terraform, CloudFormation, Kubernetes, etc.).
- Use cases: IaC security scanning, misconfiguration detection
- Repository: GitHub
- Website: checkov.io
Static code analyzer for Infrastructure as Code to detect security and compliance violations.
- Use cases: Terraform security, IaC compliance, cloud security
- Repository: GitHub
- Website: runterrascan.io
Terraform linter that finds errors and best practices issues in Terraform code.
- Use cases: Terraform linting, best practices enforcement
- Repository: GitHub
- Website: github.com/terraform-linters/tflint
Detects secrets, credentials, and other sensitive data in code repositories.
- Use cases: Secret scanning, credential detection, Git history scanning
- Repository: GitHub
- Website: trufflesecurity.com
Fast and easy-to-use tool for detecting hardcoded secrets in Git repositories.
- Use cases: Secret detection, credential scanning, Git security
- Repository: GitHub
- Website: gitleaks.io
Tool for detecting secrets in codebases and preventing them from being committed.
- Use cases: Pre-commit hooks, secret prevention, credential detection
- Repository: GitHub
- Website: github.com/Yelp/detect-secrets
API platform for building and testing APIs (free tier available).
- Use cases: API testing, API security testing, API documentation
- Repository: GitHub
- Website: postman.com
Open source API client for GraphQL, REST, and gRPC.
- Use cases: API testing, API debugging, API security testing
- Repository: GitHub
- Website: insomnia.rest
Java DSL for easy testing of REST services.
- Use cases: API testing, REST API automation, Java API testing
- Repository: GitHub
- Website: rest-assured.io
Automated mobile application security testing framework for Android and iOS.
- Use cases: Mobile app security testing, static and dynamic analysis
- Repository: GitHub
- Website: mobsf.github.io
Tool designed to look for security issues in Android applications.
- Use cases: Android security analysis, vulnerability detection
- Repository: GitHub
- Website: github.com/linkedin/qark
Dynamic instrumentation toolkit for reverse engineering and security research.
- Use cases: Mobile app reverse engineering, dynamic analysis, runtime manipulation
- Repository: GitHub
- Website: frida.re
Multi-cloud security auditing tool for security posture assessment.
- Use cases: Cloud security auditing, AWS/Azure/GCP security assessment
- Repository: GitHub
- Website: github.com/nccgroup/ScoutSuite
AWS security assessment tool based on AWS security best practices.
- Use cases: AWS security auditing, compliance checking, security assessment
- Repository: GitHub
- Website: prowler.pro
Open source security scanning tool for cloud infrastructure (AWS, Azure, GCP).
- Use cases: Cloud security scanning, misconfiguration detection
- Repository: GitHub
- Website: cloudsploit.com
Built-in CI/CD platform with security scanning capabilities (open source edition available).
- Use cases: CI/CD pipelines, automated security scanning, DevSecOps
- Repository: GitHub
- Website: gitlab.com
CI/CD platform with security workflows and scanning capabilities (free for public repos).
- Use cases: CI/CD automation, security scanning, workflow automation
- Documentation: docs.github.com/actions
- Description: Open source automation server with extensive plugin ecosystem for security scanning.
- Use cases: CI/CD pipelines, security integration, automation
- Repository: GitHub
- Website: jenkins.io
Penetration testing framework for developing and executing exploit code.
- Use cases: Penetration testing, exploit development, security research
- Repository: GitHub
- Website: metasploit.com
Network discovery and security auditing tool.
Automated SQL injection and database takeover tool.
- Use cases: SQL injection testing, database security assessment
- Repository: GitHub
- Website: sqlmap.org
Select a training path based on your security testing objectives. Each path includes 6 recommended labs to build comprehensive skills in that domain.
Focus: Static analysis and dependency scanning training
| # | Lab | Focus Area |
|---|---|---|
| 1 | Damn Vulnerable Java Application (DVJA) | Java SAST and code review |
| 2 | Damn Vulnerable Python Web Application (DVPWA) | Python SAST and code review |
| 3 | Goof - Snyk's Vulnerable Demo Application | SCA and dependency scanning |
| 4 | Vulnerable Languages | Multi-language SAST training |
| 5 | Application Vulnerable Log4Shell | SCA and supply chain security |
| 6 | Application Java Spring Vulny | Java Spring SAST and code review |
Focus: Dynamic testing and penetration testing
| # | Lab | Focus Area |
|---|---|---|
| 1 | OWASP Juice Shop | Comprehensive web application pentesting |
| 2 | Damn Vulnerable Web Application (DVWA) | Classic web pentesting |
| 3 | OWASP WebGoat | Structured pentesting training |
| 4 | Vulhub | CVE-specific vulnerability testing |
| 5 | OWASP Security Shepherd | Guided pentesting scenarios |
| 6 | Damn Vulnerable Bank | Financial application pentesting |
Focus: API security testing
| # | Lab | Focus Area |
|---|---|---|
| 1 | Damn Vulnerable GraphQL Application | GraphQL API security |
| 2 | VAmPI | REST API security testing |
| 3 | Tiredful API | REST API pentesting |
| 4 | OpenAPI 3 The Vulnerable API | OpenAPI security issues |
| 5 | Damn Vulnerable Web Services (DVWS) | Web services security |
| 6 | Damn Vulnerable C# API | C# API security testing |
Focus: Mobile application security
| # | Lab | Focus Area |
|---|---|---|
| 1 | Damn Vulnerable iOS App (DVIA) | iOS security testing |
| 2 | Damn Vulnerable iOS App v2 (DVIA-v2) | iOS security testing (updated) |
| 3 | Oversecured Vulnerable Android App | Android security testing |
| 4 | Oversecured Vulnerable iOS App | iOS pentesting |
| 5 | Vulnerable Android Application | Android code review |
| 6 | Damn Vulnerable Hybrid Mobile App (DVHMA) | Hybrid app security |
Focus: Cloud, Kubernetes, and CI/CD security
| # | Lab | Focus Area |
|---|---|---|
| 1 | AWSGoat | AWS cloud security |
| 2 | Kubernetes Goat | Kubernetes security |
| 3 | CI/CD Goat | CI/CD pipeline security |
| 4 | GitHub Actions Goat | GitHub Actions security |
| 5 | OWASP EKS Goat | AWS EKS security |
| 6 | Damn Vulnerable Cloud Application (DVCA) | Multi-cloud security |
All labs are maintained by their respective authors and organizations. This catalog serves as a centralized index. For detailed information, licensing, and contributions, please refer to each lab's original repository.
Labs are sourced from various organizations and individual contributors, including:
- OWASP projects - Industry-leading security community
- Individual security researchers and developers - Community contributors
- Educational institutions - Academic security programs
- Security training organizations - Professional training providers
This catalog is maintained as a community resource for security education and training purposes.
