CodeFrog OWASP Top 10 Coverage
CodeFrog provides comprehensive security testing capabilities mapped to the OWASP Top 10 vulnerabilities. This page compares CodeFrog's coverage against both the OWASP Top 10 2021 (current) and the newly released OWASP Top 10 2025 Release Candidate.
What's Changed: OWASP 2021 β 2025
| 2021 Ranking | 2025 Ranking | Category | Change |
|---|---|---|---|
| A01:2021 | A01:2025 | Broken Access Control | No change (includes SSRF from A10:2021) |
| A02:2021 | A04:2025 | Cryptographic Failures | Moved down 2 positions |
| A03:2021 | A05:2025 | Injection | Moved down 2 positions |
| A04:2021 | A06:2025 | Insecure Design | Moved down 2 positions |
| A05:2021 | A02:2025 | Security Misconfiguration | Moved up 3 positions |
| A06:2021 | A03:2025 | Vulnerable & Outdated Components β Software Supply Chain Failures | Expanded scope, moved up 3 positions |
| A07:2021 | A07:2025 | Identification & Authentication Failures β Authentication Failures | Name change, same position |
| A08:2021 | A08:2025 | Software & Data Integrity Failures | No change |
| A09:2021 | A09:2025 | Security Logging & Monitoring Failures β Logging & Alerting Failures | Name change, same position |
| A10:2021 | A10:2025 | Server-Side Request Forgery (SSRF) β Mishandling of Exceptional Conditions | NEW: SSRF moved to A01, new category added |
CodeFrog Coverage: OWASP Top 10 2025
A01:2025 β Broken Access Control
PartialAccess control enforces policy such that users cannot act outside of their intended permissions. Failures typically lead to unauthorized information disclosure, modification, or destruction of data.
- Semgrep/OpenGrep: Detects missing or weak authorization checks in code patterns (language/rules dependent)
- Web Scanner: Checks for permissive CORS configurations combined with credentials
- SSRF Detection: Semgrep rules for unvalidated/tainted URL fetches (now part of A01 in 2025)
A02:2025 β Security Misconfiguration
StrongSecurity misconfiguration is the most commonly seen issue, often resulting from insecure default configurations, incomplete or ad hoc configurations, open cloud storage, misconfigured HTTP headers, and verbose error messages.
- Web Security Scanner: Comprehensive checks for security headers (CSP, HSTS, X-Frame-Options, X-Content-Type-Options, Referrer-Policy, Permissions-Policy)
- CORS Analysis: Evaluates Access-Control-Allow-* headers and security interactions
- HTTP Methods: Detects dangerous methods (TRACE, PUT, DELETE) enabled on production servers
- Directory Listing: Identifies exposed directory listings
- Sensitive Files: Probes for exposed configuration files (.env, .git, phpinfo.php, etc.)
A03:2025 β Software Supply Chain Failures
StrongExpanded from "Vulnerable and Outdated Components" to include broader supply chain compromises. This category covers vulnerabilities in dependencies, build systems, and distribution infrastructure.
- OSV Scanner: Scans package manifests and lockfiles (npm, PyPI, Pub, Composer, etc.) against osv.dev database
- CVE Detection: Identifies known vulnerabilities with CVSS severity scores and suggested fixed versions
- Transitive Dependencies: Detects vulnerabilities in indirect dependencies
- Web Scanner: Checks for Subresource Integrity (SRI) on external assets
A04:2025 β Cryptographic Failures
StrongFailures related to cryptography (or lack thereof) which often lead to exposure of sensitive data. This includes hardcoded secrets, weak encryption algorithms, and missing transport security.
- Gitleaks: Comprehensive secrets scanning for hardcoded credentials, API keys, tokens (findings are redacted in UI)
- Web Scanner: Checks for HTTPS/TLS/HSTS enforcement, secure cookie flags (Secure, HttpOnly, SameSite)
- TLS Certificate Validation: Checks certificate expiration and validity
- Semgrep: Detects weak crypto algorithm patterns in code (MD5, SHA1, DES, etc.)
A05:2025 β Injection
PartialInjection flaws occur when untrusted data is sent to an interpreter as part of a command or query. Includes SQL injection, NoSQL injection, OS command injection, LDAP injection, and Cross-Site Scripting (XSS).
- Semgrep/OpenGrep: Language-aware detection of SQL injection patterns, OS command injection, LDAP/XPath injection
- XSS Detection: Identifies reflected XSS patterns and template injection vulnerabilities
- Framework-Specific Rules: Detects unsafe eval/exec usage and concatenated queries
A06:2025 β Insecure Design
MinimalA new category for 2021 focusing on risks related to design and architectural flaws. Requires threat modeling, secure design patterns, and reference architectures.
- Limited automated detection capabilities
- Some architectural anti-patterns may be detected by Semgrep rules
Recommendation: Use manual threat modeling, document design assumptions, add security checklists to PR templates
A07:2025 β Authentication Failures
PartialPreviously "Identification and Authentication Failures." Confirmation of user identity, authentication, and session management is critical to protect against authentication-related attacks.
- Semgrep: Detects password anti-patterns, weak password storage/validation code, missing MFA hooks
- Web Scanner: Validates cookie security flags (Secure, HttpOnly, SameSite) and session cookie configurations
- Code Patterns: Identifies hardcoded credentials and authentication bypass patterns
A08:2025 β Software or Data Integrity Failures
PartialFocuses on code and infrastructure that does not protect against integrity violations. Includes insecure CI/CD pipelines, auto-update without integrity verification, and insecure deserialization.
- Web Scanner: Checks for Subresource Integrity (SRI) on external JavaScript/CSS resources
- Semgrep: Detects insecure deserialization patterns and unsafe update flows
- Code Analysis: Identifies unsigned code execution and integrity check bypasses
A09:2025 β Logging & Alerting Failures
MinimalPreviously "Security Logging and Monitoring Failures." Without logging and monitoring, breaches cannot be detected. Insufficient logging, detection, monitoring, and active response allows attackers to persist undetected.
- Limited automated detection capabilities
- Some logging anti-patterns may be detected by Semgrep rules
Recommendation: Implement comprehensive logging strategy, use centralized logging, configure alerting for security events
A10:2025 β Mishandling of Exceptional Conditions
New in 2025A new category for 2025 focusing on improper error handling, logical errors, failing open, and other scenarios stemming from abnormal conditions that systems may encounter.
- Web Scanner: Detects verbose error messages and framework error page exposure (Spring Boot, ASP.NET, Rails, Node/Express, PHP)
- Semgrep: May detect some error handling anti-patterns and fail-open scenarios (rules dependent)
- Code Analysis: Identifies uncaught exceptions and improper error propagation in some languages
Note: This is a new category in OWASP 2025. CodeFrog's coverage is evolving as testing methodologies develop.
Summary & Recommendations
CodeFrog's Security Testing Strengths
CodeFrog provides strong automated coverage for:
- Security Misconfiguration (A02:2025): Comprehensive web security header analysis, CORS validation, sensitive file detection
- Software Supply Chain Failures (A03:2025): Dependency vulnerability scanning with CVE detection and fix recommendations
- Cryptographic Failures (A04:2025): Secrets scanning, TLS/HSTS validation, cookie security, weak crypto detection
CodeFrog provides partial, rules-dependent coverage for:
- Broken Access Control (A01:2025): Static analysis for authorization patterns, CORS checks, SSRF detection
- Injection (A05:2025): Language-aware SAST for SQL/OS/XSS patterns (no dynamic fuzzing)
- Authentication Failures (A07:2025): Cookie flags, password anti-patterns, credential detection
- Software/Data Integrity Failures (A08:2025): SRI checks, deserialization patterns
- Mishandling of Exceptional Conditions (A10:2025): Error page detection, some exception handling patterns
CodeFrog has minimal automated coverage for:
- Insecure Design (A06:2025): Requires manual threat modeling and architectural review
- Logging & Alerting Failures (A09:2025): No runtime logging posture checks
Improving Your Security Posture
To maximize CodeFrog's effectiveness:
- Enable curated Semgrep rulesets: Use language-specific bundles (p/javascript, p/python, p/go, p/java) in addition to --config auto
- Run all scanners regularly: Combine Secrets Scanning, Static Analysis, OSV Scanner, and Web Security Scanner for comprehensive coverage
- Use bulk domain testing: Leverage CodeFrog's DNS API integration to test multiple domains at scale
- Integrate with CI/CD: Automate security scanning in your development pipeline
- Complement with manual testing: Use threat modeling for Insecure Design, manual penetration testing for runtime vulnerabilities
- Monitor and alert: Implement comprehensive logging and alerting strategies beyond automated scanning