Automated summary
Scans a codebase and infrastructure for vulnerable dependencies, container issues, cloud IaC misconfigurations, and exposed secrets, enriches findings with current CVE data, calculates risk scores, and generates phased remediation plans with TDD validation tests.
Strengths
- Covers multiple surfaces: package ecosystems, Docker/Kubernetes, Terraform/CloudFormation/Bicep, and .env files.
- Uses OSV.dev plus web searches for CISA KEV, NVD, and GitHub Advisories to pull recent vulnerability intelligence.
- Calculates a weighted risk score from CVSS, exploitability, criticality, and exposure.
- Produces technical and executive reports with concrete fixes and pre/post TDD validation tests.
Limitations
- Depends on bundled Python scripts and web/API access, so offline use is limited.
- Criticality and exposure inputs may need manual review, and the risk score remains heuristic.
- Not a substitute for manual penetration testing or runtime dynamic analysis.
Use when you need a structured security audit of a repository's dependencies, containers, IaC, and secret exposure, with prioritized fixes and validation tests.
Do not use as a replacement for live penetration testing, runtime threat detection, or compliance certification.
Security analysis
CautionThe skill uses Bash and network access for legitimate security scanning purposes. It does not instruct destructive actions, exfiltration, or obfuscation, and explicitly avoids logging secret values. However, running unverified Python scripts and fetching external data introduce moderate execution and data exposure risk, so caution is warranted.
- •Executes Python scripts via Bash that are not shown or reviewed in the SKILL.md, introducing supply-chain risk if scripts are malicious or compromised.
- •Uses WebSearch and WebFetch to retrieve live vulnerability data, which may expose project details in search queries if not careful, though no explicit exfiltration is instructed.
- •Scans .env files for secrets and instructs never to log values, which is a positive control, but secret handling still requires caution.
Examples
Run a full security scan of this repository: check dependencies, Docker/Kubernetes manifests, Terraform, and .env exposure, then generate technical and executive reports with phased fixes and tests.Audit our npm and pip dependencies for CVEs, prioritize anything in CISA KEV, and produce a remediation plan with version bumps and validation tests.Scan our Terraform and Dockerfile setup for security issues and exposed secrets, calculate risk scores, and give me an executive summary plus engineer-ready fixes.name: security-analyzer description: Comprehensive security vulnerability analysis for codebases and infrastructure. Scans dependencies (npm, pip, gem, go, cargo), containers (Docker, Kubernetes), cloud IaC (Terraform, CloudFormation), and detects secrets exposure. Fetches live CVE data from OSV.dev, calculates risk scores, and generates phased remediation plans with TDD validation tests. Use when users mention security scan, vulnerability, CVE, exploit, security audit, penetration test, OWASP, hardening, dependency audit, container security, or want to improve security posture. allowed-tools: Bash, Read, Write, Edit, Glob, Grep, WebFetch, WebSearch
Security Analyzer
Analyze environments for vulnerabilities, fetch current CVE/exploit data, and generate phased remediation plans with TDD validation.
Quick Start
When the user requests a security scan:
- Run environment discovery:
python .claude/skills/security-analyzer/scripts/discover_env.py . - Save output to
inventory.json - Run vulnerability scan:
python .claude/skills/security-analyzer/scripts/fetch_vulns.py inventory.json - Save output to
scan_results.json - Generate reports:
python .claude/skills/security-analyzer/scripts/generate_report.py scan_results.json inventory.json
Workflow
Phase 1: Environment Discovery
Scan working directory for:
- Dependencies:
package.json,requirements.txt,Gemfile,go.mod,Cargo.toml,pom.xml - Containers:
Dockerfile,docker-compose.yml,kubernetes/*.yaml - Cloud IaC:
terraform/*.tf,cloudformation/*.yaml,*.bicep - Secrets:
.env*files (flag exposure risk, never log values)
Run the discovery script:
python .claude/skills/security-analyzer/scripts/discover_env.py /path/to/project > inventory.json
Phase 2: Vulnerability Intelligence
Fetch current threat data using the vulnerability scanner:
python .claude/skills/security-analyzer/scripts/fetch_vulns.py inventory.json > scan_results.json
| Source | Priority | Use For | |--------|----------|---------| | CISA KEV | 1 | Actively exploited vulns (use WebSearch) | | NVD | 2 | CVE details + CVSS scores (use WebSearch) | | GitHub Advisories | 3 | Package-specific vulns (use WebSearch) | | OSV.dev | 4 | Open source vulns (API in script) |
For CISA KEV and additional context, supplement with:
WebSearch: "CVE-XXXX-YYYY CISA KEV exploit"
Phase 3: Risk Scoring
The scanner calculates risk scores using:
Risk = (CVSS * 0.3) + (Exploitability * 0.3) + (Criticality * 0.2) + (Exposure * 0.2)
Exploitability: 10=CISA KEV, 7=public exploit, 3=theoretical
Criticality: 10=auth/payment, 5=core business, 2=logging
Exposure: 10=internet-facing, 5=internal, 2=air-gapped
Phase 4: Phased Remediation
Generate reports with fix commands and validation tests:
python .claude/skills/security-analyzer/scripts/generate_report.py scan_results.json inventory.json
Each finding includes:
- Vulnerability details + risk score
- Actual fix code/patch (not just recommendations)
- Pre-fix test (proves vuln exists)
- Remediation unit tests (tests the fix code)
- Post-fix validation (proves vuln resolved)
Phase 5: Reports
Output two reports:
security-report-technical.md— Full details for engineerssecurity-report-executive.md— Summary for leadership
See references/report-templates.md for output structure.
TDD Pattern
For each vulnerability, generate three test types:
def test_vuln_exists():
"""PASS before fix, FAIL after"""
assert is_vulnerable("component") == True
def test_fix_works():
"""Unit test for remediation code"""
result = apply_fix(vulnerable_config)
assert result.is_secure()
def test_vuln_resolved():
"""FAIL before fix, PASS after"""
assert is_vulnerable("component") == False
Fix Types by Finding
| Finding | Output |
|---------|--------|
| Dependency CVE | Version bump command + lockfile update |
| Container issue | Dockerfile patch |
| IaC misconfiguration | Terraform/K8s fix |
| Code vulnerability | Source patch + test |
| Secret exposure | Rotation commands + .gitignore update |
Example Interaction
User: "Run a security scan on this project"
Claude:
- Discovers 47 npm dependencies, 3 Dockerfiles, 2 Terraform configs
- Fetches current CVE data from OSV.dev
- Identifies 12 vulnerabilities (2 critical, 4 high, 6 medium)
- Generates phased remediation plan with:
- Actual fix commands (
npm install lodash@4.17.21) - Code patches for IaC misconfigurations
- TDD tests proving each fix works
- Actual fix commands (
- Outputs technical and executive reports
From the file to a first result
The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.
View the source and supporting filesThis download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.
1. Download the file
Download SKILL.mdFrom the root of a test project, save the file as .skill-downloads/security-analyzer-msba3mt1/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.
Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.
mkdir -p '.skill-downloads/security-analyzer-msba3mt1' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/security-analyzer-msba3mt1/download' --output '.skill-downloads/security-analyzer-msba3mt1/SKILL.md.part' && mv '.skill-downloads/security-analyzer-msba3mt1/SKILL.md.part' '.skill-downloads/security-analyzer-msba3mt1/SKILL.md'2. Check prerequisites
Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.
Tools declared by the author (check availability in your agent): Bash, Read, Write, Edit, Glob, Grep, WebFetch, WebSearch
No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.
The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.
3. Load the skill
After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.
Claude Code
test -f '.skill-downloads/security-analyzer-msba3mt1/SKILL.md' && test -s '.skill-downloads/security-analyzer-msba3mt1/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/security-analyzer' && cp -R '.skill-downloads/security-analyzer-msba3mt1' '.claude/skills/security-analyzer'OpenSkills
OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.
Official OpenSkills installationopenskills install './.skill-downloads/security-analyzer-msba3mt1'openskills read 'security-analyzer-msba3mt1'Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.
For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.
openskills syncManual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.
4. Try a first task
Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:
Read .skill-downloads/security-analyzer-msba3mt1/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.
DeFi AMM Security
Security
Security checklist for Solidity AMM contracts, liquidity pools, and swap flows. Covers reentrancy, donation attacks, oracle manipulation, slippage, and integer math.
Semgrep Rule Creator
Security
Creates custom Semgrep rules for detecting security vulnerabilities, bug patterns, and code patterns. Includes test-first methodology, taint mode support, and validation steps. Helps when building targeted static analysis detections.
Dev Toolbar Review Guide
Security
Safety rules for the dev toolbar, PostHog client, and feature flags. Use when reviewing changes to dev-tools and related files, covering environment guards, override cookies, and SSE stream safety.