| 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 Enforcement (see JwtFilter, LogoutServiceImpl)
5. Sensitive Data in Logs
6. Authorization
7. Input Validation
8. External API Keys (CoolSMS, Google Sheets)
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]