This is a deliberately vulnerable Dart application created for advanced security testing and educational purposes. It contains 40+ security vulnerabilities spanning multiple categories including injection attacks, cryptographic failures, PII exposure, authentication bypass, and more.
DO NOT deploy this application to any publicly accessible server or production environment. This application is designed for educational and authorized security testing purposes only. Unauthorized access to systems using this code is illegal.
- Hardcoded Secrets & Credentials
- PII Data Exposure
- SQL Injection
- Cross-Site Scripting (XSS)
- Insecure Direct Object Reference (IDOR)
- Path Traversal
- Weak Cryptography
- Broken Authentication
- Insecure Session Management
- Information Disclosure
- Command Injection
- Insecure API Implementation
- Weak Password Reset
- Insecure Payment Processing
- LDAP Injection
- XXE (XML External Entity)
- NoSQL Injection
- Template Injection
- Expression Language Injection
- Code Injection / Eval
- Zip Slip Vulnerability
- Insecure File Upload
- Directory Listing
- Insecure Deserialization
- Missing Access Control
- Sensitive Data in Logs
- Insecure Direct Communication
- Weak CORS Configuration
- Debug Mode Enabled
- Insufficient Logging & Monitoring
-
Install Dart SDK (if not already installed):
brew install dart # macOS -
Install dependencies:
cd /Users/kaushik.kumar/Movies/testing_DartCode dart pub get -
Run the application:
dart run bin/main.dart
-
The server will start on
http://localhost:8080
testing_DartCode/
├── bin/
│ └── main.dart # Main application with vulnerable endpoints
├── lib/
│ ├── config/
│ │ └── app_config.dart # Hardcoded configuration and secrets
│ └── services/
│ ├── auth_service.dart # Weak authentication implementation
│ ├── database_service.dart # SQL injection vulnerabilities
│ ├── file_service.dart # File upload and traversal issues
│ ├── pii_service.dart # PII data exposure
│ ├── crypto_service.dart # Weak cryptography
│ ├── insecure_api_service.dart # API security issues
│ └── injection_service.dart # Injection attack vectors
├── pubspec.yaml # Dart dependencies
└── README.md # This file
- Broken Access Control - IDOR, missing authorization
- Cryptographic Failures - Weak encryption, hardcoded keys
- Injection - SQL, Command, LDAP, XXE, NoSQL, Template
- Insecure Design - Weak password reset, predictable tokens
- Security Misconfiguration - Debug mode, permissive CORS
- Vulnerable Components - Weak cryptography libraries
- Authentication Failures - Weak passwords, no rate limiting
- Data Integrity Failures - No input validation
- Logging & Monitoring Failures - Sensitive data in logs
- SSRF - Hardcoded webhook URLs
- Use this application only in authorized testing environments
- Document all vulnerabilities found
- Provide remediation recommendations
- Test for both known and unknown vulnerabilities
- Use automated and manual testing techniques
- Verify fixes before marking as resolved
This application demonstrates real-world security vulnerabilities that exist in production systems. By studying these vulnerabilities, developers and security professionals can:
- Understand common attack vectors
- Learn secure coding practices
- Practice vulnerability identification
- Develop security testing skills
- Improve code review capabilities
This application is provided for educational and authorized security testing purposes only. Unauthorized access to computer systems is illegal. Users are responsible for ensuring they have proper authorization before testing this application against any system.
- OWASP Top 10: https://owasp.org/www-project-top-ten/
- CWE/SANS Top 25: https://cwe.mitre.org/top25/
- OWASP Testing Guide: https://owasp.org/www-project-web-security-testing-guide/
- Dart Security Best Practices: https://dart.dev/guides/security
For each vulnerability in this application, consider these secure alternatives:
- XSS Protection: Use HTML escaping libraries or templating engines that auto-escape by default
- SQL Injection: Use parameterized queries or ORM libraries
- Path Traversal: Validate and sanitize file paths, use
path.normalize() - Secrets Management: Use environment variables or secret management services
- Authentication: Implement proper session management and authorization checks
- Password Storage: Use strong hashing algorithms like Argon2, bcrypt, or PBKDF2
📊 Key Metrics Metric Value Total Vulnerabilities 40+ Critical Issues 15+ High Issues 20+ Medium Issues 5+ Vulnerable Endpoints 18+ Hardcoded Secrets 15+ Documentation Files 7 Total Lines of Code 4,000+ Code Examples 50+ Testing Scenarios 30+