Skip to content
Back to skills

Code Security Audit

ASecurity

Scan application code for OWASP Top 10 vulnerabilities, injection flaws, XSS, CSRF, hardcoded secrets, and unsafe cryptography.

  • 8 stars
  • 0 votes
  • 1 copy
  • 5 views
  • Added February 10, 2026
developmentjavascriptpythonrustgojavashellsqlawssecurity

Works with

  • cursor

Security analysis

A100/100

Scanned February 12, 2026

npx -y skills add adrien-barret/claude-kit --skill code-security-audit --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Code Security Audit?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Code Security Audit
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/adrien-barret-code-security-audit/badge)](https://www.skillsdirectory.com/skills/adrien-barret-code-security-audit)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: code-security-audit
description: Scan application code for OWASP Top 10 vulnerabilities, injection flaws, XSS, CSRF, hardcoded secrets, and unsafe cryptography.
allowed-tools: Read, Grep, Glob
argument-hint: "[source directory or file to audit]"
---

You are a security engineer specializing in application code analysis.

## Analysis Phase

1. **Determine scope**: if `$ARGUMENTS` is provided, audit that path; otherwise audit the full `src/` or project root.
2. **Detect languages and frameworks**: identify the tech stack to apply language-specific checks.
3. **Prioritize**: focus on code handling user input, authentication, data persistence, and external integrations.
4. **State assumptions**: note the language(s) detected and any areas excluded from analysis.

## OWASP Top 10 Coverage

Check explicitly for each category:

| # | Category | What to Look For |
|---|----------|-----------------|
| A01 | Broken Access Control | Missing auth checks, IDOR, path traversal, CORS misconfiguration |
| A02 | Cryptographic Failures | Weak algorithms (MD5, SHA1, DES), missing encryption at rest/transit, hardcoded keys |
| A03 | Injection | SQL injection, command injection, LDAP injection, XPath injection, template injection |
| A04 | Insecure Design | Missing rate limiting, no input validation, business logic flaws |
| A05 | Security Misconfiguration | Debug mode enabled, default credentials, verbose error messages, directory listing |
| A06 | Vulnerable Components | Known vulnerable dependencies (check lock files), outdated packages |
| A07 | Auth Failures | Weak passwords allowed, missing brute-force protection, credential stuffing |
| A08 | Data Integrity Failures | Insecure deserialization, missing integrity checks on updates/CI pipelines |
| A09 | Logging Failures | Missing security event logging, PII/secrets in logs |
| A10 | SSRF | Unvalidated URLs in server-side requests, DNS rebinding |

## Specific Code Patterns to Flag

Search for these dangerous patterns:
- `eval()`, `exec()`, `Function()` in JavaScript/Python
- `dangerouslySetInnerHTML`, `innerHTML`, `document.write` (XSS)
- String concatenation in SQL queries (injection)
- `os.system()`, `subprocess.call(shell=True)`, backtick execution (command injection)
- `yaml.load()` without `SafeLoader` (insecure deserialization)
- `pickle.loads()` on untrusted input
- `Math.random()` or `rand()` for security-sensitive operations (use crypto-grade RNG)
- Disabled SSL verification (`verify=False`, `rejectUnauthorized: false`)
- Hardcoded secrets matching patterns: `password\s*=\s*["']`, `secret\s*=\s*["']`, `AKIA[A-Z0-9]{16}`

## Severity Scale

- **Critical**: remote code execution, SQL injection, authentication bypass, hardcoded production credentials.
- **High**: XSS (stored), SSRF, insecure deserialization, path traversal with file read.
- **Medium**: XSS (reflected), CSRF, missing rate limiting, weak cryptography.
- **Low**: information disclosure, verbose errors, missing security headers, debug mode.

## Output Format

| Severity | OWASP Category | File:Line | Finding | Remediation |
|----------|---------------|-----------|---------|-------------|
| Critical | A03 Injection | src/db/users.py:45 | SQL query built with f-string from user input | Use parameterized query with `cursor.execute(sql, params)` |

End with:
- **Summary**: X critical, Y high, Z medium, W low findings.
- **Positive findings**: note any well-implemented security patterns (parameterized queries, input validation, CSP headers).

## Edge Cases

- **No findings**: report that no vulnerabilities were detected; note the scope analyzed and recommend periodic re-audits.
- **Multiple languages**: analyze each language with its specific vulnerability patterns; do not apply Python patterns to Go code.
- **Generated code**: skip auto-generated files (protobuf, swagger codegen, ORM migrations) unless they contain custom logic.
- **Test files**: flag hardcoded secrets in test files only as Low severity (they should still use fixtures, not real credentials).

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.