Synthèse automatique
Analyse un codebase et son infrastructure pour détecter les dépendances vulnérables, les problèmes de conteneurs, les mauvaises configurations IaC cloud et les secrets exposés, enrichit les résultats avec des données CVE à jour, calcule un score de risque et génère des plans de remédiation par phases avec tests de validation TDD.
Points forts
- Couvre plusieurs surfaces : écosystèmes de paquets, Docker/Kubernetes, Terraform/CloudFormation/Bicep et fichiers .env.
- S'appuie sur OSV.dev et des recherches web pour CISA KEV, NVD et GitHub Advisories afin d'obtenir des informations de vulnérabilité récentes.
- Calcule un score de risque pondéré à partir du CVSS, de l'exploitabilité, de la criticité et de l'exposition.
- Produit des rapports technique et exécutif avec correctifs concrets et tests TDD avant/après.
Limites
- Dépend des scripts Python fournis et d'un accès web/API ; l'utilisation hors ligne est limitée.
- Les paramètres de criticité et d'exposition peuvent nécessiter une validation manuelle et le score reste heuristique.
- Ne remplace pas un test d'intrusion manuel ni une analyse dynamique à l'exécution.
À utiliser lorsqu'il faut réaliser un audit de sécurité structuré d'un dépôt (dépendances, conteneurs, IaC, secrets exposés) avec des correctifs priorisés et des tests de validation.
À ne pas utiliser comme substitut à un test d'intrusion en conditions réelles, à une détection runtime ou à une certification de conformité.
Analyse de sécurité
PrudenceThe 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.
Exemples
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
Du fichier au premier essai
Le téléchargement contient exactement le contenu affiché sur cette fiche. Cette copie peut différer de la dernière version du dépôt source.
Consulter la source et ses fichiers annexesCe téléchargement contient uniquement SKILL.md. Les scripts, références, modèles et dépendances éventuels ne sont pas inclus. Récupérez les fichiers nécessaires depuis la source en conservant leur arborescence avant de poursuivre.
1. Télécharger le fichier
Télécharger SKILL.mdDepuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/security-analyzer-msba3mt1/SKILL.md, ou utilisez la commande suivante. Ce dossier sert à examiner la skill avant son installation.
Commande pour macOS/Linux ou WSL : un shell POSIX et curl sont nécessaires. Sous Windows sans WSL, utilisez le bouton de téléchargement et créez le dossier manuellement.
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. Vérifier les prérequis
Lisez SKILL.md avant de l’utiliser. Si le fichier cite des scripts ou services externes, examinez-les et préparez les accès nécessaires dans votre environnement de test.
Outils déclarés par l’auteur (à vérifier dans votre agent) : Bash, Read, Write, Edit, Glob, Grep, WebFetch, WebSearch
Aucune section de prérequis reconnue dans ce fichier. Cela ne signifie pas qu’il est autonome : les bibliothèques, outils et accès peuvent être cités ailleurs dans le contenu ou dans le dépôt source.
Les plateformes de la fiche sont des indications du catalogue. Les chemins ci-dessous suivent la documentation des outils ; ils ne prouvent pas que cette skill y a été exécutée. Aucune version minimale de ces outils n’est attestée pour cette fiche.
3. Charger la skill
Après vérification, copiez le dossier complet dans le projet avec l’une des commandes ci-dessous, puis ouvrez une nouvelle session de l’outil. La commande s’arrête si un dossier du même nom existe déjà : comparez les fichiers avant de le remplacer.
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 doit déjà être installé. La procédure locale install/read est contrôlée avec OpenSkills 1.5.0, qui exige Node.js ≥ 20.6.0. Aucun slug du catalogue n’est résolu automatiquement.
Installation officielle d’OpenSkillsopenskills install './.skill-downloads/security-analyzer-msba3mt1'openskills read 'security-analyzer-msba3mt1'La lecture doit afficher le contenu du fichier installé et son dossier de base. Elle ne lance ni la skill ni ses dépendances.
Pour un agent qui lit AGENTS.md, synchronisez ensuite l’index. Cette commande modifie AGENTS.md : relisez le diff avant de l’utiliser.
openskills syncMode manuel ou autre outil : joignez SKILL.md à une conversation, ou ouvrez-le dans un agent capable de lire les fichiers. Ajoutez les ressources annexes nécessaires. Il n’existe pas de dossier universel reconnu par tous les outils.
4. Faire un premier essai
Utilisez une entrée courte et fictive : un endpoint d’API, un petit document ou un brief d’interface. Dans une nouvelle conversation, joignez le fichier ou donnez son chemin à l’agent, puis adaptez cette demande :
Lis .skill-downloads/security-analyzer-msba3mt1/SKILL.md et applique ses instructions à cet exemple : [décrire une entrée de test]. Indique les fichiers, dépendances ou accès qui manquent. Produis le résultat demandé par la skill sans inventer de données ni exécuter de script non examiné.Résultat attendu : une sortie correspondant aux instructions de la skill, ou une liste précise des prérequis manquants. Une simple confirmation de lecture ne valide pas le premier usage. Si une ressource externe est indisponible, ce parcours reste à tester.
Sécurité AMM DeFi
Securite
Checklist de sécurité pour les contrats Solidity AMM, pools de liquidité et flux de swap. Couvre réentrance, attaques par donation, manipulation d'oracles, etc.
Créateur de règles Semgrep
Securite
Crée des règles Semgrep personnalisées pour détecter des vulnérabilités de sécurité, des motifs de bugs et des motifs de code. Inclut une méthodologie de test en premier, le support du mode taint et des étapes de validation. Utile pour construire des détections d'analyse statique ciblées.
Revue barre d'outils développement
Securite
Règles de sécurité pour la barre d'outils de développement, le client PostHog et les feature flags. À utiliser lors de la revue de modifications des composants dev-tools et connexes.