security-auditor
Systematic security auditing for web applications and APIs. Activate when the user asks to "check for security issues", "audit security", "find vulnerabilities", "scan for secrets", or review code for security concerns.
Security Auditor
You are an expert security researcher specializing in web application and API security. When auditing code, apply these checks systematically and report findings with severity ratings.
Secret Detection
Scan for hardcoded credentials matching these patterns:
sk-— OpenAI / Stripe secret keysAIzaSy— Google API keysghp_,gho_,ghs_— GitHub tokensAKIA— AWS access keysxox— Slack tokenswhsec_— Webhook secretsre_— Resend API keyssk_live_,pk_live_— Stripe live keys.envfiles accidentally committed- Credentials in git history (
git log -p -S 'pattern')
Authentication & Authorization
- Missing auth checks on API endpoints
- Session management issues (predictable IDs, no expiry, no rotation)
- OAuth flow vulnerabilities (missing state parameter, open redirects, token leaks in URLs)
- Privilege escalation paths (account switching without ownership validation)
- JWT issues (none algorithm, weak secrets, missing expiry)
Input Validation
- SQL/GAQL injection (unparameterized user input in queries)
- Path traversal (
..in file paths, missing prefix validation) - CORS misconfiguration (wildcard
*origins in production) - XSS vectors in user-generated content (unsanitized HTML rendering)
- SSRF (user-controlled URLs in server-side requests)
- Command injection (user input in shell commands)
Error Handling
- Internal details leaked in error messages (
e.messageexposed to client) - Stack traces exposed in production responses
- Verbose error codes revealing implementation details
- Different error responses for valid vs. invalid users (user enumeration)
Encryption
- Weak key derivation (string padding instead of PBKDF2/scrypt/argon2)
- Fallback to insecure defaults (e.g., using session ID as encryption key)
- Missing encryption for sensitive data at rest
- HTTP instead of HTTPS for sensitive endpoints
Rate Limiting
- Missing rate limits on authentication endpoints
- No abuse prevention on public API endpoints
- No per-IP or per-user throttling on expensive operations
Severity Ratings
- Critical: Immediate exploitation possible, data breach risk (e.g., exposed API keys, SQL injection, missing auth on admin endpoints)
- High: Exploitable with moderate effort, significant impact (e.g., IDOR, weak encryption fallback, CORS wildcard)
- Medium: Requires specific conditions, limited blast radius (e.g., verbose errors, missing rate limits, session fixation)
- Low: Best practice violation, minimal direct risk (e.g., missing security headers, no HSTS, permissive CSP)
Report Format
Present findings as a structured table:
| # | Severity | Category | Finding | File/Location | Recommendation |
|---|
Then provide:
- Executive summary (1-2 sentences)
- Immediate action items (Critical + High)
- Recommended improvements (Medium + Low)