version: 1.0.0-rc.4
count: 412
exigences:
  - id: SOCLE-APP-AST-1
    domaine: APP
    domaine_nom: Sécurité applicative
    famille: AST
    famille_nom: Tests de sécurité applicative (AST)
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Semgrep
      - CodeQL
      - OWASP ZAP
      - OSV-Scanner
      - Trivy
    standards:
      - SSDF PW.8
      - OWASP DSOMM
      - OWASP ASVS v5.0.0
    menaces:
      - "Une entrée non validée est interprétée comme du code ou une requête (SQL, commande, XSS, LDAP), permettant l'exécution ou l'accès non autorisé. C'est la classe de failles applicatives la plus répandue (OWASP Top 10 2025, A03)."
      - "Des données non fiables sont désérialisées sans contrôle, permettant l'exécution de code ou la manipulation d'objets. Les frameworks qui désérialisent automatiquement amplifient le risque (cas Spring4Shell, GoAnywhere)."
    texte: SAST exécuté à chaque build ; findings critiques bloquants.
    preuve: Job SAST bloquant ; tickets sur findings critiques.
    href: "/docs/securiser/socle/referentiel/securite-applicative/tests-de-securite-applicative-ast/#socle-app-ast-1"
  - id: SOCLE-APP-AST-2
    domaine: APP
    domaine_nom: Sécurité applicative
    famille: AST
    famille_nom: Tests de sécurité applicative (AST)
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Semgrep
      - CodeQL
      - OWASP ZAP
      - OSV-Scanner
      - Trivy
    standards:
      - SSDF PW.8
      - OWASP DSOMM
    menaces:
      - "Une vulnérabilité exploitable atteint la production parce qu'aucun test dynamique (DAST / IAST) ne l'a détectée avant la mise en service. Le test des surfaces exposées avant release est la parade (OWASP DSOMM)."
      - "Un contrôle d'accès incomplet ou contournable laisse un utilisateur accéder à des données ou actions non autorisées (élévation horizontale ou verticale). C'est la première catégorie du Top 10 OWASP 2025 (A01)."
    texte: DAST des surfaces exposées, planifié et exécuté avant release.
    preuve: Rapport DAST daté avant chaque release majeure.
    href: "/docs/securiser/socle/referentiel/securite-applicative/tests-de-securite-applicative-ast/#socle-app-ast-2"
  - id: SOCLE-APP-AST-3
    domaine: APP
    domaine_nom: Sécurité applicative
    famille: AST
    famille_nom: Tests de sécurité applicative (AST)
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Semgrep
      - CodeQL
      - OWASP ZAP
      - OSV-Scanner
      - Trivy
    standards:
      - OWASP CICD-SEC-3
      - OWASP ASVS v5.0.0
      - SSDF PW.4
    menaces:
      - "Une bibliothèque applicative porteuse d'une vulnérabilité connue est exploitée faute de détection (SCA) et de mise à jour. L'absence d'inventaire et de correctif transforme une CVE publique en brèche (cas Log4Shell, Equifax)."
    texte: SCA des dépendances applicatives relié à la gestion des vulnérabilités.
    preuve: Findings SCA suivis dans le processus de gestion des vulnérabilités.
    href: "/docs/securiser/socle/referentiel/securite-applicative/tests-de-securite-applicative-ast/#socle-app-ast-3"
  - id: SOCLE-APP-AST-4
    domaine: APP
    domaine_nom: Sécurité applicative
    famille: AST
    famille_nom: Tests de sécurité applicative (AST)
    niveau: R3
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - AFL++
      - libFuzzer
      - OSS-Fuzz
    standards:
      - SSDF PW.8
      - OWASP DSOMM
    menaces:
      - "Une vulnérabilité exploitable atteint la production parce qu'aucun test dynamique (DAST / IAST) ne l'a détectée avant la mise en service. Le test des surfaces exposées avant release est la parade (OWASP DSOMM)."
    texte: tests interactifs (IAST) ou fuzzing sur les composants critiques.
    preuve: Campagne de fuzzing ou IAST sur les composants critiques.
    href: "/docs/securiser/socle/referentiel/securite-applicative/tests-de-securite-applicative-ast/#socle-app-ast-4"
  - id: SOCLE-APP-AST-5
    domaine: APP
    domaine_nom: Sécurité applicative
    famille: AST
    famille_nom: Tests de sécurité applicative (AST)
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Semgrep
      - CodeQL
      - OWASP ZAP
      - OSV-Scanner
      - Trivy
    standards:
      - OWASP DSOMM
      - OWASP SAMM
    menaces:
      - "Une vulnérabilité exploitable atteint la production parce qu'aucun test dynamique (DAST / IAST) ne l'a détectée avant la mise en service. Le test des surfaces exposées avant release est la parade (OWASP DSOMM)."
    texte: couverture des tests de sécurité mesurée, avec seuils par niveau de criticité.
    preuve: Indicateur de couverture des tests de sécurité.
    href: "/docs/securiser/socle/referentiel/securite-applicative/tests-de-securite-applicative-ast/#socle-app-ast-5"
  - id: SOCLE-APP-COD-1
    domaine: APP
    domaine_nom: Sécurité applicative
    famille: COD
    famille_nom: Codage sûr
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Semgrep
      - CodeQL
      - Gitleaks
    standards:
      - SAFECode
      - OWASP ASVS v5.0.0
      - OWASP Top 10 2025
    menaces:
      - "Une entrée non validée est interprétée comme du code ou une requête (SQL, commande, XSS, LDAP), permettant l'exécution ou l'accès non autorisé. C'est la classe de failles applicatives la plus répandue (OWASP Top 10 2025, A03)."
      - "Un contrôle d'accès incomplet ou contournable laisse un utilisateur accéder à des données ou actions non autorisées (élévation horizontale ou verticale). C'est la première catégorie du Top 10 OWASP 2025 (A01)."
    texte: règles de codage sûr documentées (validation des entrées, encodage des sorties, gestion des erreurs).
    preuve: Guide de codage sûr ; adoption vérifiée en revue.
    href: "/docs/securiser/socle/referentiel/securite-applicative/codage-sur/#socle-app-cod-1"
  - id: SOCLE-APP-COD-2
    domaine: APP
    domaine_nom: Sécurité applicative
    famille: COD
    famille_nom: Codage sûr
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Semgrep
      - CodeQL
      - Gitleaks
    standards:
      - OWASP CICD-SEC-6
      - OWASP ASVS v5.0.0
    menaces:
      - "Une clé, un jeton ou un mot de passe est commité dans le code et exposé à quiconque accède au dépôt ou à l'artefact. La détection en pré-commit et en CI est la parade."
    texte: aucun secret en clair dans le code, détecté en pré-commit et en CI.
    preuve: Configuration de détection de secrets ; historique nettoyé.
    href: "/docs/securiser/socle/referentiel/securite-applicative/codage-sur/#socle-app-cod-2"
  - id: SOCLE-APP-COD-3
    domaine: APP
    domaine_nom: Sécurité applicative
    famille: COD
    famille_nom: Codage sûr
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Semgrep
      - CodeQL
      - Gitleaks
    standards:
      - SAFECode
      - OWASP ASVS v5.0.0
      - OWASP Top 10 2025
    menaces:
      - "Une entrée non validée est interprétée comme du code ou une requête (SQL, commande, XSS, LDAP), permettant l'exécution ou l'accès non autorisé. C'est la classe de failles applicatives la plus répandue (OWASP Top 10 2025, A03)."
      - "Des données non fiables sont désérialisées sans contrôle, permettant l'exécution de code ou la manipulation d'objets. Les frameworks qui désérialisent automatiquement amplifient le risque (cas Spring4Shell, GoAnywhere)."
    texte: usage de fonctions et requêtes sûres (requêtes paramétrées, anti-patterns proscrits).
    preuve: "Règles d'analyse interdisant les fonctions dangereuses."
    href: "/docs/securiser/socle/referentiel/securite-applicative/codage-sur/#socle-app-cod-3"
  - id: SOCLE-APP-COD-4
    domaine: APP
    domaine_nom: Sécurité applicative
    famille: COD
    famille_nom: Codage sûr
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Semgrep
      - CodeQL
      - Gitleaks
    standards:
      - OWASP DSOMM
      - SSDF PW.8
    menaces:
      - "Une entrée non validée est interprétée comme du code ou une requête (SQL, commande, XSS, LDAP), permettant l'exécution ou l'accès non autorisé. C'est la classe de failles applicatives la plus répandue (OWASP Top 10 2025, A03)."
    texte: linting de sécurité avec règles adaptées au contexte applicatif.
    preuve: Configuration de linting de sécurité dans le dépôt.
    href: "/docs/securiser/socle/referentiel/securite-applicative/codage-sur/#socle-app-cod-4"
  - id: SOCLE-APP-COD-5
    domaine: APP
    domaine_nom: Sécurité applicative
    famille: COD
    famille_nom: Codage sûr
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Semgrep
      - CodeQL
      - Gitleaks
    standards:
      - SSDF PW.7
      - OWASP SAMM
    menaces:
      - "Une faille de conception ou de logique métier (contrôles manquants, hypothèses erronées) passe inaperçue faute de modélisation des menaces et de revue de sécurité. Aucun scanner ne la détecte : elle relève de la conception (Microsoft SDL, OWASP SAMM)."
    texte: revue de code orientée sécurité obligatoire sur les composants sensibles.
    preuve: Politique de revue ; trace de revue sécurité sur composants sensibles.
    href: "/docs/securiser/socle/referentiel/securite-applicative/codage-sur/#socle-app-cod-5"
  - id: SOCLE-APP-DSN-1
    domaine: APP
    domaine_nom: Sécurité applicative
    famille: DSN
    famille_nom: Conception & modélisation des menaces
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP ASVS v5.0.0
      - OWASP SAMM
    menaces:
      - "Une entrée non validée est interprétée comme du code ou une requête (SQL, commande, XSS, LDAP), permettant l'exécution ou l'accès non autorisé. C'est la classe de failles applicatives la plus répandue (OWASP Top 10 2025, A03)."
    texte: référentiel de sécurité applicative (OWASP ASVS) adopté et adapté à la criticité.
    preuve: Niveau ASVS cible déclaré par application.
    href: "/docs/securiser/socle/referentiel/securite-applicative/conception-modelisation-des-menaces/#socle-app-dsn-1"
  - id: SOCLE-APP-DSN-2
    domaine: APP
    domaine_nom: Sécurité applicative
    famille: DSN
    famille_nom: Conception & modélisation des menaces
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - Microsoft SDL
      - OWASP SAMM
      - SSDF PW.1
    menaces:
      - "Une faille de conception ou de logique métier (contrôles manquants, hypothèses erronées) passe inaperçue faute de modélisation des menaces et de revue de sécurité. Aucun scanner ne la détecte : elle relève de la conception (Microsoft SDL, OWASP SAMM)."
      - "Un contrôle d'accès incomplet ou contournable laisse un utilisateur accéder à des données ou actions non autorisées (élévation horizontale ou verticale). C'est la première catégorie du Top 10 OWASP 2025 (A01)."
    texte: modélisation des menaces documentée pour authentification, paiement et données personnelles.
    preuve: Diagrammes de flux et menaces identifiées pour ces fonctions.
    href: "/docs/securiser/socle/referentiel/securite-applicative/conception-modelisation-des-menaces/#socle-app-dsn-2"
  - id: SOCLE-APP-DSN-3
    domaine: APP
    domaine_nom: Sécurité applicative
    famille: DSN
    famille_nom: Conception & modélisation des menaces
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP SAMM
      - SSDF PW.2
    menaces:
      - "Une faille de conception ou de logique métier (contrôles manquants, hypothèses erronées) passe inaperçue faute de modélisation des menaces et de revue de sécurité. Aucun scanner ne la détecte : elle relève de la conception (Microsoft SDL, OWASP SAMM)."
    texte: "revue d'architecture de sécurité avant les évolutions majeures."
    preuve: "Compte rendu de revue d'architecture de sécurité."
    href: "/docs/securiser/socle/referentiel/securite-applicative/conception-modelisation-des-menaces/#socle-app-dsn-3"
  - id: SOCLE-APP-DSN-4
    domaine: APP
    domaine_nom: Sécurité applicative
    famille: DSN
    famille_nom: Conception & modélisation des menaces
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - SSDF PW.1
      - OWASP ASVS v5.0.0
    menaces:
      - "Une faille de conception ou de logique métier (contrôles manquants, hypothèses erronées) passe inaperçue faute de modélisation des menaces et de revue de sécurité. Aucun scanner ne la détecte : elle relève de la conception (Microsoft SDL, OWASP SAMM)."
    texte: "exigences de sécurité dérivées d'un modèle de menace formel et vérifiées en fin de cycle."
    preuve: Traçabilité exigence vers menace vers test.
    href: "/docs/securiser/socle/referentiel/securite-applicative/conception-modelisation-des-menaces/#socle-app-dsn-4"
  - id: SOCLE-APP-GEN-1
    domaine: APP
    domaine_nom: Sécurité applicative
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - Semgrep
      - OSV-Scanner
    standards:
      - SSDF PW.1
      - OWASP SAMM
      - OWASP ASVS v5.0.0
      - PCI-DSS Req 6
    menaces:
      - "Une faille de conception ou de logique métier (contrôles manquants, hypothèses erronées) passe inaperçue faute de modélisation des menaces et de revue de sécurité. Aucun scanner ne la détecte : elle relève de la conception (Microsoft SDL, OWASP SAMM)."
      - "Un contrôle d'accès incomplet ou contournable laisse un utilisateur accéder à des données ou actions non autorisées (élévation horizontale ou verticale). C'est la première catégorie du Top 10 OWASP 2025 (A01)."
    texte: exigences de sécurité applicative définies et tracées dès la conception.
    preuve: "Liste d'exigences de sécurité par fonctionnalité ; trace en backlog."
    href: "/docs/securiser/socle/referentiel/securite-applicative/#socle-app-gen-1"
  - id: SOCLE-APP-GEN-2
    domaine: APP
    domaine_nom: Sécurité applicative
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - Semgrep
      - OSV-Scanner
    standards:
      - SSDF PW.8
      - OWASP DSOMM
      - OWASP ASVS v5.0.0
      - PCI-DSS Req 6
    menaces:
      - "Une entrée non validée est interprétée comme du code ou une requête (SQL, commande, XSS, LDAP), permettant l'exécution ou l'accès non autorisé. C'est la classe de failles applicatives la plus répandue (OWASP Top 10 2025, A03)."
      - "Des données non fiables sont désérialisées sans contrôle, permettant l'exécution de code ou la manipulation d'objets. Les frameworks qui désérialisent automatiquement amplifient le risque (cas Spring4Shell, GoAnywhere)."
    texte: analyse statique (SAST) intégrée au pipeline et exécutée à chaque build.
    preuve: Configuration CI montrant le job SAST ; rapport daté.
    href: "/docs/securiser/socle/referentiel/securite-applicative/#socle-app-gen-2"
  - id: SOCLE-APP-GEN-3
    domaine: APP
    domaine_nom: Sécurité applicative
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - Semgrep
      - OSV-Scanner
    standards:
      - OWASP CICD-SEC-3
      - OWASP ASVS v5.0.0
      - SSDF PW.4
      - PCI-DSS Req 6
    menaces:
      - "Une bibliothèque applicative porteuse d'une vulnérabilité connue est exploitée faute de détection (SCA) et de mise à jour. L'absence d'inventaire et de correctif transforme une CVE publique en brèche (cas Log4Shell, Equifax)."
    texte: analyse de composition (SCA) des dépendances applicatives, avec seuils de blocage.
    preuve: Rapport SCA ; politique de seuils ; build bloqué sur vulnérabilité critique.
    href: "/docs/securiser/socle/referentiel/securite-applicative/#socle-app-gen-3"
  - id: SOCLE-APP-GEN-4
    domaine: APP
    domaine_nom: Sécurité applicative
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - Semgrep
      - OSV-Scanner
    standards:
      - SSDF PW.1
      - Microsoft SDL
      - OWASP SAMM
      - PCI-DSS Req 6
    menaces:
      - "Une faille de conception ou de logique métier (contrôles manquants, hypothèses erronées) passe inaperçue faute de modélisation des menaces et de revue de sécurité. Aucun scanner ne la détecte : elle relève de la conception (Microsoft SDL, OWASP SAMM)."
    texte: modélisation des menaces des composants sensibles, revue et tenue à jour.
    preuve: Modèle de menace daté pour les fonctionnalités sensibles.
    href: "/docs/securiser/socle/referentiel/securite-applicative/#socle-app-gen-4"
  - id: SOCLE-APP-GEN-5
    domaine: APP
    domaine_nom: Sécurité applicative
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - Semgrep
      - OSV-Scanner
    standards:
      - SSDF PW.8
      - OWASP DSOMM
      - OWASP ASVS v5.0.0
      - PCI-DSS Req 6
    menaces:
      - "Une vulnérabilité exploitable atteint la production parce qu'aucun test dynamique (DAST / IAST) ne l'a détectée avant la mise en service. Le test des surfaces exposées avant release est la parade (OWASP DSOMM)."
    texte: tests dynamiques (DAST) des applications exposées avant mise en production.
    preuve: Rapport DAST avant release ; suivi des findings.
    href: "/docs/securiser/socle/referentiel/securite-applicative/#socle-app-gen-5"
  - id: SOCLE-CLD-CHF-1
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: CHF
    famille_nom: Chiffrement & clés
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 10.2.a
      - SecNumCloud 10.2.c
      - ANSSI-BP-028 R72
      - CIS AWS Foundations 2.1.1
    menaces:
      - "L'attaquant accède aux objets d'un stockage cloud (buckets, volumes) mal protégés pour exfiltrer des données. Une exposition publique ou des droits trop larges suffisent (ATT&CK T1530)."
    texte: chiffrement des flux en transit (TLS conforme) sur les services exposés ; aucun listener en clair.
    preuve: Listeners HTTPS/SSL (TLS) ; redirection du trafic en clair.
    href: "/docs/securiser/socle/referentiel/cloud/chiffrement-cles/#socle-cld-chf-1"
  - id: SOCLE-CLD-CHF-2
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: CHF
    famille_nom: Chiffrement & clés
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 10.1.a
      - SecNumCloud 10.1.b
      - CSA CCM CEK-03
      - CSA CCM CEK-04
      - CIS AWS Foundations 2.2.1
    menaces:
      - "L'attaquant accède aux objets d'un stockage cloud (buckets, volumes) mal protégés pour exfiltrer des données. Une exposition publique ou des droits trop larges suffisent (ATT&CK T1530)."
    texte: chiffrement au repos sur les volumes et le stockage objet, empêchant la récupération des données à la réallocation/recyclage des médias.
    preuve: Chiffrement au repos activé (volumes, buckets) avec gestion de clés conforme.
    href: "/docs/securiser/socle/referentiel/cloud/chiffrement-cles/#socle-cld-chf-2"
  - id: SOCLE-CLD-CHF-3
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: CHF
    famille_nom: Chiffrement & clés
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils:
      - sante
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 10.5.a
      - SecNumCloud 10.5.c
      - CSA CCM CEK-10
      - CSA CCM CEK-12
      - CSA CCM CEK-21
    menaces:
      - "Les secrets stockés dans un coffre cloud (Secrets Manager, Key Vault) sont lus grâce à des droits excessifs ou un rôle compromis. Le coffre concentre la valeur : un accès indu y donne les clés du royaume (ATT&CK T1555.006)."
    texte: clés cryptographiques conformes aux règles ANSSI ; accès aux clés et secrets protégé par conteneur de sécurité (HSM/KMS).
    preuve: Clés conformes [CRYPTO_B2] ; accès aux clés protégé (HSM/KMS, séparation des rôles).
    href: "/docs/securiser/socle/referentiel/cloud/chiffrement-cles/#socle-cld-chf-3"
  - id: SOCLE-CLD-CHF-4
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: CHF
    famille_nom: Chiffrement & clés
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 10.5.a
      - SecNumCloud 10.5.c
      - CSA CCM CEK-08
    menaces:
      - "L'attaquant accède aux objets d'un stockage cloud (buckets, volumes) mal protégés pour exfiltrer des données. Une exposition publique ou des droits trop larges suffisent (ATT&CK T1530)."
      - "Une autorité étrangère contraint légalement un fournisseur cloud (CLOUD Act, FISA) à divulguer des données hébergées, hors du cadre juridique national. Le risque n'est pas technique mais juridique : la souveraineté de l'hébergement (SecNumCloud) y répond."
    texte: clés de chiffrement gérées par le client (BYOK/HYOK) pour les données sensibles, hors du contrôle exclusif du fournisseur.
    preuve: Gestion des clés par le client (BYOK/HYOK) documentée pour les données sensibles.
    href: "/docs/securiser/socle/referentiel/cloud/chiffrement-cles/#socle-cld-chf-4"
  - id: SOCLE-CLD-CHF-5
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: CHF
    famille_nom: Chiffrement & clés
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 10.6.a
    menaces:
      - "L'attaquant accède aux objets d'un stockage cloud (buckets, volumes) mal protégés pour exfiltrer des données. Une exposition publique ou des droits trop larges suffisent (ATT&CK T1530)."
      - "Une autorité étrangère contraint légalement un fournisseur cloud (CLOUD Act, FISA) à divulguer des données hébergées, hors du cadre juridique national. Le risque n'est pas technique mais juridique : la souveraineté de l'hébergement (SecNumCloud) y répond."
    texte: "certificats issus d'une autorité de certification d'un État membre de l'Union européenne."
    preuve: "Chaîne de certificats ancrée sur une AC d'un État membre de l'UE."
    href: "/docs/securiser/socle/referentiel/cloud/chiffrement-cles/#socle-cld-chf-5"
  - id: SOCLE-CLD-CMP-1
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: CMP
    famille_nom: Compute & instances
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 13.2.e
      - ANSSI-BP-028 R37
      - ISO 27017 (CLD.9.5.2)
    menaces:
      - "L'attaquant utilise les ressources de calcul du tenant pour du minage de cryptomonnaie, générant un coût et signalant souvent une compromission plus large. L'abus financier est parfois le seul symptôme visible (ATT&CK T1496)."
    texte: chaque instance est associée à un groupe de sécurité restrictif (refus par défaut).
    preuve: Chaque instance porte un groupe de sécurité ; refus par défaut vérifié.
    href: "/docs/securiser/socle/referentiel/cloud/compute-instances/#socle-cld-cmp-1"
  - id: SOCLE-CLD-CMP-2
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: CMP
    famille_nom: Compute & instances
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 10.5.c
      - ANSSI-BP-028
    menaces:
      - "Un job de build atteint le service de métadonnées d'instance (IMDS) pour récupérer les identifiants de rôle de la machine et pivoter vers le cloud. Sans IMDSv2 ni blocage réseau, le pipeline hérite des droits de l'hôte (ATT&CK T1552.005)."
      - "Depuis un cluster Kubernetes, l'attaquant pivote vers le plan cloud sous-jacent via l'IMDS ou des identités de nœud, étendant l'accès au tenant. La frontière cluster / cloud est un chemin d'escalade (OWASP K08, ATT&CK T1552.005)."
    texte: "métadonnées d'instance (IMDS) protégées : IMDSv2 imposé (hop limit à 1, IMDSv1 désactivé) là où il existe ; à défaut, blocage réseau de l'IMDS pour les charges sans besoin."
    preuve: "Selon le cloud : IMDSv2+hop limit (AWS) ou blocage réseau IMDS + rôle minimal (Outscale) ; pas de secret en user-data. Réf. references/standards/metadata-cloud.md."
    href: "/docs/securiser/socle/referentiel/cloud/compute-instances/#socle-cld-cmp-2"
  - id: SOCLE-CLD-CMP-3
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: CMP
    famille_nom: Compute & instances
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 12.3.a
      - CSA CCM IVS-05
    menaces:
      - "L'attaquant modifie la configuration du compute (images, instances, groupes) pour persister ou affaiblir la posture. L'infrastructure mutable devient un point d'ancrage (ATT&CK T1578)."
    texte: séparation des environnements de production et de développement/hors-production.
    preuve: Environnements de production et de développement séparés (logiquement ou physiquement).
    href: "/docs/securiser/socle/referentiel/cloud/compute-instances/#socle-cld-cmp-3"
  - id: SOCLE-CLD-CMP-4
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: CMP
    famille_nom: Compute & instances
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 12.4.a
      - SecNumCloud 12.4.b
    menaces:
      - Un conteneur malveillant est déployé dans le cluster ou le service cloud pour exécuter du code dans le périmètre de confiance. Les droits de déploiement détournés introduisent la charge (ATT&CK T1610).
    texte: mesures de détection, prévention et remédiation des codes malveillants, couvrant les postes et les flux entrants.
    preuve: Protection anti-codes malveillants déployée (postes + flux entrants).
    href: "/docs/securiser/socle/referentiel/cloud/compute-instances/#socle-cld-cmp-4"
  - id: SOCLE-CLD-CMP-5
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: CMP
    famille_nom: Compute & instances
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 12.11.a
      - SecNumCloud 12.11.b
    menaces:
      - "Après une intrusion initiale, l'attaquant se déplace latéralement et installe des mécanismes de persistance pour conserver l'accès. La compromission s'étend dans le temps et l'espace faute de détection et de segmentation."
    texte: "veille et suivi des vulnérabilités des logiciels et systèmes ; évaluation de l'exposition et traitement du risque."
    preuve: Processus de veille vulnérabilités ; exposition évaluée et traitée.
    href: "/docs/securiser/socle/referentiel/cloud/compute-instances/#socle-cld-cmp-5"
  - id: SOCLE-CLD-CMP-6
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: CMP
    famille_nom: Compute & instances
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 12.12.a
      - SecNumCloud 12.12.b
      - ISO 27017 (CLD.12.1.5)
    menaces:
      - "Un développeur est piégé (faux entretien d'embauche, projet de test, dépendance à essayer) pour exécuter localement un projet malveillant. Le code s'exécute hors bac à sable avec ses droits et exfiltre credentials et portefeuilles (campagnes Lazarus / BeaverTail)."
    texte: "tâches d'administration réalisées depuis des terminaux dédiés et durcis, réservés à cet usage."
    preuve: "Postes d'administration dédiés et durcis (conformes [NT_ADMIN])."
    href: "/docs/securiser/socle/referentiel/cloud/compute-instances/#socle-cld-cmp-6"
  - id: SOCLE-CLD-CMP-7
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: CMP
    famille_nom: Compute & instances
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - CSA CCM IVS-04
      - SecNumCloud 5.1.b
      - ISO 27017 (CLD.9.5.2)
    menaces:
      - "L'attaquant modifie la configuration du compute (images, instances, groupes) pour persister ou affaiblir la posture. L'infrastructure mutable devient un point d'ancrage (ATT&CK T1578)."
      - "Un conteneur exploite une mauvaise configuration ou une faille pour s'échapper vers le nœud hôte du cluster et atteindre d'autres charges. Le cloisonnement du cluster est rompu (ATT&CK T1611)."
      - "Un attaquant ayant obtenu l'exécution sur un hôte implante une persistance furtive au niveau du noyau ou du système : programme eBPF malveillant, extension système (systemd-sysext), module noyau ou hook de chargement. Le code survit aux redéploiements applicatifs, masque ses processus et connexions, et intercepte secrets et trafic. Les contrôles applicatifs et l'analyse d'image ne le voient pas : il vit sous la charge de travail, dans le plan hôte."
    texte: "durcissement de l'OS hôte/invité, de l'hyperviseur et du plan de contrôle selon les bonnes pratiques (CIS / ANSSI)."
    preuve: Configuration durcie (OS/hyperviseur/plan de contrôle) vérifiée selon référentiel (CIS/ANSSI).
    href: "/docs/securiser/socle/referentiel/cloud/compute-instances/#socle-cld-cmp-7"
  - id: SOCLE-CLD-CMP-8
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: CMP
    famille_nom: Compute & instances
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 10.5.c
      - ANSSI-BP-028
    menaces:
      - "Un job de build atteint le service de métadonnées d'instance (IMDS) pour récupérer les identifiants de rôle de la machine et pivoter vers le cloud. Sans IMDSv2 ni blocage réseau, le pipeline hérite des droits de l'hôte (ATT&CK T1552.005)."
      - "Depuis un cluster Kubernetes, l'attaquant pivote vers le plan cloud sous-jacent via l'IMDS ou des identités de nœud, étendant l'accès au tenant. La frontière cluster / cloud est un chemin d'escalade (OWASP K08, ATT&CK T1552.005)."
    texte: "rôle d'instance (identité machine cloud) au strict minimum de privilèges."
    preuve: "Revue des rôles d'instance ; absence de droits larges."
    href: "/docs/securiser/socle/referentiel/cloud/compute-instances/#socle-cld-cmp-8"
  - id: SOCLE-CLD-CMP-9
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: CMP
    famille_nom: Compute & instances
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 10.5.c
      - ANSSI-BP-028
    menaces:
      - "Un job de build atteint le service de métadonnées d'instance (IMDS) pour récupérer les identifiants de rôle de la machine et pivoter vers le cloud. Sans IMDSv2 ni blocage réseau, le pipeline hérite des droits de l'hôte (ATT&CK T1552.005)."
    texte: aucun secret en clair dans les user-data des instances.
    preuve: Inspection des user-data ; aucun secret présent.
    href: "/docs/securiser/socle/referentiel/cloud/compute-instances/#socle-cld-cmp-9"
  - id: SOCLE-CLD-GEN-1
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 8.1
      - CIS Controls v8
      - ISO 27001 (A.5.9)
      - PCI-DSS Req 1
      - HDS
    menaces:
      - "L'attaquant crée un instantané ou clone d'un disque, d'une base ou d'une image et le partage vers son compte pour en extraire les données. La fonctionnalité de sauvegarde sert de canal d'exfiltration (ATT&CK T1578.001)."
      - "L'attaquant utilise les ressources de calcul du tenant pour du minage de cryptomonnaie, générant un coût et signalant souvent une compromission plus large. L'abus financier est parfois le seul symptôme visible (ATT&CK T1496)."
      - "L'attaquant opère dans des régions cloud non utilisées ni surveillées par l'organisation pour échapper à la détection. Les angles morts géographiques deviennent une base arrière (ATT&CK T1535)."
      - "L'attaquant modifie la configuration du compute (images, instances, groupes) pour persister ou affaiblir la posture. L'infrastructure mutable devient un point d'ancrage (ATT&CK T1578)."
    texte: "inventaire des comptes et ressources cloud tenu à jour ; posture de l'infrastructure d'exécution auditée en continu (CSPM)."
    preuve: "Inventaire des comptes/ressources cloud ; rapports d'audit de posture (CSPM) datés."
    href: "/docs/securiser/socle/referentiel/cloud/#socle-cld-gen-1"
  - id: SOCLE-CLD-GEN-2
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 9.1.a
      - SecNumCloud 9.5.a
      - ANSSI-BP-028
      - CIS Controls v8 6.8
      - PCI-DSS Req 1
      - HDS
    menaces:
      - "Une combinaison de permissions IAM individuellement anodines forme un chemin d'élévation ou d'accès non prévu (combinaison toxique). Le risque émerge de l'assemblage des droits, pas d'une permission isolée (ATT&CK T1078.004)."
    texte: "IAM cloud au moindre privilège : MFA sur les accès d'administration, pas de clé d'accès longue durée non tournée, pas de privilège joker."
    preuve: Politiques IAM cloud (moindre privilège), configuration MFA, inventaire et rotation des clés.
    href: "/docs/securiser/socle/referentiel/cloud/#socle-cld-gen-2"
  - id: SOCLE-CLD-GEN-3
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 13.2
      - SecNumCloud 13.3
      - ANSSI-BP-028 R67
      - CIS Controls v8 4.4
      - PCI-DSS Req 1
      - HDS
    menaces:
      - "L'attaquant utilise les ressources de calcul du tenant pour du minage de cryptomonnaie, générant un coût et signalant souvent une compromission plus large. L'abus financier est parfois le seul symptôme visible (ATT&CK T1496)."
    texte: "aucune ressource exposée publiquement par défaut : ports d'administration fermés sur Internet, stockage objet privé."
    preuve: "Revue des groupes de sécurité et des ACL de stockage : absence d'exposition publique."
    href: "/docs/securiser/socle/referentiel/cloud/#socle-cld-gen-3"
  - id: SOCLE-CLD-GEN-4
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 10.1
      - SecNumCloud 10.2
      - SecNumCloud 12.1
      - PCI-DSS Req 1
      - HDS
    menaces:
      - "L'attaquant accède aux objets d'un stockage cloud (buckets, volumes) mal protégés pour exfiltrer des données. Une exposition publique ou des droits trop larges suffisent (ATT&CK T1530)."
    texte: chiffrement au repos et en transit activé ; journalisation des événements de sécurité centralisée.
    preuve: Preuves de chiffrement au repos/transit ; configuration de la journalisation centralisée.
    href: "/docs/securiser/socle/referentiel/cloud/#socle-cld-gen-4"
  - id: SOCLE-CLD-GVN-1
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: GVN
    famille_nom: Gouvernance & inventaire cloud
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
    standards:
      - SecNumCloud 8.1.a
      - ANSSI-BP-028 R1
      - ISO 27017 (CLD.6.3.1)
    menaces: []
    texte: "ressources étiquetées (propriétaire, projet, environnement) pour l'inventaire et la responsabilité."
    preuve: Étiquettes obligatoires présentes (propriétaire, projet, environnement).
    href: "/docs/securiser/socle/referentiel/cloud/gouvernance-inventaire-cloud/#socle-cld-gvn-1"
  - id: SOCLE-CLD-GVN-10
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: GVN
    famille_nom: Gouvernance & inventaire cloud
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils:
      - Pépin
    standards:
      - BSI C5 (INQ)
      - SecNumCloud 19.6.a
      - SecNumCloud 19.2.c
    menaces:
      - "Une autorité étrangère contraint légalement un fournisseur cloud (CLOUD Act, FISA) à divulguer des données hébergées, hors du cadre juridique national. Le risque n'est pas technique mais juridique : la souveraineté de l'hébergement (SecNumCloud) y répond."
    texte: "demandes d'accès des autorités encadrées : transparence, notification au client quand le droit l'autorise, vérification de la base légale et de la juridiction (résistance à l'extraterritorialité)."
    preuve: Procédure de traitement des réquisitions ; registre des demandes ; notification client documentée.
    href: "/docs/securiser/socle/referentiel/cloud/gouvernance-inventaire-cloud/#socle-cld-gvn-10"
  - id: SOCLE-CLD-GVN-11
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: GVN
    famille_nom: Gouvernance & inventaire cloud
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
    standards:
      - BSI C5 (PI)
      - SecNumCloud 19.1.g
    menaces:
      - "Une autorité étrangère contraint légalement un fournisseur cloud (CLOUD Act, FISA) à divulguer des données hébergées, hors du cadre juridique national. Le risque n'est pas technique mais juridique : la souveraineté de l'hébergement (SecNumCloud) y répond."
    texte: "réversibilité et portabilité : export des données en formats ouverts et documentés, sans verrouillage propriétaire ; capacité de récupération en fin de contrat."
    preuve: "Plan de réversibilité ; formats d'export ouverts ; test de récupération des données."
    href: "/docs/securiser/socle/referentiel/cloud/gouvernance-inventaire-cloud/#socle-cld-gvn-11"
  - id: SOCLE-CLD-GVN-12
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: GVN
    famille_nom: Gouvernance & inventaire cloud
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils:
      - sante
    outils:
      - Pépin
    standards:
      - ISO/IEC 27018
      - SecNumCloud 19.5.a
      - SecNumCloud 15.1.b
    menaces:
      - "Une autorité étrangère contraint légalement un fournisseur cloud (CLOUD Act, FISA) à divulguer des données hébergées, hors du cadre juridique national. Le risque n'est pas technique mais juridique : la souveraineté de l'hébergement (SecNumCloud) y répond."
    texte: restitution et suppression des données personnelles en fin de contrat (réversibilité PII).
    preuve: "Procédure de restitution/suppression PII ; preuve d'exécution en fin de contrat."
    href: "/docs/securiser/socle/referentiel/cloud/gouvernance-inventaire-cloud/#socle-cld-gvn-12"
  - id: SOCLE-CLD-GVN-2
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: GVN
    famille_nom: Gouvernance & inventaire cloud
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
    standards:
      - SecNumCloud 5.1.b
      - ANSSI [HYGIENE]
    menaces: []
    texte: "socle d'hygiène informatique ANSSI (niveau renforcé) appliqué à l'infrastructure d'exécution."
    preuve: "Configuration de l'infra conforme au guide d'hygiène ANSSI (niveau renforcé)."
    href: "/docs/securiser/socle/referentiel/cloud/gouvernance-inventaire-cloud/#socle-cld-gvn-2"
  - id: SOCLE-CLD-GVN-3
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: GVN
    famille_nom: Gouvernance & inventaire cloud
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils:
      - Pépin
    standards:
      - SecNumCloud 19.2.b
      - SecNumCloud 19.2.c
      - SecNumCloud 19.2.d
    menaces:
      - "L'attaquant opère dans des régions cloud non utilisées ni surveillées par l'organisation pour échapper à la détection. Les angles morts géographiques deviennent une base arrière (ATT&CK T1535)."
      - "Une autorité étrangère contraint légalement un fournisseur cloud (CLOUD Act, FISA) à divulguer des données hébergées, hors du cadre juridique national. Le risque n'est pas technique mais juridique : la souveraineté de l'hébergement (SecNumCloud) y répond."
    texte: "localisation du stockage, du traitement et de l'administration des données dans l'Union européenne."
    preuve: "Régions et plan de contrôle localisés UE ; administration/supervision opérées depuis l'UE."
    href: "/docs/securiser/socle/referentiel/cloud/gouvernance-inventaire-cloud/#socle-cld-gvn-3"
  - id: SOCLE-CLD-GVN-4
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: GVN
    famille_nom: Gouvernance & inventaire cloud
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils:
      - Pépin
    standards:
      - SecNumCloud 19.6.a
      - SecNumCloud 19.6.b
    menaces:
      - "Une autorité étrangère contraint légalement un fournisseur cloud (CLOUD Act, FISA) à divulguer des données hébergées, hors du cadre juridique national. Le risque n'est pas technique mais juridique : la souveraineté de l'hébergement (SecNumCloud) y répond."
    texte: "fournisseur établi dans l'UE et soustrait à un contrôle capitalistique extra-UE déterminant ; exposition aux lois extraterritoriales évaluée."
    preuve: "Établissement UE ; structure capitalistique sous les plafonds extra-UE ; analyse d'extraterritorialité."
    href: "/docs/securiser/socle/referentiel/cloud/gouvernance-inventaire-cloud/#socle-cld-gvn-4"
  - id: SOCLE-CLD-GVN-5
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: GVN
    famille_nom: Gouvernance & inventaire cloud
    niveau: R3
    devoir: DEVRAIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils:
      - Pépin
    standards:
      - SecNumCloud 18.2.1.a
    menaces: []
    texte: "programme d'audit de l'infrastructure (configuration + test d'intrusion des interfaces d'administration exposées) ; audit PASSI annuel en contexte qualifié."
    preuve: "Programme d'audit pluriannuel ; rapport d'audit PASSI annuel."
    href: "/docs/securiser/socle/referentiel/cloud/gouvernance-inventaire-cloud/#socle-cld-gvn-5"
  - id: SOCLE-CLD-GVN-6
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: GVN
    famille_nom: Gouvernance & inventaire cloud
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils:
      - sante
    outils:
      - Pépin
    standards:
      - ISO/IEC 27018
      - SecNumCloud 19.5.a
      - SecNumCloud 15.1.b
    menaces:
      - "Une autorité étrangère contraint légalement un fournisseur cloud (CLOUD Act, FISA) à divulguer des données hébergées, hors du cadre juridique national. Le risque n'est pas technique mais juridique : la souveraineté de l'hébergement (SecNumCloud) y répond."
    texte: transparence sur la localisation des données personnelles et la liste des sous-traitants.
    preuve: Documentation de localisation des PII et des sous-traitants ; procédure de restitution/suppression.
    href: "/docs/securiser/socle/referentiel/cloud/gouvernance-inventaire-cloud/#socle-cld-gvn-6"
  - id: SOCLE-CLD-GVN-7
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: GVN
    famille_nom: Gouvernance & inventaire cloud
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
    standards:
      - ISO/IEC 27018
      - SecNumCloud 16.2.c
    menaces:
      - "Une autorité étrangère contraint légalement un fournisseur cloud (CLOUD Act, FISA) à divulguer des données hébergées, hors du cadre juridique national. Le risque n'est pas technique mais juridique : la souveraineté de l'hébergement (SecNumCloud) y répond."
    texte: "notification au client en cas d'accès ou de divulgation des données personnelles ; pas d'usage des PII à des fins de marketing sans consentement."
    preuve: "Procédure de notification d'accès/divulgation des PII ; absence d'usage secondaire non consenti."
    href: "/docs/securiser/socle/referentiel/cloud/gouvernance-inventaire-cloud/#socle-cld-gvn-7"
  - id: SOCLE-CLD-GVN-8
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: GVN
    famille_nom: Gouvernance & inventaire cloud
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
    standards:
      - CSA CCM IVS-06
    menaces:
      - "L'attaquant utilise les ressources de calcul du tenant pour du minage de cryptomonnaie, générant un coût et signalant souvent une compromission plus large. L'abus financier est parfois le seul symptôme visible (ATT&CK T1496)."
      - "L'attaquant opère dans des régions cloud non utilisées ni surveillées par l'organisation pour échapper à la détection. Les angles morts géographiques deviennent une base arrière (ATT&CK T1535)."
    texte: "régions cloud non utilisées désactivées ou restreintes (ex. SCP region-deny) pour réduire la surface d'attaque et la collecte furtive."
    preuve: Restriction effective des régions non utilisées (réf. ATT&CK T1535).
    href: "/docs/securiser/socle/referentiel/cloud/gouvernance-inventaire-cloud/#socle-cld-gvn-8"
  - id: SOCLE-CLD-GVN-9
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: GVN
    famille_nom: Gouvernance & inventaire cloud
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
    standards:
      - SecNumCloud 8.1.a
      - "CSA Top Threats 2024 #9"
    menaces:
      - "L'attaquant opère dans des régions cloud non utilisées ni surveillées par l'organisation pour échapper à la détection. Les angles morts géographiques deviennent une base arrière (ATT&CK T1535)."
    texte: "couverture complète de la découverte cloud (tous comptes, régions et ressources) rapprochée de l'inventaire pour détecter les actifs non gérés (shadow IT)."
    preuve: Découverte exhaustive (comptes/régions) ; écarts inventaire/découverte traités (shadow IT).
    href: "/docs/securiser/socle/referentiel/cloud/gouvernance-inventaire-cloud/#socle-cld-gvn-9"
  - id: SOCLE-CLD-IAM-1
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: IAM
    famille_nom: IAM & accès cloud
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
      - ScoutSuite
    standards:
      - SecNumCloud 9.3.a
      - SecNumCloud 9.3.f
      - ANSSI-BP-028 R10
      - ANSSI-BP-028 R13
      - CSA CCM IAM-05
      - CIS Controls v8 6.7
      - CIS Controls v8 6.8
    menaces:
      - "Une combinaison de permissions IAM individuellement anodines forme un chemin d'élévation ou d'accès non prévu (combinaison toxique). Le risque émerge de l'assemblage des droits, pas d'une permission isolée (ATT&CK T1078.004)."
      - "L'attaquant modifie la configuration du compute (images, instances, groupes) pour persister ou affaiblir la posture. L'infrastructure mutable devient un point d'ancrage (ATT&CK T1578)."
    texte: "interdire les identités et clés à privilèges excessifs : politiques sans action/ressource joker (« * », NotAction/NotResource), aucune clé d'API rattachée au compte root."
    preuve: Revue des politiques IAM (absence de joker/anti-pattern) ; absence de clé rattachée au root.
    href: "/docs/securiser/socle/referentiel/cloud/iam-acces-cloud/#socle-cld-iam-1"
  - id: SOCLE-CLD-IAM-10
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: IAM
    famille_nom: IAM & accès cloud
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
      - ScoutSuite
    standards:
      - CSA CCM IAM-13
      - SecNumCloud 9.5.d
      - ISO 27001 (A.5.16)
    menaces:
      - "L'attaquant crée des identifiants, rôles ou comptes cloud supplémentaires pour conserver un accès durable, même après remédiation de l'intrusion initiale (ATT&CK T1098). La persistance s'ancre dans l'IAM du tenant."
    texte: "identités uniques et nominatives : aucun compte partagé ; toute action rattachable à un individu."
    preuve: Comptes nominatifs ; absence de comptes génériques partagés ; traçabilité par identité.
    href: "/docs/securiser/socle/referentiel/cloud/iam-acces-cloud/#socle-cld-iam-10"
  - id: SOCLE-CLD-IAM-11
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: IAM
    famille_nom: IAM & accès cloud
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
      - ScoutSuite
    standards:
      - CSA CCM IAM-02
      - CSA CCM IAM-15
      - SecNumCloud 9.5.a
    menaces:
      - "Le MFA est contourné ou désactivé (enregistrement d'un facteur attaquant, exceptions) pour pérenniser un accès aux comptes. L'authentification forte annulée rouvre les comptes (ATT&CK T1556.006)."
    texte: "politique de mots de passe robuste (longueur, complexité, anti-rejeu) quand l'authentification par mot de passe est utilisée."
    preuve: Politique de mots de passe robuste appliquée (conforme [NT_MDP]).
    href: "/docs/securiser/socle/referentiel/cloud/iam-acces-cloud/#socle-cld-iam-11"
  - id: SOCLE-CLD-IAM-12
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: IAM
    famille_nom: IAM & accès cloud
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
      - ScoutSuite
    standards:
      - CSA CCM IAM-05
      - CSA CCM IAM-16
      - CIS Controls v8 6.8
    menaces:
      - "Une combinaison de permissions IAM individuellement anodines forme un chemin d'élévation ou d'accès non prévu (combinaison toxique). Le risque émerge de l'assemblage des droits, pas d'une permission isolée (ATT&CK T1078.004)."
      - "L'attaquant crée des identifiants, rôles ou comptes cloud supplémentaires pour conserver un accès durable, même après remédiation de l'intrusion initiale (ATT&CK T1098). La persistance s'ancre dans l'IAM du tenant."
      - "Un mécanisme d'élévation juste-à-temps (JIT) est détourné pour obtenir des privilèges au-delà du besoin, le temps d'agir. La commodité du JIT devient un chemin d'élévation (ATT&CK T1548.005)."
    texte: aucune politique IAM ne permet une élévation de privilèges (PassRole non scopé, droits de création/modification de politiques ou de rôles, etc.) ; chemins de privesc identifiés et fermés.
    preuve: "Analyse des politiques IAM : absence de combinaison permettant une escalade (réf. labs type iam-vulnerable)."
    href: "/docs/securiser/socle/referentiel/cloud/iam-acces-cloud/#socle-cld-iam-12"
  - id: SOCLE-CLD-IAM-13
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: IAM
    famille_nom: IAM & accès cloud
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
      - ScoutSuite
    standards:
      - CSA CCM IAM-07
      - CSA CCM IAM-08
    menaces:
      - "L'attaquant crée des identifiants, rôles ou comptes cloud supplémentaires pour conserver un accès durable, même après remédiation de l'intrusion initiale (ATT&CK T1098). La persistance s'ancre dans l'IAM du tenant."
    texte: "désactivation des identifiants inutilisés : clés d'accès inactives et comptes dormants supprimés ou désactivés au-delà d'un seuil défini."
    preuve: Revue des clés/identités inactives ; désactivation au-delà du seuil documenté.
    href: "/docs/securiser/socle/referentiel/cloud/iam-acces-cloud/#socle-cld-iam-13"
  - id: SOCLE-CLD-IAM-14
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: IAM
    famille_nom: IAM & accès cloud
    niveau: R3
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
      - ScoutSuite
    standards:
      - CSA CCM IAM-05
      - CSA CCM IAM-09
    menaces:
      - "Une combinaison de permissions IAM individuellement anodines forme un chemin d'élévation ou d'accès non prévu (combinaison toxique). Le risque émerge de l'assemblage des droits, pas d'une permission isolée (ATT&CK T1078.004)."
    texte: "cartographie et réduction des chemins d'attaque IAM (combinaisons toxiques identité → ressource), au-delà du contrôle unitaire des politiques."
    preuve: "Analyse des chemins d'attaque/élévation (graphe IAM) ; combinaisons toxiques traitées."
    href: "/docs/securiser/socle/referentiel/cloud/iam-acces-cloud/#socle-cld-iam-14"
  - id: SOCLE-CLD-IAM-15
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: IAM
    famille_nom: IAM & accès cloud
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
      - ScoutSuite
    standards:
      - CSA CCM IAM-10
      - SecNumCloud 9.6.a
    menaces:
      - "Un mécanisme d'élévation juste-à-temps (JIT) est détourné pour obtenir des privilèges au-delà du besoin, le temps d'agir. La commodité du JIT devient un chemin d'élévation (ATT&CK T1548.005)."
    texte: "accès privilégié juste-à-temps (JIT) : élévation temporaire, approuvée et tracée ; aucun privilège d'administration permanent."
    preuve: "Mécanisme JIT en place ; absence de rôles d'admin permanents ; élévations tracées."
    href: "/docs/securiser/socle/referentiel/cloud/iam-acces-cloud/#socle-cld-iam-15"
  - id: SOCLE-CLD-IAM-16
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: IAM
    famille_nom: IAM & accès cloud
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
      - ScoutSuite
    standards:
      - CSA CCM IAM-05
      - CSA CCM IAM-08
    menaces:
      - "Une combinaison de permissions IAM individuellement anodines forme un chemin d'élévation ou d'accès non prévu (combinaison toxique). Le risque émerge de l'assemblage des droits, pas d'une permission isolée (ATT&CK T1078.004)."
    texte: "réduction des permissions effectives jamais utilisées (right-sizing des entitlements) sur la base de l'usage observé."
    preuve: Analyse des permissions effectives vs usage ; droits inutilisés retirés.
    href: "/docs/securiser/socle/referentiel/cloud/iam-acces-cloud/#socle-cld-iam-16"
  - id: SOCLE-CLD-IAM-2
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: IAM
    famille_nom: IAM & accès cloud
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
      - ScoutSuite
    standards:
      - SecNumCloud 9.5.a
      - SecNumCloud 9.3.g
      - ANSSI-BP-028 R11
      - CIS Controls v8 5.3
    menaces:
      - "Une combinaison de permissions IAM individuellement anodines forme un chemin d'élévation ou d'accès non prévu (combinaison toxique). Le risque émerge de l'assemblage des droits, pas d'une permission isolée (ATT&CK T1078.004)."
    texte: "clés d'accès longue durée assorties d'une expiration et d'une rotation ; préférer une identité courte (OIDC) aux secrets statiques."
    preuve: "Politique d'expiration/rotation des clés ; usage d'identités OIDC courtes."
    href: "/docs/securiser/socle/referentiel/cloud/iam-acces-cloud/#socle-cld-iam-2"
  - id: SOCLE-CLD-IAM-3
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: IAM
    famille_nom: IAM & accès cloud
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
      - ScoutSuite
    standards:
      - SecNumCloud 9.5.a
      - SecNumCloud 9.6.f
      - CSA CCM IAM-14
      - CIS Controls v8 6.5
    menaces:
      - "Le MFA est contourné ou désactivé (enregistrement d'un facteur attaquant, exceptions) pour pérenniser un accès aux comptes. L'authentification forte annulée rouvre les comptes (ATT&CK T1556.006)."
    texte: "authentification multifacteur (MFA) imposée sur tous les accès d'administration et la console cloud."
    preuve: "Configuration MFA sur les comptes d'administration et la console ; double facteur pour l'admin."
    href: "/docs/securiser/socle/referentiel/cloud/iam-acces-cloud/#socle-cld-iam-3"
  - id: SOCLE-CLD-IAM-4
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: IAM
    famille_nom: IAM & accès cloud
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
      - ScoutSuite
    standards:
      - SecNumCloud 9.6.d
      - SecNumCloud 13.2.e
      - ANSSI-BP-028 R67
    menaces:
      - "Une combinaison de permissions IAM individuellement anodines forme un chemin d'élévation ou d'accès non prévu (combinaison toxique). Le risque émerge de l'assemblage des droits, pas d'une permission isolée (ATT&CK T1078.004)."
      - "L'attaquant crée des identifiants, rôles ou comptes cloud supplémentaires pour conserver un accès durable, même après remédiation de l'intrusion initiale (ATT&CK T1098). La persistance s'ancre dans l'IAM du tenant."
    texte: "accès à l'API du compte restreint par liste d'adresses IP : au moins une règle définie, aucune ouverte à 0.0.0.0/0 - sans quoi une clé fuitée est exploitable de partout."
    preuve: "Liste d'accès API restreinte à des IP légitimes ; pas de règle ouverte à Internet."
    href: "/docs/securiser/socle/referentiel/cloud/iam-acces-cloud/#socle-cld-iam-4"
  - id: SOCLE-CLD-IAM-5
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: IAM
    famille_nom: IAM & accès cloud
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
      - ScoutSuite
    standards:
      - SecNumCloud 9.5.b
    menaces:
      - "Le MFA est contourné ou désactivé (enregistrement d'un facteur attaquant, exceptions) pour pérenniser un accès aux comptes. L'authentification forte annulée rouvre les comptes (ATT&CK T1556.006)."
    texte: "blocage du compte après un nombre limité de tentatives d'authentification infructueuses."
    preuve: "Politique de verrouillage de compte configurée sur l'IAM cloud."
    href: "/docs/securiser/socle/referentiel/cloud/iam-acces-cloud/#socle-cld-iam-5"
  - id: SOCLE-CLD-IAM-6
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: IAM
    famille_nom: IAM & accès cloud
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
      - ScoutSuite
    standards:
      - SecNumCloud 9.6.d
      - SecNumCloud 5.3.c
    menaces:
      - "L'attaquant utilise les ressources de calcul du tenant pour du minage de cryptomonnaie, générant un coût et signalant souvent une compromission plus large. L'abus financier est parfois le seul symptôme visible (ATT&CK T1496)."
      - "L'attaquant utilise les API d'administration (kubectl exec, équivalents) pour exécuter des commandes dans des conteneurs en place. Les droits d'exec mal restreints donnent un accès direct aux charges (ATT&CK T1609)."
    texte: "interfaces et API d'administration non exposées sur un réseau public ; accès via bastion ou plage d'administration restreinte."
    preuve: "Interfaces d'admin non joignables depuis Internet ; accès restreint (bastion / CIDR d'admin)."
    href: "/docs/securiser/socle/referentiel/cloud/iam-acces-cloud/#socle-cld-iam-6"
  - id: SOCLE-CLD-IAM-7
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: IAM
    famille_nom: IAM & accès cloud
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
      - ScoutSuite
    standards:
      - SecNumCloud 9.6.e
      - SecNumCloud 10.2.c
    menaces:
      - "Un jeton d'accès de longue durée est volé et réutilisé tant qu'il n'est pas révoqué, sans nouvelle authentification. La durée de vie sans rotation maximise la valeur du vol."
    texte: "flux d'administration authentifiés et chiffrés de bout en bout."
    preuve: "Flux d'administration via canal authentifié et chiffré (TLS/SSH)."
    href: "/docs/securiser/socle/referentiel/cloud/iam-acces-cloud/#socle-cld-iam-7"
  - id: SOCLE-CLD-IAM-8
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: IAM
    famille_nom: IAM & accès cloud
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
      - ScoutSuite
    standards:
      - SecNumCloud 9.4.a
      - SecNumCloud 9.3.g
      - CSA CCM IAM-07
      - CSA CCM IAM-08
    menaces:
      - "L'attaquant crée des identifiants, rôles ou comptes cloud supplémentaires pour conserver un accès durable, même après remédiation de l'intrusion initiale (ATT&CK T1098). La persistance s'ancre dans l'IAM du tenant."
    texte: "revue périodique (au moins annuelle) des droits d'accès cloud ; retrait à la sortie ; capacité de révocation/suspension."
    preuve: Revue documentée des droits ; procédure de retrait/révocation testée.
    href: "/docs/securiser/socle/referentiel/cloud/iam-acces-cloud/#socle-cld-iam-8"
  - id: SOCLE-CLD-IAM-9
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: IAM
    famille_nom: IAM & accès cloud
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
      - ScoutSuite
    standards:
      - SecNumCloud 9.3.f
      - SecNumCloud 9.6.a
      - CSA CCM IAM-04
      - CSA CCM IAM-09
    menaces:
      - "Une combinaison de permissions IAM individuellement anodines forme un chemin d'élévation ou d'accès non prévu (combinaison toxique). Le risque émerge de l'assemblage des droits, pas d'une permission isolée (ATT&CK T1078.004)."
    texte: "séparation des tâches : aucun cumul de droits incompatibles ; comptes d'administration distincts des comptes d'usage courant."
    preuve: "Droits incompatibles définis ; comptes d'admin séparés des comptes utilisateurs."
    href: "/docs/securiser/socle/referentiel/cloud/iam-acces-cloud/#socle-cld-iam-9"
  - id: SOCLE-CLD-K8S-1
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: K8S
    famille_nom: Orchestration Kubernetes
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - kube-bench
      - Kubescape
    standards:
      - SecNumCloud 9.6.d
      - ANSSI-BP-028 R12
      - CIS Controls v8 13.4
    menaces:
      - Un conteneur malveillant est déployé dans le cluster ou le service cloud pour exécuter du code dans le périmètre de confiance. Les droits de déploiement détournés introduisent la charge (ATT&CK T1610).
      - "L'attaquant utilise les API d'administration (kubectl exec, équivalents) pour exécuter des commandes dans des conteneurs en place. Les droits d'exec mal restreints donnent un accès direct aux charges (ATT&CK T1609)."
    texte: "serveur d'API du cluster Kubernetes managé non exposé à Internet (liste d'autorisation restreinte)."
    preuve: "Liste d'autorisation de l'API server restreinte aux CIDR d'administration."
    href: "/docs/securiser/socle/referentiel/cloud/orchestration-kubernetes/#socle-cld-k8s-1"
  - id: SOCLE-CLD-K8S-10
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: K8S
    famille_nom: Orchestration Kubernetes
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - kube-bench
      - Kubescape
    standards:
      - CIS Kubernetes Benchmark 5.4.1
      - CIS Kubernetes Benchmark 5.4.2
      - OWASP Kubernetes K03
    menaces:
      - "Les secrets stockés dans un coffre cloud (Secrets Manager, Key Vault) sont lus grâce à des droits excessifs ou un rôle compromis. Le coffre concentre la valeur : un accès indu y donne les clés du royaume (ATT&CK T1555.006)."
      - "Depuis un cluster Kubernetes, l'attaquant pivote vers le plan cloud sous-jacent via l'IMDS ou des identités de nœud, étendant l'accès au tenant. La frontière cluster / cloud est un chemin d'escalade (OWASP K08, ATT&CK T1552.005)."
    texte: "secrets Kubernetes gérés via un coffre externe ; jamais en clair dans les manifests ou les variables d'environnement ; montés en fichiers et tournés."
    preuve: Secrets via coffre externe (CSI/External Secrets) ; absence de secret en clair dans les manifests/env.
    href: "/docs/securiser/socle/referentiel/cloud/orchestration-kubernetes/#socle-cld-k8s-10"
  - id: SOCLE-CLD-K8S-11
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: K8S
    famille_nom: Orchestration Kubernetes
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - kube-bench
      - Kubescape
    standards:
      - CIS Kubernetes Benchmark 5.2.1
      - OWASP Kubernetes K04
    menaces:
      - Un conteneur malveillant est déployé dans le cluster ou le service cloud pour exécuter du code dans le périmètre de confiance. Les droits de déploiement détournés introduisent la charge (ATT&CK T1610).
    texte: "contrôleur de politiques d'admission au niveau cluster (OPA Gatekeeper / Kyverno) en mode bloquant, au-delà des Pod Security Standards."
    preuve: "Contrôleur de politiques d'admission déployé en mode enforce ; politiques versionnées."
    href: "/docs/securiser/socle/referentiel/cloud/orchestration-kubernetes/#socle-cld-k8s-11"
  - id: SOCLE-CLD-K8S-12
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: K8S
    famille_nom: Orchestration Kubernetes
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - kube-bench
      - Kubescape
    standards:
      - CSA CCM IAM-05
      - OWASP Kubernetes K08
    menaces:
      - "Depuis un cluster Kubernetes, l'attaquant pivote vers le plan cloud sous-jacent via l'IMDS ou des identités de nœud, étendant l'accès au tenant. La frontière cluster / cloud est un chemin d'escalade (OWASP K08, ATT&CK T1552.005)."
    texte: identités des pods (IRSA / Workload Identity) scopées au strict nécessaire ; aucun accès cloud large ni accès aux métadonnées (IMDS) du nœud depuis un pod.
    preuve: Rôles cloud liés aux pods au moindre privilège ; IMDS du nœud non joignable depuis les pods.
    href: "/docs/securiser/socle/referentiel/cloud/orchestration-kubernetes/#socle-cld-k8s-12"
  - id: SOCLE-CLD-K8S-2
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: K8S
    famille_nom: Orchestration Kubernetes
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - kube-bench
      - Kubescape
    standards:
      - SecNumCloud 17.2.a
      - CIS Controls v8 11
    menaces:
      - Une charge détruit données, dépôts ou systèmes (wiper, suppression) pour saboter ou couvrir ses traces. La résilience (sauvegardes éprouvées, immuabilité) conditionne la capacité de reprise.
    texte: "plan de contrôle du cluster Kubernetes managé en haute disponibilité (multi-AZ / multi-master) pour résister à la perte d'une zone."
    preuve: Plan de contrôle Kubernetes managé réparti sur plusieurs zones.
    href: "/docs/securiser/socle/referentiel/cloud/orchestration-kubernetes/#socle-cld-k8s-2"
  - id: SOCLE-CLD-K8S-3
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: K8S
    famille_nom: Orchestration Kubernetes
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - kube-bench
      - Kubescape
    standards:
      - SecNumCloud 12.11.a
      - ANSSI-BP-028 R12
      - CIS Controls v8 7.3
    menaces:
      - "Un conteneur exploite une mauvaise configuration ou une faille pour s'échapper vers le nœud hôte du cluster et atteindre d'autres charges. Le cloisonnement du cluster est rompu (ATT&CK T1611)."
    texte: "hygiène de cycle de vie du cluster Kubernetes managé : mises à jour/patches automatiques, version supportée, protection contre la suppression accidentelle."
    preuve: Auto-upgrade activé, version supportée, protection de suppression en place.
    href: "/docs/securiser/socle/referentiel/cloud/orchestration-kubernetes/#socle-cld-k8s-3"
  - id: SOCLE-CLD-K8S-4
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: K8S
    famille_nom: Orchestration Kubernetes
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - kube-bench
      - Kubescape
    standards:
      - CIS Kubernetes Benchmark 5.1.1
      - CIS Kubernetes Benchmark 5.1.3
      - CIS Kubernetes Benchmark 5.1.5
      - CIS Kubernetes Benchmark 5.1.6
    menaces:
      - Un conteneur malveillant est déployé dans le cluster ou le service cloud pour exécuter du code dans le périmètre de confiance. Les droits de déploiement détournés introduisent la charge (ATT&CK T1610).
      - "L'attaquant utilise les API d'administration (kubectl exec, équivalents) pour exécuter des commandes dans des conteneurs en place. Les droits d'exec mal restreints donnent un accès direct aux charges (ATT&CK T1609)."
    texte: "RBAC Kubernetes au moindre privilège : rôle cluster-admin réservé au strict nécessaire, pas de joker dans les Roles/ClusterRoles, service accounts par défaut non utilisés, jetons de SA montés uniquement si nécessaire."
    preuve: "Revue RBAC du cluster : cluster-admin restreint, absence de joker, SA par défaut inutilisés."
    href: "/docs/securiser/socle/referentiel/cloud/orchestration-kubernetes/#socle-cld-k8s-4"
  - id: SOCLE-CLD-K8S-5
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: K8S
    famille_nom: Orchestration Kubernetes
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - kube-bench
      - Kubescape
    standards:
      - CIS Kubernetes Benchmark 5.2.2
      - CIS Kubernetes Benchmark 5.2.6
      - CIS Kubernetes Benchmark 5.2.7
      - CIS Kubernetes Benchmark 5.2.9
      - CIS Kubernetes Benchmark 5.2.12
      - CIS Kubernetes Benchmark 4.2.14
    menaces:
      - Un conteneur malveillant est déployé dans le cluster ou le service cloud pour exécuter du code dans le périmètre de confiance. Les droits de déploiement détournés introduisent la charge (ATT&CK T1610).
      - "Un conteneur exploite une mauvaise configuration ou une faille pour s'échapper vers le nœud hôte du cluster et atteindre d'autres charges. Le cloisonnement du cluster est rompu (ATT&CK T1611)."
    texte: "Pod Security Standards appliqués : pas de conteneur privilégié, pas d'élévation de privilèges, exécution non-root, pas de capacités ajoutées ni de volume HostPath ; profil seccomp RuntimeDefault et Security Context."
    preuve: "Contrôleur d'admission (Pod Security / politiques) imposant non-root, non-privilégié, seccomp RuntimeDefault."
    href: "/docs/securiser/socle/referentiel/cloud/orchestration-kubernetes/#socle-cld-k8s-5"
  - id: SOCLE-CLD-K8S-6
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: K8S
    famille_nom: Orchestration Kubernetes
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - kube-bench
      - Kubescape
    standards:
      - CIS Kubernetes Benchmark 5.3.1
      - CIS Kubernetes Benchmark 5.3.2
      - CSA CCM IVS-06
    menaces:
      - "Depuis un cluster Kubernetes, l'attaquant pivote vers le plan cloud sous-jacent via l'IMDS ou des identités de nœud, étendant l'accès au tenant. La frontière cluster / cloud est un chemin d'escalade (OWASP K08, ATT&CK T1552.005)."
    texte: politiques réseau (NetworkPolicy) définies sur toutes les namespaces (refus par défaut) ; CNI compatible.
    preuve: NetworkPolicies default-deny présentes sur chaque namespace.
    href: "/docs/securiser/socle/referentiel/cloud/orchestration-kubernetes/#socle-cld-k8s-6"
  - id: SOCLE-CLD-K8S-7
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: K8S
    famille_nom: Orchestration Kubernetes
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - kube-bench
      - Kubescape
    standards:
      - CIS Kubernetes Benchmark 1.2.1
      - CIS Kubernetes Benchmark 1.2.8
      - CIS Kubernetes Benchmark 1.2.16
      - CIS Kubernetes Benchmark 3.2.1
    menaces:
      - "L'attaquant utilise les API d'administration (kubectl exec, équivalents) pour exécuter des commandes dans des conteneurs en place. Les droits d'exec mal restreints donnent un accès direct aux charges (ATT&CK T1609)."
    texte: "durcissement de l'API server Kubernetes : authentification anonyme désactivée, autorisation RBAC, journalisation d'audit activée."
    preuve: "API server : anonymous-auth=false, authorization-mode RBAC, audit-log actif."
    href: "/docs/securiser/socle/referentiel/cloud/orchestration-kubernetes/#socle-cld-k8s-7"
  - id: SOCLE-CLD-K8S-8
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: K8S
    famille_nom: Orchestration Kubernetes
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - kube-bench
      - Kubescape
    standards:
      - CIS Kubernetes Benchmark 1.2.27
      - CIS Kubernetes Benchmark 1.2.28
      - SecNumCloud 10.1.a
    menaces:
      - "Les secrets stockés dans un coffre cloud (Secrets Manager, Key Vault) sont lus grâce à des droits excessifs ou un rôle compromis. Le coffre concentre la valeur : un accès indu y donne les clés du royaume (ATT&CK T1555.006)."
    texte: chiffrement au repos des secrets dans etcd via un fournisseur de chiffrement (KMS).
    preuve: encryption-provider-config (KMS) activé pour les secrets etcd.
    href: "/docs/securiser/socle/referentiel/cloud/orchestration-kubernetes/#socle-cld-k8s-8"
  - id: SOCLE-CLD-K8S-9
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: K8S
    famille_nom: Orchestration Kubernetes
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Kyverno
      - cosign
    standards:
      - CIS Kubernetes Benchmark 5.5.1
      - CSA CCM IVS-04
    menaces:
      - Un conteneur malveillant est déployé dans le cluster ou le service cloud pour exécuter du code dans le périmètre de confiance. Les droits de déploiement détournés introduisent la charge (ATT&CK T1610).
    texte: "contrôle d'admission imposant des images signées et issues d'un registre autorisé ; déploiement d'images non conformes refusé."
    preuve: "Contrôleur d'admission (provenance/signature, allowlist de registres) actif et bloquant."
    href: "/docs/securiser/socle/referentiel/cloud/orchestration-kubernetes/#socle-cld-k8s-9"
  - id: SOCLE-CLD-LOG-1
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: LOG
    famille_nom: Journalisation & audit
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 12.6.a
      - SecNumCloud 12.6.b
      - CSA CCM LOG-01
      - CSA CCM LOG-07
      - CIS AWS Foundations 3.1
    menaces:
      - "L'attaquant crée des identifiants, rôles ou comptes cloud supplémentaires pour conserver un accès durable, même après remédiation de l'intrusion initiale (ATT&CK T1098). La persistance s'ancre dans l'IAM du tenant."
      - "L'attaquant désactive ou altère la journalisation (CloudTrail, Audit Logs) pour effacer ses traces et aveugler la détection. La perte de journaux compromet l'investigation et la preuve (ATT&CK T1562)."
      - "Le MFA est contourné ou désactivé (enregistrement d'un facteur attaquant, exceptions) pour pérenniser un accès aux comptes. L'authentification forte annulée rouvre les comptes (ATT&CK T1556.006)."
      - "L'attaquant utilise les ressources de calcul du tenant pour du minage de cryptomonnaie, générant un coût et signalant souvent une compromission plus large. L'abus financier est parfois le seul symptôme visible (ATT&CK T1496)."
      - "L'attaquant modifie la configuration du compute (images, instances, groupes) pour persister ou affaiblir la posture. L'infrastructure mutable devient un point d'ancrage (ATT&CK T1578)."
    texte: "politique de journalisation définie : sources, événements collectés (activité des utilisateurs, modifications de droits, anti-codes malveillants, exceptions, échecs), protection des journaux."
    preuve: Politique de journalisation documentée ; événements de sécurité effectivement collectés.
    href: "/docs/securiser/socle/referentiel/cloud/journalisation-audit/#socle-cld-log-1"
  - id: SOCLE-CLD-LOG-2
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: LOG
    famille_nom: Journalisation & audit
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 12.6.c
      - CSA CCM LOG-02
    menaces:
      - "L'attaquant désactive ou altère la journalisation (CloudTrail, Audit Logs) pour effacer ses traces et aveugler la détection. La perte de journaux compromet l'investigation et la preuve (ATT&CK T1562)."
    texte: conservation des journaux pendant au moins six mois, sous réserve des obligations légales.
    preuve: Rétention des journaux ≥ 6 mois configurée et vérifiée.
    href: "/docs/securiser/socle/referentiel/cloud/journalisation-audit/#socle-cld-log-2"
  - id: SOCLE-CLD-LOG-3
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: LOG
    famille_nom: Journalisation & audit
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 12.7.a
      - SecNumCloud 12.7.c
      - CSA CCM LOG-04
      - CSA CCM LOG-09
      - CIS AWS Foundations 3.2
    menaces:
      - "L'attaquant désactive ou altère la journalisation (CloudTrail, Audit Logs) pour effacer ses traces et aveugler la détection. La perte de journaux compromet l'investigation et la preuve (ATT&CK T1562)."
    texte: journaux transférés vers un serveur central dédié, sur une machine distincte de celle qui les génère ; intégrité et confidentialité protégées.
    preuve: Journalisation centralisée sur machine dédiée ; protection en intégrité/confidentialité.
    href: "/docs/securiser/socle/referentiel/cloud/journalisation-audit/#socle-cld-log-3"
  - id: SOCLE-CLD-LOG-4
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: LOG
    famille_nom: Journalisation & audit
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 12.8.a
      - SecNumCloud 12.8.b
      - CSA CCM LOG-06
    menaces:
      - "L'attaquant désactive ou altère la journalisation (CloudTrail, Audit Logs) pour effacer ses traces et aveugler la détection. La perte de journaux compromet l'investigation et la preuve (ATT&CK T1562)."
    texte: synchronisation des horloges sur une source de temps fiable ; horodatage de chaque événement journalisé.
    preuve: Source de temps synchronisée ; événements horodatés.
    href: "/docs/securiser/socle/referentiel/cloud/journalisation-audit/#socle-cld-log-4"
  - id: SOCLE-CLD-LOG-5
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: LOG
    famille_nom: Journalisation & audit
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 12.9.a
      - SecNumCloud 12.9.c
      - SecNumCloud 13.3.a
      - CSA CCM LOG-05
      - CSA CCM LOG-13
      - ISO 27017 (CLD.12.4.5)
    menaces:
      - "L'attaquant désactive ou altère la journalisation (CloudTrail, Audit Logs) pour effacer ses traces et aveugler la détection. La perte de journaux compromet l'investigation et la preuve (ATT&CK T1562)."
    texte: analyse et corrélation des événements pour détecter les incidents ; sondes de détection sur les interconnexions tiers/publiques ; alarmes traitées au moins quotidiennement.
    preuve: "Infrastructure d'analyse/corrélation ; sondes sur interconnexions ; traitement quotidien des alarmes."
    href: "/docs/securiser/socle/referentiel/cloud/journalisation-audit/#socle-cld-log-5"
  - id: SOCLE-CLD-LOG-6
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: LOG
    famille_nom: Journalisation & audit
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - CSA CCM LOG-03
      - SecNumCloud 13.3.a
    menaces:
      - "Les données sont copiées vers un compte ou abonnement cloud contrôlé par l'attaquant, contournant les contrôles de sortie classiques. L'exfiltration reste interne au cloud, difficile à repérer (ATT&CK T1537)."
    texte: "journaux de flux réseau (flux VPC/sous-réseaux) activés pour la détection et l'investigation."
    preuve: Flow logs réseau activés et collectés (détection/forensique).
    href: "/docs/securiser/socle/referentiel/cloud/journalisation-audit/#socle-cld-log-6"
  - id: SOCLE-CLD-LOG-7
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: LOG
    famille_nom: Journalisation & audit
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - CIS AWS Foundations 3.2
      - CSA CCM LOG-02
    menaces:
      - "L'attaquant crée des identifiants, rôles ou comptes cloud supplémentaires pour conserver un accès durable, même après remédiation de l'intrusion initiale (ATT&CK T1098). La persistance s'ancre dans l'IAM du tenant."
      - "L'attaquant désactive ou altère la journalisation (CloudTrail, Audit Logs) pour effacer ses traces et aveugler la détection. La perte de journaux compromet l'investigation et la preuve (ATT&CK T1562)."
    texte: "journaux protégés contre la désactivation et l'altération : validation d'intégrité, immutabilité, alerte sur arrêt ou modification de la journalisation."
    preuve: "Validation d'intégrité/immutabilité des journaux ; alerte sur désactivation (réf. ATT&CK T1685.002)."
    href: "/docs/securiser/socle/referentiel/cloud/journalisation-audit/#socle-cld-log-7"
  - id: SOCLE-CLD-NET-1
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: NET
    famille_nom: Exposition & filtrage réseau
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 13.2.e
      - ANSSI-BP-028 R65
      - ANSSI-BP-028 R67
      - CIS Controls v8 4.4
    menaces:
      - "L'attaquant utilise les ressources de calcul du tenant pour du minage de cryptomonnaie, générant un coût et signalant souvent une compromission plus large. L'abus financier est parfois le seul symptôme visible (ATT&CK T1496)."
    texte: "ports d'administration (SSH, RDP) jamais ouverts à 0.0.0.0/0 : source restreinte à un CIDR d'administration ou à un bastion."
    preuve: "Règles de filtrage : ports d'administration restreints à des sources légitimes."
    href: "/docs/securiser/socle/referentiel/cloud/exposition-filtrage-reseau/#socle-cld-net-1"
  - id: SOCLE-CLD-NET-2
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: NET
    famille_nom: Exposition & filtrage réseau
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 13.2.e
      - ANSSI-BP-028 R65
      - ANSSI-BP-028 R67
      - CIS Controls v8 4.4
    menaces:
      - "L'attaquant utilise les ressources de calcul du tenant pour du minage de cryptomonnaie, générant un coût et signalant souvent une compromission plus large. L'abus financier est parfois le seul symptôme visible (ATT&CK T1496)."
    texte: "aucune règle n'autorise l'ensemble des ports et protocoles depuis Internet (any/any)."
    preuve: Absence de règle any/any entrante depuis 0.0.0.0/0.
    href: "/docs/securiser/socle/referentiel/cloud/exposition-filtrage-reseau/#socle-cld-net-2"
  - id: SOCLE-CLD-NET-3
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: NET
    famille_nom: Exposition & filtrage réseau
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 13.1.a
      - ANSSI-BP-028 R68
      - ISO 27017 (CLD.9.5.2)
      - ISO 27017 (CLD.13.1.4)
    menaces:
      - "L'attaquant utilise les ressources de calcul du tenant pour du minage de cryptomonnaie, générant un coût et signalant souvent une compromission plus large. L'abus financier est parfois le seul symptôme visible (ATT&CK T1496)."
    texte: "machine portant une IP publique et un filtrage ouvert : exposition directe à Internet proscrite."
    preuve: Aucune instance avec IP publique et groupe de sécurité ouvert à 0.0.0.0/0.
    href: "/docs/securiser/socle/referentiel/cloud/exposition-filtrage-reseau/#socle-cld-net-3"
  - id: SOCLE-CLD-NET-4
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: NET
    famille_nom: Exposition & filtrage réseau
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 13.1.a
      - CIS Controls v8 4.4
    menaces:
      - "Les données sont copiées vers un compte ou abonnement cloud contrôlé par l'attaquant, contournant les contrôles de sortie classiques. L'exfiltration reste interne au cloud, difficile à repérer (ATT&CK T1537)."
      - "L'attaquant utilise les ressources de calcul du tenant pour du minage de cryptomonnaie, générant un coût et signalant souvent une compromission plus large. L'abus financier est parfois le seul symptôme visible (ATT&CK T1496)."
    texte: "filtrage sortant maîtrisé : pas de règle de sortie tout-trafic vers 0.0.0.0/0 sans justification (limiter l'exfiltration et les rappels C2)."
    preuve: Règles de sortie restreintes ; absence de tout-trafic egress non justifié vers 0.0.0.0/0.
    href: "/docs/securiser/socle/referentiel/cloud/exposition-filtrage-reseau/#socle-cld-net-4"
  - id: SOCLE-CLD-NET-5
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: NET
    famille_nom: Exposition & filtrage réseau
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 13.1.a
      - SecNumCloud 13.1.b
      - CSA CCM IVS-08
      - ISO 27017 (CLD.13.1.4)
    menaces:
      - "L'attaquant utilise les ressources de calcul du tenant pour du minage de cryptomonnaie, générant un coût et signalant souvent une compromission plus large. L'abus financier est parfois le seul symptôme visible (ATT&CK T1496)."
    texte: cartographie réseau tenue à jour (schéma niveau 3, interconnexions tiers/publiques) et matrice des flux autorisés (services, protocoles, ports + justification) ; revue au moins annuelle.
    preuve: Cartographie réseau et matrice de flux documentées ; revue annuelle datée.
    href: "/docs/securiser/socle/referentiel/cloud/exposition-filtrage-reseau/#socle-cld-net-5"
  - id: SOCLE-CLD-NET-6
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: NET
    famille_nom: Exposition & filtrage réseau
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 13.2.e
      - SecNumCloud 13.2.d
    menaces:
      - "L'attaquant utilise les ressources de calcul du tenant pour du minage de cryptomonnaie, générant un coût et signalant souvent une compromission plus large. L'abus financier est parfois le seul symptôme visible (ATT&CK T1496)."
    texte: "filtrage de toutes les interfaces d'administration et de supervision : seules les connexions légitimes de la matrice de flux sont admises (refus par défaut) ; pare-feu applicatif devant toute interface d'admin exposée."
    preuve: "Filtrage des interfaces d'admin conforme à la matrice ; pare-feu applicatif en place."
    href: "/docs/securiser/socle/referentiel/cloud/exposition-filtrage-reseau/#socle-cld-net-6"
  - id: SOCLE-CLD-NET-7
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: NET
    famille_nom: Exposition & filtrage réseau
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 13.2.a
      - SecNumCloud 13.2.b
      - SecNumCloud 13.2.c
      - ISO 27017 (CLD.9.5.1)
      - CSA CCM IVS-06
    menaces:
      - "Les données sont copiées vers un compte ou abonnement cloud contrôlé par l'attaquant, contournant les contrôles de sortie classiques. L'exfiltration reste interne au cloud, difficile à repérer (ATT&CK T1537)."
    texte: "cloisonnement des flux internes vis-à-vis des autres SI (séparation physique ou par chiffrement) ; flux d'administration en tunnel chiffré si non cloisonnés physiquement."
    preuve: "Flux internes cloisonnés ; flux d'admin en tunnel chiffré le cas échéant."
    href: "/docs/securiser/socle/referentiel/cloud/exposition-filtrage-reseau/#socle-cld-net-7"
  - id: SOCLE-CLD-NET-8
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: NET
    famille_nom: Exposition & filtrage réseau
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - CSA CCM IVS-09
      - CSA CCM IVS-03
    menaces:
      - "Les données sont copiées vers un compte ou abonnement cloud contrôlé par l'attaquant, contournant les contrôles de sortie classiques. L'exfiltration reste interne au cloud, difficile à repérer (ATT&CK T1537)."
    texte: "défense réseau en profondeur : détection et réponse aux attaques réseau (IDS/IPS, WAF) en complément du filtrage."
    preuve: Dispositifs de détection/réponse réseau (IDS/IPS, WAF) déployés et supervisés.
    href: "/docs/securiser/socle/referentiel/cloud/exposition-filtrage-reseau/#socle-cld-net-8"
  - id: SOCLE-CLD-NET-9
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: NET
    famille_nom: Exposition & filtrage réseau
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 9.6.d
      - "CSA Top Threats 2024 #3"
      - "CSA Top Threats 2024 #10"
    menaces:
      - "Les données sont copiées vers un compte ou abonnement cloud contrôlé par l'attaquant, contournant les contrôles de sortie classiques. L'exfiltration reste interne au cloud, difficile à repérer (ATT&CK T1537)."
    texte: "interfaces, API et ressources de service exposées inventoriées et authentifiées : aucun endpoint de service, URL de fonction, base de données ou partage inter-comptes accessible sans authentification."
    preuve: "Inventaire des interfaces/API exposées ; absence d'accès non authentifié (endpoints, fonctions, DB, partages)."
    href: "/docs/securiser/socle/referentiel/cloud/exposition-filtrage-reseau/#socle-cld-net-9"
  - id: SOCLE-CLD-STO-1
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: STO
    famille_nom: Stockage & données
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 9.7.a
      - ANSSI-BP-028 R1
      - CIS Controls v8 3.3
      - ISO 27017 (CLD.9.5.1)
      - CIS AWS Foundations 2.1.4
    menaces:
      - "L'attaquant accède aux objets d'un stockage cloud (buckets, volumes) mal protégés pour exfiltrer des données. Une exposition publique ou des droits trop larges suffisent (ATT&CK T1530)."
    texte: "stockage objet privé par défaut : aucun bucket accessible publiquement (ACL au groupe AllUsers, politique publique)."
    preuve: "ACL et politiques de buckets : absence d'accès public (AllUsers)."
    href: "/docs/securiser/socle/referentiel/cloud/stockage-donnees/#socle-cld-sto-1"
  - id: SOCLE-CLD-STO-2
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: STO
    famille_nom: Stockage & données
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 9.7.a
      - ANSSI-BP-028 R1
      - CIS Controls v8 3.3
      - ISO 27017 (CLD.9.5.1)
    menaces:
      - "L'attaquant crée un instantané ou clone d'un disque, d'une base ou d'une image et le partage vers son compte pour en extraire les données. La fonctionnalité de sauvegarde sert de canal d'exfiltration (ATT&CK T1578.001)."
    texte: instantanés (snapshots) et images disque non partagés publiquement.
    preuve: Aucun instantané/image partagé publiquement.
    href: "/docs/securiser/socle/referentiel/cloud/stockage-donnees/#socle-cld-sto-2"
  - id: SOCLE-CLD-STO-3
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: STO
    famille_nom: Stockage & données
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils:
      - sante
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 17.2.a
      - SecNumCloud 17.3.a
      - SecNumCloud 17.6.a
      - ANSSI-BP-028 R69
    menaces:
      - "L'attaquant accède aux objets d'un stockage cloud (buckets, volumes) mal protégés pour exfiltrer des données. Une exposition publique ou des droits trop larges suffisent (ATT&CK T1530)."
      - Données et sauvegardes cloud sont chiffrées ou détruites pour extorsion ou sabotage, en exploitant des droits étendus sur le stockage et les clés. La résilience (sauvegardes immuables hors périmètre) conditionne la survie (ATT&CK T1486 / T1490).
    texte: sauvegarde régulière des données et de la configuration, chiffrée, avec test de restauration et rétention documentée.
    preuve: Politique de sauvegarde chiffrée ; preuve de test de restauration daté.
    href: "/docs/securiser/socle/referentiel/cloud/stockage-donnees/#socle-cld-sto-3"
  - id: SOCLE-CLD-STO-4
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: STO
    famille_nom: Stockage & données
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 17.6.a
      - CIS Controls v8 11.1
    menaces:
      - Données et sauvegardes cloud sont chiffrées ou détruites pour extorsion ou sabotage, en exploitant des droits étendus sur le stockage et les clés. La résilience (sauvegardes immuables hors périmètre) conditionne la survie (ATT&CK T1486 / T1490).
    texte: "versioning du stockage objet activé : conservation des versions pour récupérer après suppression ou écrasement (accidentel ou malveillant, ex. rançongiciel)."
    preuve: Versioning activé sur les buckets de données critiques.
    href: "/docs/securiser/socle/referentiel/cloud/stockage-donnees/#socle-cld-sto-4"
  - id: SOCLE-CLD-STO-5
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: STO
    famille_nom: Stockage & données
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 17.5.a
    menaces:
      - Données et sauvegardes cloud sont chiffrées ou détruites pour extorsion ou sabotage, en exploitant des droits étendus sur le stockage et les clés. La résilience (sauvegardes immuables hors périmètre) conditionne la survie (ATT&CK T1486 / T1490).
    texte: "sauvegarde hors-ligne de la configuration de l'infrastructure (résilience face à un rançongiciel)."
    preuve: Sauvegarde de configuration conservée hors-ligne / immuable.
    href: "/docs/securiser/socle/referentiel/cloud/stockage-donnees/#socle-cld-sto-5"
  - id: SOCLE-CLD-STO-6
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: STO
    famille_nom: Stockage & données
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 19.4.a
      - SecNumCloud 10.1.a
      - ISO 27017 (CLD.8.1.5)
    menaces:
      - "L'attaquant accède aux objets d'un stockage cloud (buckets, volumes) mal protégés pour exfiltrer des données. Une exposition publique ou des droits trop larges suffisent (ATT&CK T1530)."
    texte: effacement sécurisé des données et destruction des clés de chiffrement en fin de contrat ou à la réallocation des ressources.
    preuve: "Procédure d'effacement sécurisé ; destruction des clés documentée."
    href: "/docs/securiser/socle/referentiel/cloud/stockage-donnees/#socle-cld-sto-6"
  - id: SOCLE-CLD-STO-7
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: STO
    famille_nom: Stockage & données
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 8.3.a
      - ISO/IEC 27018
    menaces:
      - "L'attaquant accède aux objets d'un stockage cloud (buckets, volumes) mal protégés pour exfiltrer des données. Une exposition publique ou des droits trop larges suffisent (ATT&CK T1530)."
    texte: découverte et classification des données sensibles stockées dans le cloud ; exposition de ces données identifiée.
    preuve: Cartographie des données sensibles (classification) et de leur exposition.
    href: "/docs/securiser/socle/referentiel/cloud/stockage-donnees/#socle-cld-sto-7"
  - id: SOCLE-CLD-STO-8
    domaine: CLD
    domaine_nom: "Posture cloud & infrastructure d'exécution"
    famille: STO
    famille_nom: Stockage & données
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Pépin
      - Prowler
    standards:
      - SecNumCloud 12.3
      - CIS Controls v8 11.1
    menaces:
      - Données et sauvegardes cloud sont chiffrées ou détruites pour extorsion ou sabotage, en exploitant des droits étendus sur le stockage et les clés. La résilience (sauvegardes immuables hors périmètre) conditionne la survie (ATT&CK T1486 / T1490).
    texte: immutabilité des sauvegardes et objets critiques (object lock / WORM, MFA delete) contre la suppression ou le chiffrement malveillant.
    preuve: Object lock / WORM activé sur les sauvegardes critiques (résilience rançongiciel).
    href: "/docs/securiser/socle/referentiel/cloud/stockage-donnees/#socle-cld-sto-8"
  - id: SOCLE-CLT-DOC-1
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: DOC
    famille_nom: Documentation & partage de connaissance
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - ISO 27001 (A.5.37)
      - OWASP SAMM
      - SSDF PO.2
    menaces: []
    texte: runbooks et procédures opérationnelles de sécurité à jour pour les composants critiques (build, déploiement, réponse à incident).
    preuve: Runbooks et procédures opérationnelles de sécurité à jour pour les composants critiques (build, déploiement, réponse à incident).
    href: "/docs/securiser/socle/referentiel/culture/documentation-partage-de-connaissance/#socle-clt-doc-1"
  - id: SOCLE-CLT-DOC-2
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: DOC
    famille_nom: Documentation & partage de connaissance
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - ISO 27001 (A.5.37)
      - OWASP SAMM
      - SSDF PO.2
    menaces: []
    texte: "décisions d'architecture de sécurité tracées (ADR) et accessibles à l'équipe."
    preuve: "Décisions d'architecture de sécurité tracées (ADR) et accessibles à l'équipe."
    href: "/docs/securiser/socle/referentiel/culture/documentation-partage-de-connaissance/#socle-clt-doc-2"
  - id: SOCLE-CLT-DOC-3
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: DOC
    famille_nom: Documentation & partage de connaissance
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - ISO 27001 (A.5.37)
      - OWASP SAMM
      - SSDF PO.2
    menaces: []
    texte: "base de connaissance de sécurité partagée et maintenue (pratiques, configurations de référence, retours d'incidents)."
    preuve: "Base de connaissance de sécurité partagée et maintenue (pratiques, configurations de référence, retours d'incidents)."
    href: "/docs/securiser/socle/referentiel/culture/documentation-partage-de-connaissance/#socle-clt-doc-3"
  - id: SOCLE-CLT-DOC-4
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: DOC
    famille_nom: Documentation & partage de connaissance
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - ISO 27001 (A.5.37)
      - OWASP SAMM
      - SSDF PO.2
    menaces: []
    texte: documentation revue périodiquement et datée ; pas de document obsolète faisant autorité.
    preuve: Documentation revue périodiquement et datée ; pas de document obsolète faisant autorité.
    href: "/docs/securiser/socle/referentiel/culture/documentation-partage-de-connaissance/#socle-clt-doc-4"
  - id: SOCLE-CLT-FOR-1
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: FOR
    famille_nom: Formation & sensibilisation
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - SSDF PO.2
      - OWASP SAMM
      - SAFECode
    menaces: []
    texte: parcours de formation sécurité adapté aux rôles (dev, ops, PO).
    preuve: Parcours par rôle ; suivi des complétions.
    href: "/docs/securiser/socle/referentiel/culture/formation-sensibilisation/#socle-clt-for-1"
  - id: SOCLE-CLT-FOR-2
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: FOR
    famille_nom: Formation & sensibilisation
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - SAFECode
      - OWASP SAMM
      - SSDF PO.2
    menaces: []
    texte: formation au codage sûr renouvelée périodiquement et tracée.
    preuve: Sessions de codage sûr datées et tracées.
    href: "/docs/securiser/socle/referentiel/culture/formation-sensibilisation/#socle-clt-for-2"
  - id: SOCLE-CLT-FOR-3
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: FOR
    famille_nom: Formation & sensibilisation
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP SAMM
      - OWASP DSOMM
    menaces: []
    texte: exercices pratiques (drills, CTF internes) pour ancrer les réflexes.
    preuve: "Comptes rendus d'exercices."
    href: "/docs/securiser/socle/referentiel/culture/formation-sensibilisation/#socle-clt-for-3"
  - id: SOCLE-CLT-FOR-4
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: FOR
    famille_nom: Formation & sensibilisation
    niveau: R3
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP SAMM
      - BSIMM (Governance)
    menaces: []
    texte: programme de montée en compétence mesuré (évaluation des acquis).
    preuve: Évaluation des acquis avant et après formation.
    href: "/docs/securiser/socle/referentiel/culture/formation-sensibilisation/#socle-clt-for-4"
  - id: SOCLE-CLT-GEN-1
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP SAMM
      - SSDF PO.2
      - BSIMM (Governance)
    menaces: []
    texte: responsabilité de la sécurité attribuée (ownership) dans les équipes produit.
    preuve: Organigramme ou RACI désignant les responsables sécurité par produit.
    href: "/docs/securiser/socle/referentiel/culture/#socle-clt-gen-1"
  - id: SOCLE-CLT-GEN-2
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils: []
    outils: []
    standards:
      - SSDF PO.2
      - OWASP SAMM
      - SAFECode
    menaces: []
    texte: formation à la sécurité du développement pour développeurs et ops, renouvelée.
    preuve: Plan de formation ; registre de participation daté.
    href: "/docs/securiser/socle/referentiel/culture/#socle-clt-gen-2"
  - id: SOCLE-CLT-GEN-3
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP DSOMM
      - SSDF PO.3
    menaces: []
    texte: sécurité intégrée à la definition of done (critères de sortie sécurité).
    preuve: Definition of done incluant des critères de sécurité.
    href: "/docs/securiser/socle/referentiel/culture/#socle-clt-gen-3"
  - id: SOCLE-CLT-GEN-4
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP DSOMM
      - OWASP SAMM
      - BSIMM (Governance)
    menaces: []
    texte: indicateurs de posture DevSecOps suivis et revus (couverture, délais de correction).
    preuve: "Tableau de bord d'indicateurs revu périodiquement."
    href: "/docs/securiser/socle/referentiel/culture/#socle-clt-gen-4"
  - id: SOCLE-CLT-GEN-5
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DEVRAIT
    essentielle: true
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP SAMM
      - BSIMM (Governance)
      - OWASP DSOMM
    menaces: []
    texte: référents sécurité (security champions) désignés et animés.
    preuve: "Liste des champions ; cadence d'animation."
    href: "/docs/securiser/socle/referentiel/culture/#socle-clt-gen-5"
  - id: SOCLE-CLT-MET-1
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: MET
    famille_nom: Métriques & pilotage
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP DSOMM
      - OWASP SAMM
    menaces: []
    texte: indicateurs de sécurité définis (MTTR des vulnérabilités, couverture SAST/SCA, dette).
    preuve: Définition et suivi des indicateurs clés.
    href: "/docs/securiser/socle/referentiel/culture/metriques-pilotage/#socle-clt-met-1"
  - id: SOCLE-CLT-MET-2
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: MET
    famille_nom: Métriques & pilotage
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP DSOMM
    menaces: []
    texte: métriques de vélocité sécurisée inspirées de DORA.
    preuve: Tableau de bord de vélocité intégrant la sécurité.
    href: "/docs/securiser/socle/referentiel/culture/metriques-pilotage/#socle-clt-met-2"
  - id: SOCLE-CLT-MET-3
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: MET
    famille_nom: Métriques & pilotage
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP SAMM
      - BSIMM (Governance)
      - ISO 27001
    menaces: []
    texte: tableau de bord de posture par produit, revu en gouvernance.
    preuve: Tableau de bord par produit présenté en gouvernance.
    href: "/docs/securiser/socle/referentiel/culture/metriques-pilotage/#socle-clt-met-3"
  - id: SOCLE-CLT-OWN-1
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: OWN
    famille_nom: Ownership & shift-left
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP SAMM
      - SSDF PO.2
    menaces: []
    texte: chaque produit a un responsable sécurité identifié.
    preuve: Responsable sécurité nommé par produit.
    href: "/docs/securiser/socle/referentiel/culture/ownership-shift-left/#socle-clt-own-1"
  - id: SOCLE-CLT-OWN-2
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: OWN
    famille_nom: Ownership & shift-left
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP DSOMM
      - SSDF PO.3
    menaces: []
    texte: "les équipes produit traitent leurs findings (shift-left), avec appui d'une équipe transverse."
    preuve: Findings assignés aux équipes produit ; SLA suivis.
    href: "/docs/securiser/socle/referentiel/culture/ownership-shift-left/#socle-clt-own-2"
  - id: SOCLE-CLT-OWN-3
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: OWN
    famille_nom: Ownership & shift-left
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP SAMM
      - BSIMM (Governance)
    menaces: []
    texte: réseau de security champions outillé et reconnu.
    preuve: Programme de champions documenté.
    href: "/docs/securiser/socle/referentiel/culture/ownership-shift-left/#socle-clt-own-3"
  - id: SOCLE-CLT-OWN-4
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: OWN
    famille_nom: Ownership & shift-left
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP SAMM
      - ISO 27001
    menaces: []
    texte: objectifs de sécurité intégrés aux objectifs produit et revus en direction.
    preuve: Objectifs de sécurité dans les OKR produit ; revue de direction.
    href: "/docs/securiser/socle/referentiel/culture/ownership-shift-left/#socle-clt-own-4"
  - id: SOCLE-CLT-PRO-1
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: PRO
    famille_nom: Processus & rituels
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP DSOMM
      - SSDF PO.3
    menaces: []
    texte: sécurité présente dans les rituels (revue, planification) sans bloquer la vélocité.
    preuve: Ordre du jour des rituels incluant la sécurité.
    href: "/docs/securiser/socle/referentiel/culture/processus-rituels/#socle-clt-pro-1"
  - id: SOCLE-CLT-PRO-2
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: PRO
    famille_nom: Processus & rituels
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP DSOMM
      - NIST 800-204D
    menaces: []
    texte: gates de sécurité définies et acceptées (critères, exceptions tracées).
    preuve: Politique de gates ; registre des exceptions.
    href: "/docs/securiser/socle/referentiel/culture/processus-rituels/#socle-clt-pro-2"
  - id: SOCLE-CLT-PRO-3
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: PRO
    famille_nom: Processus & rituels
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP SAMM
      - SSDF RV.3
    menaces: []
    texte: rétrospectives post-incident sans recherche de coupable (blameless).
    preuve: Comptes rendus post-incident blameless.
    href: "/docs/securiser/socle/referentiel/culture/processus-rituels/#socle-clt-pro-3"
  - id: SOCLE-CLT-PRO-4
    domaine: CLT
    domaine_nom: Culture, organisation & processus
    famille: PRO
    famille_nom: Processus & rituels
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - ISO 27001
      - OWASP SAMM
    menaces: []
    texte: "amélioration continue pilotée par les retours d'incidents et d'audits."
    preuve: "Plan d'amélioration alimenté par incidents et audits."
    href: "/docs/securiser/socle/referentiel/culture/processus-rituels/#socle-clt-pro-4"
  - id: SOCLE-DPL-ADM-1
    domaine: DPL
    domaine_nom: Déploiement & admission
    famille: ADM
    famille_nom: "Contrôle d'admission"
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Kyverno
      - Gatekeeper
    standards:
      - Sigstore
      - SLSA (vérification)
      - SLSA
    menaces:
      - "Le build est compromis en amont, si bien que la provenance est techniquement valide mais atteste d'un artefact malveillant. La provenance prouve l'origine, pas l'innocuité : un build corrompu produit une attestation correcte d'un mauvais résultat."
      - "Un artefact non signé, non scanné ou hors politique passe le contrôle d'admission et entre en production. Le dernier filtre avant l'exécution laisse passer ce qu'il devait bloquer."
    texte: "vérification de signature de l'image/artefact avant déploiement."
    preuve: "Vérification de signature à l'admission (cosign/policy-controller)."
    href: "/docs/securiser/socle/referentiel/deploiement/#socle-dpl-adm-1"
  - id: SOCLE-DPL-ADM-2
    domaine: DPL
    domaine_nom: Déploiement & admission
    famille: ADM
    famille_nom: "Contrôle d'admission"
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils:
      - Kyverno
      - Gatekeeper
    standards:
      - SLSA Build L3
      - OPA/Kyverno
    menaces:
      - "Le build est compromis en amont, si bien que la provenance est techniquement valide mais atteste d'un artefact malveillant. La provenance prouve l'origine, pas l'innocuité : un build corrompu produit une attestation correcte d'un mauvais résultat."
      - "Un artefact non signé, non scanné ou hors politique passe le contrôle d'admission et entre en production. Le dernier filtre avant l'exécution laisse passer ce qu'il devait bloquer."
    texte: admission restreinte aux artefacts à provenance non falsifiable (L3) pour les charges sensibles.
    preuve: Admission restreinte aux artefacts à provenance L3 pour les charges sensibles.
    href: "/docs/securiser/socle/referentiel/deploiement/#socle-dpl-adm-2"
  - id: SOCLE-DPL-CFG-1
    domaine: DPL
    domaine_nom: Déploiement & admission
    famille: CFG
    famille_nom: Politiques de configuration sécurisée
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Checkov
      - KICS
      - Conftest
    standards:
      - OPA/Kyverno
      - NIST 800-204D
    menaces:
      - "Un artefact non signé, non scanné ou hors politique passe le contrôle d'admission et entre en production. Le dernier filtre avant l'exécution laisse passer ce qu'il devait bloquer."
      - "La politique d'admission (vérification de signature, provenance, conformité) est contournée ou désactivée, laissant déployer des artefacts non vérifiés. Une exception ou une faille de configuration neutralise le garde-fou."
    texte: "contrôleur d'admission de politiques (OPA Gatekeeper / Kyverno) en mode bloquant."
    preuve: "Contrôleur d'admission (OPA Gatekeeper/Kyverno) en mode bloquant."
    href: "/docs/securiser/socle/referentiel/deploiement/#socle-dpl-cfg-1"
  - id: SOCLE-DPL-CFG-2
    domaine: DPL
    domaine_nom: Déploiement & admission
    famille: CFG
    famille_nom: Politiques de configuration sécurisée
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Checkov
      - KICS
      - Conftest
    standards:
      - NSA/CISA K8s Hardening
      - NIST 800-207
    menaces:
      - "Après une intrusion initiale, l'attaquant se déplace latéralement et installe des mécanismes de persistance pour conserver l'accès. La compromission s'étend dans le temps et l'espace faute de détection et de segmentation."
    texte: segmentation réseau des charges (network policies, default-deny).
    preuve: Network policies default-deny appliquées.
    href: "/docs/securiser/socle/referentiel/deploiement/#socle-dpl-cfg-2"
  - id: SOCLE-DPL-CFG-3
    domaine: DPL
    domaine_nom: Déploiement & admission
    famille: CFG
    famille_nom: Politiques de configuration sécurisée
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Checkov
      - KICS
      - Conftest
    standards:
      - CIS K8s
      - ANSSI-BP-028
    menaces:
      - "Le manifeste de déploiement est mal configuré (privilèges excessifs, montages sensibles, réseau ouvert), exposant la charge dès sa mise en service. La faiblesse n'est pas dans l'artefact mais dans la façon dont il est déployé (CIS Kubernetes)."
    texte: "profils d'exécution durcis (seccomp, AppArmor, système de fichiers en lecture seule)."
    preuve: Profils seccomp/AppArmor et FS lecture seule appliqués.
    href: "/docs/securiser/socle/referentiel/deploiement/#socle-dpl-cfg-3"
  - id: SOCLE-DPL-GEN-1
    domaine: DPL
    domaine_nom: Déploiement & admission
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils:
      - Kyverno
      - Gatekeeper
    standards:
      - SLSA (vérification)
      - OWASP CICD-SEC-9
      - OPA/Kyverno
      - PCI-DSS Req 2
      - HDS
    menaces:
      - "Le consommateur n'utilise ni la signature ni la provenance avant de consommer un artefact, annulant tout le bénéfice de leur génération. La chaîne de confiance ne tient que si le dernier maillon vérifie."
      - "Un artefact non signé, non scanné ou hors politique passe le contrôle d'admission et entre en production. Le dernier filtre avant l'exécution laisse passer ce qu'il devait bloquer."
      - "La politique d'admission (vérification de signature, provenance, conformité) est contournée ou désactivée, laissant déployer des artefacts non vérifiés. Une exception ou une faille de configuration neutralise le garde-fou."
    texte: "contrôle d'admission : seuls les artefacts signés et conformes sont déployés."
    preuve: "Politique d'admission : seuls les artefacts signés et conformes sont déployés."
    href: "/docs/securiser/socle/referentiel/deploiement/#socle-dpl-gen-1"
  - id: SOCLE-DPL-GEN-2
    domaine: DPL
    domaine_nom: Déploiement & admission
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils:
      - Kyverno
      - Gatekeeper
    standards:
      - OWASP CICD-SEC-2
      - OWASP CICD-SEC-5
      - NIST 800-207
      - PCI-DSS Req 2
      - HDS
    menaces:
      - "Le manifeste de déploiement est mal configuré (privilèges excessifs, montages sensibles, réseau ouvert), exposant la charge dès sa mise en service. La faiblesse n'est pas dans l'artefact mais dans la façon dont il est déployé (CIS Kubernetes)."
      - "Un jeton d'accès de longue durée est volé et réutilisé tant qu'il n'est pas révoqué, sans nouvelle authentification. La durée de vie sans rotation maximise la valeur du vol."
    texte: "séparation des privilèges de déploiement ; pas d'accès prod non contrôlé depuis le CI."
    preuve: "Séparation des privilèges de déploiement ; absence d'accès prod non contrôlé depuis le CI."
    href: "/docs/securiser/socle/referentiel/deploiement/#socle-dpl-gen-2"
  - id: SOCLE-DPL-GEN-3
    domaine: DPL
    domaine_nom: Déploiement & admission
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils:
      - Kyverno
      - Gatekeeper
    standards:
      - CIS K8s
      - NSA/CISA K8s Hardening
      - PCI-DSS Req 2
      - HDS
    menaces:
      - "Le manifeste de déploiement est mal configuré (privilèges excessifs, montages sensibles, réseau ouvert), exposant la charge dès sa mise en service. La faiblesse n'est pas dans l'artefact mais dans la façon dont il est déployé (CIS Kubernetes)."
    texte: "politiques de configuration sécurisée à l'admission (pas de privileged, etc.)."
    preuve: "Politiques d'admission de configuration sécurisée (pas de privileged, etc.)."
    href: "/docs/securiser/socle/referentiel/deploiement/#socle-dpl-gen-3"
  - id: SOCLE-DPL-GEN-4
    domaine: DPL
    domaine_nom: Déploiement & admission
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils:
      - Kyverno
      - Gatekeeper
    standards:
      - SLSA (vérification)
      - in-toto
      - OPA/Kyverno
      - PCI-DSS Req 2
      - HDS
    menaces:
      - "Le build est lancé depuis une source ou un fork non officiel, produisant un artefact d'apparence légitime à partir de code non vérifié. L'origine du build n'est pas garantie sans provenance liant artefact et source."
      - "L'attestation de provenance est forgée ou altérée pour faire croire qu'un artefact provient d'un build légitime. Sans provenance non falsifiable (build isolé, signature), la traçabilité est trompeuse."
      - "Le build est compromis en amont, si bien que la provenance est techniquement valide mais atteste d'un artefact malveillant. La provenance prouve l'origine, pas l'innocuité : un build corrompu produit une attestation correcte d'un mauvais résultat."
      - "Le consommateur n'utilise ni la signature ni la provenance avant de consommer un artefact, annulant tout le bénéfice de leur génération. La chaîne de confiance ne tient que si le dernier maillon vérifie."
      - "L'attaquant publie avec des identifiants d'éditeur valides (volés ou détournés), rendant la publication indistinguable d'une légitime côté registre. La détection repose alors sur le comportement, pas sur l'authentification."
      - "La politique d'admission (vérification de signature, provenance, conformité) est contournée ou désactivée, laissant déployer des artefacts non vérifiés. Une exception ou une faille de configuration neutralise le garde-fou."
    texte: "vérification de provenance à l'admission contre un builder et une source attendus (allowlist), pas la simple présence d'une attestation."
    preuve: "Politique d'admission vérifiant la provenance contre builder/source attendus (allowlist)."
    href: "/docs/securiser/socle/referentiel/deploiement/#socle-dpl-gen-4"
  - id: SOCLE-DPL-RBK-1
    domaine: DPL
    domaine_nom: Déploiement & admission
    famille: RBK
    famille_nom: Intégrité, observabilité & rollback
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP CICD-SEC-9
      - SLSA
    menaces:
      - "L'artefact est modifié après sa construction mais avant sa publication ou son déploiement, échappant aux contrôles appliqués au code source. Sans intégrité de bout en bout, l'artefact livré diffère de celui qui a été buildé."
      - "Un tag mutable (latest, une version) est réécrit pour pointer vers un artefact malveillant, livré aux consommateurs qui font confiance au tag plutôt qu'au digest. La mutabilité brise l'immuabilité attendue d'une version publiée."
    texte: artefacts déployés par digest immuable (jamais de tag mutable).
    preuve: Déploiement par digest immuable.
    href: "/docs/securiser/socle/referentiel/deploiement/#socle-dpl-rbk-1"
  - id: SOCLE-DPL-RBK-2
    domaine: DPL
    domaine_nom: Déploiement & admission
    famille: RBK
    famille_nom: Intégrité, observabilité & rollback
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Argo CD
      - Flux
    standards:
      - NIST 800-204D
      - OWASP CICD-SEC-10
    menaces:
      - "L'artefact est modifié après sa construction mais avant sa publication ou son déploiement, échappant aux contrôles appliqués au code source. Sans intégrité de bout en bout, l'artefact livré diffère de celui qui a été buildé."
      - "Un artefact non signé, non scanné ou hors politique passe le contrôle d'admission et entre en production. Le dernier filtre avant l'exécution laisse passer ce qu'il devait bloquer."
    texte: "détection de dérive (drift) entre l'état désiré et l'état réel."
    preuve: Dispositif de détection de dérive (drift).
    href: "/docs/securiser/socle/referentiel/deploiement/#socle-dpl-rbk-2"
  - id: SOCLE-DPL-RBK-3
    domaine: DPL
    domaine_nom: Déploiement & admission
    famille: RBK
    famille_nom: Intégrité, observabilité & rollback
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - SSDF RV.2
      - NIST 800-204D
    menaces:
      - Une charge détruit données, dépôts ou systèmes (wiper, suppression) pour saboter ou couvrir ses traces. La résilience (sauvegardes éprouvées, immuabilité) conditionne la capacité de reprise.
    texte: "capacité de rollback et de blocage d'urgence d'un déploiement."
    preuve: "Procédure de rollback et de blocage d'urgence testée."
    href: "/docs/securiser/socle/referentiel/deploiement/#socle-dpl-rbk-3"
  - id: SOCLE-DPL-SEP-1
    domaine: DPL
    domaine_nom: Déploiement & admission
    famille: SEP
    famille_nom: Séparation & moindre privilège du déploiement
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - NIST 800-207
      - OWASP CICD-SEC-6
    menaces:
      - "Le manifeste de déploiement est mal configuré (privilèges excessifs, montages sensibles, réseau ouvert), exposant la charge dès sa mise en service. La faiblesse n'est pas dans l'artefact mais dans la façon dont il est déployé (CIS Kubernetes)."
      - "Un jeton d'accès de longue durée est volé et réutilisé tant qu'il n'est pas révoqué, sans nouvelle authentification. La durée de vie sans rotation maximise la valeur du vol."
    texte: déploiement par identité courte / approbation ; aucun credential prod de longue durée dans le pipeline.
    preuve: Déploiement par identité courte/approbation ; pas de credential prod longue durée dans le pipeline.
    href: "/docs/securiser/socle/referentiel/deploiement/#socle-dpl-sep-1"
  - id: SOCLE-DPL-SEP-2
    domaine: DPL
    domaine_nom: Déploiement & admission
    famille: SEP
    famille_nom: Séparation & moindre privilège du déploiement
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Argo CD
      - Flux
    standards:
      - NIST 800-204D
      - SSDF PO.3
    menaces:
      - "Le manifeste de déploiement est mal configuré (privilèges excessifs, montages sensibles, réseau ouvert), exposant la charge dès sa mise en service. La faiblesse n'est pas dans l'artefact mais dans la façon dont il est déployé (CIS Kubernetes)."
    texte: déploiement déclaratif (GitOps) tracé et réconcilié.
    preuve: Déploiement GitOps tracé et réconcilié.
    href: "/docs/securiser/socle/referentiel/deploiement/#socle-dpl-sep-2"
  - id: SOCLE-DPL-SEP-3
    domaine: DPL
    domaine_nom: Déploiement & admission
    famille: SEP
    famille_nom: Séparation & moindre privilège du déploiement
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - CIS K8s
      - NIST 800-207
    menaces:
      - "Le manifeste de déploiement est mal configuré (privilèges excessifs, montages sensibles, réseau ouvert), exposant la charge dès sa mise en service. La faiblesse n'est pas dans l'artefact mais dans la façon dont il est déployé (CIS Kubernetes)."
    texte: "RBAC du cluster / de l'environnement au moindre privilège."
    preuve: RBAC cluster/environnement au moindre privilège.
    href: "/docs/securiser/socle/referentiel/deploiement/#socle-dpl-sep-3"
  - id: SOCLE-FRN-CTR-1
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: CTR
    famille_nom: Gouvernance & contractuel
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - NIS2 art.21
      - CRA
      - ISO 27001
      - NIST 800-161 (SR)
    menaces:
      - "Une personne disposant légitimement du droit de publier (mainteneur, éditeur) introduit volontairement une modification nuisible dans le code ou l'artefact. L'attaque vient de l'intérieur de la chaîne de confiance : ni la revue ni la signature ne la détectent, puisque l'auteur est autorisé. Cas typiques : rachat de paquet, compte de mainteneur revendu, contributeur de longue date devenu hostile."
    texte: "clauses de sécurité dans le contrat : exigences, responsabilités, périmètre."
    preuve: Contrat fournisseur comportant des clauses de sécurité explicites.
    href: "/docs/securiser/socle/referentiel/fournisseurs/gouvernance-contractuel/#socle-frn-ctr-1"
  - id: SOCLE-FRN-CTR-2
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: CTR
    famille_nom: Gouvernance & contractuel
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - NIS2 art.21
      - ISO 27001
      - NIST 800-161 (SR)
    menaces:
      - "Une personne disposant légitimement du droit de publier (mainteneur, éditeur) introduit volontairement une modification nuisible dans le code ou l'artefact. L'attaque vient de l'intérieur de la chaîne de confiance : ni la revue ni la signature ne la détectent, puisque l'auteur est autorisé. Cas typiques : rachat de paquet, compte de mainteneur revendu, contributeur de longue date devenu hostile."
    texte: "droit d'audit et obligation de transparence du fournisseur."
    preuve: "Clause de droit d'audit ; preuves de transparence obtenues."
    href: "/docs/securiser/socle/referentiel/fournisseurs/gouvernance-contractuel/#socle-frn-ctr-2"
  - id: SOCLE-FRN-CTR-3
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: CTR
    famille_nom: Gouvernance & contractuel
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - NIS2 art.21
      - CRA
      - NIST 800-161 (SR)
    menaces:
      - Le canal par lequel le logiciel est distribué (site de téléchargement, CDN, miroir, mise à jour) est compromis pour livrer une version trojanisée aux utilisateurs finaux. La compromission frappe en aval de la production, au plus près des victimes.
    texte: "obligation de notification d'incident et délais, alignés CRA/NIS2."
    preuve: "Clause de notification d'incident avec délais contractuels."
    href: "/docs/securiser/socle/referentiel/fournisseurs/gouvernance-contractuel/#socle-frn-ctr-3"
  - id: SOCLE-FRN-CTR-4
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: CTR
    famille_nom: Gouvernance & contractuel
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - CRA
      - NIS2 art.21
      - NIST 800-161 (SR)
    menaces:
      - "Une personne disposant légitimement du droit de publier (mainteneur, éditeur) introduit volontairement une modification nuisible dans le code ou l'artefact. L'attaque vient de l'intérieur de la chaîne de confiance : ni la revue ni la signature ne la détectent, puisque l'auteur est autorisé. Cas typiques : rachat de paquet, compte de mainteneur revendu, contributeur de longue date devenu hostile."
    texte: engagement de conformité CRA / NIS2 du fournisseur.
    preuve: Engagement contractuel de conformité CRA/NIS2.
    href: "/docs/securiser/socle/referentiel/fournisseurs/gouvernance-contractuel/#socle-frn-ctr-4"
  - id: SOCLE-FRN-DEV-1
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: DEV
    famille_nom: Développement sécurisé du fournisseur
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - SSDF
      - NIS2 art.21
      - NIST 800-161 (SR)
    menaces:
      - "Une personne disposant légitimement du droit de publier (mainteneur, éditeur) introduit volontairement une modification nuisible dans le code ou l'artefact. L'attaque vient de l'intérieur de la chaîne de confiance : ni la revue ni la signature ne la détectent, puisque l'auteur est autorisé. Cas typiques : rachat de paquet, compte de mainteneur revendu, contributeur de longue date devenu hostile."
    texte: cycle de développement sécurisé documenté (référentiel SSDF).
    preuve: Documentation du SDLC sécurisé du fournisseur (réf. SSDF).
    href: "/docs/securiser/socle/referentiel/fournisseurs/developpement-securise-du-fournisseur/#socle-frn-dev-1"
  - id: SOCLE-FRN-DEV-2
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: DEV
    famille_nom: Développement sécurisé du fournisseur
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - SSDF RV
      - CRA
      - CSAF
      - NIST 800-161 (SR)
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
    texte: "gestion des vulnérabilités : processus, délais de correction, politique de divulgation."
    preuve: Politique de gestion des vulnérabilités et de divulgation du fournisseur.
    href: "/docs/securiser/socle/referentiel/fournisseurs/developpement-securise-du-fournisseur/#socle-frn-dev-2"
  - id: SOCLE-FRN-DEV-3
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: DEV
    famille_nom: Développement sécurisé du fournisseur
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP CICD-SEC-1
      - SSDF PO.3
      - NIST 800-161 (SR)
    menaces:
      - "Poisoned Pipeline Execution directe : l'attaquant modifie la définition du pipeline (fichier de CI) pour y injecter des commandes exécutées avec les privilèges du build. Le contrôle du fichier de workflow donne le contrôle de l'exécution."
    texte: "pratiques de sécurité du pipeline cohérentes avec l'OWASP CI/CD Top 10."
    preuve: Éléments attestant des pratiques CI/CD du fournisseur.
    href: "/docs/securiser/socle/referentiel/fournisseurs/developpement-securise-du-fournisseur/#socle-frn-dev-3"
  - id: SOCLE-FRN-DLV-1
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: DLV
    famille_nom: Provenance & intégrité des livrables
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - cosign
      - slsa-verifier
    standards:
      - CRA
      - CycloneDX (ECMA-424)
      - SPDX
      - SSDF PS.3
      - NIST 800-161 (SR)
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
      - Le canal par lequel le logiciel est distribué (site de téléchargement, CDN, miroir, mise à jour) est compromis pour livrer une version trojanisée aux utilisateurs finaux. La compromission frappe en aval de la production, au plus près des victimes.
    texte: SBOM fourni à chaque livraison (CycloneDX ou SPDX).
    preuve: SBOM reçu pour chaque livraison du fournisseur.
    href: "/docs/securiser/socle/referentiel/fournisseurs/provenance-integrite-des-livrables/#socle-frn-dlv-1"
  - id: SOCLE-FRN-DLV-2
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: DLV
    famille_nom: Provenance & intégrité des livrables
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - cosign
      - slsa-verifier
    standards:
      - SLSA Build L2-L3
      - in-toto
      - Sigstore
      - NIST 800-161 (SR)
    menaces:
      - "L'attestation de provenance est forgée ou altérée pour faire croire qu'un artefact provient d'un build légitime. Sans provenance non falsifiable (build isolé, signature), la traçabilité est trompeuse."
      - Un installeur officiel et signé est modifié à la source ou au build pour embarquer une charge, distribué via le canal légitime (cas CCleaner, 3CX). La signature valide endort la méfiance.
    texte: artefacts signés et attestations de provenance (niveau SLSA déclaré et vérifiable).
    preuve: Signatures et attestations de provenance vérifiées à la réception.
    href: "/docs/securiser/socle/referentiel/fournisseurs/provenance-integrite-des-livrables/#socle-frn-dlv-2"
  - id: SOCLE-FRN-DLV-3
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: DLV
    famille_nom: Provenance & intégrité des livrables
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - cosign
      - slsa-verifier
    standards:
      - SLSA (vérification)
      - OWASP CICD-SEC-9
      - NIST 800-161 (SR)
    menaces:
      - Le canal par lequel le logiciel est distribué (site de téléchargement, CDN, miroir, mise à jour) est compromis pour livrer une version trojanisée aux utilisateurs finaux. La compromission frappe en aval de la production, au plus près des victimes.
    texte: intégrité vérifiable à la réception (signature, checksum, registre de confiance).
    preuve: "Procédure de vérification d'intégrité des livrables fournisseur."
    href: "/docs/securiser/socle/referentiel/fournisseurs/provenance-integrite-des-livrables/#socle-frn-dlv-3"
  - id: SOCLE-FRN-GEN-1
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils: []
    outils: []
    standards:
      - NIST 800-161 (SR)
      - NIS2 art.21
    menaces:
      - "Une personne disposant légitimement du droit de publier (mainteneur, éditeur) introduit volontairement une modification nuisible dans le code ou l'artefact. L'attaque vient de l'intérieur de la chaîne de confiance : ni la revue ni la signature ne la détectent, puisque l'auteur est autorisé. Cas typiques : rachat de paquet, compte de mainteneur revendu, contributeur de longue date devenu hostile."
      - "Le mainteneur saborde délibérément son propre composant pour des raisons idéologiques ou politiques (protestware) : code destructeur, messages, ou comportements ciblant certains utilisateurs. La confiance accordée au paquet se retourne contre ses consommateurs lors d'une simple mise à jour (cas node-ipc)."
      - Une dépendance est retirée ou dépubliée (unpublish, yank), cassant les builds et poussant à des substitutions hâtives, parfois vers un remplacement malveillant. La disponibilité de la chaîne est attaquée (cas left-pad).
    texte: tiering des fournisseurs et composants tiers par criticité.
    preuve: Tiering des fournisseurs et composants tiers par criticité.
    href: "/docs/securiser/socle/referentiel/fournisseurs/#socle-frn-gen-1"
  - id: SOCLE-FRN-GEN-2
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils: []
    outils: []
    standards:
      - NIST 800-161 (SR)
      - CRA
      - ISO 5230/18974
    menaces:
      - "Une personne disposant légitimement du droit de publier (mainteneur, éditeur) introduit volontairement une modification nuisible dans le code ou l'artefact. L'attaque vient de l'intérieur de la chaîne de confiance : ni la revue ni la signature ne la détectent, puisque l'auteur est autorisé. Cas typiques : rachat de paquet, compte de mainteneur revendu, contributeur de longue date devenu hostile."
      - "Une application OAuth ou intégration SaaS de confiance, au-delà du SCM/CI (CRM, support, observabilité), est compromise ou abusée : consentement OAuth détourné, jetons volés, contournement MFA, pour persister et exfiltrer des données (ex. campagne Salesloft/Drift 2025). La confiance accordée à une intégration tierce devient un accès latéral au SI."
    texte: évaluation de sécurité proportionnée des fournisseurs critiques.
    preuve: "Dossiers d'évaluation de sécurité des fournisseurs critiques."
    href: "/docs/securiser/socle/referentiel/fournisseurs/#socle-frn-gen-2"
  - id: SOCLE-FRN-GEN-3
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils: []
    outils: []
    standards:
      - CRA
      - SLSA
      - NIST 800-161 (SR)
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
      - Le canal par lequel le logiciel est distribué (site de téléchargement, CDN, miroir, mise à jour) est compromis pour livrer une version trojanisée aux utilisateurs finaux. La compromission frappe en aval de la production, au plus près des victimes.
    texte: SBOM et attestations exigés des fournisseurs critiques.
    preuve: SBOM et attestations obtenus des fournisseurs critiques.
    href: "/docs/securiser/socle/referentiel/fournisseurs/#socle-frn-gen-3"
  - id: SOCLE-FRN-GEN-4
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils: []
    outils: []
    standards:
      - NIS2 art.21
      - CRA
      - NIST 800-161 (SR)
    menaces:
      - Le canal par lequel le logiciel est distribué (site de téléchargement, CDN, miroir, mise à jour) est compromis pour livrer une version trojanisée aux utilisateurs finaux. La compromission frappe en aval de la production, au plus près des victimes.
    texte: "clauses contractuelles de sécurité et de notification d'incident."
    preuve: "Clauses contractuelles de sécurité et de notification d'incident."
    href: "/docs/securiser/socle/referentiel/fournisseurs/#socle-frn-gen-4"
  - id: SOCLE-FRN-GEN-5
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - ScoutSuite
      - Prowler
    standards:
      - OWASP CICD-SEC-8
      - NIST 800-207
      - NIS2 art.21
    menaces:
      - "Une application OAuth ou intégration SaaS de confiance, au-delà du SCM/CI (CRM, support, observabilité), est compromise ou abusée : consentement OAuth détourné, jetons volés, contournement MFA, pour persister et exfiltrer des données (ex. campagne Salesloft/Drift 2025). La confiance accordée à une intégration tierce devient un accès latéral au SI."
    texte: "gouvernance des autorisations OAuth des applications SaaS tierces (CRM, support, marketing) au-delà du SCM/CI : consentements au moindre privilège, inventaire des octrois à l'échelle du tenant, révocation et rotation des jetons de rafraîchissement."
    preuve: Inventaire des applications OAuth autorisées au niveau tenant (portées, propriétaire) ; procédure de révocation testée ; rotation des refresh tokens.
    href: "/docs/securiser/socle/referentiel/fournisseurs/#socle-frn-gen-5"
  - id: SOCLE-FRN-OSS-1
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: OSS
    famille_nom: Gestion des dépendances open-source
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenSSF Scorecard
    standards:
      - S2C2F
      - OWASP CICD-SEC-3
      - NIST 800-161 (SR)
    menaces:
      - "Un paquet malveillant porte un nom très proche d'un paquet légitime (faute de frappe, tiret, ordre des mots) pour être installé par erreur. L'attaque mise sur l'inattention au moment d'ajouter une dépendance."
      - "Un paquet exécute du code arbitraire via ses scripts de cycle de vie (postinstall, preinstall) dès l'installation, avant tout usage. L'ajout d'une dépendance suffit à déclencher la charge."
    texte: politique de consommation OSS maîtrisée (référentiel S2C2F).
    preuve: Politique de consommation OSS du fournisseur (réf. S2C2F).
    href: "/docs/securiser/socle/referentiel/fournisseurs/gestion-des-dependances-open-source/#socle-frn-oss-1"
  - id: SOCLE-FRN-OSS-2
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: OSS
    famille_nom: Gestion des dépendances open-source
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenSSF Scorecard
    standards:
      - OSV
      - SSDF RV.1
      - NIST 800-161 (SR)
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
      - Une dépendance est retirée ou dépubliée (unpublish, yank), cassant les builds et poussant à des substitutions hâtives, parfois vers un remplacement malveillant. La disponibilité de la chaîne est attaquée (cas left-pad).
    texte: suivi des vulnérabilités des dépendances (OSV) et capacité de réaction.
    preuve: Dispositif de suivi des vulnérabilités de dépendances et délais de réaction.
    href: "/docs/securiser/socle/referentiel/fournisseurs/gestion-des-dependances-open-source/#socle-frn-oss-2"
  - id: SOCLE-FRN-OSS-3
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: OSS
    famille_nom: Gestion des dépendances open-source
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenSSF Scorecard
    standards:
      - S2C2F
      - SLSA
      - NIST 800-161 (SR)
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
    texte: verrouillage des versions et reproductibilité des dépendances.
    preuve: Lockfiles et preuve de reproductibilité fournis.
    href: "/docs/securiser/socle/referentiel/fournisseurs/gestion-des-dependances-open-source/#socle-frn-oss-3"
  - id: SOCLE-FRN-SOV-1
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: SOV
    famille_nom: Souveraineté & localisation
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils:
      - sante
    outils: []
    standards:
      - SecNumCloud (ANSSI)
      - NIS2 art.21
      - NIST 800-161 (SR)
    menaces:
      - "Une autorité étrangère contraint légalement un fournisseur cloud (CLOUD Act, FISA) à divulguer des données hébergées, hors du cadre juridique national. Le risque n'est pas technique mais juridique : la souveraineté de l'hébergement (SecNumCloud) y répond."
    texte: "localisation de l'hébergement et des données ; juridiction applicable documentée."
    preuve: Documentation de localisation des données et de la juridiction applicable.
    href: "/docs/securiser/socle/referentiel/fournisseurs/souverainete-localisation/#socle-frn-sov-1"
  - id: SOCLE-FRN-SOV-2
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: SOV
    famille_nom: Souveraineté & localisation
    niveau: R3
    devoir: DEVRAIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils: []
    standards:
      - SecNumCloud (ANSSI)
      - ANSSI
      - NIST 800-161 (SR)
    menaces:
      - Une dépendance est retirée ou dépubliée (unpublish, yank), cassant les builds et poussant à des substitutions hâtives, parfois vers un remplacement malveillant. La disponibilité de la chaîne est attaquée (cas left-pad).
      - "Une autorité étrangère contraint légalement un fournisseur cloud (CLOUD Act, FISA) à divulguer des données hébergées, hors du cadre juridique national. Le risque n'est pas technique mais juridique : la souveraineté de l'hébergement (SecNumCloud) y répond."
    texte: capacité de réversibilité souveraine ; maîtrise de la dépendance aux hyperscalers.
    preuve: Démonstration de réversibilité souveraine.
    href: "/docs/securiser/socle/referentiel/fournisseurs/souverainete-localisation/#socle-frn-sov-2"
  - id: SOCLE-FRN-SOV-3
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: SOV
    famille_nom: Souveraineté & localisation
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils: []
    standards:
      - SecNumCloud (ANSSI)
      - ReCyF
      - NIST 800-161 (SR)
    menaces:
      - "Une autorité étrangère contraint légalement un fournisseur cloud (CLOUD Act, FISA) à divulguer des données hébergées, hors du cadre juridique national. Le risque n'est pas technique mais juridique : la souveraineté de l'hébergement (SecNumCloud) y répond."
    texte: qualification adaptée (ex. SecNumCloud) selon la sensibilité.
    preuve: Attestation de qualification adaptée (ex. SecNumCloud) selon la sensibilité.
    href: "/docs/securiser/socle/referentiel/fournisseurs/souverainete-localisation/#socle-frn-sov-3"
  - id: SOCLE-FRN-SUP-1
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: SUP
    famille_nom: Continuité, support & réponse
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - CRA
      - NIS2 art.21
      - NIST 800-161 (SR)
    menaces:
      - Une dépendance est retirée ou dépubliée (unpublish, yank), cassant les builds et poussant à des substitutions hâtives, parfois vers un remplacement malveillant. La disponibilité de la chaîne est attaquée (cas left-pad).
    texte: engagement de support et de maintenance de sécurité (durée, EOL annoncée).
    preuve: "Engagement de support et calendrier d'EOL documentés."
    href: "/docs/securiser/socle/referentiel/fournisseurs/continuite-support-reponse/#socle-frn-sup-1"
  - id: SOCLE-FRN-SUP-2
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: SUP
    famille_nom: Continuité, support & réponse
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - NIS2 art.21
      - ISO 27001
      - NIST 800-161 (SR)
    menaces:
      - Le canal par lequel le logiciel est distribué (site de téléchargement, CDN, miroir, mise à jour) est compromis pour livrer une version trojanisée aux utilisateurs finaux. La compromission frappe en aval de la production, au plus près des victimes.
    texte: procédure et délais de réponse à incident du fournisseur.
    preuve: Procédure de réponse à incident du fournisseur, avec délais.
    href: "/docs/securiser/socle/referentiel/fournisseurs/continuite-support-reponse/#socle-frn-sup-2"
  - id: SOCLE-FRN-SUP-3
    domaine: FRN
    domaine_nom: Fournisseurs & composants tiers
    famille: SUP
    famille_nom: Continuité, support & réponse
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils:
      - sante
    outils: []
    standards:
      - NIS2 art.21
      - ISO 27001
      - NIST 800-161 (SR)
    menaces:
      - Une dépendance est retirée ou dépubliée (unpublish, yank), cassant les builds et poussant à des substitutions hâtives, parfois vers un remplacement malveillant. La disponibilité de la chaîne est attaquée (cas left-pad).
    texte: "plan de réversibilité / sortie : récupération des données, désengagement."
    preuve: Plan de réversibilité et de désengagement documenté.
    href: "/docs/securiser/socle/referentiel/fournisseurs/continuite-support-reponse/#socle-frn-sup-3"
  - id: SOCLE-GOV-GEN-1
    domaine: GOV
    domaine_nom: Gouvernance & conformité
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils: []
    standards:
      - SSDF PO.1
      - ISO 27001 (A.5.9)
      - NIST 800-161 (SR)
      - BSIMM (Governance)
      - PCI-DSS Req 12
      - HDS
    menaces:
      - "Une personne disposant légitimement du droit de publier (mainteneur, éditeur) introduit volontairement une modification nuisible dans le code ou l'artefact. L'attaque vient de l'intérieur de la chaîne de confiance : ni la revue ni la signature ne la détectent, puisque l'auteur est autorisé. Cas typiques : rachat de paquet, compte de mainteneur revendu, contributeur de longue date devenu hostile."
    texte: inventaire des produits et chaînes de build, avec tiering par criticité, tenu à jour.
    preuve: Inventaire des produits et chaînes de build avec tiering par criticité ; horodatage de dernière mise à jour.
    href: "/docs/securiser/socle/referentiel/gouvernance/#socle-gov-gen-1"
  - id: SOCLE-GOV-GEN-2
    domaine: GOV
    domaine_nom: Gouvernance & conformité
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils: []
    standards:
      - ISO 27001
      - SSDF PO.2
      - NIS2 art.21
      - NIST 800-161 (SR)
      - BSIMM (Governance)
      - PCI-DSS Req 12
      - HDS
    menaces:
      - "Un collaborateur autorisé (développeur, ops, admin) abuse de ses accès pour introduire un changement non autorisé dans le code, la configuration ou la chaîne de build. Disposant déjà des droits, il contourne les contrôles d'entrée ; seules la séparation des privilèges, la revue à deux et la traçabilité limitent l'impact."
      - "Une exception aux règles de protection (ex. fichiers de documentation exemptés de revue) est exploitée via un fichier déguisé pour faire passer du code non revu. Les angles morts de la politique deviennent une porte d'entrée."
      - "Un artefact légitime est utilisé de façon non prévue ou dans un contexte non sécurisé, créant un risque que la chaîne technique ne couvre pas. La sécurité dépend aussi de l'usage, pas seulement de la fabrication."
    texte: politique de sécurité de la chaîne logicielle formalisée ; rôles et responsabilités définis.
    preuve: Politique de sécurité de la chaîne logicielle documentée ; matrice des rôles et responsabilités.
    href: "/docs/securiser/socle/referentiel/gouvernance/#socle-gov-gen-2"
  - id: SOCLE-GOV-GEN-3
    domaine: GOV
    domaine_nom: Gouvernance & conformité
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils: []
    standards:
      - CRA
      - NIS2 art.21
      - ReCyF
      - NIST 800-161 (SR)
      - BSIMM (Governance)
      - PCI-DSS Req 12
      - HDS
    menaces:
      - "Une personne disposant légitimement du droit de publier (mainteneur, éditeur) introduit volontairement une modification nuisible dans le code ou l'artefact. L'attaque vient de l'intérieur de la chaîne de confiance : ni la revue ni la signature ne la détectent, puisque l'auteur est autorisé. Cas typiques : rachat de paquet, compte de mainteneur revendu, contributeur de longue date devenu hostile."
    texte: "conformité réglementaire suivie (CRA, NIS2/ReCyF) : écarts identifiés et pilotés."
    preuve: "Registre de conformité (CRA, NIS2/ReCyF) : écarts identifiés et plan de mise en conformité suivi."
    href: "/docs/securiser/socle/referentiel/gouvernance/#socle-gov-gen-3"
  - id: SOCLE-GOV-GEN-4
    domaine: GOV
    domaine_nom: Gouvernance & conformité
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils: []
    standards:
      - SSDF PW.1
      - OWASP SAMM
      - MITRE ATT&CK
      - NIST 800-161 (SR)
      - BSIMM (Governance)
      - PCI-DSS Req 12
      - HDS
    menaces:
      - "Une personne disposant légitimement du droit de publier (mainteneur, éditeur) introduit volontairement une modification nuisible dans le code ou l'artefact. L'attaque vient de l'intérieur de la chaîne de confiance : ni la revue ni la signature ne la détectent, puisque l'auteur est autorisé. Cas typiques : rachat de paquet, compte de mainteneur revendu, contributeur de longue date devenu hostile."
      - "Le mainteneur saborde délibérément son propre composant pour des raisons idéologiques ou politiques (protestware) : code destructeur, messages, ou comportements ciblant certains utilisateurs. La confiance accordée au paquet se retourne contre ses consommateurs lors d'une simple mise à jour (cas node-ipc)."
      - "Un collaborateur autorisé (développeur, ops, admin) abuse de ses accès pour introduire un changement non autorisé dans le code, la configuration ou la chaîne de build. Disposant déjà des droits, il contourne les contrôles d'entrée ; seules la séparation des privilèges, la revue à deux et la traçabilité limitent l'impact."
    texte: threat modeling de la chaîne réalisé et tenu à jour.
    preuve: Modèle de menace de la chaîne documenté, daté et revu.
    href: "/docs/securiser/socle/referentiel/gouvernance/#socle-gov-gen-4"
  - id: SOCLE-GOV-GEN-5
    domaine: GOV
    domaine_nom: Gouvernance & conformité
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DEVRAIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils: []
    standards:
      - OWASP SAMM
      - OWASP DSOMM
      - NIST 800-161 (SR)
      - BSIMM (Governance)
      - PCI-DSS Req 12
      - HDS
    menaces:
      - "Une personne disposant légitimement du droit de publier (mainteneur, éditeur) introduit volontairement une modification nuisible dans le code ou l'artefact. L'attaque vient de l'intérieur de la chaîne de confiance : ni la revue ni la signature ne la détectent, puisque l'auteur est autorisé. Cas typiques : rachat de paquet, compte de mainteneur revendu, contributeur de longue date devenu hostile."
    texte: maturité mesurée via un modèle reconnu (SAMM/DSOMM) ; trajectoire définie.
    preuve: Évaluation de maturité (SAMM/DSOMM) et trajectoire cible documentées.
    href: "/docs/securiser/socle/referentiel/gouvernance/#socle-gov-gen-5"
  - id: SOCLE-GOV-GEN-6
    domaine: GOV
    domaine_nom: Gouvernance & conformité
    famille: GEN
    famille_nom: Exigences générales
    niveau: R3
    devoir: DOIT
    essentielle: true
    souverain: true
    profils:
      - souverain
      - paiement
      - sante
    outils: []
    standards:
      - NIS2 / ReCyF
      - ISO 27001
      - NIST 800-161 (SR)
      - BSIMM (Governance)
      - PCI-DSS Req 12
      - HDS
    menaces:
      - "Une personne disposant légitimement du droit de publier (mainteneur, éditeur) introduit volontairement une modification nuisible dans le code ou l'artefact. L'attaque vient de l'intérieur de la chaîne de confiance : ni la revue ni la signature ne la détectent, puisque l'auteur est autorisé. Cas typiques : rachat de paquet, compte de mainteneur revendu, contributeur de longue date devenu hostile."
    texte: "préparation à l'audit ex ante (ANSSI) : posture documentée et chiffrée."
    preuve: "Dossier de préparation à l'audit ex ante : posture documentée et chiffrée."
    href: "/docs/securiser/socle/referentiel/gouvernance/#socle-gov-gen-6"
  - id: SOCLE-GOV-INV-1
    domaine: GOV
    domaine_nom: Gouvernance & conformité
    famille: INV
    famille_nom: Inventaire & cartographie
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - SSDF PO.1
      - ISO 27001 (A.5.9)
    menaces:
      - "Un collaborateur autorisé (développeur, ops, admin) abuse de ses accès pour introduire un changement non autorisé dans le code, la configuration ou la chaîne de build. Disposant déjà des droits, il contourne les contrôles d'entrée ; seules la séparation des privilèges, la revue à deux et la traçabilité limitent l'impact."
      - Une dépendance est retirée ou dépubliée (unpublish, yank), cassant les builds et poussant à des substitutions hâtives, parfois vers un remplacement malveillant. La disponibilité de la chaîne est attaquée (cas left-pad).
    texte: cartographie des chaînes de build/déploiement (flux, dépôts, runners, registres, fournisseurs).
    preuve: Cartographie des chaînes de build/déploiement (flux, dépôts, runners, registres, fournisseurs).
    href: "/docs/securiser/socle/referentiel/gouvernance/#socle-gov-inv-1"
  - id: SOCLE-GOV-INV-2
    domaine: GOV
    domaine_nom: Gouvernance & conformité
    famille: INV
    famille_nom: Inventaire & cartographie
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - SSDF PO.1
      - NIS2 art.21
    menaces:
      - "Le mainteneur saborde délibérément son propre composant pour des raisons idéologiques ou politiques (protestware) : code destructeur, messages, ou comportements ciblant certains utilisateurs. La confiance accordée au paquet se retourne contre ses consommateurs lors d'une simple mise à jour (cas node-ipc)."
      - Une dépendance est retirée ou dépubliée (unpublish, yank), cassant les builds et poussant à des substitutions hâtives, parfois vers un remplacement malveillant. La disponibilité de la chaîne est attaquée (cas left-pad).
    texte: identification des dépendances et fournisseurs critiques (concentration, points uniques de défaillance).
    preuve: Identification des dépendances et fournisseurs critiques.
    href: "/docs/securiser/socle/referentiel/gouvernance/#socle-gov-inv-2"
  - id: SOCLE-GOV-INV-3
    domaine: GOV
    domaine_nom: Gouvernance & conformité
    famille: INV
    famille_nom: Inventaire & cartographie
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - ISO 27001
      - SSDF PO.1
    menaces:
      - "Un collaborateur autorisé (développeur, ops, admin) abuse de ses accès pour introduire un changement non autorisé dans le code, la configuration ou la chaîne de build. Disposant déjà des droits, il contourne les contrôles d'entrée ; seules la séparation des privilèges, la revue à deux et la traçabilité limitent l'impact."
      - Une dépendance est retirée ou dépubliée (unpublish, yank), cassant les builds et poussant à des substitutions hâtives, parfois vers un remplacement malveillant. La disponibilité de la chaîne est attaquée (cas left-pad).
    texte: inventaire tenu à jour (revue périodique, déclencheurs de mise à jour).
    preuve: Inventaire tenu à jour (revue périodique).
    href: "/docs/securiser/socle/referentiel/gouvernance/#socle-gov-inv-3"
  - id: SOCLE-GOV-POL-1
    domaine: GOV
    domaine_nom: Gouvernance & conformité
    famille: POL
    famille_nom: Politique & responsabilités
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - ISO 27001
      - SSDF PO.2
      - NIS2 art.21
    menaces:
      - "Un collaborateur autorisé (développeur, ops, admin) abuse de ses accès pour introduire un changement non autorisé dans le code, la configuration ou la chaîne de build. Disposant déjà des droits, il contourne les contrôles d'entrée ; seules la séparation des privilèges, la revue à deux et la traçabilité limitent l'impact."
      - "Un artefact légitime est utilisé de façon non prévue ou dans un contexte non sécurisé, créant un risque que la chaîne technique ne couvre pas. La sécurité dépend aussi de l'usage, pas seulement de la fabrication."
    texte: politique de la chaîne logicielle approuvée par la direction, diffusée et revue périodiquement.
    preuve: Politique approuvée par la direction, diffusée et revue.
    href: "/docs/securiser/socle/referentiel/gouvernance/#socle-gov-pol-1"
  - id: SOCLE-GOV-POL-2
    domaine: GOV
    domaine_nom: Gouvernance & conformité
    famille: POL
    famille_nom: Politique & responsabilités
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - ISO 27001
      - SSDF PO.2
    menaces:
      - "Un collaborateur autorisé (développeur, ops, admin) abuse de ses accès pour introduire un changement non autorisé dans le code, la configuration ou la chaîne de build. Disposant déjà des droits, il contourne les contrôles d'entrée ; seules la séparation des privilèges, la revue à deux et la traçabilité limitent l'impact."
    texte: rôles et responsabilités définis (RACI), avec un sponsor au niveau direction.
    preuve: RACI documenté ; sponsor direction.
    href: "/docs/securiser/socle/referentiel/gouvernance/#socle-gov-pol-2"
  - id: SOCLE-GOV-POL-3
    domaine: GOV
    domaine_nom: Gouvernance & conformité
    famille: POL
    famille_nom: Politique & responsabilités
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - SSDF PO.2
      - OWASP SAMM
    menaces:
      - "Un artefact légitime est utilisé de façon non prévue ou dans un contexte non sécurisé, créant un risque que la chaîne technique ne couvre pas. La sécurité dépend aussi de l'usage, pas seulement de la fabrication."
    texte: sensibilisation et formation des équipes (dev, ops, achats) à la sécurité de la chaîne.
    preuve: Plan de formation/sensibilisation à la sécurité de la chaîne.
    href: "/docs/securiser/socle/referentiel/gouvernance/#socle-gov-pol-3"
  - id: SOCLE-GOV-POL-4
    domaine: GOV
    domaine_nom: Gouvernance & conformité
    famille: POL
    famille_nom: Politique & responsabilités
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - NIS2 art.21
      - CRA
    menaces:
      - "Une personne disposant légitimement du droit de publier (mainteneur, éditeur) introduit volontairement une modification nuisible dans le code ou l'artefact. L'attaque vient de l'intérieur de la chaîne de confiance : ni la revue ni la signature ne la détectent, puisque l'auteur est autorisé. Cas typiques : rachat de paquet, compte de mainteneur revendu, contributeur de longue date devenu hostile."
      - "Un artefact légitime est utilisé de façon non prévue ou dans un contexte non sécurisé, créant un risque que la chaîne technique ne couvre pas. La sécurité dépend aussi de l'usage, pas seulement de la fabrication."
    texte: exigences de sécurité de la chaîne intégrées aux marchés et contrats.
    preuve: Clauses de sécurité de la chaîne dans les marchés/contrats.
    href: "/docs/securiser/socle/referentiel/gouvernance/#socle-gov-pol-4"
  - id: SOCLE-GOV-REG-1
    domaine: GOV
    domaine_nom: Gouvernance & conformité
    famille: REG
    famille_nom: Conformité réglementaire
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - CRA
      - NIS2 art.21
      - ReCyF
    menaces:
      - "Une personne disposant légitimement du droit de publier (mainteneur, éditeur) introduit volontairement une modification nuisible dans le code ou l'artefact. L'attaque vient de l'intérieur de la chaîne de confiance : ni la revue ni la signature ne la détectent, puisque l'auteur est autorisé. Cas typiques : rachat de paquet, compte de mainteneur revendu, contributeur de longue date devenu hostile."
    texte: "suivi de conformité CRA et NIS2/ReCyF : écarts identifiés, plan piloté, échéances datées."
    preuve: "Registre de conformité CRA/NIS2/ReCyF : écarts, plan, échéances."
    href: "/docs/securiser/socle/referentiel/gouvernance/#socle-gov-reg-1"
  - id: SOCLE-GOV-REG-2
    domaine: GOV
    domaine_nom: Gouvernance & conformité
    famille: REG
    famille_nom: Conformité réglementaire
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - ISO 27001
      - NIS2 / ReCyF
    menaces:
      - "Une personne disposant légitimement du droit de publier (mainteneur, éditeur) introduit volontairement une modification nuisible dans le code ou l'artefact. L'attaque vient de l'intérieur de la chaîne de confiance : ni la revue ni la signature ne la détectent, puisque l'auteur est autorisé. Cas typiques : rachat de paquet, compte de mainteneur revendu, contributeur de longue date devenu hostile."
    texte: preuves de conformité maintenues et produisibles (posture par domaine, niveau atteint).
    preuve: Preuves de conformité maintenues et produisibles.
    href: "/docs/securiser/socle/referentiel/gouvernance/#socle-gov-reg-2"
  - id: SOCLE-GOV-REG-3
    domaine: GOV
    domaine_nom: Gouvernance & conformité
    famille: REG
    famille_nom: Conformité réglementaire
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils: []
    standards:
      - NIS2 / ReCyF
      - ISO 27001
    menaces:
      - "Une personne disposant légitimement du droit de publier (mainteneur, éditeur) introduit volontairement une modification nuisible dans le code ou l'artefact. L'attaque vient de l'intérieur de la chaîne de confiance : ni la revue ni la signature ne la détectent, puisque l'auteur est autorisé. Cas typiques : rachat de paquet, compte de mainteneur revendu, contributeur de longue date devenu hostile."
    texte: "capacité de produire le dossier d'audit ex ante (ANSSI/ReCyF) en temps limité ; exercice à blanc réalisé."
    preuve: "Exercice d'audit ex ante à blanc réalisé ; dossier produisible en temps limité."
    href: "/docs/securiser/socle/referentiel/gouvernance/#socle-gov-reg-3"
  - id: SOCLE-GOV-RSK-1
    domaine: GOV
    domaine_nom: Gouvernance & conformité
    famille: RSK
    famille_nom: Risque & maturité
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - SSDF PW.1
      - OWASP SAMM
      - MITRE ATT&CK
    menaces:
      - "Une personne disposant légitimement du droit de publier (mainteneur, éditeur) introduit volontairement une modification nuisible dans le code ou l'artefact. L'attaque vient de l'intérieur de la chaîne de confiance : ni la revue ni la signature ne la détectent, puisque l'auteur est autorisé. Cas typiques : rachat de paquet, compte de mainteneur revendu, contributeur de longue date devenu hostile."
      - "Le mainteneur saborde délibérément son propre composant pour des raisons idéologiques ou politiques (protestware) : code destructeur, messages, ou comportements ciblant certains utilisateurs. La confiance accordée au paquet se retourne contre ses consommateurs lors d'une simple mise à jour (cas node-ipc)."
      - "Un collaborateur autorisé (développeur, ops, admin) abuse de ses accès pour introduire un changement non autorisé dans le code, la configuration ou la chaîne de build. Disposant déjà des droits, il contourne les contrôles d'entrée ; seules la séparation des privilèges, la revue à deux et la traçabilité limitent l'impact."
    texte: threat modeling de la chaîne logicielle réalisé, tenu à jour et relié au corpus de menaces.
    preuve: Threat model de la chaîne, à jour, relié au corpus de menaces.
    href: "/docs/securiser/socle/referentiel/gouvernance/#socle-gov-rsk-1"
  - id: SOCLE-GOV-RSK-2
    domaine: GOV
    domaine_nom: Gouvernance & conformité
    famille: RSK
    famille_nom: Risque & maturité
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP SAMM
      - OWASP DSOMM
    menaces:
      - "Une personne disposant légitimement du droit de publier (mainteneur, éditeur) introduit volontairement une modification nuisible dans le code ou l'artefact. L'attaque vient de l'intérieur de la chaîne de confiance : ni la revue ni la signature ne la détectent, puisque l'auteur est autorisé. Cas typiques : rachat de paquet, compte de mainteneur revendu, contributeur de longue date devenu hostile."
    texte: maturité mesurée (SAMM/DSOMM) avec trajectoire et métriques suivies.
    preuve: Évaluation de maturité (SAMM/DSOMM) et trajectoire.
    href: "/docs/securiser/socle/referentiel/gouvernance/#socle-gov-rsk-2"
  - id: SOCLE-GOV-RSK-3
    domaine: GOV
    domaine_nom: Gouvernance & conformité
    famille: RSK
    famille_nom: Risque & maturité
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - ISO 27001
      - OWASP SAMM
    menaces:
      - "Une personne disposant légitimement du droit de publier (mainteneur, éditeur) introduit volontairement une modification nuisible dans le code ou l'artefact. L'attaque vient de l'intérieur de la chaîne de confiance : ni la revue ni la signature ne la détectent, puisque l'auteur est autorisé. Cas typiques : rachat de paquet, compte de mainteneur revendu, contributeur de longue date devenu hostile."
    texte: indicateurs de risque de la chaîne (KRI) suivis et reportés à la direction.
    preuve: Tableau de bord des indicateurs de risque (KRI) reportés à la direction.
    href: "/docs/securiser/socle/referentiel/gouvernance/#socle-gov-rsk-3"
  - id: SOCLE-IA-GEN-1
    domaine: IA
    domaine_nom: IA dans le SDLC
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils: []
    outils:
      - Semgrep
      - OSV-Scanner
    standards:
      - ISO 42001
      - NIST AI RMF (MAP)
    menaces:
      - "Une bibliothèque de l'écosystème IA (serving, orchestration, agents) est compromise comme n'importe quelle dépendance, mais avec un accès privilégié aux données et aux modèles. La surface supply chain classique appliquée à la pile IA."
      - "Un outil, skill ou serveur MCP exposé à un agent est piégé pour exécuter des actions malveillantes ou exfiltrer des données lorsqu'il est invoqué. L'agent, en appelant l'outil de confiance, déclenche la charge (ATLAS)."
    texte: "inventaire des usages d'IA dans le SDLC (assistants, agents, modèles)."
    preuve: "Inventaire des usages d'IA dans le SDLC (assistants, agents, modèles)."
    href: "/docs/securiser/socle/referentiel/ia/#socle-ia-gen-1"
  - id: SOCLE-IA-GEN-2
    domaine: IA
    domaine_nom: IA dans le SDLC
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils: []
    outils:
      - Semgrep
      - OSV-Scanner
    standards:
      - OWASP AISVS
      - NIST 800-218A
    menaces:
      - Un modèle ou artefact ML téléchargé contient une charge (poids piégés, code de désérialisation) exécutée au chargement ou produisant des sorties dangereuses. Le modèle est une dépendance à part entière, rarement vérifiée.
      - "Une instruction malveillante, fournie directement ou cachée dans un contenu consommé par le modèle, détourne son comportement (exfiltration, actions non voulues). L'injection de prompt est la faille structurelle des systèmes à LLM (OWASP LLM01, ATLAS AML.T0051)."
    texte: "revue de sécurité des suggestions / sorties d'IA avant intégration."
    preuve: "Procédure de revue de sécurité des sorties d'IA avant intégration."
    href: "/docs/securiser/socle/referentiel/ia/#socle-ia-gen-2"
  - id: SOCLE-IA-GEN-3
    domaine: IA
    domaine_nom: IA dans le SDLC
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils: []
    outils:
      - Semgrep
      - OSV-Scanner
    standards:
      - OWASP LLM Top 10
      - OWASP Agentic Top 10
      - MITRE ATLAS
    menaces:
      - "Une instruction malveillante, fournie directement ou cachée dans un contenu consommé par le modèle, détourne son comportement (exfiltration, actions non voulues). L'injection de prompt est la faille structurelle des systèmes à LLM (OWASP LLM01, ATLAS AML.T0051)."
      - "Une source indexée par un système RAG est empoisonnée pour injecter de fausses informations ou des instructions cachées dans le contexte du modèle. La base de connaissances de confiance devient un vecteur d'injection indirecte."
    texte: maîtrise des risques LLM / agentiques (injection, exécution non sûre).
    preuve: Mesures de maîtrise des risques LLM/agentiques (injection, exécution non sûre).
    href: "/docs/securiser/socle/referentiel/ia/#socle-ia-gen-3"
  - id: SOCLE-IA-GEN-4
    domaine: IA
    domaine_nom: IA dans le SDLC
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils: []
    outils:
      - Semgrep
      - OSV-Scanner
    standards:
      - OWASP AISVS
      - OWASP ASVS v5.0.0
    menaces:
      - "Une instruction malveillante, fournie directement ou cachée dans un contenu consommé par le modèle, détourne son comportement (exfiltration, actions non voulues). L'injection de prompt est la faille structurelle des systèmes à LLM (OWASP LLM01, ATLAS AML.T0051)."
    texte: "l'augmentation par IA n'affaiblit pas les garde-fous CI/CD existants."
    preuve: "Preuve que les garde-fous CI/CD restent effectifs avec l'augmentation par IA."
    href: "/docs/securiser/socle/referentiel/ia/#socle-ia-gen-4"
  - id: SOCLE-IA-GEN-5
    domaine: IA
    domaine_nom: IA dans le SDLC
    famille: GEN
    famille_nom: Exigences générales
    niveau: R3
    devoir: DEVRAIT
    essentielle: true
    souverain: true
    profils:
      - souverain
    outils: []
    standards:
      - ISO 42001
    menaces:
      - "Une instruction malveillante, fournie directement ou cachée dans un contenu consommé par le modèle, détourne son comportement (exfiltration, actions non voulues). L'injection de prompt est la faille structurelle des systèmes à LLM (OWASP LLM01, ATLAS AML.T0051)."
      - "Un agent ou un système RAG est manipulé pour collecter et exfiltrer des secrets accessibles via son contexte, ses outils ou sa configuration. Les droits étendus de l'agent en font un collecteur de credentials."
    texte: serving IA souverain (auto-hébergé) pour les données sensibles, sur infrastructure approuvée et listée au périmètre.
    preuve: "Configuration de serving souverain (self-hosté) pour données sensibles ; absence d'exfiltration."
    href: "/docs/securiser/socle/referentiel/ia/#socle-ia-gen-5"
  - id: SOCLE-IA-GEN-6
    domaine: IA
    domaine_nom: IA dans le SDLC
    famille: GEN
    famille_nom: Exigences générales
    niveau: R3
    devoir: DEVRAIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils:
      - Cilium
    standards:
      - ISO 42001
    menaces:
      - "Un agent ou un système RAG est manipulé pour collecter et exfiltrer des secrets accessibles via son contexte, ses outils ou sa configuration. Les droits étendus de l'agent en font un collecteur de credentials."
    texte: "flux sortants du service d'inférence IA filtrés et journalisés (prévention d'exfiltration)."
    preuve: "Politique réseau egress du service d'inférence + journaux des flux sortants."
    href: "/docs/securiser/socle/referentiel/ia/#socle-ia-gen-6"
  - id: SOCLE-IA-GVN-1
    domaine: IA
    domaine_nom: IA dans le SDLC
    famille: GVN
    famille_nom: Gouvernance & inventaire des usages IA
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - ISO 42001
      - NIST AI RMF (GOVERN)
    menaces:
      - "Une instruction malveillante, fournie directement ou cachée dans un contenu consommé par le modèle, détourne son comportement (exfiltration, actions non voulues). L'injection de prompt est la faille structurelle des systèmes à LLM (OWASP LLM01, ATLAS AML.T0051)."
    texte: "politique d'usage de l'IA (cas autorisés, données permises, responsabilités)."
    preuve: "Politique d'usage de l'IA documentée (cas autorisés, données, responsabilités)."
    href: "/docs/securiser/socle/referentiel/ia/#socle-ia-gvn-1"
  - id: SOCLE-IA-GVN-2
    domaine: IA
    domaine_nom: IA dans le SDLC
    famille: GVN
    famille_nom: Gouvernance & inventaire des usages IA
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - NIST AI RMF
      - ISO 42001
    menaces:
      - Un modèle ou artefact ML téléchargé contient une charge (poids piégés, code de désérialisation) exécutée au chargement ou produisant des sorties dangereuses. Le modèle est une dépendance à part entière, rarement vérifiée.
      - "Une instruction malveillante, fournie directement ou cachée dans un contenu consommé par le modèle, détourne son comportement (exfiltration, actions non voulues). L'injection de prompt est la faille structurelle des systèmes à LLM (OWASP LLM01, ATLAS AML.T0051)."
    texte: évaluation des risques IA par usage (criticité, impact).
    preuve: Évaluation des risques IA par usage.
    href: "/docs/securiser/socle/referentiel/ia/#socle-ia-gvn-2"
  - id: SOCLE-IA-LLM-1
    domaine: IA
    domaine_nom: IA dans le SDLC
    famille: LLM
    famille_nom: Risques LLM & agentiques
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP LLM Top 10
      - MITRE ATLAS
    menaces:
      - "Une instruction malveillante, fournie directement ou cachée dans un contenu consommé par le modèle, détourne son comportement (exfiltration, actions non voulues). L'injection de prompt est la faille structurelle des systèmes à LLM (OWASP LLM01, ATLAS AML.T0051)."
      - "Une source indexée par un système RAG est empoisonnée pour injecter de fausses informations ou des instructions cachées dans le contexte du modèle. La base de connaissances de confiance devient un vecteur d'injection indirecte."
    texte: maîtrise des risques LLM (injection de prompt, fuite de données, sorties non sûres).
    preuve: Mesures de maîtrise des risques LLM (injection, fuite, sorties).
    href: "/docs/securiser/socle/referentiel/ia/#socle-ia-llm-1"
  - id: SOCLE-IA-LLM-2
    domaine: IA
    domaine_nom: IA dans le SDLC
    famille: LLM
    famille_nom: Risques LLM & agentiques
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP Agentic Top 10
      - MITRE ATLAS
    menaces:
      - "Un outil, skill ou serveur MCP exposé à un agent est piégé pour exécuter des actions malveillantes ou exfiltrer des données lorsqu'il est invoqué. L'agent, en appelant l'outil de confiance, déclenche la charge (ATLAS)."
    texte: "maîtrise des risques agentiques (exécution d'outils, actions non autorisées, périmètre)."
    preuve: Mesures de maîtrise des risques agentiques (outils, actions, périmètre).
    href: "/docs/securiser/socle/referentiel/ia/#socle-ia-llm-2"
  - id: SOCLE-IA-LLM-3
    domaine: IA
    domaine_nom: IA dans le SDLC
    famille: LLM
    famille_nom: Risques LLM & agentiques
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - NIST 800-207
      - OWASP Agentic Top 10
    menaces:
      - "Un outil, skill ou serveur MCP exposé à un agent est piégé pour exécuter des actions malveillantes ou exfiltrer des données lorsqu'il est invoqué. L'agent, en appelant l'outil de confiance, déclenche la charge (ATLAS)."
      - "La configuration d'un agent IA est modifiée pour installer une instruction ou un outil persistant, réactivé à chaque exécution. La persistance s'installe dans la configuration plutôt que dans le code (ATLAS Modify AI Agent Configuration)."
      - "Un agent ou un système RAG est manipulé pour collecter et exfiltrer des secrets accessibles via son contexte, ses outils ou sa configuration. Les droits étendus de l'agent en font un collecteur de credentials."
    texte: moindre privilège et confinement des agents IA (outils, secrets, réseau).
    preuve: Confinement des agents IA (outils, secrets, réseau) au moindre privilège.
    href: "/docs/securiser/socle/referentiel/ia/#socle-ia-llm-3"
  - id: SOCLE-IA-LLM-4
    domaine: IA
    domaine_nom: IA dans le SDLC
    famille: LLM
    famille_nom: Risques LLM & agentiques
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP Agentic Top 10
      - ISO 42001
    menaces:
      - "Une instruction malveillante, fournie directement ou cachée dans un contenu consommé par le modèle, détourne son comportement (exfiltration, actions non voulues). L'injection de prompt est la faille structurelle des systèmes à LLM (OWASP LLM01, ATLAS AML.T0051)."
      - "Un outil, skill ou serveur MCP exposé à un agent est piégé pour exécuter des actions malveillantes ou exfiltrer des données lorsqu'il est invoqué. L'agent, en appelant l'outil de confiance, déclenche la charge (ATLAS)."
    texte: "validation humaine des actions sensibles d'un agent (human-in-the-loop)."
    preuve: "Validation humaine des actions sensibles d'un agent."
    href: "/docs/securiser/socle/referentiel/ia/#socle-ia-llm-4"
  - id: SOCLE-IA-MLB-1
    domaine: IA
    domaine_nom: IA dans le SDLC
    famille: MLB
    famille_nom: Chaîne ML & provenance des modèles (MLBOM)
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - cdxgen
    standards:
      - CycloneDX (ECMA-424)
      - ISO 42001
    menaces:
      - "Des données d'entraînement sont manipulées pour induire un comportement malveillant ou biaisé dans le modèle résultant (ATLAS AML.T0020). La compromission est en amont, dans le jeu de données, invisible à l'inspection du modèle seul."
    texte: inventaire des modèles, jeux de données et dépendances ML (MLBOM).
    preuve: "MLBOM : inventaire des modèles, datasets et dépendances ML."
    href: "/docs/securiser/socle/referentiel/ia/#socle-ia-mlb-1"
  - id: SOCLE-IA-MLB-2
    domaine: IA
    domaine_nom: IA dans le SDLC
    famille: MLB
    famille_nom: Chaîne ML & provenance des modèles (MLBOM)
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - cdxgen
    standards:
      - SLSA
      - Sigstore
      - S2C2F
    menaces:
      - Un modèle ou artefact ML téléchargé contient une charge (poids piégés, code de désérialisation) exécutée au chargement ou produisant des sorties dangereuses. Le modèle est une dépendance à part entière, rarement vérifiée.
      - "Une bibliothèque de l'écosystème IA (serving, orchestration, agents) est compromise comme n'importe quelle dépendance, mais avec un accès privilégié aux données et aux modèles. La surface supply chain classique appliquée à la pile IA."
    texte: provenance et intégrité des modèles consommés (origine, signature/empreinte).
    preuve: Provenance et intégrité des modèles consommés (signature/empreinte).
    href: "/docs/securiser/socle/referentiel/ia/#socle-ia-mlb-2"
  - id: SOCLE-IA-MLB-3
    domaine: IA
    domaine_nom: IA dans le SDLC
    famille: MLB
    famille_nom: Chaîne ML & provenance des modèles (MLBOM)
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - cdxgen
    standards:
      - ISO 42001
      - MITRE ATLAS
    menaces:
      - "Des données d'entraînement sont manipulées pour induire un comportement malveillant ou biaisé dans le modèle résultant (ATLAS AML.T0020). La compromission est en amont, dans le jeu de données, invisible à l'inspection du modèle seul."
      - Un modèle ou artefact ML téléchargé contient une charge (poids piégés, code de désérialisation) exécutée au chargement ou produisant des sorties dangereuses. Le modèle est une dépendance à part entière, rarement vérifiée.
    texte: évaluation des modèles / jeux de données tiers (licence, biais, empoisonnement).
    preuve: Évaluation des modèles/datasets tiers (licence, biais, empoisonnement).
    href: "/docs/securiser/socle/referentiel/ia/#socle-ia-mlb-3"
  - id: SOCLE-IA-MLB-4
    domaine: IA
    domaine_nom: IA dans le SDLC
    famille: MLB
    famille_nom: Chaîne ML & provenance des modèles (MLBOM)
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils:
      - cdxgen
    standards:
      - SLSA
      - ISO 42001
    menaces:
      - Un modèle ou artefact ML téléchargé contient une charge (poids piégés, code de désérialisation) exécutée au chargement ou produisant des sorties dangereuses. Le modèle est une dépendance à part entière, rarement vérifiée.
    texte: "provenance vérifiable de la chaîne d'entraînement pour les modèles sensibles."
    preuve: "Provenance vérifiable de la chaîne d'entraînement pour modèles sensibles."
    href: "/docs/securiser/socle/referentiel/ia/#socle-ia-mlb-4"
  - id: SOCLE-IA-REV-1
    domaine: IA
    domaine_nom: IA dans le SDLC
    famille: REV
    famille_nom: "Revue & garde-fous d'intégration"
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - NIST 800-218A
      - SLSA (Source)
    menaces:
      - "Une donnée contrôlée par l'attaquant (titre de PR, nom de branche, message de commit) est interpolée sans échappement dans un script de workflow, provoquant une exécution de commande dans le pipeline. C'est l'injection classique portée au CI."
      - "Une instruction malveillante, fournie directement ou cachée dans un contenu consommé par le modèle, détourne son comportement (exfiltration, actions non voulues). L'injection de prompt est la faille structurelle des systèmes à LLM (OWASP LLM01, ATLAS AML.T0051)."
    texte: traçabilité du code généré par IA (origine, revue) dans la provenance.
    preuve: Traçabilité du code généré par IA dans la provenance.
    href: "/docs/securiser/socle/referentiel/ia/#socle-ia-rev-1"
  - id: SOCLE-IA-REV-2
    domaine: IA
    domaine_nom: IA dans le SDLC
    famille: REV
    famille_nom: "Revue & garde-fous d'intégration"
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - SSDF PW.7
      - OWASP AISVS
    menaces:
      - "Une donnée contrôlée par l'attaquant (titre de PR, nom de branche, message de commit) est interpolée sans échappement dans un script de workflow, provoquant une exécution de commande dans le pipeline. C'est l'injection classique portée au CI."
      - "Une instruction malveillante, fournie directement ou cachée dans un contenu consommé par le modèle, détourne son comportement (exfiltration, actions non voulues). L'injection de prompt est la faille structurelle des systèmes à LLM (OWASP LLM01, ATLAS AML.T0051)."
    texte: SAST/SCA appliqués au code généré par IA comme à tout autre code.
    preuve: SAST/SCA appliqués au code généré par IA.
    href: "/docs/securiser/socle/referentiel/ia/#socle-ia-rev-2"
  - id: SOCLE-IA-SOV-1
    domaine: IA
    domaine_nom: IA dans le SDLC
    famille: SOV
    famille_nom: Souveraineté & confidentialité
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - ISO 42001
      - NIST AI RMF
    menaces:
      - "Une instruction malveillante, fournie directement ou cachée dans un contenu consommé par le modèle, détourne son comportement (exfiltration, actions non voulues). L'injection de prompt est la faille structurelle des systèmes à LLM (OWASP LLM01, ATLAS AML.T0051)."
      - "Un agent ou un système RAG est manipulé pour collecter et exfiltrer des secrets accessibles via son contexte, ses outils ou sa configuration. Les droits étendus de l'agent en font un collecteur de credentials."
    texte: "maîtrise des données envoyées aux services d'IA (pas de données sensibles non autorisées)."
    preuve: "Contrôle des données envoyées aux services d'IA."
    href: "/docs/securiser/socle/referentiel/ia/#socle-ia-sov-1"
  - id: SOCLE-INT-ACT-1
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: ACT
    famille_nom: "Chaîne d'outils & actions CI"
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - zizmor
      - poutine
    standards:
      - OWASP CICD-SEC-2
      - OWASP CICD-SEC-5
    menaces:
      - "Poisoned Pipeline Execution directe : l'attaquant modifie la définition du pipeline (fichier de CI) pour y injecter des commandes exécutées avec les privilèges du build. Le contrôle du fichier de workflow donne le contrôle de l'exécution."
      - "Pendant un job, l'attaquant lit en mémoire le jeton OIDC court ou les identifiants fédérés pour s'authentifier auprès de services en aval. L'éphémérité du jeton ne protège pas si le job lui-même est compromis."
    texte: permissions minimales des jobs CI (jeton scopé en lecture par défaut).
    preuve: Configuration des permissions de jobs CI (jeton en lecture par défaut).
    href: "/docs/securiser/socle/referentiel/integration/chaine-d-outils-actions-ci/#socle-int-act-1"
  - id: SOCLE-INT-ACT-2
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: ACT
    famille_nom: "Chaîne d'outils & actions CI"
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - zizmor
      - poutine
    standards:
      - OWASP CICD-SEC-4
      - OWASP CICD-SEC-1
    menaces:
      - "Une donnée contrôlée par l'attaquant (titre de PR, nom de branche, message de commit) est interpolée sans échappement dans un script de workflow, provoquant une exécution de commande dans le pipeline. C'est l'injection classique portée au CI."
    texte: analyse statique des workflows CI (détection de schémas dangereux).
    preuve: "Rapport d'analyse statique des workflows CI."
    href: "/docs/securiser/socle/referentiel/integration/chaine-d-outils-actions-ci/#socle-int-act-2"
  - id: SOCLE-INT-BLD-1
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: BLD
    famille_nom: Build sécurisé & provenance
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - slsa-github-generator
    standards:
      - SLSA Build L2
      - NIST 800-204D
      - SSDF PW.6
    menaces:
      - "Le build est lancé depuis une source ou un fork non officiel, produisant un artefact d'apparence légitime à partir de code non vérifié. L'origine du build n'est pas garantie sans provenance liant artefact et source."
    texte: build sur plateforme hébergée, tracée et isolée, générant une provenance.
    preuve: Plateforme de build hébergée et tracée ; provenance générée.
    href: "/docs/securiser/socle/referentiel/integration/build-securise-provenance/#socle-int-bld-1"
  - id: SOCLE-INT-BLD-2
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: BLD
    famille_nom: Build sécurisé & provenance
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - slsa-github-generator
    standards:
      - SLSA Build L2-L3
      - in-toto
    menaces:
      - "Le build est lancé depuis une source ou un fork non officiel, produisant un artefact d'apparence légitime à partir de code non vérifié. L'origine du build n'est pas garantie sans provenance liant artefact et source."
      - "L'attestation de provenance est forgée ou altérée pour faire croire qu'un artefact provient d'un build légitime. Sans provenance non falsifiable (build isolé, signature), la traçabilité est trompeuse."
    texte: "provenance d'artefact générée et attachée (in-toto), vérifiable par les consommateurs."
    preuve: Attestation de provenance in-toto attachée et vérifiable.
    href: "/docs/securiser/socle/referentiel/integration/build-securise-provenance/#socle-int-bld-2"
  - id: SOCLE-INT-BLD-3
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: BLD
    famille_nom: Build sécurisé & provenance
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils:
      - Bazel
    standards:
      - SLSA Build L3
      - ANSSI
    menaces:
      - "Un attaquant écrit dans un cache partagé du CI (dépendances, couches d'image, artefacts intermédiaires) une charge réutilisée par d'autres builds. Le cache, supposé sûr, propage la compromission entre exécutions ou projets."
      - "Le build est lancé depuis une source ou un fork non officiel, produisant un artefact d'apparence légitime à partir de code non vérifié. L'origine du build n'est pas garantie sans provenance liant artefact et source."
    texte: "build hermétique et isolé (dépendances pré-fetchées, pas d'accès réseau non maîtrisé) pour les artefacts sensibles."
    preuve: Preuve de build hermétique/isolé (dépendances pré-fetchées, réseau maîtrisé).
    href: "/docs/securiser/socle/referentiel/integration/build-securise-provenance/#socle-int-bld-3"
  - id: SOCLE-INT-BLD-4
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: BLD
    famille_nom: Build sécurisé & provenance
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - slsa-github-generator
    standards:
      - SLSA
      - SSDF PW.6
    menaces:
      - Un installeur officiel et signé est modifié à la source ou au build pour embarquer une charge, distribué via le canal légitime (cas CCleaner, 3CX). La signature valide endort la méfiance.
    texte: build reproductible (résultat déterministe vérifiable).
    preuve: Attestation de reproductibilité du build.
    href: "/docs/securiser/socle/referentiel/integration/build-securise-provenance/#socle-int-bld-4"
  - id: SOCLE-INT-DEP-1
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: DEP
    famille_nom: Inventaire & composition des dépendances
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OSV-Scanner
      - Trivy
      - Dependency-Track
      - Renovate
    standards:
      - OWASP A03
      - S2C2F
      - OSV
      - OWASP SCVS
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
    texte: inventaire des dépendances directes et transitives à chaque build (analyse de composition).
    preuve: Rapport SCA listant dépendances directes et transitives à chaque build.
    href: "/docs/securiser/socle/referentiel/integration/inventaire-composition-des-dependances/#socle-int-dep-1"
  - id: SOCLE-INT-DEP-2
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: DEP
    famille_nom: Inventaire & composition des dépendances
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OSV-Scanner
      - Trivy
      - Dependency-Track
      - Renovate
    standards:
      - CRA
      - CycloneDX (ECMA-424)
      - SPDX
      - SSDF PS.3
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
    texte: SBOM de build généré et conservé pour chaque artefact.
    preuve: SBOM de build (CycloneDX/SPDX) conservé par artefact.
    href: "/docs/securiser/socle/referentiel/integration/inventaire-composition-des-dependances/#socle-int-dep-2"
  - id: SOCLE-INT-DEP-3
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: DEP
    famille_nom: Inventaire & composition des dépendances
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OSV-Scanner
      - Trivy
      - Dependency-Track
      - Renovate
    standards:
      - S2C2F
      - SLSA
      - OWASP SCVS
    menaces:
      - "Un paquet public est publié sous le nom d'un paquet interne ; le gestionnaire, mal configuré, préfère la version publique de plus haut numéro et tire le code de l'attaquant. La confusion entre registre interne et public livre l'exécution au build."
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
    texte: graphe de provenance des dépendances (origine, intégrité) tracé.
    preuve: Graphe de provenance des dépendances (origine, intégrité).
    href: "/docs/securiser/socle/referentiel/integration/inventaire-composition-des-dependances/#socle-int-dep-3"
  - id: SOCLE-INT-GEN-1
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - OSV-Scanner
      - Trivy
    standards:
      - OWASP A03
      - S2C2F
      - OSV
      - CNCF SSC (Materials & Build)
      - Microsoft SDL
      - SAFECode
      - PCI-DSS Req 6
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
      - "Une bibliothèque de l'écosystème IA (serving, orchestration, agents) est compromise comme n'importe quelle dépendance, mais avec un accès privilégié aux données et aux modèles. La surface supply chain classique appliquée à la pile IA."
    texte: analyse de composition (SCA) des dépendances à chaque build.
    preuve: "Rapport d'analyse de composition (SCA) produit à chaque build."
    href: "/docs/securiser/socle/referentiel/integration/#socle-int-gen-1"
  - id: SOCLE-INT-GEN-10
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils:
      - paiement
    outils:
      - OSV-Scanner
      - Trivy
    standards:
      - CIS Benchmarks
      - SLSA
      - OWASP CICD-SEC-9
      - CNCF SSC (Materials & Build)
      - Microsoft SDL
      - SAFECode
      - PCI-DSS Req 6
    menaces:
      - "L'image de base utilisée pour construire les conteneurs contient une charge malveillante ou une vulnérabilité, héritée par tous les artefacts qui en dérivent. Le socle d'exécution contamine toute la production."
      - "Une version malveillante persiste dans des miroirs ou caches même après retrait à la source, continuant d'être servie aux clients qui s'y approvisionnent. Le retrait à la source ne suffit pas à éradiquer la menace."
    texte: provenance et builder des images de base vérifiés avant usage.
    preuve: Vérification de provenance/builder tracée pour les images de base.
    href: "/docs/securiser/socle/referentiel/integration/#socle-int-gen-10"
  - id: SOCLE-INT-GEN-11
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils:
      - paiement
    outils:
      - OSV-Scanner
      - Trivy
    standards:
      - CIS Benchmarks
      - SLSA
      - OWASP CICD-SEC-9
      - CNCF SSC (Materials & Build)
      - Microsoft SDL
      - SAFECode
      - PCI-DSS Req 6
    menaces:
      - "L'image de base utilisée pour construire les conteneurs contient une charge malveillante ou une vulnérabilité, héritée par tous les artefacts qui en dérivent. Le socle d'exécution contamine toute la production."
    texte: images analysées (malware et secrets, pas seulement CVE) avant usage.
    preuve: Rapport de scan image (malware + secrets) avant promotion.
    href: "/docs/securiser/socle/referentiel/integration/#socle-int-gen-11"
  - id: SOCLE-INT-GEN-2
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - OSV-Scanner
      - Trivy
    standards:
      - S2C2F
      - OWASP CICD-SEC-3
      - SLSA
      - CNCF SSC (Materials & Build)
      - Microsoft SDL
      - SAFECode
      - PCI-DSS Req 6
    menaces:
      - "Un paquet public est publié sous le nom d'un paquet interne ; le gestionnaire, mal configuré, préfère la version publique de plus haut numéro et tire le code de l'attaquant. La confusion entre registre interne et public livre l'exécution au build."
      - "Une bibliothèque applicative porteuse d'une vulnérabilité connue est exploitée faute de détection (SCA) et de mise à jour. L'absence d'inventaire et de correctif transforme une CVE publique en brèche (cas Log4Shell, Equifax)."
    texte: versions verrouillées (lockfiles) ; provenance des dépendances maîtrisée.
    preuve: Lockfiles versionnés ; configuration de provenance des dépendances.
    href: "/docs/securiser/socle/referentiel/integration/#socle-int-gen-2"
  - id: SOCLE-INT-GEN-3
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - OSV-Scanner
      - Trivy
    standards:
      - S2C2F
      - OWASP CICD-SEC-3
      - CNCF SSC (Materials & Build)
      - Microsoft SDL
      - SAFECode
      - PCI-DSS Req 6
    menaces:
      - "Un paquet public est publié sous le nom d'un paquet interne ; le gestionnaire, mal configuré, préfère la version publique de plus haut numéro et tire le code de l'attaquant. La confusion entre registre interne et public livre l'exécution au build."
      - Une dépendance est retirée ou dépubliée (unpublish, yank), cassant les builds et poussant à des substitutions hâtives, parfois vers un remplacement malveillant. La disponibilité de la chaîne est attaquée (cas left-pad).
      - "Le registre de paquets ou un miroir est compromis, permettant d'altérer ou de substituer des artefacts pour tous ses utilisateurs. L'infrastructure de distribution devient le point de défaillance unique."
      - "Une version malveillante persiste dans des miroirs ou caches même après retrait à la source, continuant d'être servie aux clients qui s'y approvisionnent. Le retrait à la source ne suffit pas à éradiquer la menace."
    texte: consommation OSS via miroir/proxy interne contrôlé (pas de tirage direct non filtré).
    preuve: "Configuration du miroir/proxy interne ; preuve d'absence de tirage direct non filtré."
    href: "/docs/securiser/socle/referentiel/integration/#socle-int-gen-3"
  - id: SOCLE-INT-GEN-4
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - OSV-Scanner
      - Trivy
    standards:
      - OWASP ASVS v5.0.0
      - SSDF PW.7
      - SSDF PW.8
      - CNCF SSC (Materials & Build)
      - Microsoft SDL
      - SAFECode
      - PCI-DSS Req 6
    menaces:
      - "Une donnée contrôlée par l'attaquant (titre de PR, nom de branche, message de commit) est interpolée sans échappement dans un script de workflow, provoquant une exécution de commande dans le pipeline. C'est l'injection classique portée au CI."
      - "Un plugin ou une extension de l'outil de build (Gradle, Maven, bundler) exécute du code au moment de la construction, hors de toute revue du code applicatif. Le build devient un vecteur d'exécution tierce."
    texte: SAST intégré au pipeline, seuils bloquants sur criticités hautes.
    preuve: Intégration SAST au pipeline ; seuils bloquants configurés sur criticités hautes.
    href: "/docs/securiser/socle/referentiel/integration/#socle-int-gen-4"
  - id: SOCLE-INT-GEN-5
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - OSV-Scanner
      - Trivy
    standards:
      - S2C2F
      - OSV
      - OWASP A03
      - CNCF SSC (Materials & Build)
      - Microsoft SDL
      - SAFECode
      - PCI-DSS Req 6
    menaces:
      - "Le mainteneur saborde délibérément son propre composant pour des raisons idéologiques ou politiques (protestware) : code destructeur, messages, ou comportements ciblant certains utilisateurs. La confiance accordée au paquet se retourne contre ses consommateurs lors d'une simple mise à jour (cas node-ipc)."
      - "Un paquet malveillant porte un nom très proche d'un paquet légitime (faute de frappe, tiret, ordre des mots) pour être installé par erreur. L'attaque mise sur l'inattention au moment d'ajouter une dépendance."
      - "L'attaquant usurpe la réputation d'un projet légitime (nom de marque, étoiles, métadonnées pointant vers un dépôt populaire) pour faire passer un paquet malveillant pour de confiance. La crédibilité empruntée trompe l'évaluation."
      - "Le consommateur choisit, par erreur ou tromperie, un paquet ou une version différente de celle voulue (homonyme, mauvais canal, mauvaise version). L'erreur de sélection court-circuite toutes les protections en amont."
      - "Une bibliothèque de l'écosystème IA (serving, orchestration, agents) est compromise comme n'importe quelle dépendance, mais avec un accès privilégié aux données et aux modèles. La surface supply chain classique appliquée à la pile IA."
    texte: "détection des dépendances malveillantes / typosquatting (analyse comportementale, pas seulement CVE) ; délai de quarantaine (cooldown) avant adoption d'une nouvelle version."
    preuve: Outil de détection de dépendances malveillantes/typosquatting ; politique de cooldown configurée.
    href: "/docs/securiser/socle/referentiel/integration/#socle-int-gen-5"
  - id: SOCLE-INT-GEN-6
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - OSV-Scanner
      - Trivy
    standards:
      - SLSA Build L2
      - CNCF SSC (Materials & Build)
      - Microsoft SDL
      - SAFECode
      - PCI-DSS Req 6
    menaces:
      - "Le build est lancé depuis une source ou un fork non officiel, produisant un artefact d'apparence légitime à partir de code non vérifié. L'origine du build n'est pas garantie sans provenance liant artefact et source."
      - "Le build est compromis en amont, si bien que la provenance est techniquement valide mais atteste d'un artefact malveillant. La provenance prouve l'origine, pas l'innocuité : un build corrompu produit une attestation correcte d'un mauvais résultat."
    texte: build sur plateforme hébergée et tracée, générant une provenance.
    preuve: Plateforme de build hébergée et tracée ; provenance générée.
    href: "/docs/securiser/socle/referentiel/integration/#socle-int-gen-6"
  - id: SOCLE-INT-GEN-7
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - OSV-Scanner
      - Trivy
    standards:
      - CIS Benchmarks
      - SLSA
      - OWASP CICD-SEC-9
      - CNCF SSC (Materials & Build)
      - Microsoft SDL
      - SAFECode
      - PCI-DSS Req 6
    menaces:
      - "Un attaquant écrit dans un cache partagé du CI (dépendances, couches d'image, artefacts intermédiaires) une charge réutilisée par d'autres builds. Le cache, supposé sûr, propage la compromission entre exécutions ou projets."
      - "L'image de base utilisée pour construire les conteneurs contient une charge malveillante ou une vulnérabilité, héritée par tous les artefacts qui en dérivent. Le socle d'exécution contamine toute la production."
      - "Un tag mutable (latest, une version) est réécrit pour pointer vers un artefact malveillant, livré aux consommateurs qui font confiance au tag plutôt qu'au digest. La mutabilité brise l'immuabilité attendue d'une version publiée."
      - "L'attaquant publie avec des identifiants d'éditeur valides (volés ou détournés), rendant la publication indistinguable d'une légitime côté registre. La détection repose alors sur le comportement, pas sur l'authentification."
      - Le canal par lequel le logiciel est distribué (site de téléchargement, CDN, miroir, mise à jour) est compromis pour livrer une version trojanisée aux utilisateurs finaux. La compromission frappe en aval de la production, au plus près des victimes.
      - "Une version malveillante persiste dans des miroirs ou caches même après retrait à la source, continuant d'être servie aux clients qui s'y approvisionnent. Le retrait à la source ne suffit pas à éradiquer la menace."
    texte: "images de base et d'outils CI épinglées par digest (jamais de tag mutable)."
    preuve: Images CI épinglées par digest ; vérification de provenance/builder ; scan malware.
    href: "/docs/securiser/socle/referentiel/integration/#socle-int-gen-7"
  - id: SOCLE-INT-GEN-8
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - OSV-Scanner
      - Trivy
    standards:
      - OWASP CICD-SEC-3
      - OWASP CICD-SEC-4
      - CNCF SSC (Materials & Build)
      - Microsoft SDL
      - SAFECode
      - PCI-DSS Req 6
    menaces:
      - "Une action ou un step tiers référencé par tag mutable (non épinglé par digest) est remplacé par une version malveillante, exécutée dans tous les pipelines qui l'utilisent. Le défaut d'épinglage transforme une dépendance CI en porte dérobée (cas tj-actions)."
    texte: actions/steps CI tiers épinglés par commit SHA, depuis une liste autorisée.
    preuve: Actions/steps tiers épinglés par commit SHA ; liste autorisée.
    href: "/docs/securiser/socle/referentiel/integration/#socle-int-gen-8"
  - id: SOCLE-INT-GEN-9
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - OSV-Scanner
      - Trivy
    standards:
      - OWASP CICD-SEC-4
      - LOTP
      - CNCF SSC (Materials & Build)
      - Microsoft SDL
      - SAFECode
      - PCI-DSS Req 6
    menaces:
      - "Un linter, formateur, framework de test ou outil de build exécute du code arbitraire par conception, via un fichier de configuration, un plugin ou une variable d'environnement contrôlés par l'attaquant (Living Off the Pipeline). Aucune faille n'est nécessaire : la fonctionnalité légitime sert d'exécution."
      - "Une donnée contrôlée par l'attaquant (titre de PR, nom de branche, message de commit) est interpolée sans échappement dans un script de workflow, provoquant une exécution de commande dans le pipeline. C'est l'injection classique portée au CI."
      - "Un paquet exécute du code arbitraire via ses scripts de cycle de vie (postinstall, preinstall) dès l'installation, avant tout usage. L'ajout d'une dépendance suffit à déclencher la charge."
      - "Un plugin ou une extension de l'outil de build (Gradle, Maven, bundler) exécute du code au moment de la construction, hors de toute revue du code applicatif. Le build devient un vecteur d'exécution tierce."
      - "Poisoned Pipeline Execution indirecte : l'injection passe par un fichier consommé par le pipeline (Makefile, script, configuration d'outil) plutôt que par le fichier de CI. Le résultat est identique : exécution de code attaquant dans le pipeline."
    texte: "outils détournables de la chaîne (CLI, linters, formateurs, runners de test ; réf. LOTP) inventoriés et durcis : fonctionnalités d'exécution de code arbitraire désactivées ou confinées."
    preuve: "Inventaire des outils détournables (LOTP) ; preuve de désactivation/confinement de l'exécution arbitraire."
    href: "/docs/securiser/socle/referentiel/integration/#socle-int-gen-9"
  - id: SOCLE-INT-OSS-1
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: OSS
    famille_nom: Ingestion OSS maîtrisée
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenSSF Scorecard
    standards:
      - S2C2F
      - OWASP A03
    menaces:
      - "Le mainteneur saborde délibérément son propre composant pour des raisons idéologiques ou politiques (protestware) : code destructeur, messages, ou comportements ciblant certains utilisateurs. La confiance accordée au paquet se retourne contre ses consommateurs lors d'une simple mise à jour (cas node-ipc)."
      - "Un paquet malveillant porte un nom très proche d'un paquet légitime (faute de frappe, tiret, ordre des mots) pour être installé par erreur. L'attaque mise sur l'inattention au moment d'ajouter une dépendance."
      - "Un paquet exécute du code arbitraire via ses scripts de cycle de vie (postinstall, preinstall) dès l'installation, avant tout usage. L'ajout d'une dépendance suffit à déclencher la charge."
    texte: "délai de quarantaine (cooldown) avant adoption d'une nouvelle version de dépendance."
    preuve: "Politique de cooldown configurée avant adoption d'une nouvelle version."
    href: "/docs/securiser/socle/referentiel/integration/ingestion-oss-maitrisee/#socle-int-oss-1"
  - id: SOCLE-INT-OSS-2
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: OSS
    famille_nom: Ingestion OSS maîtrisée
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenSSF Scorecard
    standards:
      - S2C2F
      - OWASP CICD-SEC-3
    menaces:
      - "Un paquet public est publié sous le nom d'un paquet interne ; le gestionnaire, mal configuré, préfère la version publique de plus haut numéro et tire le code de l'attaquant. La confusion entre registre interne et public livre l'exécution au build."
    texte: allowlist des registres et sources de paquets autorisés.
    preuve: Allowlist des registres et sources de paquets autorisés.
    href: "/docs/securiser/socle/referentiel/integration/ingestion-oss-maitrisee/#socle-int-oss-2"
  - id: SOCLE-INT-OSS-3
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: OSS
    famille_nom: Ingestion OSS maîtrisée
    niveau: R3
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Bazel
    standards:
      - S2C2F (Rebuild)
      - SLSA Build L3
      - CNCF SSC (Materials & Build)
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
    texte: reconstruction depuis les sources des dépendances critiques (pas de confiance aveugle aux binaires amont).
    preuve: "Pipeline de rebuild from source documenté pour les dépendances critiques ; artefacts reconstruits comparés à l'amont."
    href: "/docs/securiser/socle/referentiel/integration/ingestion-oss-maitrisee/#socle-int-oss-3"
  - id: SOCLE-INT-OSS-4
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: OSS
    famille_nom: Ingestion OSS maîtrisée
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - S2C2F (Fix + Upstream)
      - OpenChain ISO/IEC 5230
    menaces: []
    texte: correctifs de sécurité des dépendances remontés en amont (contribution upstream) plutôt que forks privés divergents non maintenus.
    preuve: Politique de contribution upstream ; suivi des correctifs proposés/acceptés ou des forks temporaires tracés et résorbés.
    href: "/docs/securiser/socle/referentiel/integration/ingestion-oss-maitrisee/#socle-int-oss-4"
  - id: SOCLE-INT-VER-1
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: VER
    famille_nom: Vérification du code & des configurations
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OSV-Scanner
      - cosign
    standards:
      - OWASP CICD-SEC-6
      - OWASP ASVS v5.0.0 (V13)
    menaces:
      - "Un secret est stocké ou laissé en clair (fichier, variable d'environnement, historique shell, dépôt) et récupéré par un attaquant. La fuite d'un secret transforme un accès local en compromission étendue (cas Codecov)."
    texte: "détection de secrets dans le code et l'historique (pré-commit + CI)."
    preuve: "Hooks de détection de secrets (pré-commit + CI) ; scan d'historique."
    href: "/docs/securiser/socle/referentiel/integration/verification-du-code-des-configurations/#socle-int-ver-1"
  - id: SOCLE-INT-VER-2
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: VER
    famille_nom: Vérification du code & des configurations
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OSV-Scanner
      - cosign
    standards:
      - CIS Benchmarks
      - NIST 800-204D
    menaces:
      - "Le manifeste de déploiement est mal configuré (privilèges excessifs, montages sensibles, réseau ouvert), exposant la charge dès sa mise en service. La faiblesse n'est pas dans l'artefact mais dans la façon dont il est déployé (CIS Kubernetes)."
    texte: analyse de configuration IaC (politiques de sécurité, absence de mauvaise configuration).
    preuve: "Rapport d'analyse de configuration IaC."
    href: "/docs/securiser/socle/referentiel/integration/verification-du-code-des-configurations/#socle-int-ver-2"
  - id: SOCLE-INT-VER-3
    domaine: INT
    domaine_nom: "Intégration : dépendances & build"
    famille: VER
    famille_nom: Vérification du code & des configurations
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OSV-Scanner
      - cosign
    standards:
      - OWASP SCVS
      - OpenSSF Scorecard
    menaces:
      - "Le mainteneur saborde délibérément son propre composant pour des raisons idéologiques ou politiques (protestware) : code destructeur, messages, ou comportements ciblant certains utilisateurs. La confiance accordée au paquet se retourne contre ses consommateurs lors d'une simple mise à jour (cas node-ipc)."
      - Une dépendance est retirée ou dépubliée (unpublish, yank), cassant les builds et poussant à des substitutions hâtives, parfois vers un remplacement malveillant. La disponibilité de la chaîne est attaquée (cas left-pad).
    texte: analyse de composition étendue (licences, qualité, score de maintenance).
    preuve: Analyse de composition étendue (licences, score de maintenance).
    href: "/docs/securiser/socle/referentiel/integration/verification-du-code-des-configurations/#socle-int-ver-3"
  - id: SOCLE-ORC-EPH-1
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: EPH
    famille_nom: Éphémérité & cycle de vie
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Harden-Runner
      - actions-runner-controller
    standards:
      - SLSA Build L3 (isolation)
      - OWASP CICD-SEC-4
      - SSDF PO.5
    menaces:
      - "Un runner auto-hébergé non éphémère conserve un état entre jobs (fichiers, secrets, processus), permettant à un job compromis de piéger les suivants ou d'exfiltrer des données d'autres pipelines. La persistance du runner est l'angle mort."
    texte: un runner exécute un seul job puis est détruit ; aucune réutilisation entre jobs.
    preuve: "Config d'autoscaling en mode usage unique (--ephemeral / runners jetables) ; aucun runner réutilisé entre jobs."
    href: "/docs/securiser/socle/referentiel/orchestration/ephemerite-cycle-de-vie/#socle-orc-eph-1"
  - id: SOCLE-ORC-EPH-2
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: EPH
    famille_nom: Éphémérité & cycle de vie
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Harden-Runner
      - actions-runner-controller
    standards:
      - OWASP CICD-SEC-4
      - OWASP CICD-SEC-7
      - SSDF PO.5
    menaces:
      - "Un runner auto-hébergé non éphémère conserve un état entre jobs (fichiers, secrets, processus), permettant à un job compromis de piéger les suivants ou d'exfiltrer des données d'autres pipelines. La persistance du runner est l'angle mort."
    texte: autoscaling sur runners éphémères ; runners persistants proscrits pour les charges non fiables.
    preuve: "Inventaire des runners : tous éphémères ; aucun runner persistant rattaché à des charges non fiables."
    href: "/docs/securiser/socle/referentiel/orchestration/ephemerite-cycle-de-vie/#socle-orc-eph-2"
  - id: SOCLE-ORC-EPH-3
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: EPH
    famille_nom: Éphémérité & cycle de vie
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Harden-Runner
      - actions-runner-controller
    standards:
      - OWASP CICD-SEC-7
      - SLSA Build L3 (isolation)
      - SSDF PO.5
    menaces:
      - "Un attaquant écrit dans un cache partagé du CI (dépendances, couches d'image, artefacts intermédiaires) une charge réutilisée par d'autres builds. Le cache, supposé sûr, propage la compromission entre exécutions ou projets."
      - "Un runner auto-hébergé non éphémère conserve un état entre jobs (fichiers, secrets, processus), permettant à un job compromis de piéger les suivants ou d'exfiltrer des données d'autres pipelines. La persistance du runner est l'angle mort."
      - "Un job compromis balaie la mémoire ou l'environnement du runner pour récolter les secrets d'autres étapes ou pipelines. Le partage de runner sans isolation expose les secrets transverses."
    texte: aucun état (workspace, cache, fichiers temporaires, secrets) ne persiste après le job.
    preuve: "Preuve de nettoyage post-job ; inspection d'un runner après exécution sans résidu."
    href: "/docs/securiser/socle/referentiel/orchestration/ephemerite-cycle-de-vie/#socle-orc-eph-3"
  - id: SOCLE-ORC-EPH-4
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: EPH
    famille_nom: Éphémérité & cycle de vie
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Harden-Runner
      - actions-runner-controller
    standards:
      - OWASP CICD-SEC-7
      - CIS Benchmarks (infra immuable)
      - SSDF PW.6
    menaces:
      - "Un attaquant écrit dans un cache partagé du CI (dépendances, couches d'image, artefacts intermédiaires) une charge réutilisée par d'autres builds. Le cache, supposé sûr, propage la compromission entre exécutions ou projets."
      - "Un runner auto-hébergé non éphémère conserve un état entre jobs (fichiers, secrets, processus), permettant à un job compromis de piéger les suivants ou d'exfiltrer des données d'autres pipelines. La persistance du runner est l'angle mort."
    texte: environnement reconstruit depuis une image immuable à chaque provisionnement.
    preuve: "Référence d'image immuable + horodatage de (re)création à chaque provisionnement."
    href: "/docs/securiser/socle/referentiel/orchestration/ephemerite-cycle-de-vie/#socle-orc-eph-4"
  - id: SOCLE-ORC-EPH-5
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: EPH
    famille_nom: Éphémérité & cycle de vie
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Harden-Runner
      - actions-runner-controller
    standards:
      - OWASP CICD-SEC-4
      - OWASP CICD-SEC-7
      - CIS Docker Benchmark
    menaces:
      - "Un attaquant écrit dans un cache partagé du CI (dépendances, couches d'image, artefacts intermédiaires) une charge réutilisée par d'autres builds. Le cache, supposé sûr, propage la compromission entre exécutions ou projets."
    texte: "pas de réutilisation du cache d'images entre projets/tenants (pull d'image forcé) ; évite la fuite d'images privées entre charges."
    preuve: "Politique de pull forçant la récupération (pull_policy=always) ; pas de cache d'images partagé entre projets."
    href: "/docs/securiser/socle/referentiel/orchestration/ephemerite-cycle-de-vie/#socle-orc-eph-5"
  - id: SOCLE-ORC-EXE-1
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: EXE
    famille_nom: "Isolation d'exécution & moindre privilège"
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Kyverno
      - Conftest
    standards:
      - CIS Benchmarks
      - ANSSI-BP-028
      - OWASP CICD-SEC-7
    menaces:
      - "Un job exploite une mauvaise configuration ou une faille du runtime de conteneurs pour s'échapper vers l'hôte du runner et atteindre d'autres charges. Le cloisonnement supposé entre jobs est rompu."
      - "Un conteneur de build accède aux périphériques ou capacités de l'hôte (montages, capabilities, hostPath) pour lire ou altérer des ressources hors de son périmètre. Les privilèges excessifs du conteneur ouvrent l'hôte."
    texte: processus runner sous utilisateur dédié non privilégié, jamais root.
    preuve: "uid d'exécution du runner (non-root) ; absence d'exécution root."
    href: "/docs/securiser/socle/referentiel/orchestration/isolation-d-execution-moindre-privilege/#socle-orc-exe-1"
  - id: SOCLE-ORC-EXE-2
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: EXE
    famille_nom: "Isolation d'exécution & moindre privilège"
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Kyverno
      - Conftest
    standards:
      - CIS Docker Benchmark
      - OWASP CICD-SEC-4
      - OWASP CICD-SEC-7
    menaces:
      - "Le socket Docker monté dans un job donne un contrôle équivalent à root sur l'hôte : conteneurs privilégiés, accès au système de fichiers hôte. Une fonctionnalité de commodité devient une évasion."
      - "Un job exploite une mauvaise configuration ou une faille du runtime de conteneurs pour s'échapper vers l'hôte du runner et atteindre d'autres charges. Le cloisonnement supposé entre jobs est rompu."
      - "Un conteneur de build accède aux périphériques ou capacités de l'hôte (montages, capabilities, hostPath) pour lire ou altérer des ressources hors de son périmètre. Les privilèges excessifs du conteneur ouvrent l'hôte."
      - "Un conteneur exploite une mauvaise configuration ou une faille pour s'échapper vers le nœud hôte du cluster et atteindre d'autres charges. Le cloisonnement du cluster est rompu (ATT&CK T1611)."
    texte: pas de montage du socket Docker ni de mode privilégié ; pas de Docker-in-Docker pour les charges non fiables.
    preuve: "Vérification : pas de socket Docker monté, pas de mode privilégié, pas de DinD pour charges non fiables."
    href: "/docs/securiser/socle/referentiel/orchestration/isolation-d-execution-moindre-privilege/#socle-orc-exe-2"
  - id: SOCLE-ORC-EXE-3
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: EXE
    famille_nom: "Isolation d'exécution & moindre privilège"
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Kyverno
      - Conftest
    standards:
      - SLSA Build L3 (isolation)
      - OWASP CICD-SEC-4
      - NIST 800-204D
    menaces:
      - "Un job exploite une mauvaise configuration ou une faille du runtime de conteneurs pour s'échapper vers l'hôte du runner et atteindre d'autres charges. Le cloisonnement supposé entre jobs est rompu."
      - "Un conteneur exploite une mauvaise configuration ou une faille pour s'échapper vers le nœud hôte du cluster et atteindre d'autres charges. Le cloisonnement du cluster est rompu (ATT&CK T1611)."
    texte: chaque job dans un bac à sable (conteneur durci, microVM Firecracker/Kata, ou gVisor).
    preuve: Configuration de sandbox par job (conteneur durci / microVM / gVisor).
    href: "/docs/securiser/socle/referentiel/orchestration/isolation-d-execution-moindre-privilege/#socle-orc-exe-3"
  - id: SOCLE-ORC-EXE-4
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: EXE
    famille_nom: "Isolation d'exécution & moindre privilège"
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Kyverno
      - Conftest
    standards:
      - CIS Benchmarks
      - ANSSI-BP-028
      - SSDF PW.6
    menaces:
      - "Un job exploite une mauvaise configuration ou une faille du runtime de conteneurs pour s'échapper vers l'hôte du runner et atteindre d'autres charges. Le cloisonnement supposé entre jobs est rompu."
      - "Un conteneur de build accède aux périphériques ou capacités de l'hôte (montages, capabilities, hostPath) pour lire ou altérer des ressources hors de son périmètre. Les privilèges excessifs du conteneur ouvrent l'hôte."
    texte: système de fichiers en lecture seule hors workspace pour les jobs.
    preuve: Profils seccomp/AppArmor appliqués ; FS read-only hors workspace ; limites de ressources.
    href: "/docs/securiser/socle/referentiel/orchestration/isolation-d-execution-moindre-privilege/#socle-orc-exe-4"
  - id: SOCLE-ORC-EXE-5
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: EXE
    famille_nom: "Isolation d'exécution & moindre privilège"
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils:
      - Kata Containers
      - gVisor
    standards:
      - SLSA Build L3
      - NSA/CISA K8s Hardening
      - CIS Benchmarks
    menaces:
      - "Un job exploite une mauvaise configuration ou une faille du runtime de conteneurs pour s'échapper vers l'hôte du runner et atteindre d'autres charges. Le cloisonnement supposé entre jobs est rompu."
      - "Un attaquant ayant obtenu l'exécution sur un hôte implante une persistance furtive au niveau du noyau ou du système : programme eBPF malveillant, extension système (systemd-sysext), module noyau ou hook de chargement. Le code survit aux redéploiements applicatifs, masque ses processus et connexions, et intercepte secrets et trafic. Les contrôles applicatifs et l'analyse d'image ne le voient pas : il vit sous la charge de travail, dans le plan hôte."
    texte: isolation microVM/hyperviseur entre jobs pour toute charge non fiable ou multi-tenant.
    preuve: "Preuve d'isolation de niveau microVM/hyperviseur entre jobs."
    href: "/docs/securiser/socle/referentiel/orchestration/isolation-d-execution-moindre-privilege/#socle-orc-exe-5"
  - id: SOCLE-ORC-EXE-6
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: EXE
    famille_nom: "Isolation d'exécution & moindre privilège"
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Kyverno
      - Conftest
    standards:
      - OWASP CICD-SEC-4
      - CIS Benchmarks
      - S2C2F
    menaces:
      - "Un job exploite une mauvaise configuration ou une faille du runtime de conteneurs pour s'échapper vers l'hôte du runner et atteindre d'autres charges. Le cloisonnement supposé entre jobs est rompu."
      - "L'image de base utilisée pour construire les conteneurs contient une charge malveillante ou une vulnérabilité, héritée par tous les artefacts qui en dérivent. Le socle d'exécution contamine toute la production."
    texte: "liste blanche des images et services autorisés pour les jobs ; pas d'exécution d'images ou de services arbitraires."
    preuve: Allowlist des images/services (allowed_images, allowed_services) configurée.
    href: "/docs/securiser/socle/referentiel/orchestration/isolation-d-execution-moindre-privilege/#socle-orc-exe-6"
  - id: SOCLE-ORC-EXE-7
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: EXE
    famille_nom: "Isolation d'exécution & moindre privilège"
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Kyverno
      - Conftest
    standards:
      - CIS Benchmarks
      - ANSSI-BP-028
      - SSDF PW.6
    menaces:
      - "Un job exploite une mauvaise configuration ou une faille du runtime de conteneurs pour s'échapper vers l'hôte du runner et atteindre d'autres charges. Le cloisonnement supposé entre jobs est rompu."
      - "Un conteneur de build accède aux périphériques ou capacités de l'hôte (montages, capabilities, hostPath) pour lire ou altérer des ressources hors de son périmètre. Les privilèges excessifs du conteneur ouvrent l'hôte."
    texte: profils de confinement seccomp/AppArmor appliqués aux jobs.
    preuve: Profils seccomp/AppArmor actifs sur les runners.
    href: "/docs/securiser/socle/referentiel/orchestration/isolation-d-execution-moindre-privilege/#socle-orc-exe-7"
  - id: SOCLE-ORC-EXE-8
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: EXE
    famille_nom: "Isolation d'exécution & moindre privilège"
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Kyverno
      - Conftest
    standards:
      - CIS Benchmarks
      - ANSSI-BP-028
      - SSDF PW.6
    menaces:
      - "Un job exploite une mauvaise configuration ou une faille du runtime de conteneurs pour s'échapper vers l'hôte du runner et atteindre d'autres charges. Le cloisonnement supposé entre jobs est rompu."
    texte: limites de ressources (CPU, mémoire) imposées aux jobs.
    preuve: Quotas/limits configurés sur les jobs/runners.
    href: "/docs/securiser/socle/referentiel/orchestration/isolation-d-execution-moindre-privilege/#socle-orc-exe-8"
  - id: SOCLE-ORC-GEN-1
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - zizmor
      - poutine
      - Legitify
      - Plumber
    standards:
      - CIS Benchmarks
      - OWASP CICD-SEC-7
      - ANSSI-BP-028
      - PCI-DSS Req 7
    menaces:
      - "Le système de gestion de source lui-même (forge self-hosted, serveur Git) est compromis, donnant à l'attaquant le contrôle du code, des droits et des workflows. La racine de confiance du code tombe : tout en aval devient suspect."
      - "La plateforme d'orchestration CI/CD elle-même (serveur, contrôleur, base de secrets) est compromise, donnant le contrôle de tous les pipelines, secrets et déploiements. C'est le vecteur de plus haut impact : il rend caducs les contrôles en aval."
      - "Le registre de paquets ou un miroir est compromis, permettant d'altérer ou de substituer des artefacts pour tous ses utilisateurs. L'infrastructure de distribution devient le point de défaillance unique."
    texte: durcissement de la plateforme CI/CD (configuration, accès) selon CIS et guides éditeurs.
    preuve: Rapport de durcissement de la plateforme CI/CD (CIS / guides éditeurs) ; revue des accès.
    href: "/docs/securiser/socle/referentiel/orchestration/#socle-orc-gen-1"
  - id: SOCLE-ORC-GEN-2
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - zizmor
      - poutine
      - Legitify
      - Plumber
    standards:
      - OWASP CICD-SEC-1
      - OWASP CICD-SEC-2
      - PCI-DSS Req 7
    menaces:
      - "Poisoned Pipeline Execution directe : l'attaquant modifie la définition du pipeline (fichier de CI) pour y injecter des commandes exécutées avec les privilèges du build. Le contrôle du fichier de workflow donne le contrôle de l'exécution."
      - "Poisoned Pipeline Execution indirecte : l'injection passe par un fichier consommé par le pipeline (Makefile, script, configuration d'outil) plutôt que par le fichier de CI. Le résultat est identique : exécution de code attaquant dans le pipeline."
    texte: "contrôle de flux et IAM de la plateforme : aucun contournement des contrôles de pipeline."
    preuve: "Configuration des contrôles de flux et de l'IAM ; preuve d'impossibilité de contourner le pipeline."
    href: "/docs/securiser/socle/referentiel/orchestration/#socle-orc-gen-2"
  - id: SOCLE-ORC-GEN-3
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - zizmor
      - poutine
      - Legitify
      - Plumber
    standards:
      - CIS Benchmarks
      - SLSA Build L3
      - PCI-DSS Req 7
    menaces:
      - "La plateforme d'orchestration CI/CD elle-même (serveur, contrôleur, base de secrets) est compromise, donnant le contrôle de tous les pipelines, secrets et déploiements. C'est le vecteur de plus haut impact : il rend caducs les contrôles en aval."
    texte: exécuteurs (runners) durcis et isolés par niveau de confiance (inventaire, durcissement, configuration vérifiée).
    preuve: Checklist de durcissement des exécuteurs appliquée ; configuration vérifiée.
    href: "/docs/securiser/socle/referentiel/orchestration/#socle-orc-gen-3"
  - id: SOCLE-ORC-GEN-4
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - zizmor
      - poutine
      - Legitify
    standards:
      - NIST 800-207
      - OWASP CICD-SEC-5
      - PCI-DSS Req 7
    menaces:
      - "Un pipeline déclenché par une contribution publique exécute du code non fiable dans un contexte privilégié, exposant secrets et droits du projet. La surface vient de l'ouverture du pipeline aux contributions externes."
      - "Un runner auto-hébergé non éphémère conserve un état entre jobs (fichiers, secrets, processus), permettant à un job compromis de piéger les suivants ou d'exfiltrer des données d'autres pipelines. La persistance du runner est l'angle mort."
    texte: "segmentation par tier de confiance des environnements d'exécution."
    preuve: "Schéma de segmentation des environnements d'exécution par tier de confiance."
    href: "/docs/securiser/socle/referentiel/orchestration/#socle-orc-gen-4"
  - id: SOCLE-ORC-GEN-5
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DEVRAIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - zizmor
      - poutine
      - Legitify
    standards:
      - SSDF PO.3
      - SSDF PO.5
      - NIST 800-204D
      - PCI-DSS Req 7
    menaces:
      - "La plateforme d'orchestration CI/CD elle-même (serveur, contrôleur, base de secrets) est compromise, donnant le contrôle de tous les pipelines, secrets et déploiements. C'est le vecteur de plus haut impact : il rend caducs les contrôles en aval."
    texte: configuration de la plateforme en IaC, auditée et versionnée.
    preuve: "Code IaC de la plateforme, versionné ; résultat d'audit de configuration."
    href: "/docs/securiser/socle/referentiel/orchestration/#socle-orc-gen-5"
  - id: SOCLE-ORC-GEN-6
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - zizmor
      - poutine
      - Legitify
    standards:
      - OWASP CICD-SEC-8
      - NIST 800-207
      - PCI-DSS Req 7
    menaces:
      - "Un attaquant contrôlant plusieurs comptes (ou un compte et un bot) approuve sa propre contribution, contournant l'exigence de revue par un tiers indépendant. La règle de revue existe mais est neutralisée par collusion d'identités."
      - "Un compte de service ou bot autorisé à fusionner sans revue à deux est détourné pour introduire du code, court-circuitant le contrôle humain. Les automatismes sur-privilégiés deviennent un chemin d'injection."
      - "Un service externe intégré au pipeline (scanner, notificateur, déployeur SaaS) est compromis et abuse de son accès au CI, aux secrets ou au code. La confiance déléguée à une tierce partie devient un chemin d'attaque (cas Codecov)."
      - "Une application OAuth autorisée sur l'organisation est compromise et abuse de ses portées d'accès au code, aux secrets ou aux pipelines. La confiance accordée à une intégration tierce devient un accès attaquant (cas Heroku / Travis)."
      - "Une GitHub App ou un bot disposant de permissions élevées est détourné pour agir sur les dépôts ou les workflows. Les privilèges de l'automate dépassent souvent le besoin, élargissant l'impact d'un abus."
      - "Un écart entre le moment de la vérification et le moment de l'usage (TOCTOU), exploité via un bot, permet de substituer un contenu validé par un contenu malveillant. La fenêtre entre contrôle et action est l'angle d'attaque."
      - "Un outil, skill ou serveur MCP exposé à un agent est piégé pour exécuter des actions malveillantes ou exfiltrer des données lorsqu'il est invoqué. L'agent, en appelant l'outil de confiance, déclenche la charge (ATLAS)."
      - "Une application OAuth ou intégration SaaS de confiance, au-delà du SCM/CI (CRM, support, observabilité), est compromise ou abusée : consentement OAuth détourné, jetons volés, contournement MFA, pour persister et exfiltrer des données (ex. campagne Salesloft/Drift 2025). La confiance accordée à une intégration tierce devient un accès latéral au SI."
    texte: intégrations tierces (OAuth, GitHub Apps, bots, serveurs MCP) connectées au SCM/CI inventoriées, au moindre privilège et revues.
    preuve: Inventaire des intégrations tierces (OAuth/GitHub Apps/bots/MCP) ; revue des permissions et preuves de révocation.
    href: "/docs/securiser/socle/referentiel/orchestration/#socle-orc-gen-6"
  - id: SOCLE-ORC-GEN-7
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils:
      - paiement
    outils:
      - zizmor
      - poutine
      - Legitify
    standards:
      - OWASP CICD-SEC-8
      - NIST 800-207
      - PCI-DSS Req 7
    menaces:
      - "Un service externe intégré au pipeline (scanner, notificateur, déployeur SaaS) est compromis et abuse de son accès au CI, aux secrets ou au code. La confiance déléguée à une tierce partie devient un chemin d'attaque (cas Codecov)."
      - "Une application OAuth autorisée sur l'organisation est compromise et abuse de ses portées d'accès au code, aux secrets ou aux pipelines. La confiance accordée à une intégration tierce devient un accès attaquant (cas Heroku / Travis)."
      - "Une GitHub App ou un bot disposant de permissions élevées est détourné pour agir sur les dépôts ou les workflows. Les privilèges de l'automate dépassent souvent le besoin, élargissant l'impact d'un abus."
      - "Une application OAuth ou intégration SaaS de confiance, au-delà du SCM/CI (CRM, support, observabilité), est compromise ou abusée : consentement OAuth détourné, jetons volés, contournement MFA, pour persister et exfiltrer des données (ex. campagne Salesloft/Drift 2025). La confiance accordée à une intégration tierce devient un accès latéral au SI."
    texte: révocation des intégrations tierces inutiles ou compromises (procédure et capacité testée).
    preuve: "Procédure de révocation ; trace de révocation d'intégrations."
    href: "/docs/securiser/socle/referentiel/orchestration/#socle-orc-gen-7"
  - id: SOCLE-ORC-IDN-1
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: IDN
    famille_nom: Identité, enregistrement & secrets
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Legitify
    standards:
      - OWASP CICD-SEC-6
      - OWASP CICD-SEC-2
      - NIST 800-207
      - ANSSI-BP-028
    menaces:
      - "Pendant un job, l'attaquant lit en mémoire le jeton OIDC court ou les identifiants fédérés pour s'authentifier auprès de services en aval. L'éphémérité du jeton ne protège pas si le job lui-même est compromis."
      - "Une fédération OIDC trop permissive (conditions de confiance larges, sujet non contraint) permet à un dépôt ou workflow non autorisé d'obtenir des identifiants cloud. L'identité courte censée remplacer les secrets devient elle-même un chemin d'accès."
    texte: enregistrement via jeton à durée de vie courte (JIT) ; aucun jeton statique ni codé en dur.
    preuve: "Configuration d'enregistrement par jeton JIT ; absence de jeton statique dans scripts ou secrets."
    href: "/docs/securiser/socle/referentiel/orchestration/identite-enregistrement-secrets/#socle-orc-idn-1"
  - id: SOCLE-ORC-IDN-2
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: IDN
    famille_nom: Identité, enregistrement & secrets
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Legitify
    standards:
      - OWASP CICD-SEC-6
      - NIST 800-207
      - SLSA (secrets de build)
    menaces:
      - "Pendant un job, l'attaquant lit en mémoire le jeton OIDC court ou les identifiants fédérés pour s'authentifier auprès de services en aval. L'éphémérité du jeton ne protège pas si le job lui-même est compromis."
      - "Un jeton d'accès de longue durée est volé et réutilisé tant qu'il n'est pas révoqué, sans nouvelle authentification. La durée de vie sans rotation maximise la valeur du vol."
      - "Une fédération OIDC trop permissive (conditions de confiance larges, sujet non contraint) permet à un dépôt ou workflow non autorisé d'obtenir des identifiants cloud. L'identité courte censée remplacer les secrets devient elle-même un chemin d'accès."
    texte: accès aux ressources via identité fédérée courte (OIDC) ; aucun credential de longue durée sur le runner.
    preuve: "Configuration OIDC ; inspection : aucun credential de longue durée stocké sur le runner."
    href: "/docs/securiser/socle/referentiel/orchestration/identite-enregistrement-secrets/#socle-orc-idn-2"
  - id: SOCLE-ORC-IDN-3
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: IDN
    famille_nom: Identité, enregistrement & secrets
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Legitify
    standards:
      - OWASP CICD-SEC-6
      - OWASP ASVS v5.0.0 (V13)
      - ANSSI-BP-028
    menaces:
      - "Un job compromis balaie la mémoire ou l'environnement du runner pour récolter les secrets d'autres étapes ou pipelines. Le partage de runner sans isolation expose les secrets transverses."
    texte: secrets injectés juste-à-temps depuis un coffre ; aucun secret au repos.
    preuve: "Politiques du coffre (OpenBao/Vault) ; inspection d'environnement sans secret au repos."
    href: "/docs/securiser/socle/referentiel/orchestration/identite-enregistrement-secrets/#socle-orc-idn-3"
  - id: SOCLE-ORC-IDN-4
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: IDN
    famille_nom: Identité, enregistrement & secrets
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Legitify
    standards:
      - OWASP CICD-SEC-2
      - OWASP CICD-SEC-5
      - NIST 800-207
    menaces:
      - "Une fédération OIDC trop permissive (conditions de confiance larges, sujet non contraint) permet à un dépôt ou workflow non autorisé d'obtenir des identifiants cloud. L'identité courte censée remplacer les secrets devient elle-même un chemin d'accès."
    texte: jetons délivrés au job scopés au strict nécessaire, expirant en fin de job.
    preuve: "Définition du scope des jetons de job + TTL ; preuve d'expiration en fin de job."
    href: "/docs/securiser/socle/referentiel/orchestration/identite-enregistrement-secrets/#socle-orc-idn-4"
  - id: SOCLE-ORC-ITG-1
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: ITG
    famille_nom: Intégrité & provenance du runner
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - zizmor
      - poutine
    standards:
      - CIS Benchmarks
      - ANSSI-BP-028
      - CIS Software Supply Chain
    menaces:
      - "L'image de base utilisée pour construire les conteneurs contient une charge malveillante ou une vulnérabilité, héritée par tous les artefacts qui en dérivent. Le socle d'exécution contamine toute la production."
    texte: image de base minimale et durcie, correctifs à jour, outillage réduit au nécessaire.
    preuve: Rapport de durcissement (OpenSCAP/CIS) ; image minimale, correctifs à jour.
    href: "/docs/securiser/socle/referentiel/orchestration/integrite-provenance-du-runner/#socle-orc-itg-1"
  - id: SOCLE-ORC-ITG-2
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: ITG
    famille_nom: Intégrité & provenance du runner
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - zizmor
      - poutine
    standards:
      - SLSA Build L2-L3 (provenance)
      - SSDF PS.2
      - SSDF PW.6
      - OWASP CICD-SEC-9
    menaces:
      - "La plateforme d'orchestration CI/CD elle-même (serveur, contrôleur, base de secrets) est compromise, donnant le contrôle de tous les pipelines, secrets et déploiements. C'est le vecteur de plus haut impact : il rend caducs les contrôles en aval."
      - "L'image de base utilisée pour construire les conteneurs contient une charge malveillante ou une vulnérabilité, héritée par tous les artefacts qui en dérivent. Le socle d'exécution contamine toute la production."
    texte: image construite via un pipeline tracé, versionnée et reproductible.
    preuve: "Pipeline de build de l'image (tracé, versionné) + attestation de reproductibilité."
    href: "/docs/securiser/socle/referentiel/orchestration/integrite-provenance-du-runner/#socle-orc-itg-2"
  - id: SOCLE-ORC-ITG-3
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: ITG
    famille_nom: Intégrité & provenance du runner
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils:
      - cosign
      - slsa-verifier
    standards:
      - SLSA Build L3 (provenance signée)
      - Sigstore
      - in-toto
      - OWASP CICD-SEC-9
    menaces:
      - "L'image de base utilisée pour construire les conteneurs contient une charge malveillante ou une vulnérabilité, héritée par tous les artefacts qui en dérivent. Le socle d'exécution contamine toute la production."
      - Un installeur officiel et signé est modifié à la source ou au build pour embarquer une charge, distribué via le canal légitime (cas CCleaner, 3CX). La signature valide endort la méfiance.
    texte: image signée et provenance vérifiée avant provisionnement.
    preuve: "Signature de l'image + vérification de provenance avant provisionnement."
    href: "/docs/securiser/socle/referentiel/orchestration/integrite-provenance-du-runner/#socle-orc-itg-3"
  - id: SOCLE-ORC-ITG-4
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: ITG
    famille_nom: Intégrité & provenance du runner
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - zizmor
      - poutine
    standards:
      - SSDF PO.3
      - SSDF PO.5
      - CIS Benchmarks
      - OWASP CICD-SEC-7
    menaces:
      - "La plateforme d'orchestration CI/CD elle-même (serveur, contrôleur, base de secrets) est compromise, donnant le contrôle de tous les pipelines, secrets et déploiements. C'est le vecteur de plus haut impact : il rend caducs les contrôles en aval."
    texte: runner et agents de sécurité déployés en IaC, configuration auditée.
    preuve: "Code IaC du runner + résultat d'audit de configuration."
    href: "/docs/securiser/socle/referentiel/orchestration/integrite-provenance-du-runner/#socle-orc-itg-4"
  - id: SOCLE-ORC-NET-1
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: NET
    famille_nom: Isolation réseau
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Cilium
    standards:
      - OWASP CICD-SEC-7
      - NIST 800-207
      - ANSSI-BP-028
    menaces:
      - "La plateforme d'orchestration CI/CD elle-même (serveur, contrôleur, base de secrets) est compromise, donnant le contrôle de tous les pipelines, secrets et déploiements. C'est le vecteur de plus haut impact : il rend caducs les contrôles en aval."
      - "Après une intrusion initiale, l'attaquant se déplace latéralement et installe des mécanismes de persistance pour conserver l'accès. La compromission s'étend dans le temps et l'espace faute de détection et de segmentation."
    texte: "aucune exposition entrante : le runner tire le travail (pull / webhook), sans port d'écoute public."
    preuve: "Topologie réseau : aucun port d'écoute entrant ; mode pull/webhook documenté."
    href: "/docs/securiser/socle/referentiel/orchestration/isolation-reseau/#socle-orc-net-1"
  - id: SOCLE-ORC-NET-2
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: NET
    famille_nom: Isolation réseau
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Cilium
    standards:
      - OWASP CICD-SEC-7
      - NIST 800-207
      - CIS Benchmarks (réseau)
    menaces:
      - "Une charge compromise exfiltre des données ou des secrets en production vers un système contrôlé par l'attaquant. La détection comportementale runtime est la dernière ligne, une fois les contrôles amont franchis."
      - "Un job de build atteint le service de métadonnées d'instance (IMDS) pour récupérer les identifiants de rôle de la machine et pivoter vers le cloud. Sans IMDSv2 ni blocage réseau, le pipeline hérite des droits de l'hôte (ATT&CK T1552.005)."
    texte: "filtrage de l'egress par liste d'autorisation ; tout flux sortant non listé est bloqué et journalisé."
    preuve: "Règles d'egress (allowlist) + journaux de blocage des flux non listés."
    href: "/docs/securiser/socle/referentiel/orchestration/isolation-reseau/#socle-orc-net-2"
  - id: SOCLE-ORC-NET-3
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: NET
    famille_nom: Isolation réseau
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Cilium
    standards:
      - OWASP CICD-SEC-7
      - NIST 800-207 (micro-segmentation)
      - ANSSI-BP-028
    menaces:
      - "Après une intrusion initiale, l'attaquant se déplace latéralement et installe des mécanismes de persistance pour conserver l'accès. La compromission s'étend dans le temps et l'espace faute de détection et de segmentation."
    texte: aucun accès au SI corporate ni à la production ; segmentation réseau stricte.
    preuve: "Schéma de segmentation ; règles interdisant l'accès SI/prod depuis le runner."
    href: "/docs/securiser/socle/referentiel/orchestration/isolation-reseau/#socle-orc-net-3"
  - id: SOCLE-ORC-NET-4
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: NET
    famille_nom: Isolation réseau
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Cilium
    standards:
      - OWASP CICD-SEC-7
      - CIS Benchmarks (durcissement cloud)
    menaces:
      - "Un job de build atteint le service de métadonnées d'instance (IMDS) pour récupérer les identifiants de rôle de la machine et pivoter vers le cloud. Sans IMDSv2 ni blocage réseau, le pipeline hérite des droits de l'hôte (ATT&CK T1552.005)."
    texte: "blocage de l'accès aux endpoints de métadonnées cloud (IMDS) depuis le contexte du job."
    preuve: Règle de blocage IMDS (169.254.169.254) testée depuis un job.
    href: "/docs/securiser/socle/referentiel/orchestration/isolation-reseau/#socle-orc-net-4"
  - id: SOCLE-ORC-NET-5
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: NET
    famille_nom: Isolation réseau
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils:
      - Cilium
    standards:
      - ANSSI (diffusion restreinte)
      - SLSA (build hermétique)
      - CIS Benchmarks
    menaces:
      - "Une charge compromise exfiltre des données ou des secrets en production vers un système contrôlé par l'attaquant. La détection comportementale runtime est la dernière ligne, une fois les contrôles amont franchis."
    texte: "contextes sensibles : architecture air-gap, dépôts et registres en miroir interne."
    preuve: "Preuve d'architecture air-gap ; miroirs internes des dépôts et registres."
    href: "/docs/securiser/socle/referentiel/orchestration/isolation-reseau/#socle-orc-net-5"
  - id: SOCLE-ORC-NET-6
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: NET
    famille_nom: Isolation réseau
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Cilium
    standards:
      - NIST 800-207
      - ANSSI-BP-028
      - OWASP CICD-SEC-7
    menaces:
      - "Un jeton d'accès de longue durée est volé et réutilisé tant qu'il n'est pas révoqué, sans nouvelle authentification. La durée de vie sans rotation maximise la valeur du vol."
    texte: communication runner ↔ serveur chiffrée (TLS/HTTPS) ; jamais de transport en clair.
    preuve: URL en https et tls-ca-file configurés ; aucun endpoint en http.
    href: "/docs/securiser/socle/referentiel/orchestration/isolation-reseau/#socle-orc-net-6"
  - id: SOCLE-ORC-OBS-1
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: OBS
    famille_nom: Observabilité, détection & réponse
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP CICD-SEC-10
      - OWASP ASVS v5.0.0 (V16)
      - ANSSI-BP-028
    menaces:
      - "Pendant un job, l'attaquant lit en mémoire le jeton OIDC court ou les identifiants fédérés pour s'authentifier auprès de services en aval. L'éphémérité du jeton ne protège pas si le job lui-même est compromis."
      - "Une charge compromise exfiltre des données ou des secrets en production vers un système contrôlé par l'attaquant. La détection comportementale runtime est la dernière ligne, une fois les contrôles amont franchis."
    texte: journalisation des exécutions conservée, horodatée et traçable.
    preuve: "Échantillon de journaux d'exécution (horodatés, conservés, traçables)."
    href: "/docs/securiser/socle/referentiel/orchestration/observabilite-detection-reponse/#socle-orc-obs-1"
  - id: SOCLE-ORC-OBS-2
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: OBS
    famille_nom: Observabilité, détection & réponse
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP CICD-SEC-10
      - SSDF RV.1
      - MITRE ATT&CK
    menaces:
      - "Une charge compromise exfiltre des données ou des secrets en production vers un système contrôlé par l'attaquant. La détection comportementale runtime est la dernière ligne, une fois les contrôles amont franchis."
    texte: "surveillance runtime : connexions sortantes, activité fichier, processus (ex. eBPF)."
    preuve: Configuration de surveillance runtime (eBPF/agent) active sur les runners.
    href: "/docs/securiser/socle/referentiel/orchestration/observabilite-detection-reponse/#socle-orc-obs-2"
  - id: SOCLE-ORC-OBS-3
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: OBS
    famille_nom: Observabilité, détection & réponse
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Harden-Runner
      - Falco
    standards:
      - OWASP CICD-SEC-10
      - OWASP CICD-SEC-6
      - MITRE ATT&CK
    menaces:
      - "Pendant un job, l'attaquant lit en mémoire le jeton OIDC court ou les identifiants fédérés pour s'authentifier auprès de services en aval. L'éphémérité du jeton ne protège pas si le job lui-même est compromis."
      - "Un paquet compromis vole les jetons de publication des mainteneurs qui l'installent et republie automatiquement d'autres paquets, se propageant de proche en proche (cas Shai-Hulud). L'auto-propagation transforme une compromission isolée en épidémie."
      - "Un job compromis balaie la mémoire ou l'environnement du runner pour récolter les secrets d'autres étapes ou pipelines. Le partage de runner sans isolation expose les secrets transverses."
    texte: "détection d'exfiltration de secrets et d'anomalies comportementales ; alerte sur flux non autorisé."
    preuve: "Règles de détection d'exfiltration/anomalies + exemple d'alerte."
    href: "/docs/securiser/socle/referentiel/orchestration/observabilite-detection-reponse/#socle-orc-obs-3"
  - id: SOCLE-ORC-OBS-4
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: OBS
    famille_nom: Observabilité, détection & réponse
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils: []
    standards:
      - OWASP CICD-SEC-10
      - SSDF RV.2-RV.3
      - "ISO 27001 (gestion d'incident)"
    menaces:
      - "Une charge compromise exfiltre des données ou des secrets en production vers un système contrôlé par l'attaquant. La détection comportementale runtime est la dernière ligne, une fois les contrôles amont franchis."
    texte: collecte forensique préservée par job ; procédure de réponse à incident définie et testée.
    preuve: Procédure de réponse à incident testée + preuve de collecte forensique par job.
    href: "/docs/securiser/socle/referentiel/orchestration/observabilite-detection-reponse/#socle-orc-obs-4"
  - id: SOCLE-ORC-SEG-1
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: SEG
    famille_nom: Affectation, segmentation & gouvernance
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Cilium
    standards:
      - OWASP CICD-SEC-4
      - GitHub Actions hardening (self-hosted)
      - OWASP CICD-SEC-1
    menaces:
      - "Un workflow déclenché sur pull_request_target (ou équivalent) exécute le code d'un fork non fiable avec le contexte et les secrets du dépôt cible. Une simple pull request d'un inconnu obtient l'exécution privilégiée et les jetons du projet."
      - "Poisoned Pipeline Execution directe : l'attaquant modifie la définition du pipeline (fichier de CI) pour y injecter des commandes exécutées avec les privilèges du build. Le contrôle du fichier de workflow donne le contrôle de l'exécution."
      - "Un pipeline déclenché par une contribution publique exécute du code non fiable dans un contexte privilégié, exposant secrets et droits du projet. La surface vient de l'ouverture du pipeline aux contributions externes."
      - "Un runner auto-hébergé non éphémère conserve un état entre jobs (fichiers, secrets, processus), permettant à un job compromis de piéger les suivants ou d'exfiltrer des données d'autres pipelines. La persistance du runner est l'angle mort."
    texte: les runners auto-hébergés ne sont JAMAIS utilisés avec des dépôts publics ni des workflows déclenchés par des forks non fiables.
    preuve: "Vérification : aucun runner auto-hébergé sur dépôt public / workflow de fork non fiable."
    href: "/docs/securiser/socle/referentiel/orchestration/affectation-segmentation-gouvernance/#socle-orc-seg-1"
  - id: SOCLE-ORC-SEG-2
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: SEG
    famille_nom: Affectation, segmentation & gouvernance
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Cilium
    standards:
      - OWASP CICD-SEC-1
      - OWASP CICD-SEC-5
      - NIST 800-207
      - SSDF PO.5
    menaces:
      - "Poisoned Pipeline Execution directe : l'attaquant modifie la définition du pipeline (fichier de CI) pour y injecter des commandes exécutées avec les privilèges du build. Le contrôle du fichier de workflow donne le contrôle de l'exécution."
    texte: segmentation par tier de confiance via runner groups ; aucun partage public/privé ou dev/prod.
    preuve: Configuration des runner groups par tier ; absence de partage public/privé, dev/prod.
    href: "/docs/securiser/socle/referentiel/orchestration/affectation-segmentation-gouvernance/#socle-orc-seg-2"
  - id: SOCLE-ORC-SEG-3
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: SEG
    famille_nom: Affectation, segmentation & gouvernance
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Cilium
      - Plumber
    standards:
      - OWASP CICD-SEC-5
      - OWASP CICD-SEC-2
    menaces:
      - "Poisoned Pipeline Execution directe : l'attaquant modifie la définition du pipeline (fichier de CI) pour y injecter des commandes exécutées avec les privilèges du build. Le contrôle du fichier de workflow donne le contrôle de l'exécution."
      - "Un pipeline déclenché par une contribution publique exécute du code non fiable dans un contexte privilégié, exposant secrets et droits du projet. La surface vient de l'ouverture du pipeline aux contributions externes."
    texte: "affectation restreinte aux dépôts/workflows autorisés ; pas d'association org-wide par défaut."
    preuve: "Matrice d'affectation dépôts/workflows ; pas d'association org-wide par défaut."
    href: "/docs/securiser/socle/referentiel/orchestration/affectation-segmentation-gouvernance/#socle-orc-seg-3"
  - id: SOCLE-ORC-SEG-4
    domaine: ORC
    domaine_nom: Plateforme & orchestration
    famille: SEG
    famille_nom: Affectation, segmentation & gouvernance
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Cilium
      - Plumber
    standards:
      - OWASP CICD-SEC-2
      - OWASP CICD-SEC-5
      - NIST 800-207
    menaces:
      - "Un runner auto-hébergé non éphémère conserve un état entre jobs (fichiers, secrets, processus), permettant à un job compromis de piéger les suivants ou d'exfiltrer des données d'autres pipelines. La persistance du runner est l'angle mort."
      - "La plateforme d'orchestration CI/CD elle-même (serveur, contrôleur, base de secrets) est compromise, donnant le contrôle de tous les pipelines, secrets et déploiements. C'est le vecteur de plus haut impact : il rend caducs les contrôles en aval."
    texte: "RBAC sur l'enregistrement et l'usage des runners ; séparation des privilèges de déploiement."
    preuve: Politique RBAC sur enregistrement/usage ; séparation des privilèges de déploiement.
    href: "/docs/securiser/socle/referentiel/orchestration/affectation-segmentation-gouvernance/#socle-orc-seg-4"
  - id: SOCLE-PKG-GEN-1
    domaine: PKG
    domaine_nom: Packaging & artefacts
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - Trivy
      - Syft
    standards:
      - CRA
      - CycloneDX (ECMA-424)
      - SPDX
      - SSDF PS.3
      - CNCF SSC (Artefacts)
      - PCI-DSS Req 6
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
    texte: SBOM généré pour chaque artefact (CycloneDX ou SPDX).
    preuve: SBOM (CycloneDX/SPDX) généré par artefact.
    href: "/docs/securiser/socle/referentiel/packaging/#socle-pkg-gen-1"
  - id: SOCLE-PKG-GEN-2
    domaine: PKG
    domaine_nom: Packaging & artefacts
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - Trivy
      - Syft
    standards:
      - OWASP A03
      - SSDF RV.1
      - CNCF SSC (Artefacts)
      - PCI-DSS Req 6
    menaces:
      - "L'artefact est modifié après sa construction mais avant sa publication ou son déploiement, échappant aux contrôles appliqués au code source. Sans intégrité de bout en bout, l'artefact livré diffère de celui qui a été buildé."
    texte: scan de vulnérabilités des images/artefacts avant publication.
    preuve: Rapport de scan de vulnérabilités des images/artefacts avant publication.
    href: "/docs/securiser/socle/referentiel/packaging/#socle-pkg-gen-2"
  - id: SOCLE-PKG-GEN-3
    domaine: PKG
    domaine_nom: Packaging & artefacts
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - Trivy
      - Syft
    standards:
      - CIS Benchmarks
      - OWASP CICD-SEC-6
      - CNCF SSC (Artefacts)
      - PCI-DSS Req 6
    menaces:
      - "Un secret (clé, jeton, mot de passe) est inclus par erreur dans l'image ou le paquet publié, exposé à tous ses consommateurs. La fuite se propage à chaque téléchargement de l'artefact."
    texte: images de base minimales et durcies ; aucun secret dans les artefacts.
    preuve: "Images minimales et durcies ; inspection d'absence de secrets dans les artefacts."
    href: "/docs/securiser/socle/referentiel/packaging/#socle-pkg-gen-3"
  - id: SOCLE-PKG-GEN-4
    domaine: PKG
    domaine_nom: Packaging & artefacts
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DEVRAIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - Trivy
      - Syft
    standards:
      - OWASP CICD-SEC-9
      - CNCF SSC (Artefacts)
      - PCI-DSS Req 6
    menaces:
      - "L'artefact est modifié après sa construction mais avant sa publication ou son déploiement, échappant aux contrôles appliqués au code source. Sans intégrité de bout en bout, l'artefact livré diffère de celui qui a été buildé."
      - "Un tag mutable (latest, une version) est réécrit pour pointer vers un artefact malveillant, livré aux consommateurs qui font confiance au tag plutôt qu'au digest. La mutabilité brise l'immuabilité attendue d'une version publiée."
    texte: artefacts stockés dans un registre contrôlé, avec rétention et immutabilité.
    preuve: "Configuration du registre : rétention et immutabilité."
    href: "/docs/securiser/socle/referentiel/packaging/#socle-pkg-gen-4"
  - id: SOCLE-PKG-IMG-1
    domaine: PKG
    domaine_nom: Packaging & artefacts
    famille: IMG
    famille_nom: Durcissement des images & artefacts
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Trivy
      - Grype
    standards:
      - CIS Benchmarks
      - OWASP CICD-SEC-9
    menaces:
      - "Un job exploite une mauvaise configuration ou une faille du runtime de conteneurs pour s'échapper vers l'hôte du runner et atteindre d'autres charges. Le cloisonnement supposé entre jobs est rompu."
      - "L'image de base utilisée pour construire les conteneurs contient une charge malveillante ou une vulnérabilité, héritée par tous les artefacts qui en dérivent. Le socle d'exécution contamine toute la production."
    texte: "images minimales (distroless / base réduite) ; surface d'attaque réduite au nécessaire."
    preuve: Image minimale (distroless / base réduite).
    href: "/docs/securiser/socle/referentiel/packaging/#socle-pkg-img-1"
  - id: SOCLE-PKG-IMG-2
    domaine: PKG
    domaine_nom: Packaging & artefacts
    famille: IMG
    famille_nom: Durcissement des images & artefacts
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Trivy
      - Grype
    standards:
      - CIS Benchmarks
      - NSA/CISA K8s Hardening
    menaces:
      - "Un job exploite une mauvaise configuration ou une faille du runtime de conteneurs pour s'échapper vers l'hôte du runner et atteindre d'autres charges. Le cloisonnement supposé entre jobs est rompu."
    texte: "conteneur tournant sous utilisateur non-root ; pas de shell ni d'outillage superflu en production."
    preuve: "Conteneur en non-root ; pas d'outillage superflu."
    href: "/docs/securiser/socle/referentiel/packaging/#socle-pkg-img-2"
  - id: SOCLE-PKG-IMG-3
    domaine: PKG
    domaine_nom: Packaging & artefacts
    famille: IMG
    famille_nom: Durcissement des images & artefacts
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Trivy
      - Grype
    standards:
      - OWASP CICD-SEC-6
      - OWASP ASVS v5.0.0 (V13)
    menaces:
      - "Un secret (clé, jeton, mot de passe) est inclus par erreur dans l'image ou le paquet publié, exposé à tous ses consommateurs. La fuite se propage à chaque téléchargement de l'artefact."
    texte: "aucun secret embarqué dans l'artefact ou l'image (build args, layers, variables d'environnement)."
    preuve: "Inspection : aucun secret embarqué dans l'artefact/l'image."
    href: "/docs/securiser/socle/referentiel/packaging/#socle-pkg-img-3"
  - id: SOCLE-PKG-IMG-4
    domaine: PKG
    domaine_nom: Packaging & artefacts
    famille: IMG
    famille_nom: Durcissement des images & artefacts
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Trivy
      - Grype
    standards:
      - SLSA
      - SSDF PW.6
    menaces:
      - "L'artefact est modifié après sa construction mais avant sa publication ou son déploiement, échappant aux contrôles appliqués au code source. Sans intégrité de bout en bout, l'artefact livré diffère de celui qui a été buildé."
    texte: "builds d'images reproductibles ; layers déterministes."
    preuve: "Attestation de build d'image reproductible."
    href: "/docs/securiser/socle/referentiel/packaging/#socle-pkg-img-4"
  - id: SOCLE-PKG-REG-1
    domaine: PKG
    domaine_nom: Packaging & artefacts
    famille: REG
    famille_nom: Registre & intégrité
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Harbor
    standards:
      - OWASP CICD-SEC-9
    menaces:
      - "L'artefact est modifié après sa construction mais avant sa publication ou son déploiement, échappant aux contrôles appliqués au code source. Sans intégrité de bout en bout, l'artefact livré diffère de celui qui a été buildé."
      - "Un tag mutable (latest, une version) est réécrit pour pointer vers un artefact malveillant, livré aux consommateurs qui font confiance au tag plutôt qu'au digest. La mutabilité brise l'immuabilité attendue d'une version publiée."
    texte: artefacts stockés dans un registre contrôlé, avec immutabilité (tags non réécrits) et rétention.
    preuve: "Registre contrôlé : immutabilité des tags et rétention."
    href: "/docs/securiser/socle/referentiel/packaging/#socle-pkg-reg-1"
  - id: SOCLE-PKG-REG-2
    domaine: PKG
    domaine_nom: Packaging & artefacts
    famille: REG
    famille_nom: Registre & intégrité
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Harbor
    standards:
      - OWASP CICD-SEC-2
      - NIST 800-207
    menaces:
      - "Le registre de paquets ou un miroir est compromis, permettant d'altérer ou de substituer des artefacts pour tous ses utilisateurs. L'infrastructure de distribution devient le point de défaillance unique."
    texte: accès au registre au moindre privilège (RBAC) ; push restreint à la chaîne de build.
    preuve: RBAC du registre ; push restreint à la chaîne de build.
    href: "/docs/securiser/socle/referentiel/packaging/#socle-pkg-reg-2"
  - id: SOCLE-PKG-REG-3
    domaine: PKG
    domaine_nom: Packaging & artefacts
    famille: REG
    famille_nom: Registre & intégrité
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Harbor
    standards:
      - SLSA
      - Sigstore
    menaces:
      - "L'artefact est modifié après sa construction mais avant sa publication ou son déploiement, échappant aux contrôles appliqués au code source. Sans intégrité de bout en bout, l'artefact livré diffère de celui qui a été buildé."
      - "L'attestation de provenance est forgée ou altérée pour faire croire qu'un artefact provient d'un build légitime. Sans provenance non falsifiable (build isolé, signature), la traçabilité est trompeuse."
    texte: "signature de l'artefact à la publication et provenance attachée."
    preuve: "Signature de l'artefact à la publication ; provenance attachée."
    href: "/docs/securiser/socle/referentiel/packaging/#socle-pkg-reg-3"
  - id: SOCLE-PKG-SBM-1
    domaine: PKG
    domaine_nom: Packaging & artefacts
    famille: SBM
    famille_nom: SBOM & transparence des composants
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Syft
      - cdxgen
    standards:
      - CRA
      - CycloneDX (ECMA-424)
      - SPDX
      - SSDF PS.3
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
    texte: SBOM complet par artefact (composants directs et transitifs, licences, empreintes) au format normalisé (CycloneDX ou SPDX).
    preuve: SBOM complet par artefact (composants, licences, hashes) au format CycloneDX/SPDX.
    href: "/docs/securiser/socle/referentiel/packaging/#socle-pkg-sbm-1"
  - id: SOCLE-PKG-SBM-2
    domaine: PKG
    domaine_nom: Packaging & artefacts
    famille: SBM
    famille_nom: SBOM & transparence des composants
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Syft
      - cdxgen
    standards:
      - CRA
      - SSDF PS.3
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
    texte: "SBOM attaché à l'artefact et conservé (versionné, récupérable par les consommateurs)."
    preuve: SBOM attaché et conservé, récupérable par les consommateurs.
    href: "/docs/securiser/socle/referentiel/packaging/#socle-pkg-sbm-2"
  - id: SOCLE-PKG-SBM-3
    domaine: PKG
    domaine_nom: Packaging & artefacts
    famille: SBM
    famille_nom: SBOM & transparence des composants
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Syft
      - cdxgen
    standards:
      - CRA
      - OWASP SCVS
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
    texte: complétude du SBOM vérifiée (pas de composant fantôme) ; SBOM généré au build, pas a posteriori.
    preuve: Vérification de complétude du SBOM (généré au build).
    href: "/docs/securiser/socle/referentiel/packaging/#socle-pkg-sbm-3"
  - id: SOCLE-PKG-SCN-1
    domaine: PKG
    domaine_nom: Packaging & artefacts
    famille: SCN
    famille_nom: Analyse avant publication
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Trivy
      - Grype
    standards:
      - OWASP A03
      - SSDF RV.1
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
      - "L'image de base utilisée pour construire les conteneurs contient une charge malveillante ou une vulnérabilité, héritée par tous les artefacts qui en dérivent. Le socle d'exécution contamine toute la production."
    texte: scan de vulnérabilités des artefacts/images avant publication ; gate bloquant sur criticités hautes.
    preuve: Rapport de scan de vulnérabilités avant publication ; gate bloquant.
    href: "/docs/securiser/socle/referentiel/packaging/#socle-pkg-scn-1"
  - id: SOCLE-PKG-SCN-2
    domaine: PKG
    domaine_nom: Packaging & artefacts
    famille: SCN
    famille_nom: Analyse avant publication
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Trivy
      - Grype
    standards:
      - OWASP CICD-SEC-9
      - OWASP A03
    menaces:
      - Un installeur officiel et signé est modifié à la source ou au build pour embarquer une charge, distribué via le canal légitime (cas CCleaner, 3CX). La signature valide endort la méfiance.
    texte: "scan de malware et de secrets de l'artefact (pas seulement CVE) avant publication."
    preuve: "Scan malware/secrets de l'artefact avant publication."
    href: "/docs/securiser/socle/referentiel/packaging/#socle-pkg-scn-2"
  - id: SOCLE-PKG-SCN-3
    domaine: PKG
    domaine_nom: Packaging & artefacts
    famille: SCN
    famille_nom: Analyse avant publication
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Trivy
      - Grype
    standards:
      - ISO 5230/18974
      - OWASP SCVS
    menaces:
      - "Le mainteneur saborde délibérément son propre composant pour des raisons idéologiques ou politiques (protestware) : code destructeur, messages, ou comportements ciblant certains utilisateurs. La confiance accordée au paquet se retourne contre ses consommateurs lors d'une simple mise à jour (cas node-ipc)."
    texte: conformité des licences vérifiée (politique de licences) avant publication.
    preuve: Vérification de conformité des licences avant publication.
    href: "/docs/securiser/socle/referentiel/packaging/#socle-pkg-scn-3"
  - id: SOCLE-REL-GEN-1
    domaine: REL
    domaine_nom: Release & provenance
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - cosign
      - slsa-verifier
    standards:
      - SLSA
      - Sigstore
      - SSDF PS.2
      - CNCF SSC (Artefacts)
      - PCI-DSS Req 6
    menaces:
      - "L'artefact est modifié après sa construction mais avant sa publication ou son déploiement, échappant aux contrôles appliqués au code source. Sans intégrité de bout en bout, l'artefact livré diffère de celui qui a été buildé."
      - "L'attestation de provenance est forgée ou altérée pour faire croire qu'un artefact provient d'un build légitime. Sans provenance non falsifiable (build isolé, signature), la traçabilité est trompeuse."
    texte: signature des artefacts publiés.
    preuve: Signature des artefacts publiés.
    href: "/docs/securiser/socle/referentiel/release/#socle-rel-gen-1"
  - id: SOCLE-REL-GEN-2
    domaine: REL
    domaine_nom: Release & provenance
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - cosign
      - slsa-verifier
    standards:
      - SLSA Build L2-L3
      - in-toto
      - CNCF SSC (Artefacts)
      - PCI-DSS Req 6
    menaces:
      - "L'attestation de provenance est forgée ou altérée pour faire croire qu'un artefact provient d'un build légitime. Sans provenance non falsifiable (build isolé, signature), la traçabilité est trompeuse."
    texte: provenance générée et attachée (in-toto), vérifiable par les consommateurs.
    preuve: Provenance in-toto générée et attachée, vérifiable par les consommateurs.
    href: "/docs/securiser/socle/referentiel/release/#socle-rel-gen-2"
  - id: SOCLE-REL-GEN-3
    domaine: REL
    domaine_nom: Release & provenance
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - cosign
      - slsa-verifier
    standards:
      - OWASP CICD-SEC-9
      - CNCF SSC (Artefacts)
      - PCI-DSS Req 6
    menaces:
      - "L'artefact est modifié après sa construction mais avant sa publication ou son déploiement, échappant aux contrôles appliqués au code source. Sans intégrité de bout en bout, l'artefact livré diffère de celui qui a été buildé."
      - Le canal par lequel le logiciel est distribué (site de téléchargement, CDN, miroir, mise à jour) est compromis pour livrer une version trojanisée aux utilisateurs finaux. La compromission frappe en aval de la production, au plus près des victimes.
    texte: "vérification d'intégrité avant promotion / publication."
    preuve: "Procédure de vérification d'intégrité avant promotion/publication."
    href: "/docs/securiser/socle/referentiel/release/#socle-rel-gen-3"
  - id: SOCLE-REL-GEN-4
    domaine: REL
    domaine_nom: Release & provenance
    famille: GEN
    famille_nom: Exigences générales
    niveau: R3
    devoir: DOIT
    essentielle: true
    souverain: true
    profils:
      - souverain
      - paiement
    outils:
      - cosign
      - slsa-verifier
    standards:
      - SLSA Build L3
      - CNCF SSC (Artefacts)
      - PCI-DSS Req 6
    menaces:
      - Un installeur officiel et signé est modifié à la source ou au build pour embarquer une charge, distribué via le canal légitime (cas CCleaner, 3CX). La signature valide endort la méfiance.
    texte: provenance non falsifiable (build isolé L3) pour les artefacts sensibles.
    preuve: Preuve de build isolé L3 et de provenance non falsifiable pour les artefacts sensibles.
    href: "/docs/securiser/socle/referentiel/release/#socle-rel-gen-4"
  - id: SOCLE-REL-GEN-5
    domaine: REL
    domaine_nom: Release & provenance
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DEVRAIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - cosign
      - slsa-verifier
    standards:
      - ANSSI
      - OWASP ASVS v5.0.0 (V11)
      - CNCF SSC (Artefacts)
      - PCI-DSS Req 6
    menaces:
      - "La clé privée de signature des artefacts est volée (stockage en clair, longue durée, hors HSM), permettant de signer des livrables malveillants présentés comme authentiques. La signature, censée prouver l'authenticité, est retournée contre les consommateurs."
    texte: gestion des clés de signature (rotation, HSM/KMS).
    preuve: Procédure de gestion des clés de signature (rotation, HSM/KMS).
    href: "/docs/securiser/socle/referentiel/release/#socle-rel-gen-5"
  - id: SOCLE-REL-GEN-6
    domaine: REL
    domaine_nom: Release & provenance
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - cosign
      - slsa-verifier
    standards:
      - OpenSSF Trusted Publishers
      - SLSA
      - OWASP CICD-SEC-6
      - CNCF SSC (Artefacts)
      - PCI-DSS Req 6
    menaces:
      - "Le jeton de publication (PAT) d'un éditeur d'extension fuite, permettant de pousser une mise à jour piégée diffusée automatiquement à toute la base installée. Une seule fuite de jeton compromet des milliers de postes via le canal de mise à jour de confiance."
      - "Pendant un job, l'attaquant lit en mémoire le jeton OIDC court ou les identifiants fédérés pour s'authentifier auprès de services en aval. L'éphémérité du jeton ne protège pas si le job lui-même est compromis."
      - "Le compte d'un éditeur sur un registre (npm, PyPI, conteneurs) est pris (phishing, réutilisation de mot de passe, absence de MFA), permettant de publier des versions malveillantes sous une identité de confiance. C'est le vecteur le plus fréquent des compromissions de paquets."
      - "Un jeton de publication de longue durée fuite (CI, poste, dépôt) et sert à pousser des versions piégées sans interaction avec le compte. La durée de vie excessive du jeton élargit la fenêtre d'abus."
      - "Un paquet compromis vole les jetons de publication des mainteneurs qui l'installent et republie automatiquement d'autres paquets, se propageant de proche en proche (cas Shai-Hulud). L'auto-propagation transforme une compromission isolée en épidémie."
      - "Un jeton d'accès de longue durée est volé et réutilisé tant qu'il n'est pas révoqué, sans nouvelle authentification. La durée de vie sans rotation maximise la valeur du vol."
    texte: publication via trusted publishing (identité OIDC courte) plutôt que jetons de registre longue durée ; compte de publication protégé (2FA, contrôle des changements de propriété/email).
    preuve: Configuration de trusted publishing (OIDC) ; protection du compte de publication (2FA, contrôle propriété/email).
    href: "/docs/securiser/socle/referentiel/release/#socle-rel-gen-6"
  - id: SOCLE-REL-GEN-7
    domaine: REL
    domaine_nom: Release & provenance
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DEVRAIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - cosign
      - slsa-verifier
    standards:
      - NIST FIPS 204
      - ANSSI (crypto-agilité)
      - CycloneDX (CBOM)
      - CNCF SSC (Artefacts)
      - PCI-DSS Req 6
    menaces:
      - "La clé privée de signature des artefacts est volée (stockage en clair, longue durée, hors HSM), permettant de signer des livrables malveillants présentés comme authentiques. La signature, censée prouver l'authenticité, est retournée contre les consommateurs."
    texte: "crypto-agilité : inventaire des algorithmes cryptographiques (CBOM), capacité de substitution/rotation des algorithmes, et trajectoire de migration post-quantique planifiée (horizon ANSSI/UE 2030)."
    preuve: Inventaire cryptographique (CBOM) ; plan de crypto-agilité et de migration post-quantique daté.
    href: "/docs/securiser/socle/referentiel/release/#socle-rel-gen-7"
  - id: SOCLE-REL-KEY-1
    domaine: REL
    domaine_nom: Release & provenance
    famille: KEY
    famille_nom: Signature & gestion des clés
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - cosign
    standards:
      - ANSSI
      - OWASP ASVS v5.0.0 (V11)
    menaces:
      - "La clé privée de signature des artefacts est volée (stockage en clair, longue durée, hors HSM), permettant de signer des livrables malveillants présentés comme authentiques. La signature, censée prouver l'authenticité, est retournée contre les consommateurs."
    texte: clés de signature gérées dans un KMS/HSM ; aucune clé privée en clair.
    preuve: Clés de signature en KMS/HSM ; absence de clé privée en clair.
    href: "/docs/securiser/socle/referentiel/release/#socle-rel-key-1"
  - id: SOCLE-REL-KEY-2
    domaine: REL
    domaine_nom: Release & provenance
    famille: KEY
    famille_nom: Signature & gestion des clés
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - cosign
    standards:
      - ANSSI
      - SSDF PO.5
    menaces:
      - "La clé privée de signature des artefacts est volée (stockage en clair, longue durée, hors HSM), permettant de signer des livrables malveillants présentés comme authentiques. La signature, censée prouver l'authenticité, est retournée contre les consommateurs."
    texte: rotation et révocation des clés de signature documentées et testées.
    preuve: Procédure de rotation/révocation des clés, testée.
    href: "/docs/securiser/socle/referentiel/release/#socle-rel-key-2"
  - id: SOCLE-REL-KEY-3
    domaine: REL
    domaine_nom: Release & provenance
    famille: KEY
    famille_nom: Signature & gestion des clés
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - cosign
    standards:
      - Sigstore
      - OpenSSF Trusted Publishers
    menaces:
      - "La clé privée de signature des artefacts est volée (stockage en clair, longue durée, hors HSM), permettant de signer des livrables malveillants présentés comme authentiques. La signature, censée prouver l'authenticité, est retournée contre les consommateurs."
    texte: signature sans clé de longue durée (identité éphémère, ex. keyless/Fulcio).
    preuve: Configuration de signature keyless (identité éphémère).
    href: "/docs/securiser/socle/referentiel/release/#socle-rel-key-3"
  - id: SOCLE-REL-KEY-4
    domaine: REL
    domaine_nom: Release & provenance
    famille: KEY
    famille_nom: Signature & gestion des clés
    niveau: R3
    devoir: DEVRAIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils:
      - cosign
    standards:
      - NIST FIPS 204
      - NIST FIPS 205
      - ANSSI (PQC hybride)
      - Sigstore (ML-DSA)
    menaces:
      - "La clé privée de signature des artefacts est volée (stockage en clair, longue durée, hors HSM), permettant de signer des livrables malveillants présentés comme authentiques. La signature, censée prouver l'authenticité, est retournée contre les consommateurs."
    texte: signature post-quantique ou hybride (ML-DSA / SLH-DSA, NIST FIPS 204/205) pour les artefacts sensibles à longue durée de conservation.
    preuve: Signature post-quantique/hybride en place sur les artefacts sensibles longue conservation ; agilité des algorithmes.
    href: "/docs/securiser/socle/referentiel/release/#socle-rel-key-4"
  - id: SOCLE-REL-PRV-1
    domaine: REL
    domaine_nom: Release & provenance
    famille: PRV
    famille_nom: Provenance & attestation
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - slsa-verifier
      - in-toto
      - Witness
    standards:
      - SLSA Build L2-L3
      - in-toto
      - SSDF PS.2
    menaces:
      - "L'attestation de provenance est forgée ou altérée pour faire croire qu'un artefact provient d'un build légitime. Sans provenance non falsifiable (build isolé, signature), la traçabilité est trompeuse."
    texte: la provenance décrit builder, source et paramètres de build (non répudiable).
    preuve: Provenance décrivant builder, source et paramètres de build.
    href: "/docs/securiser/socle/referentiel/release/#socle-rel-prv-1"
  - id: SOCLE-REL-PRV-2
    domaine: REL
    domaine_nom: Release & provenance
    famille: PRV
    famille_nom: Provenance & attestation
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - slsa-verifier
      - in-toto
      - Witness
    standards:
      - in-toto
      - CycloneDX (ECMA-424)
      - SSDF PS.3
    menaces:
      - "L'attestation de provenance est forgée ou altérée pour faire croire qu'un artefact provient d'un build légitime. Sans provenance non falsifiable (build isolé, signature), la traçabilité est trompeuse."
    texte: "attestations complémentaires (SBOM, tests, scan) liées à l'artefact."
    preuve: "Attestations complémentaires (SBOM, tests, scan) liées à l'artefact."
    href: "/docs/securiser/socle/referentiel/release/#socle-rel-prv-2"
  - id: SOCLE-REL-PRV-3
    domaine: REL
    domaine_nom: Release & provenance
    famille: PRV
    famille_nom: Provenance & attestation
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils:
      - slsa-verifier
      - in-toto
      - Witness
    standards:
      - SLSA Build L3
      - NIST 800-204D
      - ANSSI
    menaces:
      - "L'attestation de provenance est forgée ou altérée pour faire croire qu'un artefact provient d'un build légitime. Sans provenance non falsifiable (build isolé, signature), la traçabilité est trompeuse."
      - "Le build est compromis en amont, si bien que la provenance est techniquement valide mais atteste d'un artefact malveillant. La provenance prouve l'origine, pas l'innocuité : un build corrompu produit une attestation correcte d'un mauvais résultat."
    texte: "provenance ancrée matériellement : attestation à distance d'un environnement d'exécution de confiance (TEE - AMD SEV-SNP, Intel TDX, AWS Nitro) pour le builder, couplée à des builds reproductibles pour la vérification sémantique."
    preuve: Attestation TEE du builder (SEV-SNP/TDX/Nitro) ; builds reproductibles vérifiés.
    href: "/docs/securiser/socle/referentiel/release/#socle-rel-prv-3"
  - id: SOCLE-REL-PUB-1
    domaine: REL
    domaine_nom: Release & provenance
    famille: PUB
    famille_nom: Publication & trusted publishing
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenSSF Trusted Publishers
    standards:
      - OpenSSF Trusted Publishers
      - OWASP CICD-SEC-6
      - OWASP CICD-SEC-2
    menaces:
      - "Le jeton de publication (PAT) d'un éditeur d'extension fuite, permettant de pousser une mise à jour piégée diffusée automatiquement à toute la base installée. Une seule fuite de jeton compromet des milliers de postes via le canal de mise à jour de confiance."
      - "Le compte d'un éditeur sur un registre (npm, PyPI, conteneurs) est pris (phishing, réutilisation de mot de passe, absence de MFA), permettant de publier des versions malveillantes sous une identité de confiance. C'est le vecteur le plus fréquent des compromissions de paquets."
    texte: "compte de publication protégé : MFA résistante au phishing (WebAuthn/FIDO2), contrôle des changements de propriété/email ; publication via OIDC / trusted publishing à jetons éphémères privilégiée."
    preuve: Protection du compte de publication (2FA, contrôle propriété/email).
    href: "/docs/securiser/socle/referentiel/release/#socle-rel-pub-1"
  - id: SOCLE-REL-PUB-2
    domaine: REL
    domaine_nom: Release & provenance
    famille: PUB
    famille_nom: Publication & trusted publishing
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenSSF Trusted Publishers
    standards:
      - OWASP CICD-SEC-9
    menaces:
      - "Un tag mutable (latest, une version) est réécrit pour pointer vers un artefact malveillant, livré aux consommateurs qui font confiance au tag plutôt qu'au digest. La mutabilité brise l'immuabilité attendue d'une version publiée."
      - "Le registre de paquets ou un miroir est compromis, permettant d'altérer ou de substituer des artefacts pour tous ses utilisateurs. L'infrastructure de distribution devient le point de défaillance unique."
    texte: artefacts publiés dans un registre contrôlé, avec rétention et immutabilité.
    preuve: Registre contrôlé avec rétention et immutabilité.
    href: "/docs/securiser/socle/referentiel/release/#socle-rel-pub-2"
  - id: SOCLE-REL-PUB-3
    domaine: REL
    domaine_nom: Release & provenance
    famille: PUB
    famille_nom: Publication & trusted publishing
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenSSF Trusted Publishers
    standards:
      - OWASP CICD-SEC-9
      - SLSA
    menaces:
      - "Un tag mutable (latest, une version) est réécrit pour pointer vers un artefact malveillant, livré aux consommateurs qui font confiance au tag plutôt qu'au digest. La mutabilité brise l'immuabilité attendue d'une version publiée."
    texte: versionnement et étiquetage immuables des releases.
    preuve: Versionnement et étiquetage immuables des releases.
    href: "/docs/securiser/socle/referentiel/release/#socle-rel-pub-3"
  - id: SOCLE-REL-VER-1
    domaine: REL
    domaine_nom: Release & provenance
    famille: VER
    famille_nom: Vérification, intégrité & transparence
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - cosign
      - slsa-verifier
      - Rekor
    standards:
      - SLSA (vérification)
      - in-toto
    menaces:
      - "Le consommateur n'utilise ni la signature ni la provenance avant de consommer un artefact, annulant tout le bénéfice de leur génération. La chaîne de confiance ne tient que si le dernier maillon vérifie."
    texte: vérification de signature et de provenance par les consommateurs avant usage.
    preuve: Vérification de signature et de provenance par les consommateurs.
    href: "/docs/securiser/socle/referentiel/release/#socle-rel-ver-1"
  - id: SOCLE-REL-VER-2
    domaine: REL
    domaine_nom: Release & provenance
    famille: VER
    famille_nom: Vérification, intégrité & transparence
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - cosign
      - slsa-verifier
      - Rekor
    standards:
      - Sigstore
      - SCITT
    menaces:
      - "Le build est compromis en amont, si bien que la provenance est techniquement valide mais atteste d'un artefact malveillant. La provenance prouve l'origine, pas l'innocuité : un build corrompu produit une attestation correcte d'un mauvais résultat."
      - "Le consommateur n'utilise ni la signature ni la provenance avant de consommer un artefact, annulant tout le bénéfice de leur génération. La chaîne de confiance ne tient que si le dernier maillon vérifie."
    texte: journal de transparence des signatures/attestations (ex. Rekor).
    preuve: Journal de transparence des signatures/attestations (ex. Rekor).
    href: "/docs/securiser/socle/referentiel/release/#socle-rel-ver-2"
  - id: SOCLE-REL-VER-3
    domaine: REL
    domaine_nom: Release & provenance
    famille: VER
    famille_nom: Vérification, intégrité & transparence
    niveau: R3
    devoir: DEVRAIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils:
      - cosign
      - slsa-verifier
      - Rekor
    standards:
      - SCITT
      - Sigstore
    menaces:
      - "Le build est compromis en amont, si bien que la provenance est techniquement valide mais atteste d'un artefact malveillant. La provenance prouve l'origine, pas l'innocuité : un build corrompu produit une attestation correcte d'un mauvais résultat."
    texte: registre de transparence de bout en bout pour la chaîne sensible.
    preuve: Registre de transparence de bout en bout pour la chaîne sensible.
    href: "/docs/securiser/socle/referentiel/release/#socle-rel-ver-3"
  - id: SOCLE-RUN-FOR-1
    domaine: RUN
    domaine_nom: Runtime & exploitation
    famille: FOR
    famille_nom: Forensique & investigation
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils: []
    standards:
      - ISO 27001
      - ANSSI
    menaces:
      - "Une charge compromise exfiltre des données ou des secrets en production vers un système contrôlé par l'attaquant. La détection comportementale runtime est la dernière ligne, une fois les contrôles amont franchis."
      - Une charge détruit données, dépôts ou systèmes (wiper, suppression) pour saboter ou couvrir ses traces. La résilience (sauvegardes éprouvées, immuabilité) conditionne la capacité de reprise.
      - "Un attaquant ayant obtenu l'exécution sur un hôte implante une persistance furtive au niveau du noyau ou du système : programme eBPF malveillant, extension système (systemd-sysext), module noyau ou hook de chargement. Le code survit aux redéploiements applicatifs, masque ses processus et connexions, et intercepte secrets et trafic. Les contrôles applicatifs et l'analyse d'image ne le voient pas : il vit sous la charge de travail, dans le plan hôte."
    texte: collecte forensique préservée (artefacts, logs, images) avec chaîne de preuve.
    preuve: Collecte forensique préservée avec chaîne de preuve.
    href: "/docs/securiser/socle/referentiel/runtime/#socle-run-for-1"
  - id: SOCLE-RUN-FOR-2
    domaine: RUN
    domaine_nom: Runtime & exploitation
    famille: FOR
    famille_nom: Forensique & investigation
    niveau: R3
    devoir: DEVRAIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils:
      - Falco
    standards:
      - MITRE ATT&CK
      - ISO 27001
    menaces:
      - "Une charge compromise exfiltre des données ou des secrets en production vers un système contrôlé par l'attaquant. La détection comportementale runtime est la dernière ligne, une fois les contrôles amont franchis."
      - Une charge détruit données, dépôts ou systèmes (wiper, suppression) pour saboter ou couvrir ses traces. La résilience (sauvegardes éprouvées, immuabilité) conditionne la capacité de reprise.
    texte: "capacité d'investigation post-incident (timeline, root cause) outillée."
    preuve: "Capacité d'investigation post-incident outillée (timeline, root cause)."
    href: "/docs/securiser/socle/referentiel/runtime/#socle-run-for-2"
  - id: SOCLE-RUN-GEN-1
    domaine: RUN
    domaine_nom: Runtime & exploitation
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils:
      - Falco
    standards:
      - OWASP CICD-SEC-10
      - MITRE ATT&CK
      - PCI-DSS Req 10
      - HDS
    menaces:
      - "Une charge compromise exfiltre des données ou des secrets en production vers un système contrôlé par l'attaquant. La détection comportementale runtime est la dernière ligne, une fois les contrôles amont franchis."
      - "Après une intrusion initiale, l'attaquant se déplace latéralement et installe des mécanismes de persistance pour conserver l'accès. La compromission s'étend dans le temps et l'espace faute de détection et de segmentation."
      - "Un attaquant ayant obtenu l'exécution sur un hôte implante une persistance furtive au niveau du noyau ou du système : programme eBPF malveillant, extension système (systemd-sysext), module noyau ou hook de chargement. Le code survit aux redéploiements applicatifs, masque ses processus et connexions, et intercepte secrets et trafic. Les contrôles applicatifs et l'analyse d'image ne le voient pas : il vit sous la charge de travail, dans le plan hôte."
    texte: surveillance runtime des charges (comportement, réseau).
    preuve: Configuration de surveillance runtime (comportement, réseau).
    href: "/docs/securiser/socle/referentiel/runtime/#socle-run-gen-1"
  - id: SOCLE-RUN-GEN-2
    domaine: RUN
    domaine_nom: Runtime & exploitation
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils:
      - Trivy
      - Dependency-Track
    standards:
      - SSDF RV
      - CRA
      - PCI-DSS Req 10
      - HDS
    menaces:
      - "Après une intrusion initiale, l'attaquant se déplace latéralement et installe des mécanismes de persistance pour conserver l'accès. La compromission s'étend dans le temps et l'espace faute de détection et de segmentation."
      - "Un attaquant ayant obtenu l'exécution sur un hôte implante une persistance furtive au niveau du noyau ou du système : programme eBPF malveillant, extension système (systemd-sysext), module noyau ou hook de chargement. Le code survit aux redéploiements applicatifs, masque ses processus et connexions, et intercepte secrets et trafic. Les contrôles applicatifs et l'analyse d'image ne le voient pas : il vit sous la charge de travail, dans le plan hôte."
    texte: "gestion des vulnérabilités en production : suivi et délais de correction."
    preuve: Processus de gestion des vulnérabilités en production ; délais de correction suivis.
    href: "/docs/securiser/socle/referentiel/runtime/#socle-run-gen-2"
  - id: SOCLE-RUN-GEN-3
    domaine: RUN
    domaine_nom: Runtime & exploitation
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils:
      - Falco
    standards:
      - ISO 27001
      - NIS2 (notification)
      - PCI-DSS Req 10
      - HDS
    menaces:
      - Une charge détruit données, dépôts ou systèmes (wiper, suppression) pour saboter ou couvrir ses traces. La résilience (sauvegardes éprouvées, immuabilité) conditionne la capacité de reprise.
    texte: détection et réponse aux incidents (procédure définie).
    preuve: Procédure de détection et réponse aux incidents documentée.
    href: "/docs/securiser/socle/referentiel/runtime/#socle-run-gen-3"
  - id: SOCLE-RUN-GEN-4
    domaine: RUN
    domaine_nom: Runtime & exploitation
    famille: GEN
    famille_nom: Exigences générales
    niveau: R3
    devoir: DOIT
    essentielle: true
    souverain: true
    profils:
      - souverain
      - paiement
      - sante
    outils:
      - Falco
    standards:
      - ISO 27001
      - ANSSI
      - PCI-DSS Req 10
      - HDS
    menaces:
      - "Une charge compromise exfiltre des données ou des secrets en production vers un système contrôlé par l'attaquant. La détection comportementale runtime est la dernière ligne, une fois les contrôles amont franchis."
      - "Après une intrusion initiale, l'attaquant se déplace latéralement et installe des mécanismes de persistance pour conserver l'accès. La compromission s'étend dans le temps et l'espace faute de détection et de segmentation."
    texte: "collecte forensique et capacité d'investigation préservée."
    preuve: "Dispositif de collecte forensique ; capacité d'investigation préservée."
    href: "/docs/securiser/socle/referentiel/runtime/#socle-run-gen-4"
  - id: SOCLE-RUN-IRP-1
    domaine: RUN
    domaine_nom: Runtime & exploitation
    famille: IRP
    famille_nom: Réponse à incident
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - ISO 27001
      - NIS2 (notification)
    menaces:
      - "Une charge compromise exfiltre des données ou des secrets en production vers un système contrôlé par l'attaquant. La détection comportementale runtime est la dernière ligne, une fois les contrôles amont franchis."
      - Une charge détruit données, dépôts ou systèmes (wiper, suppression) pour saboter ou couvrir ses traces. La résilience (sauvegardes éprouvées, immuabilité) conditionne la capacité de reprise.
    texte: procédure de réponse à incident documentée, avec rôles et délais (alignée NIS2).
    preuve: Procédure de réponse à incident documentée (rôles, délais).
    href: "/docs/securiser/socle/referentiel/runtime/#socle-run-irp-1"
  - id: SOCLE-RUN-IRP-2
    domaine: RUN
    domaine_nom: Runtime & exploitation
    famille: IRP
    famille_nom: Réponse à incident
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - NIST 800-207
      - MITRE D3FEND
    menaces:
      - "Après une intrusion initiale, l'attaquant se déplace latéralement et installe des mécanismes de persistance pour conserver l'accès. La compromission s'étend dans le temps et l'espace faute de détection et de segmentation."
      - Une charge détruit données, dépôts ou systèmes (wiper, suppression) pour saboter ou couvrir ses traces. La résilience (sauvegardes éprouvées, immuabilité) conditionne la capacité de reprise.
    texte: "capacité de confinement / isolation rapide d'une charge compromise."
    preuve: "Capacité de confinement/isolation rapide d'une charge compromise."
    href: "/docs/securiser/socle/referentiel/runtime/#socle-run-irp-2"
  - id: SOCLE-RUN-IRP-3
    domaine: RUN
    domaine_nom: Runtime & exploitation
    famille: IRP
    famille_nom: Réponse à incident
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - NIS2 (notification)
      - CRA
    menaces:
      - Une charge détruit données, dépôts ou systèmes (wiper, suppression) pour saboter ou couvrir ses traces. La résilience (sauvegardes éprouvées, immuabilité) conditionne la capacité de reprise.
    texte: "notification réglementaire d'incident dans les délais (NIS2)."
    preuve: "Procédure de notification réglementaire d'incident (NIS2)."
    href: "/docs/securiser/socle/referentiel/runtime/#socle-run-irp-3"
  - id: SOCLE-RUN-IRP-4
    domaine: RUN
    domaine_nom: Runtime & exploitation
    famille: IRP
    famille_nom: Réponse à incident
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - ISO 27001
      - NIS2 (notification)
    menaces:
      - Une charge détruit données, dépôts ou systèmes (wiper, suppression) pour saboter ou couvrir ses traces. La résilience (sauvegardes éprouvées, immuabilité) conditionne la capacité de reprise.
    texte: exercices de réponse à incident (game days) réguliers et tracés.
    preuve: "Comptes rendus d'exercices de réponse à incident."
    href: "/docs/securiser/socle/referentiel/runtime/#socle-run-irp-4"
  - id: SOCLE-RUN-OBS-1
    domaine: RUN
    domaine_nom: Runtime & exploitation
    famille: OBS
    famille_nom: Observabilité & détection runtime
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Falco
      - Tetragon
    standards:
      - OWASP CICD-SEC-10
      - ISO 27001
      - OWASP ASVS v5.0.0 (V16)
    menaces:
      - "Une charge compromise exfiltre des données ou des secrets en production vers un système contrôlé par l'attaquant. La détection comportementale runtime est la dernière ligne, une fois les contrôles amont franchis."
    texte: journalisation centralisée des charges (applicatif, système, réseau), horodatée et conservée.
    preuve: Journalisation centralisée horodatée et conservée (applicatif, système, réseau).
    href: "/docs/securiser/socle/referentiel/runtime/#socle-run-obs-1"
  - id: SOCLE-RUN-OBS-2
    domaine: RUN
    domaine_nom: Runtime & exploitation
    famille: OBS
    famille_nom: Observabilité & détection runtime
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Falco
      - Tetragon
    standards:
      - OWASP CICD-SEC-10
      - MITRE ATT&CK
    menaces:
      - "Une charge compromise exfiltre des données ou des secrets en production vers un système contrôlé par l'attaquant. La détection comportementale runtime est la dernière ligne, une fois les contrôles amont franchis."
      - "Après une intrusion initiale, l'attaquant se déplace latéralement et installe des mécanismes de persistance pour conserver l'accès. La compromission s'étend dans le temps et l'espace faute de détection et de segmentation."
    texte: détection comportementale runtime (processus, fichiers, réseau ; ex. eBPF) sur les charges de production.
    preuve: Détection comportementale runtime (eBPF/agent) sur les charges de production.
    href: "/docs/securiser/socle/referentiel/runtime/#socle-run-obs-2"
  - id: SOCLE-RUN-OBS-3
    domaine: RUN
    domaine_nom: Runtime & exploitation
    famille: OBS
    famille_nom: Observabilité & détection runtime
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Falco
      - Tetragon
    standards:
      - MITRE ATT&CK
      - NIST 800-207
    menaces:
      - "Une charge compromise exfiltre des données ou des secrets en production vers un système contrôlé par l'attaquant. La détection comportementale runtime est la dernière ligne, une fois les contrôles amont franchis."
      - "Après une intrusion initiale, l'attaquant se déplace latéralement et installe des mécanismes de persistance pour conserver l'accès. La compromission s'étend dans le temps et l'espace faute de détection et de segmentation."
    texte: "détection d'anomalies et alerte sur écart de comportement attendu."
    preuve: "Détection d'anomalies et alertes sur écart de comportement."
    href: "/docs/securiser/socle/referentiel/runtime/#socle-run-obs-3"
  - id: SOCLE-RUN-OBS-4
    domaine: RUN
    domaine_nom: Runtime & exploitation
    famille: OBS
    famille_nom: Observabilité & détection runtime
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils:
      - Falco
      - Tetragon
    standards:
      - ISO 27001
      - ANSSI
    menaces:
      - "Une charge compromise exfiltre des données ou des secrets en production vers un système contrôlé par l'attaquant. La détection comportementale runtime est la dernière ligne, une fois les contrôles amont franchis."
    texte: surveillance renforcée et corrélation SIEM pour les charges sensibles.
    preuve: Surveillance renforcée et corrélation SIEM pour charges sensibles.
    href: "/docs/securiser/socle/referentiel/runtime/#socle-run-obs-4"
  - id: SOCLE-RUN-RES-1
    domaine: RUN
    domaine_nom: Runtime & exploitation
    famille: RES
    famille_nom: Résilience & continuité
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils:
      - sante
    outils: []
    standards:
      - NIS2 art.21
      - ISO 27001
      - ANSSI-BP-028
    menaces:
      - Une charge détruit données, dépôts ou systèmes (wiper, suppression) pour saboter ou couvrir ses traces. La résilience (sauvegardes éprouvées, immuabilité) conditionne la capacité de reprise.
    texte: sauvegardes chiffrées et restauration testée régulièrement.
    preuve: Sauvegardes chiffrées ; restauration testée.
    href: "/docs/securiser/socle/referentiel/runtime/#socle-run-res-1"
  - id: SOCLE-RUN-RES-2
    domaine: RUN
    domaine_nom: Runtime & exploitation
    famille: RES
    famille_nom: Résilience & continuité
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - NIST 800-204D
      - SSDF RV.2
    menaces:
      - Une charge détruit données, dépôts ou systèmes (wiper, suppression) pour saboter ou couvrir ses traces. La résilience (sauvegardes éprouvées, immuabilité) conditionne la capacité de reprise.
    texte: "capacité de rollback / redéploiement rapide d'une version saine."
    preuve: "Capacité de rollback/redéploiement rapide d'une version saine."
    href: "/docs/securiser/socle/referentiel/runtime/#socle-run-res-2"
  - id: SOCLE-RUN-RES-3
    domaine: RUN
    domaine_nom: Runtime & exploitation
    famille: RES
    famille_nom: Résilience & continuité
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils:
      - sante
    outils: []
    standards:
      - NIS2 art.21
      - ISO 27001
      - DORA
    menaces:
      - Une charge détruit données, dépôts ou systèmes (wiper, suppression) pour saboter ou couvrir ses traces. La résilience (sauvegardes éprouvées, immuabilité) conditionne la capacité de reprise.
    texte: plan de continuité / reprise (PCA/PRA) documenté et éprouvé.
    preuve: Plan de continuité/reprise (PCA/PRA) éprouvé.
    href: "/docs/securiser/socle/referentiel/runtime/#socle-run-res-3"
  - id: SOCLE-SEC-GEN-1
    domaine: SEC
    domaine_nom: "Gestion des secrets : inventaire & cycle de vie"
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils:
      - Gitleaks
      - TruffleHog
    standards:
      - OWASP CICD-SEC-6
      - OWASP ASVS v5.0.0 (V13)
      - PCI-DSS Req 3
      - HDS
    menaces:
      - "Un secret est stocké ou laissé en clair (fichier, variable d'environnement, historique shell, dépôt) et récupéré par un attaquant. La fuite d'un secret transforme un accès local en compromission étendue (cas Codecov)."
    texte: "inventaire des secrets tenu à jour : type, propriétaire, emplacement, consommateurs, criticité."
    preuve: "Inventaire des secrets à jour : type, propriétaire, emplacement, consommateurs, criticité."
    href: "/docs/securiser/socle/referentiel/secrets/#socle-sec-gen-1"
  - id: SOCLE-SEC-GEN-2
    domaine: SEC
    domaine_nom: "Gestion des secrets : inventaire & cycle de vie"
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils:
      - Gitleaks
      - TruffleHog
    standards:
      - OWASP ASVS v5.0.0 (V13)
      - ANSSI-BP-028
      - PCI-DSS Req 3
      - HDS
    menaces:
      - "Un secret (clé, jeton, mot de passe) est inclus par erreur dans l'image ou le paquet publié, exposé à tous ses consommateurs. La fuite se propage à chaque téléchargement de l'artefact."
      - "Un secret est stocké ou laissé en clair (fichier, variable d'environnement, historique shell, dépôt) et récupéré par un attaquant. La fuite d'un secret transforme un accès local en compromission étendue (cas Codecov)."
      - "La configuration d'un agent IA est modifiée pour installer une instruction ou un outil persistant, réactivé à chaque exécution. La persistance s'installe dans la configuration plutôt que dans le code (ATLAS Modify AI Agent Configuration)."
      - "Un agent ou un système RAG est manipulé pour collecter et exfiltrer des secrets accessibles via son contexte, ses outils ou sa configuration. Les droits étendus de l'agent en font un collecteur de credentials."
      - "Les secrets stockés dans un coffre cloud (Secrets Manager, Key Vault) sont lus grâce à des droits excessifs ou un rôle compromis. Le coffre concentre la valeur : un accès indu y donne les clés du royaume (ATT&CK T1555.006)."
      - "Une application OAuth ou intégration SaaS de confiance, au-delà du SCM/CI (CRM, support, observabilité), est compromise ou abusée : consentement OAuth détourné, jetons volés, contournement MFA, pour persister et exfiltrer des données (ex. campagne Salesloft/Drift 2025). La confiance accordée à une intégration tierce devient un accès latéral au SI."
    texte: secrets stockés dans un coffre / gestionnaire sûr ; jamais en clair (fichiers, env persistants, historique).
    preuve: "Secrets stockés en coffre ; inspection d'absence de secrets en clair."
    href: "/docs/securiser/socle/referentiel/secrets/#socle-sec-gen-2"
  - id: SOCLE-SEC-GEN-3
    domaine: SEC
    domaine_nom: "Gestion des secrets : inventaire & cycle de vie"
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils:
      - Gitleaks
      - TruffleHog
    standards:
      - NIST 800-207
      - OWASP CICD-SEC-6
      - PCI-DSS Req 3
      - HDS
    menaces:
      - "Une fédération OIDC trop permissive (conditions de confiance larges, sujet non contraint) permet à un dépôt ou workflow non autorisé d'obtenir des identifiants cloud. L'identité courte censée remplacer les secrets devient elle-même un chemin d'accès."
      - "Un agent ou un système RAG est manipulé pour collecter et exfiltrer des secrets accessibles via son contexte, ses outils ou sa configuration. Les droits étendus de l'agent en font un collecteur de credentials."
      - "Les secrets stockés dans un coffre cloud (Secrets Manager, Key Vault) sont lus grâce à des droits excessifs ou un rôle compromis. Le coffre concentre la valeur : un accès indu y donne les clés du royaume (ATT&CK T1555.006)."
      - "Une application OAuth ou intégration SaaS de confiance, au-delà du SCM/CI (CRM, support, observabilité), est compromise ou abusée : consentement OAuth détourné, jetons volés, contournement MFA, pour persister et exfiltrer des données (ex. campagne Salesloft/Drift 2025). La confiance accordée à une intégration tierce devient un accès latéral au SI."
    texte: accès aux secrets scopés et tracés (moindre privilège, séparation par environnement).
    preuve: Accès aux secrets scopés et tracés ; séparation par environnement.
    href: "/docs/securiser/socle/referentiel/secrets/#socle-sec-gen-3"
  - id: SOCLE-SEC-GEN-4
    domaine: SEC
    domaine_nom: "Gestion des secrets : inventaire & cycle de vie"
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils:
      - Gitleaks
      - TruffleHog
    standards:
      - SSDF PO.5
      - OWASP CICD-SEC-6
      - PCI-DSS Req 3
      - HDS
    menaces:
      - "Un paquet compromis vole les jetons de publication des mainteneurs qui l'installent et republie automatiquement d'autres paquets, se propageant de proche en proche (cas Shai-Hulud). L'auto-propagation transforme une compromission isolée en épidémie."
    texte: "politique de rotation par criticité et durée de vie (TTL) définie ; rotation d'urgence testée."
    preuve: "Politique de rotation et TTL par criticité ; compte rendu d'un test de rotation d'urgence."
    href: "/docs/securiser/socle/referentiel/secrets/#socle-sec-gen-4"
  - id: SOCLE-SEC-GEN-5
    domaine: SEC
    domaine_nom: "Gestion des secrets : inventaire & cycle de vie"
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DEVRAIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils:
      - Gitleaks
      - TruffleHog
    standards:
      - NIST 800-207
      - OWASP CICD-SEC-6
      - PCI-DSS Req 3
      - HDS
    menaces:
      - "Un jeton de publication de longue durée fuite (CI, poste, dépôt) et sert à pousser des versions piégées sans interaction avec le compte. La durée de vie excessive du jeton élargit la fenêtre d'abus."
      - "Un jeton d'accès de longue durée est volé et réutilisé tant qu'il n'est pas révoqué, sans nouvelle authentification. La durée de vie sans rotation maximise la valeur du vol."
    texte: identités courtes/éphémères (OIDC) privilégiées sur les secrets de longue durée.
    preuve: "Usage d'identités courtes/éphémères (OIDC) plutôt que secrets de longue durée."
    href: "/docs/securiser/socle/referentiel/secrets/#socle-sec-gen-5"
  - id: SOCLE-SEC-GEN-6
    domaine: SEC
    domaine_nom: "Gestion des secrets : inventaire & cycle de vie"
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils:
      - Gitleaks
      - TruffleHog
    standards:
      - OWASP CICD-SEC-6
      - PCI-DSS Req 3
      - HDS
    menaces:
      - "Un paquet compromis vole les jetons de publication des mainteneurs qui l'installent et republie automatiquement d'autres paquets, se propageant de proche en proche (cas Shai-Hulud). L'auto-propagation transforme une compromission isolée en épidémie."
    texte: détection de fuite de secrets (dépôts, postes, images) et procédure de réponse.
    preuve: Dispositif de détection de fuite de secrets ; procédure de réponse.
    href: "/docs/securiser/socle/referentiel/secrets/#socle-sec-gen-6"
  - id: SOCLE-SEC-INV-1
    domaine: SEC
    domaine_nom: "Gestion des secrets : inventaire & cycle de vie"
    famille: INV
    famille_nom: Inventaire des secrets
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - TruffleHog
    standards:
      - OWASP CICD-SEC-6
      - OWASP ASVS v5.0.0 (V13)
    menaces:
      - "Un secret est stocké ou laissé en clair (fichier, variable d'environnement, historique shell, dépôt) et récupéré par un attaquant. La fuite d'un secret transforme un accès local en compromission étendue (cas Codecov)."
    texte: "registre des secrets tenu à jour : type, propriétaire, emplacement, consommateurs, criticité."
    preuve: "Registre des secrets à jour : type, propriétaire, emplacement, consommateurs, criticité."
    href: "/docs/securiser/socle/referentiel/secrets/#socle-sec-inv-1"
  - id: SOCLE-SEC-INV-2
    domaine: SEC
    domaine_nom: "Gestion des secrets : inventaire & cycle de vie"
    famille: INV
    famille_nom: Inventaire des secrets
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - TruffleHog
    standards:
      - OWASP CICD-SEC-6
    menaces:
      - "Un secret est stocké ou laissé en clair (fichier, variable d'environnement, historique shell, dépôt) et récupéré par un attaquant. La fuite d'un secret transforme un accès local en compromission étendue (cas Codecov)."
    texte: découverte régulière des secrets (scan dépôts, postes, images, historiques).
    preuve: Résultats de découverte régulière (scan dépôts, postes, images, historiques).
    href: "/docs/securiser/socle/referentiel/secrets/#socle-sec-inv-2"
  - id: SOCLE-SEC-INV-3
    domaine: SEC
    domaine_nom: "Gestion des secrets : inventaire & cycle de vie"
    famille: INV
    famille_nom: Inventaire des secrets
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - TruffleHog
    standards:
      - OWASP ASVS v5.0.0 (V13)
    menaces:
      - "Un secret est stocké ou laissé en clair (fichier, variable d'environnement, historique shell, dépôt) et récupéré par un attaquant. La fuite d'un secret transforme un accès local en compromission étendue (cas Codecov)."
    texte: classification des secrets par criticité et par type.
    preuve: Classification des secrets par criticité et par type.
    href: "/docs/securiser/socle/referentiel/secrets/#socle-sec-inv-3"
  - id: SOCLE-SEC-ROT-1
    domaine: SEC
    domaine_nom: "Gestion des secrets : inventaire & cycle de vie"
    famille: ROT
    famille_nom: Rotation, durée de vie & fuite
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenBao/Vault
    standards:
      - SSDF PO.5
      - OWASP CICD-SEC-6
    menaces:
      - "Un jeton d'accès de longue durée est volé et réutilisé tant qu'il n'est pas révoqué, sans nouvelle authentification. La durée de vie sans rotation maximise la valeur du vol."
    texte: politique de rotation par criticité ; durée de vie (TTL) définie par secret.
    preuve: Politique de rotation par criticité ; TTL défini par secret.
    href: "/docs/securiser/socle/referentiel/secrets/#socle-sec-rot-1"
  - id: SOCLE-SEC-ROT-2
    domaine: SEC
    domaine_nom: "Gestion des secrets : inventaire & cycle de vie"
    famille: ROT
    famille_nom: Rotation, durée de vie & fuite
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenBao/Vault
    standards:
      - NIST 800-207
      - OWASP CICD-SEC-6
    menaces:
      - "Un jeton d'accès de longue durée est volé et réutilisé tant qu'il n'est pas révoqué, sans nouvelle authentification. La durée de vie sans rotation maximise la valeur du vol."
      - "Une fédération OIDC trop permissive (conditions de confiance larges, sujet non contraint) permet à un dépôt ou workflow non autorisé d'obtenir des identifiants cloud. L'identité courte censée remplacer les secrets devient elle-même un chemin d'accès."
    texte: privilégier les identités courtes/éphémères (OIDC) sur les secrets de longue durée.
    preuve: "Usage d'identités courtes/éphémères (OIDC) privilégié."
    href: "/docs/securiser/socle/referentiel/secrets/#socle-sec-rot-2"
  - id: SOCLE-SEC-ROT-3
    domaine: SEC
    domaine_nom: "Gestion des secrets : inventaire & cycle de vie"
    famille: ROT
    famille_nom: Rotation, durée de vie & fuite
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenBao/Vault
    standards:
      - SSDF PO.5
    menaces:
      - "Un secret est stocké ou laissé en clair (fichier, variable d'environnement, historique shell, dépôt) et récupéré par un attaquant. La fuite d'un secret transforme un accès local en compromission étendue (cas Codecov)."
      - "Un jeton d'accès de longue durée est volé et réutilisé tant qu'il n'est pas révoqué, sans nouvelle authentification. La durée de vie sans rotation maximise la valeur du vol."
    texte: "capacité de rotation et de révocation d'urgence testée (cf. exercice de rotation)."
    preuve: "Compte rendu d'un test de rotation/révocation d'urgence."
    href: "/docs/securiser/socle/referentiel/secrets/#socle-sec-rot-3"
  - id: SOCLE-SEC-ROT-4
    domaine: SEC
    domaine_nom: "Gestion des secrets : inventaire & cycle de vie"
    famille: ROT
    famille_nom: Rotation, durée de vie & fuite
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenBao/Vault
    standards:
      - OWASP CICD-SEC-6
    menaces:
      - "Un secret est stocké ou laissé en clair (fichier, variable d'environnement, historique shell, dépôt) et récupéré par un attaquant. La fuite d'un secret transforme un accès local en compromission étendue (cas Codecov)."
    texte: détection de fuite (scan, alerte) et procédure de réponse (révoquer + tourner).
    preuve: Dispositif de détection de fuite + procédure de réponse (révoquer + tourner).
    href: "/docs/securiser/socle/referentiel/secrets/#socle-sec-rot-4"
  - id: SOCLE-SEC-ROT-5
    domaine: SEC
    domaine_nom: "Gestion des secrets : inventaire & cycle de vie"
    famille: ROT
    famille_nom: Rotation, durée de vie & fuite
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils:
      - OpenBao/Vault
    standards:
      - SSDF PO.5
    menaces:
      - "Un jeton d'accès de longue durée est volé et réutilisé tant qu'il n'est pas révoqué, sans nouvelle authentification. La durée de vie sans rotation maximise la valeur du vol."
    texte: "rotation automatisée des secrets critiques quand l'outillage le permet."
    preuve: Configuration de rotation automatisée des secrets critiques.
    href: "/docs/securiser/socle/referentiel/secrets/#socle-sec-rot-5"
  - id: SOCLE-SEC-STO-1
    domaine: SEC
    domaine_nom: "Gestion des secrets : inventaire & cycle de vie"
    famille: STO
    famille_nom: Stockage & autorisations
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenBao/Vault
    standards:
      - NIS2 art.21
      - OWASP ASVS v5.0.0 (V13)
      - ANSSI-BP-028
    menaces:
      - "Un secret est stocké ou laissé en clair (fichier, variable d'environnement, historique shell, dépôt) et récupéré par un attaquant. La fuite d'un secret transforme un accès local en compromission étendue (cas Codecov)."
    texte: secrets dans un coffre / gestionnaire sûr, chiffrés au repos ; jamais en clair.
    preuve: "Secrets en coffre chiffrés au repos ; inspection d'absence de secrets en clair."
    href: "/docs/securiser/socle/referentiel/secrets/#socle-sec-sto-1"
  - id: SOCLE-SEC-STO-2
    domaine: SEC
    domaine_nom: "Gestion des secrets : inventaire & cycle de vie"
    famille: STO
    famille_nom: Stockage & autorisations
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenBao/Vault
    standards:
      - OWASP CICD-SEC-6
    menaces:
      - "Un secret est stocké ou laissé en clair (fichier, variable d'environnement, historique shell, dépôt) et récupéré par un attaquant. La fuite d'un secret transforme un accès local en compromission étendue (cas Codecov)."
    texte: "proscrire les secrets en clair dans l'env persistant, l'historique shell, les fichiers de projet."
    preuve: "Inspection : aucun secret en clair dans env persistant, historique shell, fichiers de projet."
    href: "/docs/securiser/socle/referentiel/secrets/#socle-sec-sto-2"
  - id: SOCLE-SEC-STO-3
    domaine: SEC
    domaine_nom: "Gestion des secrets : inventaire & cycle de vie"
    famille: STO
    famille_nom: Stockage & autorisations
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenBao/Vault
    standards:
      - NIST 800-207
      - OWASP CICD-SEC-6
    menaces:
      - "Un secret est stocké ou laissé en clair (fichier, variable d'environnement, historique shell, dépôt) et récupéré par un attaquant. La fuite d'un secret transforme un accès local en compromission étendue (cas Codecov)."
      - "Une combinaison de permissions IAM individuellement anodines forme un chemin d'élévation ou d'accès non prévu (combinaison toxique). Le risque émerge de l'assemblage des droits, pas d'une permission isolée (ATT&CK T1078.004)."
    texte: accès scopés au strict nécessaire, séparés par environnement (dev/prod).
    preuve: Accès scopés au strict nécessaire ; séparation par environnement (dev/prod).
    href: "/docs/securiser/socle/referentiel/secrets/#socle-sec-sto-3"
  - id: SOCLE-SEC-STO-4
    domaine: SEC
    domaine_nom: "Gestion des secrets : inventaire & cycle de vie"
    famille: STO
    famille_nom: Stockage & autorisations
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenBao/Vault
    standards:
      - OWASP CICD-SEC-10
      - NIST 800-207
    menaces:
      - "Un secret est stocké ou laissé en clair (fichier, variable d'environnement, historique shell, dépôt) et récupéré par un attaquant. La fuite d'un secret transforme un accès local en compromission étendue (cas Codecov)."
    texte: accès aux secrets tracés (qui lit quoi, quand).
    preuve: "Journaux d'accès aux secrets (qui lit quoi, quand)."
    href: "/docs/securiser/socle/referentiel/secrets/#socle-sec-sto-4"
  - id: SOCLE-SEC-STO-5
    domaine: SEC
    domaine_nom: "Gestion des secrets : inventaire & cycle de vie"
    famille: STO
    famille_nom: Stockage & autorisations
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils:
      - OpenBao/Vault
    standards:
      - ANSSI-BP-028
      - OWASP ASVS v5.0.0 (V13)
    menaces:
      - "Un secret est stocké ou laissé en clair (fichier, variable d'environnement, historique shell, dépôt) et récupéré par un attaquant. La fuite d'un secret transforme un accès local en compromission étendue (cas Codecov)."
      - "Les secrets stockés dans un coffre cloud (Secrets Manager, Key Vault) sont lus grâce à des droits excessifs ou un rôle compromis. Le coffre concentre la valeur : un accès indu y donne les clés du royaume (ATT&CK T1555.006)."
    texte: secrets sensibles protégés par coffre durci (scellement, audit, séparation des rôles).
    preuve: Coffre durci pour secrets sensibles (scellement, audit, séparation des rôles).
    href: "/docs/securiser/socle/referentiel/secrets/#socle-sec-sto-5"
  - id: SOCLE-SEC-STO-6
    domaine: SEC
    domaine_nom: "Gestion des secrets : inventaire & cycle de vie"
    famille: STO
    famille_nom: Stockage & autorisations
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenBao/Vault
    standards:
      - NIST 800-207
      - OWASP CICD-SEC-6
    menaces:
      - "Un secret est stocké ou laissé en clair (fichier, variable d'environnement, historique shell, dépôt) et récupéré par un attaquant. La fuite d'un secret transforme un accès local en compromission étendue (cas Codecov)."
    texte: "secrets traités comme sensibles par défaut : accès refusé par défaut (deny-by-default), classification au niveau le plus restrictif tant qu'aucun déclassement explicite n'est justifié."
    preuve: "Politique d'accès aux secrets en deny-by-default ; octrois et déclassements explicites tracés."
    href: "/docs/securiser/socle/referentiel/secrets/#socle-sec-sto-6"
  - id: SOCLE-SRC-ACC-1
    domaine: SRC
    domaine_nom: Source & dépôt
    famille: ACC
    famille_nom: Accès & identité au SCM
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Legitify
    standards:
      - OWASP CICD-SEC-2
      - NIST 800-207
    menaces:
      - "Un collaborateur autorisé (développeur, ops, admin) abuse de ses accès pour introduire un changement non autorisé dans le code, la configuration ou la chaîne de build. Disposant déjà des droits, il contourne les contrôles d'entrée ; seules la séparation des privilèges, la revue à deux et la traçabilité limitent l'impact."
      - "Le système de gestion de source lui-même (forge self-hosted, serveur Git) est compromis, donnant à l'attaquant le contrôle du code, des droits et des workflows. La racine de confiance du code tombe : tout en aval devient suspect."
    texte: RBAC au moindre privilège (dépôt/org/groupe) ; accès revus périodiquement.
    preuve: Matrice RBAC dépôt/org ; revue périodique des accès.
    href: "/docs/securiser/socle/referentiel/source/#socle-src-acc-1"
  - id: SOCLE-SRC-ACC-2
    domaine: SRC
    domaine_nom: Source & dépôt
    famille: ACC
    famille_nom: Accès & identité au SCM
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Legitify
    standards:
      - OWASP CICD-SEC-2
      - OWASP CICD-SEC-6
    menaces:
      - "Le système de gestion de source lui-même (forge self-hosted, serveur Git) est compromis, donnant à l'attaquant le contrôle du code, des droits et des workflows. La racine de confiance du code tombe : tout en aval devient suspect."
      - "Un jeton d'accès de longue durée est volé et réutilisé tant qu'il n'est pas révoqué, sans nouvelle authentification. La durée de vie sans rotation maximise la valeur du vol."
    texte: "clés de déploiement / jetons d'accès scopés, en lecture seule par défaut, expirants."
    preuve: Deploy keys / jetons scopés, lecture seule, expirants.
    href: "/docs/securiser/socle/referentiel/source/#socle-src-acc-2"
  - id: SOCLE-SRC-ACC-3
    domaine: SRC
    domaine_nom: Source & dépôt
    famille: ACC
    famille_nom: Accès & identité au SCM
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Legitify
    standards:
      - NIST 800-207
    menaces:
      - "Un collaborateur autorisé (développeur, ops, admin) abuse de ses accès pour introduire un changement non autorisé dans le code, la configuration ou la chaîne de build. Disposant déjà des droits, il contourne les contrôles d'entrée ; seules la séparation des privilèges, la revue à deux et la traçabilité limitent l'impact."
      - "Le système de gestion de source lui-même (forge self-hosted, serveur Git) est compromis, donnant à l'attaquant le contrôle du code, des droits et des workflows. La racine de confiance du code tombe : tout en aval devient suspect."
    texte: SSO / IdP centralisé pour le SCM ; désactivation des accès à la sortie.
    preuve: SSO/IdP pour le SCM ; procédure de désactivation à la sortie.
    href: "/docs/securiser/socle/referentiel/source/#socle-src-acc-3"
  - id: SOCLE-SRC-ACC-4
    domaine: SRC
    domaine_nom: Source & dépôt
    famille: ACC
    famille_nom: Accès & identité au SCM
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Legitify
    standards:
      - OWASP CICD-SEC-10
      - ISO 27001
    menaces:
      - "Un administrateur retire temporairement la protection de branche, pousse une modification, puis rétablit la protection, effaçant la trace du contournement. Le pouvoir d'administration sur les contrôles annule les contrôles eux-mêmes."
    texte: journalisation et audit des actions SCM (accès, changements de protection de branche).
    preuve: "Journaux d'audit SCM (accès, changements de protection)."
    href: "/docs/securiser/socle/referentiel/source/#socle-src-acc-4"
  - id: SOCLE-SRC-BRA-1
    domaine: SRC
    domaine_nom: Source & dépôt
    famille: BRA
    famille_nom: Protection des branches & revue
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Legitify
      - Allstar
    standards:
      - OWASP CICD-SEC-1
      - SSDF PW.7
    menaces:
      - Du code malveillant est poussé directement sur une branche protégée sans revue obligatoire (push direct, protection absente). Sans contrôle à quatre yeux, une modification hostile entre dans la base de code de référence.
    texte: checks de statut obligatoires (CI verte) avant fusion ; pas de merge sur échec.
    preuve: Status checks obligatoires configurés ; merge bloqué si CI en échec.
    href: "/docs/securiser/socle/referentiel/source/#socle-src-bra-1"
  - id: SOCLE-SRC-BRA-2
    domaine: SRC
    domaine_nom: Source & dépôt
    famille: BRA
    famille_nom: Protection des branches & revue
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Legitify
      - Allstar
    standards:
      - OWASP CICD-SEC-1
      - SLSA (Source)
    menaces:
      - "Une personne disposant légitimement du droit de publier (mainteneur, éditeur) introduit volontairement une modification nuisible dans le code ou l'artefact. L'attaque vient de l'intérieur de la chaîne de confiance : ni la revue ni la signature ne la détectent, puisque l'auteur est autorisé. Cas typiques : rachat de paquet, compte de mainteneur revendu, contributeur de longue date devenu hostile."
      - Du code malveillant est poussé directement sur une branche protégée sans revue obligatoire (push direct, protection absente). Sans contrôle à quatre yeux, une modification hostile entre dans la base de code de référence.
      - "Un compte de service ou bot autorisé à fusionner sans revue à deux est détourné pour introduire du code, court-circuitant le contrôle humain. Les automatismes sur-privilégiés deviennent un chemin d'injection."
      - "Une exception aux règles de protection (ex. fichiers de documentation exemptés de revue) est exploitée via un fichier déguisé pour faire passer du code non revu. Les angles morts de la politique deviennent une porte d'entrée."
      - "Poisoned Pipeline Execution indirecte : l'injection passe par un fichier consommé par le pipeline (Makefile, script, configuration d'outil) plutôt que par le fichier de CI. Le résultat est identique : exécution de code attaquant dans le pipeline."
      - "Une GitHub App ou un bot disposant de permissions élevées est détourné pour agir sur les dépôts ou les workflows. Les privilèges de l'automate dépassent souvent le besoin, élargissant l'impact d'un abus."
    texte: "propriété du code (CODEOWNERS) : revue par les responsables sur les chemins sensibles."
    preuve: Fichier CODEOWNERS ; revue par responsables sur les chemins sensibles.
    href: "/docs/securiser/socle/referentiel/source/#socle-src-bra-2"
  - id: SOCLE-SRC-BRA-3
    domaine: SRC
    domaine_nom: Source & dépôt
    famille: BRA
    famille_nom: Protection des branches & revue
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Legitify
      - Allstar
    standards:
      - OWASP CICD-SEC-1
    menaces:
      - "Un écart entre le moment de la vérification et le moment de l'usage (TOCTOU), exploité via un bot, permet de substituer un contenu validé par un contenu malveillant. La fenêtre entre contrôle et action est l'angle d'attaque."
    texte: rejet des approbations obsolètes à chaque nouveau push sur la PR.
    preuve: Option de rejet des approbations obsolètes activée.
    href: "/docs/securiser/socle/referentiel/source/#socle-src-bra-3"
  - id: SOCLE-SRC-BRA-4
    domaine: SRC
    domaine_nom: Source & dépôt
    famille: BRA
    famille_nom: Protection des branches & revue
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils:
      - Legitify
      - Allstar
    standards:
      - SLSA (Source)
      - OWASP CICD-SEC-1
    menaces:
      - "Une personne disposant légitimement du droit de publier (mainteneur, éditeur) introduit volontairement une modification nuisible dans le code ou l'artefact. L'attaque vient de l'intérieur de la chaîne de confiance : ni la revue ni la signature ne la détectent, puisque l'auteur est autorisé. Cas typiques : rachat de paquet, compte de mainteneur revendu, contributeur de longue date devenu hostile."
      - "Un collaborateur autorisé (développeur, ops, admin) abuse de ses accès pour introduire un changement non autorisé dans le code, la configuration ou la chaîne de build. Disposant déjà des droits, il contourne les contrôles d'entrée ; seules la séparation des privilèges, la revue à deux et la traçabilité limitent l'impact."
      - "Un attaquant contrôlant plusieurs comptes (ou un compte et un bot) approuve sa propre contribution, contournant l'exigence de revue par un tiers indépendant. La règle de revue existe mais est neutralisée par collusion d'identités."
    texte: revue à deux personnes (two-person rule) sur les dépôts sensibles.
    preuve: Politique de revue à deux personnes sur les dépôts sensibles.
    href: "/docs/securiser/socle/referentiel/source/#socle-src-bra-4"
  - id: SOCLE-SRC-FRK-1
    domaine: SRC
    domaine_nom: Source & dépôt
    famille: FRK
    famille_nom: Contributions externes & forks
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - zizmor
      - poutine
    standards:
      - OWASP CICD-SEC-6
      - OWASP ASVS v5.0.0 (V13)
    menaces:
      - "Un workflow déclenché sur pull_request_target (ou équivalent) exécute le code d'un fork non fiable avec le contexte et les secrets du dépôt cible. Une simple pull request d'un inconnu obtient l'exécution privilégiée et les jetons du projet."
      - "Un secret est stocké ou laissé en clair (fichier, variable d'environnement, historique shell, dépôt) et récupéré par un attaquant. La fuite d'un secret transforme un accès local en compromission étendue (cas Codecov)."
    texte: détection de secrets sur les poussées et les PR (en pré-réception).
    preuve: Secret scanning en pré-réception sur poussées et PR.
    href: "/docs/securiser/socle/referentiel/source/#socle-src-frk-1"
  - id: SOCLE-SRC-FRK-2
    domaine: SRC
    domaine_nom: Source & dépôt
    famille: FRK
    famille_nom: Contributions externes & forks
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - zizmor
      - poutine
    standards:
      - OWASP CICD-SEC-4
      - CIS Benchmarks
    menaces:
      - "Un workflow déclenché sur pull_request_target (ou équivalent) exécute le code d'un fork non fiable avec le contexte et les secrets du dépôt cible. Une simple pull request d'un inconnu obtient l'exécution privilégiée et les jetons du projet."
      - "Un pipeline déclenché par une contribution publique exécute du code non fiable dans un contexte privilégié, exposant secrets et droits du projet. La surface vient de l'ouverture du pipeline aux contributions externes."
    texte: "les workflows déclenchés par des forks n'accèdent ni aux secrets ni aux runners de confiance."
    preuve: "Configuration : workflows de fork sans accès aux secrets ni aux runners de confiance."
    href: "/docs/securiser/socle/referentiel/source/#socle-src-frk-2"
  - id: SOCLE-SRC-FRK-3
    domaine: SRC
    domaine_nom: Source & dépôt
    famille: FRK
    famille_nom: Contributions externes & forks
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - zizmor
      - poutine
    standards:
      - OWASP A03
      - S2C2F
      - OSV
    menaces:
      - "Un workflow déclenché sur pull_request_target (ou équivalent) exécute le code d'un fork non fiable avec le contexte et les secrets du dépôt cible. Une simple pull request d'un inconnu obtient l'exécution privilégiée et les jetons du projet."
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
    texte: revue de dépendances sur les PR (dependency review) ; blocage des ajouts vulnérables ou malveillants.
    preuve: Dependency review sur les PR ; blocage des dépendances vulnérables.
    href: "/docs/securiser/socle/referentiel/source/#socle-src-frk-3"
  - id: SOCLE-SRC-GEN-1
    domaine: SRC
    domaine_nom: Source & dépôt
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - Gitleaks
      - Legitify
    standards:
      - OWASP CICD-SEC-1
      - SLSA (Source)
      - SSDF PS.1
      - CNCF SSC (Source Code)
      - Microsoft SDL
      - SAFECode
      - PCI-DSS Req 6
    menaces:
      - "Une personne disposant légitimement du droit de publier (mainteneur, éditeur) introduit volontairement une modification nuisible dans le code ou l'artefact. L'attaque vient de l'intérieur de la chaîne de confiance : ni la revue ni la signature ne la détectent, puisque l'auteur est autorisé. Cas typiques : rachat de paquet, compte de mainteneur revendu, contributeur de longue date devenu hostile."
      - "Un collaborateur autorisé (développeur, ops, admin) abuse de ses accès pour introduire un changement non autorisé dans le code, la configuration ou la chaîne de build. Disposant déjà des droits, il contourne les contrôles d'entrée ; seules la séparation des privilèges, la revue à deux et la traçabilité limitent l'impact."
      - Du code malveillant est poussé directement sur une branche protégée sans revue obligatoire (push direct, protection absente). Sans contrôle à quatre yeux, une modification hostile entre dans la base de code de référence.
      - "Un attaquant contrôlant plusieurs comptes (ou un compte et un bot) approuve sa propre contribution, contournant l'exigence de revue par un tiers indépendant. La règle de revue existe mais est neutralisée par collusion d'identités."
      - "Un compte de service ou bot autorisé à fusionner sans revue à deux est détourné pour introduire du code, court-circuitant le contrôle humain. Les automatismes sur-privilégiés deviennent un chemin d'injection."
      - "Une exception aux règles de protection (ex. fichiers de documentation exemptés de revue) est exploitée via un fichier déguisé pour faire passer du code non revu. Les angles morts de la politique deviennent une porte d'entrée."
      - "Un administrateur retire temporairement la protection de branche, pousse une modification, puis rétablit la protection, effaçant la trace du contournement. Le pouvoir d'administration sur les contrôles annule les contrôles eux-mêmes."
      - "Poisoned Pipeline Execution directe : l'attaquant modifie la définition du pipeline (fichier de CI) pour y injecter des commandes exécutées avec les privilèges du build. Le contrôle du fichier de workflow donne le contrôle de l'exécution."
    texte: "branches protégées : revue obligatoire, pas de push direct."
    preuve: "Configuration de protection de branche : revue obligatoire, push direct interdit."
    href: "/docs/securiser/socle/referentiel/source/#socle-src-gen-1"
  - id: SOCLE-SRC-GEN-2
    domaine: SRC
    domaine_nom: Source & dépôt
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - Gitleaks
      - Legitify
    standards:
      - OWASP CICD-SEC-2
      - NIST 800-207
      - CNCF SSC (Source Code)
      - Microsoft SDL
      - SAFECode
      - PCI-DSS Req 6
    menaces:
      - "Le système de gestion de source lui-même (forge self-hosted, serveur Git) est compromis, donnant à l'attaquant le contrôle du code, des droits et des workflows. La racine de confiance du code tombe : tout en aval devient suspect."
    texte: MFA et moindre privilège sur les accès au SCM.
    preuve: Configuration MFA et moindre privilège sur le SCM.
    href: "/docs/securiser/socle/referentiel/source/#socle-src-gen-2"
  - id: SOCLE-SRC-GEN-3
    domaine: SRC
    domaine_nom: Source & dépôt
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - Gitleaks
      - Legitify
    standards:
      - SLSA (Source)
      - Sigstore
      - SSDF PS.1
      - CNCF SSC (Source Code)
      - Microsoft SDL
      - SAFECode
      - PCI-DSS Req 6
    menaces:
      - "L'absence de signature vérifiée des commits et tags permet d'usurper l'auteur ou d'introduire des objets non authentifiés dans l'historique. Sans signature imposée, l'identité du contributeur n'est pas prouvable."
    texte: commits et tags signés et vérifiés.
    preuve: Configuration et vérification de la signature des commits et tags.
    href: "/docs/securiser/socle/referentiel/source/#socle-src-gen-3"
  - id: SOCLE-SRC-GEN-4
    domaine: SRC
    domaine_nom: Source & dépôt
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - Gitleaks
      - Legitify
    standards:
      - OWASP CICD-SEC-6
      - OWASP ASVS v5.0.0 (V13)
      - CNCF SSC (Source Code)
      - Microsoft SDL
      - SAFECode
      - PCI-DSS Req 6
    menaces:
      - "Un secret est stocké ou laissé en clair (fichier, variable d'environnement, historique shell, dépôt) et récupéré par un attaquant. La fuite d'un secret transforme un accès local en compromission étendue (cas Codecov)."
      - "Une clé, un jeton ou un mot de passe est commité dans le code et exposé à quiconque accède au dépôt ou à l'artefact. La détection en pré-commit et en CI est la parade."
    texte: détection de secrets dans le code (pré-commit + CI).
    preuve: Hooks de détection de secrets (pré-commit + CI) ; résultats de scan.
    href: "/docs/securiser/socle/referentiel/source/#socle-src-gen-4"
  - id: SOCLE-SRC-GEN-5
    domaine: SRC
    domaine_nom: Source & dépôt
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DEVRAIT
    essentielle: true
    souverain: false
    profils:
      - paiement
    outils:
      - Gitleaks
      - Legitify
    standards:
      - OWASP CICD-SEC-4
      - CNCF SSC (Source Code)
      - Microsoft SDL
      - SAFECode
      - PCI-DSS Req 6
    menaces:
      - "Un workflow déclenché sur pull_request_target (ou équivalent) exécute le code d'un fork non fiable avec le contexte et les secrets du dépôt cible. Une simple pull request d'un inconnu obtient l'exécution privilégiée et les jetons du projet."
      - "Un pipeline déclenché par une contribution publique exécute du code non fiable dans un contexte privilégié, exposant secrets et droits du projet. La surface vient de l'ouverture du pipeline aux contributions externes."
      - "Un écart entre le moment de la vérification et le moment de l'usage (TOCTOU), exploité via un bot, permet de substituer un contenu validé par un contenu malveillant. La fenêtre entre contrôle et action est l'angle d'attaque."
    texte: politique de revue renforcée des contributions externes / forks non fiables.
    preuve: Politique de revue renforcée des contributions externes / forks non fiables.
    href: "/docs/securiser/socle/referentiel/source/#socle-src-gen-5"
  - id: SOCLE-SRC-SIG-1
    domaine: SRC
    domaine_nom: Source & dépôt
    famille: SIG
    famille_nom: "Intégrité & signature de l'historique"
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Legitify
      - Allstar
    standards:
      - OWASP CICD-SEC-1
      - SLSA (Source)
    menaces:
      - "Un administrateur retire temporairement la protection de branche, pousse une modification, puis rétablit la protection, effaçant la trace du contournement. Le pouvoir d'administration sur les contrôles annule les contrôles eux-mêmes."
      - "Un force-push réécrit l'historique de la branche pour dissimuler ou injecter des commits (suppression d'un commit malveillant, antidatage). Sans interdiction du force-push ni vérification d'intégrité, l'historique n'est plus une preuve fiable."
    texte: "historique protégé : force-push et suppression des branches protégées interdits."
    preuve: Force-push et suppression interdits sur les branches protégées.
    href: "/docs/securiser/socle/referentiel/source/#socle-src-sig-1"
  - id: SOCLE-SRC-SIG-2
    domaine: SRC
    domaine_nom: Source & dépôt
    famille: SIG
    famille_nom: "Intégrité & signature de l'historique"
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils:
      - git verify-commit
      - gitsign
    standards:
      - SLSA (Source)
      - Sigstore
    menaces:
      - "L'absence de signature vérifiée des commits et tags permet d'usurper l'auteur ou d'introduire des objets non authentifiés dans l'historique. Sans signature imposée, l'identité du contributeur n'est pas prouvable."
    texte: "signature imposée par politique sur les dépôts sensibles : rejet des commits non signés."
    preuve: Politique de rejet des commits non signés sur les dépôts sensibles.
    href: "/docs/securiser/socle/referentiel/source/#socle-src-sig-2"
  - id: SOCLE-SRC-SIG-3
    domaine: SRC
    domaine_nom: Source & dépôt
    famille: SIG
    famille_nom: "Intégrité & signature de l'historique"
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - git verify-commit
      - gitsign
    standards:
      - SLSA (Source)
    menaces:
      - "Un force-push réécrit l'historique de la branche pour dissimuler ou injecter des commits (suppression d'un commit malveillant, antidatage). Sans interdiction du force-push ni vérification d'intégrité, l'historique n'est plus une preuve fiable."
    texte: "intégrité de l'historique vérifiée : pas de réécriture sur les branches protégées."
    preuve: "Protection contre la réécriture d'historique des branches protégées."
    href: "/docs/securiser/socle/referentiel/source/#socle-src-sig-3"
  - id: SOCLE-VLN-DIS-1
    domaine: VLN
    domaine_nom: Vulnérabilités, VEX & réponse
    famille: DIS
    famille_nom: Signalement & divulgation
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - CRA (échéance 11/09/2026)
      - NIS2 (notification)
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
    texte: procédure de signalement réglementaire des vulnérabilités activement exploitées (échéance CRA).
    preuve: Procédure de signalement réglementaire des vulnérabilités exploitées (CRA).
    href: "/docs/securiser/socle/referentiel/vulnerabilites/#socle-vln-dis-1"
  - id: SOCLE-VLN-DIS-2
    domaine: VLN
    domaine_nom: Vulnérabilités, VEX & réponse
    famille: DIS
    famille_nom: Signalement & divulgation
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - CSAF
      - VEX / OpenVEX
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
    texte: avis de sécurité publiés au format machine (CSAF / OpenVEX) pour les produits livrés.
    preuve: Avis de sécurité au format CSAF/OpenVEX pour les produits livrés.
    href: "/docs/securiser/socle/referentiel/vulnerabilites/#socle-vln-dis-2"
  - id: SOCLE-VLN-DIS-3
    domaine: VLN
    domaine_nom: Vulnérabilités, VEX & réponse
    famille: DIS
    famille_nom: Signalement & divulgation
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - SSDF RV.3
      - ISO 27001
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
    texte: politique de divulgation coordonnée (VDP) et point de contact PSIRT.
    preuve: Politique de divulgation coordonnée (VDP) et contact PSIRT.
    href: "/docs/securiser/socle/referentiel/vulnerabilites/#socle-vln-dis-3"
  - id: SOCLE-VLN-DIS-4
    domaine: VLN
    domaine_nom: Vulnérabilités, VEX & réponse
    famille: DIS
    famille_nom: Signalement & divulgation
    niveau: R3
    devoir: DEVRAIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils: []
    standards:
      - MITRE ATT&CK
      - SSDF RV.1
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
      - "Après une intrusion initiale, l'attaquant se déplace latéralement et installe des mécanismes de persistance pour conserver l'accès. La compromission s'étend dans le temps et l'espace faute de détection et de segmentation."
    texte: corrélation avec le corpus de menaces (incidents réellement exploités) pour prioriser la réponse.
    preuve: Corrélation avec le corpus de menaces pour prioriser.
    href: "/docs/securiser/socle/referentiel/vulnerabilites/#socle-vln-dis-4"
  - id: SOCLE-VLN-GEN-1
    domaine: VLN
    domaine_nom: Vulnérabilités, VEX & réponse
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils:
      - OSV-Scanner
      - Trivy
      - Dependency-Track
    standards:
      - OSV
      - SSDF RV.1
      - Microsoft SDL
      - PCI-DSS Req 6
      - HDS
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
      - "Après une intrusion initiale, l'attaquant se déplace latéralement et installe des mécanismes de persistance pour conserver l'accès. La compromission s'étend dans le temps et l'espace faute de détection et de segmentation."
    texte: inventaire consolidé des vulnérabilités (SCA / scan, OSV).
    preuve: Inventaire consolidé des vulnérabilités (SCA/scan, OSV).
    href: "/docs/securiser/socle/referentiel/vulnerabilites/#socle-vln-gen-1"
  - id: SOCLE-VLN-GEN-2
    domaine: VLN
    domaine_nom: Vulnérabilités, VEX & réponse
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils:
      - OSV-Scanner
      - Trivy
      - Dependency-Track
    standards:
      - VEX / OpenVEX
      - CSAF
      - CycloneDX/SPDX (profil sécurité)
      - Microsoft SDL
      - PCI-DSS Req 6
      - HDS
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
    texte: triage et priorisation via VEX (exploitabilité réelle).
    preuve: Processus de triage/priorisation via VEX (exploitabilité réelle).
    href: "/docs/securiser/socle/referentiel/vulnerabilites/#socle-vln-gen-2"
  - id: SOCLE-VLN-GEN-3
    domaine: VLN
    domaine_nom: Vulnérabilités, VEX & réponse
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils:
      - OSV-Scanner
      - Trivy
      - Dependency-Track
    standards:
      - SSDF RV.2
      - CRA
      - Microsoft SDL
      - PCI-DSS Req 6
      - HDS
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
      - "Après une intrusion initiale, l'attaquant se déplace latéralement et installe des mécanismes de persistance pour conserver l'accès. La compromission s'étend dans le temps et l'espace faute de détection et de segmentation."
    texte: délais de correction définis par criticité et suivis.
    preuve: Délais de correction par criticité définis et suivis.
    href: "/docs/securiser/socle/referentiel/vulnerabilites/#socle-vln-gen-3"
  - id: SOCLE-VLN-GEN-4
    domaine: VLN
    domaine_nom: Vulnérabilités, VEX & réponse
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils:
      - OSV-Scanner
      - Trivy
      - Dependency-Track
    standards:
      - CRA (échéance 11/09/2026)
      - Microsoft SDL
      - PCI-DSS Req 6
      - HDS
    menaces:
      - "Après une intrusion initiale, l'attaquant se déplace latéralement et installe des mécanismes de persistance pour conserver l'accès. La compromission s'étend dans le temps et l'espace faute de détection et de segmentation."
    texte: signalement réglementaire des vulnérabilités exploitées.
    preuve: Procédure de signalement réglementaire des vulnérabilités exploitées.
    href: "/docs/securiser/socle/referentiel/vulnerabilites/#socle-vln-gen-4"
  - id: SOCLE-VLN-GEN-5
    domaine: VLN
    domaine_nom: Vulnérabilités, VEX & réponse
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DEVRAIT
    essentielle: true
    souverain: false
    profils:
      - paiement
      - sante
    outils:
      - OSV-Scanner
      - Trivy
      - Dependency-Track
    standards:
      - CSAF
      - SSDF RV.3
      - Microsoft SDL
      - PCI-DSS Req 6
      - HDS
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
    texte: politique de divulgation et avis de sécurité (CSAF).
    preuve: Politique de divulgation et avis de sécurité (CSAF).
    href: "/docs/securiser/socle/referentiel/vulnerabilites/#socle-vln-gen-5"
  - id: SOCLE-VLN-INV-1
    domaine: VLN
    domaine_nom: Vulnérabilités, VEX & réponse
    famille: INV
    famille_nom: Inventaire & corrélation des vulnérabilités
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Dependency-Track
    standards:
      - OSV
      - CycloneDX (ECMA-424)
      - SSDF RV.1
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
    texte: corrélation des vulnérabilités multi-sources (SCA, conteneurs, IaC, runtime), dédoublonnées et reliées aux artefacts via les SBOM.
    preuve: Plateforme de corrélation multi-sources reliant les vulnérabilités aux artefacts via SBOM.
    href: "/docs/securiser/socle/referentiel/vulnerabilites/#socle-vln-inv-1"
  - id: SOCLE-VLN-INV-2
    domaine: VLN
    domaine_nom: Vulnérabilités, VEX & réponse
    famille: INV
    famille_nom: Inventaire & corrélation des vulnérabilités
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Dependency-Track
    standards:
      - OSV
      - SSDF RV.1
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
      - "Après une intrusion initiale, l'attaquant se déplace latéralement et installe des mécanismes de persistance pour conserver l'accès. La compromission s'étend dans le temps et l'espace faute de détection et de segmentation."
    texte: "enrichissement par l'exploitabilité connue (ex. CISA KEV, EPSS) en plus du score CVSS."
    preuve: Vulnérabilités enrichies par CISA KEV / EPSS, au-delà du CVSS.
    href: "/docs/securiser/socle/referentiel/vulnerabilites/#socle-vln-inv-2"
  - id: SOCLE-VLN-INV-3
    domaine: VLN
    domaine_nom: Vulnérabilités, VEX & réponse
    famille: INV
    famille_nom: Inventaire & corrélation des vulnérabilités
    niveau: R3
    devoir: DEVRAIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils:
      - Dependency-Track
    standards:
      - SSDF RV.1
      - CRA
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
    texte: inventaire des vulnérabilités tenu en continu pour les artefacts déployés (pas seulement au build).
    preuve: Inventaire continu des vulnérabilités des artefacts en production.
    href: "/docs/securiser/socle/referentiel/vulnerabilites/#socle-vln-inv-3"
  - id: SOCLE-VLN-REM-1
    domaine: VLN
    domaine_nom: Vulnérabilités, VEX & réponse
    famille: REM
    famille_nom: Remédiation & délais
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - SSDF RV.2
      - CRA
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
      - "Après une intrusion initiale, l'attaquant se déplace latéralement et installe des mécanismes de persistance pour conserver l'accès. La compromission s'étend dans le temps et l'espace faute de détection et de segmentation."
    texte: SLA de correction chiffrés par criticité et par exposition, suivis et reportés.
    preuve: SLA de correction par criticité, suivis et reportés.
    href: "/docs/securiser/socle/referentiel/vulnerabilites/#socle-vln-rem-1"
  - id: SOCLE-VLN-REM-2
    domaine: VLN
    domaine_nom: Vulnérabilités, VEX & réponse
    famille: REM
    famille_nom: Remédiation & délais
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - SSDF RV.2
      - S2C2F
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
    texte: "gestion des correctifs (mise à jour des dépendances, rebuild, redéploiement) tracée jusqu'à la fermeture."
    preuve: "Suivi des correctifs jusqu'à fermeture (mise à jour, rebuild, redéploiement)."
    href: "/docs/securiser/socle/referentiel/vulnerabilites/#socle-vln-rem-2"
  - id: SOCLE-VLN-REM-3
    domaine: VLN
    domaine_nom: Vulnérabilités, VEX & réponse
    famille: REM
    famille_nom: Remédiation & délais
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - SSDF RV.2
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
    texte: "mesures d'atténuation temporaires (compensating controls) quand le correctif n'est pas immédiat."
    preuve: "Mesures d'atténuation temporaires documentées en l'absence de correctif."
    href: "/docs/securiser/socle/referentiel/vulnerabilites/#socle-vln-rem-3"
  - id: SOCLE-VLN-REM-4
    domaine: VLN
    domaine_nom: Vulnérabilités, VEX & réponse
    famille: REM
    famille_nom: Remédiation & délais
    niveau: R3
    devoir: DOIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils: []
    standards:
      - SSDF RV.2
      - CRA
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
      - "Après une intrusion initiale, l'attaquant se déplace latéralement et installe des mécanismes de persistance pour conserver l'accès. La compromission s'étend dans le temps et l'espace faute de détection et de segmentation."
    texte: "capacité de correction d'urgence (hotfix) testée pour les vulnérabilités activement exploitées."
    preuve: "Procédure de hotfix d'urgence testée pour les vulnérabilités exploitées."
    href: "/docs/securiser/socle/referentiel/vulnerabilites/#socle-vln-rem-4"
  - id: SOCLE-VLN-VEX-1
    domaine: VLN
    domaine_nom: Vulnérabilités, VEX & réponse
    famille: VEX
    famille_nom: Triage & priorisation (VEX)
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenVEX
      - Dependency-Track
    standards:
      - VEX / OpenVEX
      - CSAF
      - CycloneDX/SPDX (profil sécurité)
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
    texte: statut VEX par vulnérabilité (not_affected / affected / fixed / under_investigation) documenté et publié.
    preuve: Documents VEX (statut par vulnérabilité) produits et publiés.
    href: "/docs/securiser/socle/referentiel/vulnerabilites/#socle-vln-vex-1"
  - id: SOCLE-VLN-VEX-2
    domaine: VLN
    domaine_nom: Vulnérabilités, VEX & réponse
    famille: VEX
    famille_nom: Triage & priorisation (VEX)
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenVEX
      - Dependency-Track
    standards:
      - VEX / OpenVEX
      - SSDF RV.1
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
    texte: "priorisation contextuelle (exposition, criticité de l'actif, exploitabilité réelle) plutôt que CVSS seul."
    preuve: Priorisation contextuelle documentée (exposition, criticité, exploitabilité).
    href: "/docs/securiser/socle/referentiel/vulnerabilites/#socle-vln-vex-2"
  - id: SOCLE-VLN-VEX-3
    domaine: VLN
    domaine_nom: Vulnérabilités, VEX & réponse
    famille: VEX
    famille_nom: Triage & priorisation (VEX)
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenVEX
      - Dependency-Track
    standards:
      - VEX / OpenVEX
      - CycloneDX (ECMA-424)
    menaces:
      - "La charge malveillante n'est pas dans la dépendance directe mais dans une dépendance de dépendance, invisible sans analyse du graphe complet. La profondeur de l'arbre de dépendances masque l'origine du risque."
    texte: automatisation du triage (réduction des faux positifs via VEX) intégrée à la chaîne.
    preuve: Triage automatisé intégrant les VEX (réduction des faux positifs).
    href: "/docs/securiser/socle/referentiel/vulnerabilites/#socle-vln-vex-3"
  - id: SOCLE-WKS-DEV-1
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: DEV
    famille_nom: Outils de développement & hygiène de la chaîne locale
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP CICD-SEC-3
      - S2C2F
    menaces:
      - "Un outil en ligne de commande est installé depuis une source non vérifiée (curl | sh, miroir non officiel) et son binaire est trojanisé. L'installation, exécutée avec les droits du poste, ouvre un accès ou vole des secrets avant même tout usage."
    texte: "sources d'outils et de dépendances maîtrisées ; proscrire l'exécution de scripts non vérifiés (`curl | sh`)."
    preuve: "Politique de sources d'outils maîtrisées ; interdiction des scripts non vérifiés."
    href: "/docs/securiser/socle/referentiel/poste-travail/outils-de-developpement-hygiene-de-la-chaine-locale/#socle-wks-dev-1"
  - id: SOCLE-WKS-DEV-2
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: DEV
    famille_nom: Outils de développement & hygiène de la chaîne locale
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - Gitleaks
      - pre-commit
    standards:
      - OWASP CICD-SEC-6
    menaces:
      - "Un secret est stocké ou laissé en clair (fichier, variable d'environnement, historique shell, dépôt) et récupéré par un attaquant. La fuite d'un secret transforme un accès local en compromission étendue (cas Codecov)."
    texte: secret scanning en pré-commit avant toute poussée.
    preuve: Hook de secret scanning en pré-commit.
    href: "/docs/securiser/socle/referentiel/poste-travail/outils-de-developpement-hygiene-de-la-chaine-locale/#socle-wks-dev-2"
  - id: SOCLE-WKS-DEV-3
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: DEV
    famille_nom: Outils de développement & hygiène de la chaîne locale
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - gitsign
      - git verify-commit
    standards:
      - SLSA (Source)
      - Sigstore
      - SSDF PS.1
    menaces:
      - Du code malveillant est poussé directement sur une branche protégée sans revue obligatoire (push direct, protection absente). Sans contrôle à quatre yeux, une modification hostile entre dans la base de code de référence.
      - "L'absence de signature vérifiée des commits et tags permet d'usurper l'auteur ou d'introduire des objets non authentifiés dans l'historique. Sans signature imposée, l'identité du contributeur n'est pas prouvable."
    texte: signature des commits configurée et vérifiée.
    preuve: Configuration et vérification de la signature des commits.
    href: "/docs/securiser/socle/referentiel/poste-travail/outils-de-developpement-hygiene-de-la-chaine-locale/#socle-wks-dev-3"
  - id: SOCLE-WKS-DEV-4
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: DEV
    famille_nom: Outils de développement & hygiène de la chaîne locale
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP CICD-SEC-6
      - OWASP CICD-SEC-3
      - NIST 800-207
      - CIS Benchmarks
    menaces:
      - "Une extension d'éditeur (VS Code, JetBrains), même sous un éditeur d'apparence vérifiée, embarque du code malveillant exécuté sur le poste du développeur. Elle vole identifiants, jetons et clés, ou installe un RAT, en s'exécutant avec les droits du dev et l'accès à ses dépôts et secrets."
      - "Le jeton de publication (PAT) d'un éditeur d'extension fuite, permettant de pousser une mise à jour piégée diffusée automatiquement à toute la base installée. Une seule fuite de jeton compromet des milliers de postes via le canal de mise à jour de confiance."
      - "Un assistant IA ou une documentation recommande une extension ou un paquet dont le nom n'existe pas encore ; l'attaquant enregistre ce nom (squat) pour livrer du code malveillant aux utilisateurs qui suivent la recommandation. La surface naît de la confiance aveugle dans les suggestions automatisées."
    texte: "extensions d'IDE et plugins navigateur maîtrisés : liste autorisée et revue, blocage des extensions non signées ou non vérifiées."
    preuve: "Liste autorisée d'extensions ; blocage des non signées, auto-update désactivé, registre vérifié."
    href: "/docs/securiser/socle/referentiel/poste-travail/outils-de-developpement-hygiene-de-la-chaine-locale/#socle-wks-dev-4"
  - id: SOCLE-WKS-DEV-5
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: DEV
    famille_nom: Outils de développement & hygiène de la chaîne locale
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP CICD-SEC-6
    menaces:
      - "Un secret est stocké ou laissé en clair (fichier, variable d'environnement, historique shell, dépôt) et récupéré par un attaquant. La fuite d'un secret transforme un accès local en compromission étendue (cas Codecov)."
    texte: aucun secret dans les fichiers de configuration de projet versionnés.
    preuve: "Inspection : aucun secret dans les fichiers de configuration de projet versionnés."
    href: "/docs/securiser/socle/referentiel/poste-travail/outils-de-developpement-hygiene-de-la-chaine-locale/#socle-wks-dev-5"
  - id: SOCLE-WKS-DEV-6
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: DEV
    famille_nom: Outils de développement & hygiène de la chaîne locale
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP CICD-SEC-3
      - S2C2F
    menaces:
      - "Un outil en ligne de commande est installé depuis une source non vérifiée (curl | sh, miroir non officiel) et son binaire est trojanisé. L'installation, exécutée avec les droits du poste, ouvre un accès ou vole des secrets avant même tout usage."
    texte: "CLI et binaires d'outils installés depuis des sources maîtrisées, avec vérification de signature/empreinte ; pas d'installation par script distant non vérifié."
    preuve: "Procédure d'installation des CLI/binaires avec vérification de signature/empreinte."
    href: "/docs/securiser/socle/referentiel/poste-travail/outils-de-developpement-hygiene-de-la-chaine-locale/#socle-wks-dev-6"
  - id: SOCLE-WKS-DEV-7
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: DEV
    famille_nom: Outils de développement & hygiène de la chaîne locale
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP CICD-SEC-6
      - OWASP CICD-SEC-3
      - NIST 800-207
      - CIS Benchmarks
    menaces:
      - "Une extension d'éditeur (VS Code, JetBrains), même sous un éditeur d'apparence vérifiée, embarque du code malveillant exécuté sur le poste du développeur. Elle vole identifiants, jetons et clés, ou installe un RAT, en s'exécutant avec les droits du dev et l'accès à ses dépôts et secrets."
      - "Le jeton de publication (PAT) d'un éditeur d'extension fuite, permettant de pousser une mise à jour piégée diffusée automatiquement à toute la base installée. Une seule fuite de jeton compromet des milliers de postes via le canal de mise à jour de confiance."
      - "Un assistant IA ou une documentation recommande une extension ou un paquet dont le nom n'existe pas encore ; l'attaquant enregistre ce nom (squat) pour livrer du code malveillant aux utilisateurs qui suivent la recommandation. La surface naît de la confiance aveugle dans les suggestions automatisées."
    texte: auto-update silencieux des extensions désactivé ; éditeur et registre réel vérifiés (Marketplace vs OpenVSX).
    preuve: "Configuration désactivant l'auto-update ; procédure de vérification d'éditeur."
    href: "/docs/securiser/socle/referentiel/poste-travail/outils-de-developpement-hygiene-de-la-chaine-locale/#socle-wks-dev-7"
  - id: SOCLE-WKS-DEV-8
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: DEV
    famille_nom: Outils de développement & hygiène de la chaîne locale
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP CICD-SEC-6
      - OWASP CICD-SEC-3
      - NIST 800-207
      - CIS Benchmarks
    menaces:
      - "Une extension d'éditeur (VS Code, JetBrains), même sous un éditeur d'apparence vérifiée, embarque du code malveillant exécuté sur le poste du développeur. Elle vole identifiants, jetons et clés, ou installe un RAT, en s'exécutant avec les droits du dev et l'accès à ses dépôts et secrets."
      - "Un assistant IA ou une documentation recommande une extension ou un paquet dont le nom n'existe pas encore ; l'attaquant enregistre ce nom (squat) pour livrer du code malveillant aux utilisateurs qui suivent la recommandation. La surface naît de la confiance aveugle dans les suggestions automatisées."
    texte: "délai de quarantaine observé avant adoption d'une nouvelle extension ou version."
    preuve: Politique de quarantaine documentée et appliquée.
    href: "/docs/securiser/socle/referentiel/poste-travail/outils-de-developpement-hygiene-de-la-chaine-locale/#socle-wks-dev-8"
  - id: SOCLE-WKS-GEN-1
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils: []
    outils: []
    standards:
      - CIS Benchmarks
      - ANSSI-BP-028
    menaces:
      - "Un développeur est piégé (faux entretien d'embauche, projet de test, dépendance à essayer) pour exécuter localement un projet malveillant. Le code s'exécute hors bac à sable avec ses droits et exfiltre credentials et portefeuilles (campagnes Lazarus / BeaverTail)."
    texte: poste durci et chiffré (disque) ; OS et outils maintenus à jour.
    preuve: Preuve de chiffrement disque ; rapport de durcissement et de mise à jour du poste.
    href: "/docs/securiser/socle/referentiel/poste-travail/#socle-wks-gen-1"
  - id: SOCLE-WKS-GEN-2
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils: []
    outils: []
    standards:
      - NIST 800-207
      - OWASP CICD-SEC-2
    menaces:
      - "Un développeur est piégé (faux entretien d'embauche, projet de test, dépendance à essayer) pour exécuter localement un projet malveillant. Le code s'exécute hors bac à sable avec ses droits et exfiltre credentials et portefeuilles (campagnes Lazarus / BeaverTail)."
    texte: "identité forte (MFA) et moindre privilège ; pas d'administration permanente."
    preuve: Configuration MFA ; absence de droits admin permanents.
    href: "/docs/securiser/socle/referentiel/poste-travail/#socle-wks-gen-2"
  - id: SOCLE-WKS-GEN-3
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DOIT
    essentielle: true
    souverain: false
    profils: []
    outils: []
    standards:
      - NIST 800-207
      - SSDF PO.5
    menaces:
      - "Un développeur est piégé (faux entretien d'embauche, projet de test, dépendance à essayer) pour exécuter localement un projet malveillant. Le code s'exécute hors bac à sable avec ses droits et exfiltre credentials et portefeuilles (campagnes Lazarus / BeaverTail)."
    texte: exécution du code non fiable isolée localement (conteneurs/VM/devcontainers).
    preuve: "Dispositif d'isolation locale du code non fiable (devcontainers/VM/conteneurs)."
    href: "/docs/securiser/socle/referentiel/poste-travail/#socle-wks-gen-3"
  - id: SOCLE-WKS-GEN-4
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP CICD-SEC-6
      - SLSA (Source)
    menaces:
      - "Un outil en ligne de commande est installé depuis une source non vérifiée (curl | sh, miroir non officiel) et son binaire est trojanisé. L'installation, exécutée avec les droits du poste, ouvre un accès ou vole des secrets avant même tout usage."
    texte: "hygiène de la chaîne locale : secret scanning pré-commit, signature des commits, sources d'outils maîtrisées."
    preuve: "Hooks pré-commit (secret scanning), configuration de signature des commits, politique de sources d'outils."
    href: "/docs/securiser/socle/referentiel/poste-travail/#socle-wks-gen-4"
  - id: SOCLE-WKS-GEN-5
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: GEN
    famille_nom: Exigences générales
    niveau: R2
    devoir: DEVRAIT
    essentielle: true
    souverain: false
    profils: []
    outils:
      - osquery
    standards:
      - NIST 800-207
      - CIS Benchmarks
    menaces:
      - "Un développeur est piégé (faux entretien d'embauche, projet de test, dépendance à essayer) pour exécuter localement un projet malveillant. Le code s'exécute hors bac à sable avec ses droits et exfiltre credentials et portefeuilles (campagnes Lazarus / BeaverTail)."
      - "Un outil en ligne de commande est installé depuis une source non vérifiée (curl | sh, miroir non officiel) et son binaire est trojanisé. L'installation, exécutée avec les droits du poste, ouvre un accès ou vole des secrets avant même tout usage."
    texte: EDR/télémétrie et conformité du poste vérifiée (device trust).
    preuve: Déploiement EDR/télémétrie ; vérification de conformité du poste (device trust).
    href: "/docs/securiser/socle/referentiel/poste-travail/#socle-wks-gen-5"
  - id: SOCLE-WKS-GEN-6
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: GEN
    famille_nom: Exigences générales
    niveau: R1
    devoir: DOIT
    essentielle: true
    souverain: false
    profils: []
    outils: []
    standards:
      - OWASP CICD-SEC-6
      - OWASP CICD-SEC-3
      - CIS Benchmarks
    menaces:
      - "Une extension d'éditeur (VS Code, JetBrains), même sous un éditeur d'apparence vérifiée, embarque du code malveillant exécuté sur le poste du développeur. Elle vole identifiants, jetons et clés, ou installe un RAT, en s'exécutant avec les droits du dev et l'accès à ses dépôts et secrets."
      - "Le jeton de publication (PAT) d'un éditeur d'extension fuite, permettant de pousser une mise à jour piégée diffusée automatiquement à toute la base installée. Une seule fuite de jeton compromet des milliers de postes via le canal de mise à jour de confiance."
      - "Un assistant IA ou une documentation recommande une extension ou un paquet dont le nom n'existe pas encore ; l'attaquant enregistre ce nom (squat) pour livrer du code malveillant aux utilisateurs qui suivent la recommandation. La surface naît de la confiance aveugle dans les suggestions automatisées."
    texte: "extensions d'IDE et outils dev maîtrisés : liste autorisée, sources/signatures vérifiées, auto-update silencieux désactivé, délai de quarantaine avant adoption."
    preuve: "Liste autorisée d'extensions/outils ; preuve de désactivation de l'auto-update et de quarantaine."
    href: "/docs/securiser/socle/referentiel/poste-travail/#socle-wks-gen-6"
  - id: SOCLE-WKS-HRD-1
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: HRD
    famille_nom: Durcissement & conformité du poste
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenSCAP
      - CIS-CAT
    standards:
      - CIS Benchmarks
      - ANSSI-BP-028
    menaces:
      - "Un développeur est piégé (faux entretien d'embauche, projet de test, dépendance à essayer) pour exécuter localement un projet malveillant. Le code s'exécute hors bac à sable avec ses droits et exfiltre credentials et portefeuilles (campagnes Lazarus / BeaverTail)."
    texte: chiffrement intégral du disque.
    preuve: Preuve de chiffrement intégral du disque.
    href: "/docs/securiser/socle/referentiel/poste-travail/durcissement-conformite-du-poste/#socle-wks-hrd-1"
  - id: SOCLE-WKS-HRD-2
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: HRD
    famille_nom: Durcissement & conformité du poste
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenSCAP
      - CIS-CAT
    standards:
      - CIS Benchmarks
      - ANSSI-BP-028
    menaces:
      - "Un développeur est piégé (faux entretien d'embauche, projet de test, dépendance à essayer) pour exécuter localement un projet malveillant. Le code s'exécute hors bac à sable avec ses droits et exfiltre credentials et portefeuilles (campagnes Lazarus / BeaverTail)."
    texte: OS et outils maintenus à jour (correctifs gérés).
    preuve: Preuve de gestion des correctifs (OS et outils à jour).
    href: "/docs/securiser/socle/referentiel/poste-travail/durcissement-conformite-du-poste/#socle-wks-hrd-2"
  - id: SOCLE-WKS-HRD-3
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: HRD
    famille_nom: Durcissement & conformité du poste
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenSCAP
      - CIS-CAT
    standards:
      - CIS Benchmarks
      - ANSSI-BP-028
    menaces:
      - "Un développeur est piégé (faux entretien d'embauche, projet de test, dépendance à essayer) pour exécuter localement un projet malveillant. Le code s'exécute hors bac à sable avec ses droits et exfiltre credentials et portefeuilles (campagnes Lazarus / BeaverTail)."
    texte: configuration durcie de référence ; pare-feu local actif.
    preuve: Configuration durcie de référence appliquée ; pare-feu local actif.
    href: "/docs/securiser/socle/referentiel/poste-travail/durcissement-conformite-du-poste/#socle-wks-hrd-3"
  - id: SOCLE-WKS-HRD-4
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: HRD
    famille_nom: Durcissement & conformité du poste
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenSCAP
      - CIS-CAT
    standards:
      - NIST 800-207
      - CIS Benchmarks
    menaces:
      - "Un développeur est piégé (faux entretien d'embauche, projet de test, dépendance à essayer) pour exécuter localement un projet malveillant. Le code s'exécute hors bac à sable avec ses droits et exfiltre credentials et portefeuilles (campagnes Lazarus / BeaverTail)."
    texte: EDR/antimalware avec télémétrie centralisée.
    preuve: Déploiement EDR/antimalware ; télémétrie centralisée.
    href: "/docs/securiser/socle/referentiel/poste-travail/durcissement-conformite-du-poste/#socle-wks-hrd-4"
  - id: SOCLE-WKS-HRD-5
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: HRD
    famille_nom: Durcissement & conformité du poste
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - OpenSCAP
      - CIS-CAT
    standards:
      - ANSSI-BP-028
    menaces:
      - "Un développeur est piégé (faux entretien d'embauche, projet de test, dépendance à essayer) pour exécuter localement un projet malveillant. Le code s'exécute hors bac à sable avec ses droits et exfiltre credentials et portefeuilles (campagnes Lazarus / BeaverTail)."
    texte: verrouillage de session et chiffrement des sauvegardes.
    preuve: Verrouillage de session configuré ; chiffrement des sauvegardes.
    href: "/docs/securiser/socle/referentiel/poste-travail/durcissement-conformite-du-poste/#socle-wks-hrd-5"
  - id: SOCLE-WKS-LOT-1
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: LOT
    famille_nom: Outils détournables (Living Off the Pipeline)
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - poutine
    standards:
      - OWASP CICD-SEC-4
      - LOTP
    menaces:
      - "Un linter, formateur, framework de test ou outil de build exécute du code arbitraire par conception, via un fichier de configuration, un plugin ou une variable d'environnement contrôlés par l'attaquant (Living Off the Pipeline). Aucune faille n'est nécessaire : la fonctionnalité légitime sert d'exécution."
    texte: inventaire des outils détournables présents en CI et sur les postes, croisé avec le catalogue LOTP.
    preuve: Inventaire des outils détournables (croisé LOTP) en CI et sur les postes.
    href: "/docs/securiser/socle/referentiel/poste-travail/outils-detournables-living-off-the-pipeline/#socle-wks-lot-1"
  - id: SOCLE-WKS-LOT-2
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: LOT
    famille_nom: Outils détournables (Living Off the Pipeline)
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - poutine
    standards:
      - OWASP CICD-SEC-4
      - LOTP
    menaces:
      - "Un linter, formateur, framework de test ou outil de build exécute du code arbitraire par conception, via un fichier de configuration, un plugin ou une variable d'environnement contrôlés par l'attaquant (Living Off the Pipeline). Aucune faille n'est nécessaire : la fonctionnalité légitime sert d'exécution."
      - "Un paquet exécute du code arbitraire via ses scripts de cycle de vie (postinstall, preinstall) dès l'installation, avant tout usage. L'ajout d'une dépendance suffit à déclencher la charge."
    texte: "désactiver ou confiner les fonctionnalités d'exécution arbitraire : scripts de cycle de vie des paquets (`--ignore-scripts`), auto-chargement de plugins/config, `eval` dans les configurations."
    preuve: "Preuve de désactivation/confinement de l'exécution arbitraire (scripts de paquets, plugins, eval)."
    href: "/docs/securiser/socle/referentiel/poste-travail/outils-detournables-living-off-the-pipeline/#socle-wks-lot-2"
  - id: SOCLE-WKS-LOT-3
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: LOT
    famille_nom: Outils détournables (Living Off the Pipeline)
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - poutine
    standards:
      - OWASP CICD-SEC-4
      - SLSA (Source)
    menaces:
      - "Un linter, formateur, framework de test ou outil de build exécute du code arbitraire par conception, via un fichier de configuration, un plugin ou une variable d'environnement contrôlés par l'attaquant (Living Off the Pipeline). Aucune faille n'est nécessaire : la fonctionnalité légitime sert d'exécution."
      - "Une donnée contrôlée par l'attaquant (titre de PR, nom de branche, message de commit) est interpolée sans échappement dans un script de workflow, provoquant une exécution de commande dans le pipeline. C'est l'injection classique portée au CI."
      - "Un plugin ou une extension de l'outil de build (Gradle, Maven, bundler) exécute du code au moment de la construction, hors de toute revue du code applicatif. Le build devient un vecteur d'exécution tierce."
      - "Poisoned Pipeline Execution indirecte : l'injection passe par un fichier consommé par le pipeline (Makefile, script, configuration d'outil) plutôt que par le fichier de CI. Le résultat est identique : exécution de code attaquant dans le pipeline."
    texte: "fichiers de configuration des outils (linters, formateurs, build) épinglés et revus ; pas de configuration tirée d'une source non fiable (PR de fork)."
    preuve: Fichiers de configuration des outils épinglés et revus ; pas de config de source non fiable.
    href: "/docs/securiser/socle/referentiel/poste-travail/outils-detournables-living-off-the-pipeline/#socle-wks-lot-3"
  - id: SOCLE-WKS-LOT-4
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: LOT
    famille_nom: Outils détournables (Living Off the Pipeline)
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - poutine
    standards:
      - CIS Benchmarks
      - NIST 800-207
    menaces:
      - "Un linter, formateur, framework de test ou outil de build exécute du code arbitraire par conception, via un fichier de configuration, un plugin ou une variable d'environnement contrôlés par l'attaquant (Living Off the Pipeline). Aucune faille n'est nécessaire : la fonctionnalité légitime sert d'exécution."
    texte: "exécution de ces outils sur du code non fiable confinée en bac à sable ; variables d'environnement maîtrisées."
    preuve: "Confinement en bac à sable de l'exécution des outils sur du code non fiable."
    href: "/docs/securiser/socle/referentiel/poste-travail/outils-detournables-living-off-the-pipeline/#socle-wks-lot-4"
  - id: SOCLE-WKS-LOT-5
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: LOT
    famille_nom: Outils détournables (Living Off the Pipeline)
    niveau: R2
    devoir: DEVRAIT
    essentielle: false
    souverain: false
    profils: []
    outils:
      - poutine
    standards:
      - OWASP CICD-SEC-4
      - LOTP
    menaces:
      - "Un linter, formateur, framework de test ou outil de build exécute du code arbitraire par conception, via un fichier de configuration, un plugin ou une variable d'environnement contrôlés par l'attaquant (Living Off the Pipeline). Aucune faille n'est nécessaire : la fonctionnalité légitime sert d'exécution."
      - "Un paquet exécute du code arbitraire via ses scripts de cycle de vie (postinstall, preinstall) dès l'installation, avant tout usage. L'ajout d'une dépendance suffit à déclencher la charge."
    texte: scan des dépôts/pipelines à la recherche de schémas détournables (ex. scanner CI/CD type poutine).
    preuve: Résultat de scan des dépôts/pipelines pour schémas détournables (ex. poutine).
    href: "/docs/securiser/socle/referentiel/poste-travail/outils-detournables-living-off-the-pipeline/#socle-wks-lot-5"
  - id: SOCLE-WKS-PRV-1
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: PRV
    famille_nom: Identité, privilèges & isolation locale
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - NIST 800-207
      - OWASP CICD-SEC-2
    menaces:
      - "Un développeur est piégé (faux entretien d'embauche, projet de test, dépendance à essayer) pour exécuter localement un projet malveillant. Le code s'exécute hors bac à sable avec ses droits et exfiltre credentials et portefeuilles (campagnes Lazarus / BeaverTail)."
    texte: "authentification forte (MFA) pour l'accès au poste et aux services."
    preuve: Configuration MFA pour le poste et les services.
    href: "/docs/securiser/socle/referentiel/poste-travail/identite-privileges-isolation-locale/#socle-wks-prv-1"
  - id: SOCLE-WKS-PRV-2
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: PRV
    famille_nom: Identité, privilèges & isolation locale
    niveau: R1
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - NIST 800-207
      - ANSSI-BP-028
    menaces:
      - "Un développeur est piégé (faux entretien d'embauche, projet de test, dépendance à essayer) pour exécuter localement un projet malveillant. Le code s'exécute hors bac à sable avec ses droits et exfiltre credentials et portefeuilles (campagnes Lazarus / BeaverTail)."
    texte: "moindre privilège : pas de droits admin permanents pour l'usage courant."
    preuve: "Absence de droits admin permanents pour l'usage courant."
    href: "/docs/securiser/socle/referentiel/poste-travail/identite-privileges-isolation-locale/#socle-wks-prv-2"
  - id: SOCLE-WKS-PRV-3
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: PRV
    famille_nom: Identité, privilèges & isolation locale
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - ANSSI-BP-028
    menaces:
      - "Un développeur est piégé (faux entretien d'embauche, projet de test, dépendance à essayer) pour exécuter localement un projet malveillant. Le code s'exécute hors bac à sable avec ses droits et exfiltre credentials et portefeuilles (campagnes Lazarus / BeaverTail)."
    texte: "séparation des usages : compte admin distinct, élévation à la demande."
    preuve: "Compte admin distinct ; mécanisme d'élévation à la demande."
    href: "/docs/securiser/socle/referentiel/poste-travail/identite-privileges-isolation-locale/#socle-wks-prv-3"
  - id: SOCLE-WKS-PRV-4
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: PRV
    famille_nom: Identité, privilèges & isolation locale
    niveau: R2
    devoir: DOIT
    essentielle: false
    souverain: false
    profils: []
    outils: []
    standards:
      - NIST 800-207
      - SSDF PO.5
    menaces:
      - "Un développeur est piégé (faux entretien d'embauche, projet de test, dépendance à essayer) pour exécuter localement un projet malveillant. Le code s'exécute hors bac à sable avec ses droits et exfiltre credentials et portefeuilles (campagnes Lazarus / BeaverTail)."
    texte: exécution du code non fiable isolée (devcontainers/VM/conteneurs).
    preuve: "Dispositif d'isolation du code non fiable (devcontainers/VM/conteneurs)."
    href: "/docs/securiser/socle/referentiel/poste-travail/identite-privileges-isolation-locale/#socle-wks-prv-4"
  - id: SOCLE-WKS-PRV-5
    domaine: WKS
    domaine_nom: Poste de travail dev/ops
    famille: PRV
    famille_nom: Identité, privilèges & isolation locale
    niveau: R3
    devoir: DEVRAIT
    essentielle: false
    souverain: true
    profils:
      - souverain
    outils: []
    standards:
      - NIST 800-207
    menaces:
      - "Un développeur est piégé (faux entretien d'embauche, projet de test, dépendance à essayer) pour exécuter localement un projet malveillant. Le code s'exécute hors bac à sable avec ses droits et exfiltre credentials et portefeuilles (campagnes Lazarus / BeaverTail)."
    texte: "device trust : accès conditionné à la conformité vérifiée du poste."
    preuve: "Politique de device trust : accès conditionné à la conformité du poste."
    href: "/docs/securiser/socle/referentiel/poste-travail/identite-privileges-isolation-locale/#socle-wks-prv-5"
