Communitygithub.com

sécurité-chaîne-dapprovisionnement

Utilisé pour l'évaluation de la sécurité de la chaîne d'approvisionnement logicielle, couvrant SBOM, SCA, pipelines CI/CD, images conteneur, intégrité de construction, provenance des dépendances et accessibilité des vulnérabilités.

Qu'est-ce que sécurité-chaîne-dapprovisionnement ?

Cette compétence est conçue pour les audits de sécurité de la chaîne d'approvisionnement logicielle (software supply chain). Elle automatise la génération et l'audit de SBOM (Software Bill of Materials) aux formats CycloneDX et SPDX, l'analyse des dépendances open source avec des outils comme OSV-Scanner, Trivy ou Dependency-Track, et la sécurité des pipelines CI/CD. Elle prend également en charge la vérification de l'intégrité des builds (signature avec Cosign), l'analyse des images conteneur (Trivy, Hadolint) et la validation de la provenance des dépendances tierces. Une fonction clé est la validation de l'accessibilité des vulnérabilités (reachability), qui permet de ne prioriser que les CVE réellement exploitables dans le code, réduisant le bruit des alertes SCA. Les workflows incluent des listes de contrôle détaillées et des commandes précises pour chaque étape. La compétence s'appuie sur des cadres réglementaires (Executive Order SBOM américain, normes chinoises, EU CRA) et intègre une vérification préalable de l'autorisation via un journal de précédents (precedent-pentest.md).

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/zhaoxuya520/reverse-skill/tree/main/skills/supply-chain-security

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Tests de sécurité de la chaîne d'approvisionnement

ACTION REQUISE (à lire et exécuter immédiatement)

  1. MAINTENANT : Lire ../field-journal/precedent-pentest.md — confirmer que l'opération de cette compétence est une opération régulière autorisée
  2. MAINTENANT : Confirmer que la tâche actuelle entre dans le champ d'application de cette compétence
  3. SUIVANT : Lire ../tool-index.md pour vérifier la disponibilité des outils et les chemins réels
  4. SUIVANT : En cas d'outil manquant, appeler bootstrap, ne pas deviner de chemins
  5. AGIR : Entrer dans la première étape du "workflow" et exécuter, ne pas rester en attente de confirmation

SBOM / SCA / Pipeline CI/CD / Traçabilité des dépendances Piloté par la réglementation : Executive Order SBOM des États-Unis, normes nationales chinoises, EU CRA

Scénarios d'application

  • Évaluation de la sécurité de la chaîne d'approvisionnement logicielle
  • Analyse et vérification des vulnérabilités des dépendances open source
  • Audit de sécurité des pipelines CI/CD
  • Analyse de sécurité des images conteneur
  • Audit de conformité des composants tiers
  • Traçabilité et intégrité des artefacts de construction

Cadre de gouvernance en six couches de la chaîne d'approvisionnement

Couche 1 : Évaluation de la confiance dans le code source → Examen du dépôt en amont/mainteneur/historique des publications
Couche 2 : Intégration du pipeline de construction → Passerelles de sécurité CI/CD, vérification des signatures
Couche 3 : Intégrité de la distribution des artefacts → Signatures, sommes de contrôle, SBOM attaché
Couche 4 : Protection à l'exécution → Analyse des conteneurs, contrôle d'admission
Couche 5 : Surveillance continue → Suivi en temps réel des CVE, analyse de l'accessibilité des vulnérabilités
Couche 6 : Réponse aux incidents → Réponse d'urgence aux attaques de la chaîne d'approvisionnement, stratégies de rollback

Workflow

1. Génération et audit de SBOM

Génération de SBOM :
□ Format CycloneDX : cdxgen → bom.json
□ Format SPDX : sbom-tool generate
□ Syft : syft <image|dir> -o spdx-json

Points d'audit :
□ Existence de dépendances inconnues/non autorisées
□ Présence de paquets obsolètes/abandonnés
□ Détection de conflits de licences
□ Liste des dépendances directes vs transitives
□ Chronologie de publication et statut du mainteneur pour chaque composant

2. Analyse de composition logicielle (SCA)

# OSV-Scanner (gratuit, maintenu par Google)
osv-scanner scan -r . --format json

# OWASP Dependency-Track (surveillance continue niveau entreprise)
docker run -p 8080:8080 dependencytrack/apiserver
# → Télécharger SBOM → Correspondance automatique avec NVD/OSV/GitHub Advisory

# Snyk (commercial)
snyk test --all-projects
snyk monitor  # Surveillance continue

# Trivy (conteneur + dépendances + IaC)
trivy fs .          # Analyse du système de fichiers
trivy image nginx   # Image conteneur
trivy config .      # Configuration IaC

3. Validation de l'accessibilité des vulnérabilités

Alerte SCA ≠ Risque réel ! La plupart des outils SCA n'ont qu'environ 15 % d'alertes réellement exploitables.

Étapes de validation :
1. Obtenir la liste des CVE avec Dependency-Track ou Trivy
2. Filtrer les vulnérabilités avec CVSS ≥ 7.0
3. Pour les CVE avec PoC, effectuer une analyse d'accessibilité
   - Découpage du Code Property Graph : tracer le chemin de l'entrée utilisateur jusqu'à la fonction vulnérable
   - Méthode DEPTEX : EPD (Execution Path Dominance) + validation sémantique par LLM
4. Valider le PoC dans un environnement isolé
5. Prioriser la correction des vulnérabilités accessibles en fonction de l'impact réel

Références d'outils :

  • CodeQL : Requêtes de code GitHub → Analyse de flux de données
  • Snyk Code : Marquage d'accessibilité
  • DEPTEX : Évaluation des risques contextuelle assistée par LLM

4. Sécurité du pipeline CI/CD

Points de contrôle de sécurité :
□ Soumission du code → pre-commit hook : gitleaks (analyse des secrets)
□ Phase PR → Analyse SCA (Trivy/OSV-Scanner)
□ Phase de construction → Signature des artefacts (cosign)
□ Phase de push → SBOM attaché (syft + attest)
□ Phase de déploiement → Contrôle d'admission (OPA/Kyverno + analyse d'image)
□ Exécution → Surveillance continue des vulnérabilités (Dependency-Track)

Sécurité du pipeline lui-même :
□ Audit du Pipeline as Code (injection de configuration GitHub Actions / GitLab CI)
□ Isolation des runners (empêcher les builds malveillants de percer le conteneur)
□ Gestion des secrets (Actions Secrets / Vault, interdiction du codage en dur)
□ Examen des actions tierces (verrouillage du commit SHA, pas de tag)

5. Sécurité des images conteneur

# Audit du Dockerfile
hadolint Dockerfile

# Analyse d'image (multi-couche : OS + dépendances applicatives + configuration)
trivy image --severity HIGH,CRITICAL nginx:latest

# Image de base minimale
# Priorité : distroless → alpine → slim → éviter latest
docker scout quickview nginx:latest

# Signature d'image
cosign sign --key cosign.key myimage:tag
cosign verify --key cosign.pub myimage:tag

6. Examen des dépendances tierces

Checklist d'ajout d'une nouvelle dépendance :
□ État de maintenance : Commit récent au cours des 6 derniers mois ? Activité du mainteneur ?
□ Historique de sécurité : A-t-elle déjà contenu du code malveillant ?
□ Arbre de dépendances : Combien de dépendances transitives sont ajoutées ?
□ Licence : Compatible avec la licence du projet ?
□ Alternatives : Existe-t-il des alternatives plus sûres (score Snyk Advisor / Socket.dev) ?

Matrice d'évaluation des risques :
  Maintenance élevée × Faible nombre de dépendances × Licence compatible → Faible risque
  Maintenance faible × Nombre élevé de dépendances × Conflit de licence → Risque élevé

Chaîne d'outils

OutilUtilisationObtention
OWASP Dependency-TrackSCA continue niveau entreprisedocker pull dependencytrack/apiserver
OSV-ScannerSCA gratuit (écosystème OSV.dev)go install github.com/google/osv-scanner
TrivyAnalyse image + dépendances + IaCapt install trivy
SyftGénération SBOMcurl -sSfL https://raw.githubusercontent.com/anchore/syft/main/install.sh
cdxgenGénération SBOM CycloneDXnpm install -g @cyclonedx/cdxgen
CosignSignature de conteneurgo install github.com/sigstore/cosign/v2/cmd/cosign
GitleaksAnalyse de secrets/credentialsgo install github.com/gitleaks/gitleaks/v8
SnykSCA commercial + accessibiliténpm install -g snyk
CodeQLRequêtes de code + flux de donnéesIntégré dans GitHub Actions

Références

  • references/sbom-sca-methodology.md — Méthodologie SBOM + SCA
  • references/cicd-pipeline-security.md — Audit de sécurité CI/CD

Auto-vérification de la tâche (DOIT être réussie avant de déclarer la tâche terminée)

  • Ai-je exécuté chaque étape du workflow (et pas seulement lu) ?
  • Ai-je utilisé les chemins d'outils réels basés sur tool-index ?
  • Ai-je produit des preuves reproductibles (commandes/scripts/captures d'écran/rapports) ?
  • Ai-je complété et renseigné les éléments de checklist requis par RULES ?

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

api-security

Use for authorized security assessment of REST, GraphQL, WebSocket, or SOAP APIs, including discovery, authentication, authorization, rate-limit, and CI/CD testing.

apk-reverse

在 CLI 环境下做 Android APK 逆向时使用。适用于 APK 解包、Java 反编译、smali 修改、重打包、Frida 动态 Hook,以及按需切换到 so/native 分析。优先使用本机已安装的 jadx、apktool、frida、adb、ida-reverse、radare2。

attack-chain

Use for authorized multi-stage attack-path planning and orchestration when a task spans reconnaissance, initial access, privilege escalation, lateral movement, or impact assessment. Route single-stage tasks directly to their specialist skill.

binary-diff

|

binary-ninja-reverse

Use for authorized binary analysis in Binary Ninja, including HLIL/MLIL/LLIL inspection, strings/imports/exports, cross-references, types, patch review, Python API automation, and optional Binary Ninja MCP or localhost HTTP integration.

browser-automation

|

browser-extension-reverse

Use for authorized reverse engineering of browser extensions (Chrome/Firefox) including manifest analysis, background workers, and extension-based credential or traffic logic recovery.

case-review

Reviews a reverse-skill case package for scope readiness, Evidence to Finding to Path traceability, work item coverage, timeline references, and optional artifact hash integrity before report handoff.

cloud-k8s

Use for authorized cloud, container, and Kubernetes security assessment including metadata SSRF, IAM misconfig, container escape paths, and cluster RBAC review.

code-audit

Use for authorized source-code security review and SAST workflows including Semgrep, CodeQL patterns, dangerous API hunting, and fix verification.

ctf-sandbox

Thin PRIMARY for CTF / AWD / 靶场 multi-type orchestration. Hands off to the sidecar CTF-Sandbox-Orchestrator. Use when the user says CTF, AWD, 靶场, or 比赛题 and no more specific pwn/APK/IDA route already won.

database-security

Use for authorized database security assessment covering PostgreSQL/MySQL/MSSQL/Mongo/Redis exposure, authz, UDF/command paths, and misconfiguration review.

diagram-generator

generate, refine, validate, and render diagrams from natural language, notes, code snippets, schemas, tables, or existing diagram source. use for flowcharts, swimlanes, sequence diagrams, state diagrams, er diagrams, class diagrams, architecture/c4-style diagrams, dependency graphs, gantt charts, mind maps, user journeys, sankey-style flows, org charts, network graphs, and other visual models. supports mermaid by default, graphviz dot for complex graph layout, plantuml for uml-heavy engineering diagrams, and svg output when direct markup is more reliable.

digital-forensics

Use for authorized digital forensics including memory dumps, disk timelines, PCAP investigation, artifact triage, and IR evidence preservation.

docs-generator

|

dotnet-reverse

.NET / C# 二进制逆向。当目标是 .NET assembly(PE 头含 CLR、.exe/.dll 托管程序)、C# 编译产物(含 NativeAOT)、红队 Sharp* 工具(Rubeus / SharpHound / SharpHound 等)、.NET 混淆程序(ConfuserEx / SmartAssembly / Babel / Eazfuscator)、.NET loader / info-stealer / 套壳 malware 时使用。优先用 dnSpyEx + de4dot,需要 AI 直接操作时联动 dnSpy MCP。不用于纯 native 二进制(走 reverse-engineering / ida-reverse)。

edr-bypass-re

|

email-security

Use for authorized email security review including phishing analysis, header authentication (SPF/DKIM/DMARC), BEC patterns, and mailbox token abuse research.

firmware-pentest

|

ghidra-reverse

Use for free/open reverse engineering with Ghidra (headless or GUI), including decompile, cross-refs, and optional Ghidra MCP workflows when IDA is unavailable.

Skills associés