From grimoire
Reviews codebases against the OWASP Top 10 vulnerability categories for security audits, pre-launch checks, and post-incident analysis.
How this skill is triggered — by the user, by Claude, or both
Slash command
/grimoire:review-owasp-checklistThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Systematically check a codebase or design against the OWASP Top 10 (2021) to identify the highest-impact vulnerability classes before they reach production.
Systematically check a codebase or design against the OWASP Top 10 (2021) to identify the highest-impact vulnerability classes before they reach production.
Adopted by: The OWASP Top 10 is referenced by PCI DSS (v4.0, Requirement 6.2.4), NIST SP 800-53 (SA-11), ISO 27001, SOC 2 Type II audits, and is mandated by FedRAMP for web application security testing. Google, Microsoft, and Amazon all include OWASP Top 10 coverage in their internal application security review programs and vendor security questionnaires. Impact: The 2021 OWASP Top 10 categories collectively account for the majority of real-world application breaches. Verizon DBIR 2023 reports that web application attacks (primarily injection, broken access control, and misconfigurations from OWASP Top 10) represent 26% of all breaches. IBM Cost of a Data Breach Report 2023 found the average cost of a breach caused by an exploited vulnerability is $4.45M — preventable with a structured review. Why best: Ad hoc security review produces inconsistent coverage. OWASP Top 10 is community-validated against real-world breach data, updated every 3–4 years, and has tooling support (OWASP ZAP, Semgrep OWASP rulesets, Snyk). It covers the attack surface that attackers actually exploit, not theoretical vulnerabilities.
Sources: OWASP Top 10 2021 (owasp.org/Top10); OWASP ASVS v4.0; Verizon DBIR 2023; IBM Cost of a Data Breach Report 2023; PCI DSS v4.0
Define what is in scope: which services, which endpoints, which data flows. Exclude only what is explicitly out of scope (e.g., third-party SaaS). Document the scope decision.
?id=123 to ?id=124 and access another user's data?Access-Control-Allow-Origin: * on authenticated endpoints is a fail.# Grep for common IDOR patterns (Python/JS examples)
grep -r "request.params\|req.params\|request.GET" --include="*.py" --include="*.js" | grep -v "auth\|permission\|authorize"
# Detect secrets in git history
git log --all --full-history -- '*.env' '*.key' '*.pem'
grep -r "password\s*=\s*['\"]" --include="*.py" --include="*.js" --include="*.ts"
SQL, NoSQL, command, LDAP, and template injection all qualify.
f"SELECT * FROM users WHERE name='{name}'".shlex.quote or equivalent are a fail.{{ }} (auto-escaped) or {% raw %} / |safe (unescaped)?# Grep for raw SQL concatenation
grep -rn "execute.*%" --include="*.py" | grep -v "#"
grep -rn "query.*\+\|query.*\`" --include="*.js" --include="*.ts"
This is a design-level check, not code-level:
DEBUG=True in Django, app.run(debug=True) in Flask.)Content-Security-Policy, X-Frame-Options, Strict-Transport-Security, X-Content-Type-Options.curl -I https://yourdomain.com | grep -E "X-Frame|Content-Security|Strict-Transport|X-Content-Type"
# Check for known CVEs in dependencies
npm audit # Node.js
pip-audit # Python
mvn dependency-check:check # Java (OWASP Dependency Check)
bundle audit # Ruby
Any Critical or High CVE with a fixed version available = immediate action required.
For each finding:
Category: A01 Broken Access Control
Location: /api/v1/orders/{id} (GET)
Severity: High
Finding: No authorization check — any authenticated user can retrieve any order by ID.
Proof: GET /api/v1/orders/9999 with user token for order owner of order 1001 returns 200.
Remediation: Add owner check: assert order.user_id == current_user.id before returning.
Owner: @backend-team
npx claudepluginhub jeffreytse/grimoire --plugin grimoireAudits web applications against OWASP Top 10 (2021) vulnerabilities with quick and deep scan modes, outputting actionable findings per category.
Audits source code against OWASP Top 10 (2021) vulnerabilities — broken access control, injection, SSRF, cryptographic failures, and more. Useful when reviewing application security or checking for common weaknesses.
Reviews code and architectures against OWASP Top 10:2025 web application security risks. Useful for vulnerability audits, codebase reviews, remediation guidance, and secure coding patterns.