Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
pixel-process-ug avatar

Security Review

  • 66 installs
  • 1 repo stars
  • Updated March 16, 2026
  • pixel-process-ug/superkit-agents

Helps with security tasks.

About

security-review is a Claude Code skill for security. It helps solo builders move faster with AI-assisted development.

  • security-review
  • Security
  • AI-coding skill

Security Review by the numbers

  • 66 all-time installs (skills.sh)
  • +2 installs in the week ending Aug 4, 2026 (Skillselion tracking)
  • Ranked #1,196 of 2,203 Security skills by installs in the Skillselion catalog
  • Data as of Aug 4, 2026 (Skillselion catalog sync)
npx skills add https://github.com/pixel-process-ug/superkit-agents --skill security-review

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs66
repo stars1
Last updatedMarch 16, 2026
Repositorypixel-process-ug/superkit-agents

What it does

Helps with security tasks.

Files

SKILL.mdMarkdownGitHub ↗

Security Review

Overview

Systematically review code for security vulnerabilities, apply secure coding patterns, and ensure applications follow defense-in-depth principles. This skill covers the OWASP Top 10, authentication pattern selection, input validation, secrets management, dependency auditing, security headers, and threat modeling.

Announce at start: "I'm using the security-review skill to assess security posture."

---

Phase 1: Scope and Threat Assessment

Goal: Identify the attack surface and prioritize review areas.

Actions

1. Identify all user-facing endpoints and input surfaces 2. Map authentication and authorization boundaries 3. List external dependencies and their trust levels 4. Identify sensitive data flows (PII, credentials, payment) 5. Determine compliance requirements (SOC 2, GDPR, HIPAA)

STOP — Do NOT proceed to Phase 2 until:

  • [ ] Attack surface is mapped
  • [ ] Sensitive data flows are identified
  • [ ] Compliance requirements are known

---

Phase 2: OWASP Top 10 Audit

Goal: Systematically check against each OWASP category.

OWASP Top 10 Checklist (2021)

#CategoryKey CheckPass/Fail
1Broken Access ControlAuthorization verified on every endpoint, deny by default
2Cryptographic FailuresNo plaintext secrets, strong algorithms (AES-256, bcrypt)
3InjectionParameterized queries, no string concatenation for SQL/commands
4Insecure DesignThreat model exists, rate limiting, abuse cases considered
5Security MisconfigurationNo defaults in production, minimal permissions, error messages leak nothing
6Vulnerable ComponentsDependencies audited, no known CVEs, update policy in place
7Auth FailuresMFA available, passwords hashed, session management secure
8Data Integrity FailuresVerify signatures, validate CI/CD pipeline integrity
9Logging FailuresLog auth events, access control failures, input validation failures
10SSRFValidate/allowlist URLs, no internal network access from user input

STOP — Do NOT proceed to Phase 3 until:

  • [ ] All 10 categories are checked
  • [ ] Findings are documented with severity

---

Phase 3: Deep Review by Category

Goal: Apply detailed security patterns to identified issues.

Auth Pattern Selection Table

PatternUse WhenKey Requirements
JWTStateless APIs, microservices, mobile backendsRS256 for multi-service; access token 15min max; HttpOnly cookies
Session-basedTraditional web apps, server-rendered pagesServer-side storage; HttpOnly + Secure + SameSite cookies; CSRF tokens
OAuth2/OIDCThird-party login, SSO, delegated authAuthorization Code + PKCE; validate ID token claims; server-side token storage
Passkeys/WebAuthnPasswordless, high-security appsPhishing-resistant; store public keys only; support multiple per account

JWT Security Checklist

AspectGuidance
SigningRS256 (asymmetric) for multi-service, HS256 for single service
ExpiryAccess token: 15 minutes max. Refresh token: 7 days max
StorageHttpOnly cookie (web) or secure storage (mobile). Never localStorage
RefreshRotate refresh tokens on use, invalidate on logout
PayloadMinimal claims (sub, exp, iat, roles). No sensitive data

Input Validation Patterns

Allow-List Validation (always prefer over block-list):

# Good: allow-list
ALLOWED_SORT_FIELDS = {'name', 'created_at', 'price'}
if sort_field not in ALLOWED_SORT_FIELDS:
    raise ValidationError("Invalid sort field")

# Bad: block-list (always incomplete)
BLOCKED_CHARS = ['<', '>', '"']

Parameterized Queries (never concatenate user input):

# Good: parameterized
cursor.execute("SELECT * FROM users WHERE id = %s", (user_id,))

# Bad: SQL injection vulnerability
cursor.execute(f"SELECT * FROM users WHERE id = {user_id}")

File Upload Validation

  • Validate MIME type server-side (not just extension)
  • Enforce file size limits
  • Generate random filenames (never use user-supplied names)
  • Store uploads outside the web root
  • Scan for malware if accepting from untrusted users

STOP — Do NOT proceed to Phase 4 until:

  • [ ] All identified issues have remediation recommendations
  • [ ] Auth patterns are correctly applied
  • [ ] Input validation is comprehensive

---

Phase 4: Infrastructure and Dependency Hardening

Goal: Secure the deployment environment and supply chain.

Secrets Management Rules

EnvironmentMethod
Development.env files (git-ignored)
CI/CDPipeline secrets (GitHub Secrets, GitLab CI vars)
ProductionSecrets manager (AWS Secrets Manager, Vault, GCP Secret Manager)

Secrets Never List

  • Never hard-code secrets in source code
  • Never commit .env files to git
  • Never log secrets (even at debug level)
  • Never pass secrets as command-line arguments
  • Never use the same secrets across environments

Dependency Auditing Commands

# Node.js
npm audit
npx socket-security audit

# Python
pip-audit
safety check

# Go
govulncheck ./...

# Rust
cargo audit

Security Headers

HeaderValuePurpose
Content-Security-Policydefault-src 'self' (customize per app)Prevents XSS, data injection
Strict-Transport-Securitymax-age=63072000; includeSubDomainsForces HTTPS
X-Content-Type-OptionsnosniffPrevents MIME sniffing
X-Frame-OptionsDENY or SAMEORIGINPrevents clickjacking
Referrer-Policystrict-origin-when-cross-originControls referer leakage
Permissions-PolicyDisable unused APIsLimits browser feature access

CORS Rules

  • Never use Access-Control-Allow-Origin: * with credentials
  • Allowlist specific origins
  • Restrict allowed methods and headers to what is needed

---

Phase 5: Threat Modeling (STRIDE)

Goal: For new features or significant changes, walk through each threat category.

ThreatQuestionMitigation
SpoofingCan an attacker pretend to be someone else?Strong authentication, MFA
TamperingCan data be modified without detection?Integrity checks, signatures
RepudiationCan a user deny performing an action?Audit logging
Information DisclosureCan sensitive data leak through errors, logs, or side channels?Error sanitization, encryption
Denial of ServiceCan the system be overwhelmed?Rate limits, resource quotas
Elevation of PrivilegeCan a user gain permissions they should not have?Least privilege, RBAC

For each identified threat: 1. Document the threat and attack vector 2. Assess likelihood and impact 3. Define mitigations 4. Verify mitigations are implemented and tested

---

Decision Table: Security Review Depth

Change TypeReview DepthFocus Areas
Auth/session changesFull STRIDE + OWASPAll categories
User input handlingInjection + validation focusOWASP 1, 3, 10
Dependency updateCVE scan + changelog reviewOWASP 6
API endpoint additionAccess control + input validationOWASP 1, 3, 5
Config/infrastructureSecrets + headers + misconfigOWASP 2, 5
File upload featureInjection + SSRF + malwareOWASP 3, 10

---

Anti-Patterns / Common Mistakes

Anti-PatternWhy It Is WrongCorrect Approach
Client-side only validationEasily bypassedAlways validate server-side
Storing tokens in localStorageXSS can steal themUse HttpOnly cookies
Block-list input validationAlways incompleteUse allow-list validation
Generic error messages in productionMay leak internal detailsSanitize errors, log details server-side
Same secrets across environmentsBreach of one compromises allUnique secrets per environment
Ignoring dependency CVEsKnown vulnerabilities are actively exploitedAudit and update regularly
CORS wildcard with credentialsDefeats CORS protection entirelyAllowlist specific origins
Logging sensitive dataLog exposure creates data breachNever log secrets, PII, or tokens

---

Secrets Rotation Schedule

Secret TypeRotation FrequencyAfter Suspected Compromise
API keysEvery 90 daysImmediately
Database passwordsEvery 90 daysImmediately
Encryption keysAnnually (support key versioning)Immediately
JWT signing keysEvery 6 monthsImmediately
OAuth client secretsEvery 90 daysImmediately

---

Subagent Dispatch Opportunities

Task PatternDispatch ToWhen
Scanning different OWASP categories in parallelAgent tool with subagent_type="Explore" (one per category)When reviewing a large codebase across multiple vulnerability types
Authentication flow analysisAgent tool with subagent_type="general-purpose"When auth implementation spans multiple files/services
Dependency vulnerability scanningBash tool with run_in_background=trueWhen running npm audit or similar tools concurrently

Follow the dispatching-parallel-agents skill protocol when dispatching.

---

Integration Points

SkillRelationship
code-reviewSecurity findings are Critical category issues
senior-backendBackend hardening follows security review findings
senior-fullstackAuth implementation follows security patterns
acceptance-testingSecurity requirements become acceptance criteria
performance-optimizationRate limiting serves both security and performance
systematic-debuggingSecurity incidents trigger debugging workflow

---

Skill Type

FLEXIBLE — Adapt the depth of review to the change type using the decision table. The OWASP checklist and STRIDE analysis are strongly recommended for any auth or input-handling changes. Secrets management rules are non-negotiable.

Related skills

Securityappsec

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.