| name | security-checklist |
| description | Verify security vulnerabilities — hardcoded secrets, SQL injection, JWT validation, blacklist enforcement, sensitive logging, and authorization checks. Run before merging any auth or API-related changes. |
| allowed-tools | Bash(git *:*), Bash(grep *:*), Read, Glob, Grep |
Step 1 — Gather Changed Files
git diff develop...HEAD --name-only 2>/dev/null || git diff HEAD~5...HEAD --name-only
Read each changed .java file with the Read tool for detailed analysis.
Step 2 — Run Checklist
1. Hardcoded Secrets
Search commands:
grep -rn "password\s*=\s*\"" src/main/java --include="*.java"
grep -rn "secret\s*=\s*\"" src/main/java --include="*.java"
grep -rn "apiKey\s*=\s*\"" src/main/java --include="*.java"
grep -rE "['\"]([A-Za-z0-9+/]{40,}={0,2})['\"]" src/main/java --include="*.java"
2. SQL Injection
3. JWT Validation (see JwtProvider, JwtFilter)
4. Blacklist & Refresh Token Enforcement
5. Sensitive Data in Logs
6. Authorization
7. Input Validation
8. External API Keys (nurigo SMS, AWS S3, FCM)
Step 3 — Report
Output each item as:
- ✓ Pass
- ⚠ Warning (recommendation)
- ✗ Error (must fix)
Group by category, then summarize:
Total {n} items checked
✓ {p} passed / ⚠ {w} warnings / ✗ {e} errors
Issues found:
- ✗ [file] : [problem description]
- ⚠ [file] : [recommendation]