بنقرة واحدة
security-review
Run a security audit covering OWASP Top 10, deps, secrets, RLS
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Run a security audit covering OWASP Top 10, deps, secrets, RLS
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Manage the project backlog — add, list, filter, update, prioritize, and suggest work items
Daily session wrapper — start with backlog, work, commit, retro
End-of-session retrospective — summarize work, update backlog statuses, update MEMORY.md
Commit, branch, PR, self-review, fix — then stop for human approval before merge
Pre-flight for parallel work — pick items, check file overlap, set statuses, generate terminal commands
Manage project backlog — add, list, filter, update, prioritize, suggest
| name | security-review |
| description | Run a security audit covering OWASP Top 10, deps, secrets, RLS |
| user-invocable | true |
Run a security audit of the current codebase or a specific PR. Covers OWASP Top 10, dependency vulnerabilities, secret exposure, and Supabase RLS policy.
Run the following checks in order. Report findings with severity: CRITICAL, HIGH, MEDIUM, LOW, INFO.
Check git history and working tree for accidentally committed secrets:
git diff HEAD | grep -iE "(api_key|secret|password|token|supabase_service|SUPABASE_SERVICE)" | grep -v ".example"
git ls-files .env.local
grep -E "\.env" .gitignore
npm audit --json | python3 -c "
import json, sys
data = json.load(sys.stdin)
vulns = data.get('vulnerabilities', {})
critical = [k for k,v in vulns.items() if v.get('severity') in ('critical','high')]
print(f'Critical/High: {len(critical)}')
for c in critical[:10]: print(f' - {c}: {vulns[c][\"severity\"]}')
"
Read all migrations and verify:
ALTER TABLE <name> ENABLE ROW LEVEL SECURITYuser_cards and review_logs policies filter by auth.uid()# Should find exactly 1 createClient call
grep -r "createClient" src/ --include="*.ts" --include="*.tsx"
# No service role key usage in frontend
grep -r "SERVICE" src/ --include="*.ts" --include="*.tsx"
grep -r "dangerouslySetInnerHTML" src/ --include="*.tsx"
grep -r "innerHTML" src/ --include="*.ts" --include="*.tsx"
grep -rE "(eval\(|new Function)" src/ --include="*.ts" --include="*.tsx"
grep -r "import.meta.env" src/ --include="*.ts" --include="*.tsx"
Flag any VITE_ prefixed variable that appears to be a secret.
## Security Review — DanskPrep
Date: <today>
Scope: <PR #X / full codebase>
### CRITICAL
(none)
### HIGH
- [H1] <finding>: <location> — <remediation>
### MEDIUM
- [M1] <finding>: <location> — <remediation>
### LOW / INFO
- [L1] ...
### Summary
X critical, X high, X medium, X low
Overall: Approved / Fix before merge / Block — security issue