skills/security-audit/SKILL.md
Comprehensive security audit with OWASP Top 10, STRIDE threat model, and LLM/AI-specific security analysis. Covers traditional web security plus AI-era attack surfaces: prompt injection, tool call validation, skill supply chain, and cost amplification. Use proactively when: - Security review requested - Auth/authz implementation - API endpoint exposure - LLM/AI integration code - Dependency updates - Pre-deployment audit Triggers: security audit, security review, vulnerability check, pentest, threat model, OWASP, security scan Do NOT use for: performance optimization, code style review
npx skillsauth add excatt/superclaude-plusplus security-auditInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Project dependencies:
!cat package.json 2>/dev/null | jq -r '.dependencies // empty | keys[]' 2>/dev/null | head -20 || pip list --format=freeze 2>/dev/null | head -20 || echo "No dependencies found"
Systematic security audit covering traditional web security and AI-era attack surfaces.
/security-audit src/api/ # audit specific directory
/security-audit # full project audit
/security-audit --focus llm # LLM security only
/security-audit --focus deps # dependency audit only
Execute phases sequentially. Each finding gets a Confidence score (1-10). Only report findings with Confidence >= 6. Below 6 = informational note only.
Goal: Map the application's trust boundaries and entry points.
Output: Attack surface diagram (text-based)
Goal: Find hardcoded credentials, leaked keys, weak secret management.
# Pattern scan
grep -rn "password\s*=\|api_key\s*=\|secret\s*=\|token\s*=" --include="*.{py,ts,js,go,rs,java}" .
grep -rn "BEGIN.*PRIVATE KEY" .
grep -rn "sk-[a-zA-Z0-9]" . # OpenAI keys
grep -rn "anthropic-[a-zA-Z0-9]" . # Anthropic keys
grep -rn "ghp_[a-zA-Z0-9]" . # GitHub tokens
Check:
.env files in .gitignoregit log -p | grep -i "password\|secret\|api_key")Goal: Identify vulnerable or malicious dependencies.
# Node.js
pnpm audit
# Python
uv pip audit # or pip-audit
# Check for typosquatting
# Check for abandoned packages (no updates >2 years)
Check:
*, latest)| # | Vulnerability | What to Check | |---|---------------|---------------| | A01 | Broken Access Control | Missing auth middleware, IDOR, path traversal, CORS misconfiguration | | A02 | Cryptographic Failures | Weak hashing (MD5/SHA1 for passwords), missing TLS, plaintext secrets | | A03 | Injection | SQL injection, NoSQL injection, command injection, XSS, template injection | | A04 | Insecure Design | Missing rate limits, no abuse controls, business logic flaws | | A05 | Security Misconfiguration | Debug mode in prod, default credentials, unnecessary features enabled | | A06 | Vulnerable Components | Known CVEs in dependencies (Phase 3 overlap) | | A07 | Auth Failures | Weak passwords allowed, missing MFA, session fixation, JWT issues | | A08 | Data Integrity Failures | Missing integrity checks on updates, insecure deserialization | | A09 | Logging Failures | Missing security event logs, logging sensitive data | | A10 | SSRF | Unvalidated URLs in server-side requests, internal network access |
For each finding: [A0X] file:line — description (Confidence: N/10)
For each major component/flow, evaluate:
| Threat | Question | Mitigation Check | |--------|----------|------------------| | Spoofing | Can an attacker impersonate a user/service? | Auth tokens, mutual TLS, API keys | | Tampering | Can data be modified in transit/at rest? | Integrity checks, signed payloads, HMAC | | Repudiation | Can actions be denied? | Audit logs, signed events | | Information Disclosure | Can sensitive data leak? | Encryption, access controls, error messages | | Denial of Service | Can the service be overwhelmed? | Rate limits, resource quotas, circuit breakers | | Elevation of Privilege | Can a user gain higher access? | RBAC, least privilege, input validation |
This phase applies when the project uses LLM/AI integrations.
Skip if no AI/LLM usage detected. This is the AI-era extension to traditional security auditing.
Scan for paths where user input reaches LLM prompts:
User Input → [transform?] → System/User Prompt → LLM → [tool calls?] → Response
Check:
Injection patterns to grep:
grep -rn "system.*\+.*user\|f\".*{user\|\.format(.*user" --include="*.py" .
grep -rn "role.*system.*\$\|`\$.*`.*system" --include="*.{ts,js}" .
When LLMs invoke tools (function calling, MCP tools, agent actions):
When the project loads external skills, plugins, or MCP servers:
Bash or Write access to sensitive paths without justificationBefore reporting, apply these exclusion rules:
test_*, *.test.*, *.spec.*) — secrets in fixtures are expectedexample.env, *.template)if (process.env.NODE_ENV === 'development'))Confidence recalibration: If finding depends on assumptions about deployment, reduce Confidence by 2.
## Security Audit Summary
| Severity | Count | Status |
|----------|-------|--------|
| Critical | 0 | - |
| High | 2 | Fix required before deploy |
| Medium | 3 | Fix before next release |
| Low | 5 | Track and address |
| Info | 2 | No action needed |
LLM Security: [Applicable/Not Applicable]
Overall Risk: [Critical/High/Medium/Low]
### [CRITICAL] A03 — SQL Injection in user search
- **File**: src/api/users.ts:47
- **Confidence**: 9/10
- **Description**: User input interpolated directly into SQL query
- **Impact**: Full database read/write access
- **Fix**: Use parameterized query
- **Evidence**: `db.query(\`SELECT * FROM users WHERE name = '${name}'\`)`
| Severity | Definition | Action | |----------|-----------|--------| | Critical | Actively exploitable, data breach risk | Stop and fix immediately | | High | Exploitable with moderate effort | Fix before deploy | | Medium | Requires specific conditions to exploit | Fix before next release | | Low | Defense-in-depth improvement | Track in backlog | | Info | Best practice recommendation | No immediate action |
/auth - Authentication & authorization patterns/error-handling - Secure error handling/verify - General verification pipeline/cso - Extended security officer review (gstack-compatible)testing
사용자 계획을 기존 도메인 모델에 대해 stress-test하는 인터뷰 세션. 용어를 날카롭게 다듬고, 결정이 굳어질 때마다 CONTEXT.md(도메인 어휘 사전)와 ADR을 인라인으로 갱신한다. 새 기능 요구사항 탐색은 `/brainstorm`을, 기존 도메인 모델·용어와의 정합성 점검은 이 스킬을 사용한다.
development
# Excel (XLSX) Spreadsheet Skill Claude Code supports comprehensive spreadsheet operations through the **xlsx** skill, enabling creation, editing, and analysis of Excel files (.xlsx, .xlsm, .csv, .tsv). ## Trigger - When user needs Excel spreadsheet creation or editing - Financial modeling or data analysis required - Spreadsheet formulas and calculations needed - Data import from CSV/TSV files ## Core Capabilities **Primary functions include:** - Creating new spreadsheets with formulas and f
tools
Generate structured implementation workflows from PRDs and feature requirements
development
실시간 통신 설계 가이드를 실행합니다.