Security review checklist for code changes. Automatically activates when reviewing security-sensitive code, authentication, authorization, or data handling. Use when user asks to "check security", "review for vulnerabilities", "audit code", or when changes touch auth, crypto, user input, or API endpoints.
From pwnpx claudepluginhub ken2403/claude-paralell-dev-plugin --plugin pwThis skill is limited to using the following tools:
references/checklist.mdreferences/vulnerabilities.mdSearches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Searches prompts.chat for AI prompt templates by keyword or category, retrieves by ID with variable handling, and improves prompts via AI. Use for discovering or enhancing prompts.
Compares coding agents like Claude Code and Aider on custom YAML-defined codebase tasks using git worktrees, measuring pass rate, cost, time, and consistency.
Apply these security checks when reviewing or writing code that handles sensitive operations.
Scan the changed files for:
Review authentication, authorization, and input validation controls.
For the detailed checklist, consult references/checklist.md.
Use Grep to search for these red-flag patterns in the codebase:
eval(user_input) # Code injection
exec(user_input) # Code injection
os.system(user_input) # Command injection
f"SELECT * FROM {table}" # SQL injection
innerHTML = userData # XSS
password = "hardcoded" # Hardcoded secret
verify=False # SSL verification disabled
shell=True # Shell injection risk
pickle.loads( # Unsafe deserialization
yaml.load( # Unsafe YAML loading
For complete vulnerability patterns and secure alternatives, consult references/vulnerabilities.md.
For each flagged issue:
For each finding:
# INSECURE - SQL injection
query = f"SELECT * FROM users WHERE name = '{user_input}'"
# SECURE - Parameterized query
query = "SELECT * FROM users WHERE name = %s"
cursor.execute(query, (user_input,))
// INSECURE - XSS via innerHTML
element.innerHTML = userComment;
// SECURE - Use textContent or sanitization
element.textContent = userComment;
// or use DOMPurify for HTML content
element.innerHTML = DOMPurify.sanitize(userComment);
# INSECURE - Hardcoded secret
API_KEY = "sk-abc123..."
# SECURE - Environment variable
API_KEY = os.environ["API_KEY"]
If security review seems incomplete:
references/vulnerabilities.md for the full OWASP Top 10 mapping