Aller au contenu principal

Cartographie des controles techniques embarques

Objet de cette cartographie

Cette page mappe les exigences de l'Annexe I du CRA vers des controles techniques implementables dans les produits embarques : fonctions CPU/SoC, firmware/chaine de boot, configuration RTOS, et pile update + vulnerability handling.

Elle sert de guide de preuves : chaque mapping inclut la clause CRA, ce qu'un evaluateur cherchera dans une architecture embarquee, et quels artefacts devraient exister dans la documentation technique (Annexe VII).[1]


0) Modele de reference embarque (base de la cartographie)

Pour l'embarque, la conformite CRA couvre presque toujours device + firmware + backend d'update. La cartographie n'est credible que si la frontiere produit est explicite (voir aussi Scope & Definitions).

Idee cle : la plupart des clauses CRA se mappe a plusieurs couches (silicium → boot → runtime → ops).


1) Exigences "proprietes" CRA → controles embarques (Annexe I Part I)

L'Annexe I Part I(2)(a-m) est la liste actionnable. Ci-dessous, une cartographie de controles fidele au texte.

1.1 Tableau de mapping rapide (quoi implementer et ou)

Clause CRAObjectif de controle embarqueControles embarques typiques (exemples)Artefacts evidences (Annexe VII)
I(2)(a) no known exploitable vulns a la releaseEviter de shipper des vuln exploitables connuesSBOM + triage CVE; config securisee; fuzzing parsers; SAST C/C++; dependency gatingSBOM par build; log CVE/VEX; rapport tests securite
I(2)(b) secure-by-default + resetDefauts sûrs jour 0 + factory resetdebug lock; services minimaux; creds uniques; comms securisees ON; reset usine efface secretsMatrice secure defaults; spec + tests factory reset
I(2)(c) security updates (auto par defaut + opt-out)Patchabilite + UX d'update sureOTA signee; rollback-safe; rollout etage; auto update defaut (si applicable) + opt-out + reportArchi update; procedure deploiement; tests d'echec update
I(2)(d) protection acces non autorise + reportingAuthN/AuthZ forte + auditidentite device; mutual auth; politique d'acces; rate limits; logs authModele identite; spec proto auth; taxonomie evenements
I(2)(e) confidentialiteProteger secrets/donnees sensiblesTLS/DTLS; stockage chiffre; secure element/TEE; zeroisation de cleProfil crypto; plan key mgmt; classification data-flow
I(2)(f) integrite data/commands/program/config + reportPrevenir modifs non autorisees + detecter/reportsecure boot; configs signees; checks integrite; anti-rollback; events corruptionDoc chaine boot; design signature config; logs tests corruption
I(2)(g) data minimisationCollecter uniquement le necessaireminimisation telemetrie; sampling/retention; desactivation identifiants non requisSchema telemetrie + justification; politique de retention
I(2)(h) disponibilite fonctions essentiellesResilience + mitigation DoSwatchdog; budgets ressources; bornes d'entree; rate limiting; mode recoveryTests robustesse; limites ressources; procedure recovery
I(2)(i) minimiser impact sur autresNe pas nuire aux autres reseaux/devicesbackoff et plafonds de taux; eviter comportement type scan; politique retry sûreSpec comportement reseau; config de rate-limit
I(2)(j) limiter surfaces d'attaqueReduc interfaces exposeesdesactiver ports inutiles; suppression compile-time; mgmt authentifie; diag securisesInventaire interfaces; matrice ports/services; hardening config
I(2)(k) reduire impact via mitigations exploitationContenir la compromissionMPU/MMU; TrustZone; separation privileges; flags hardening; sandboxDesign isolation; flags build; resume pen-test
I(2)(l) journaliser/monitorer activite interne + opt-outLogs securite avec controle utilisateurtaxonomie events; logs tamper-resistant; export securise; semantique opt-outDesign logging; schema protection logs; API export
I(2)(m) suppression securisee + transfert securiseDecommissionnement sûrsecure wipe (flash interne/externe); migration authentifieeDesign + verification secure wipe; instructions utilisateur
I(1) niveau approprie base sur risquesProportionnalite appuyee par analyse de risquethreat model; registre risques; rationale des controles par environnementAnalyse de risque mappee vers controles Annexe I

Source : CRA Annexe I Part I(1)-(2).[1]


2) Hardware root of trust et identite device

2.1 Pourquoi c'est fondamental

Sans identite fiable et etat de boot prouve, difficile de credibiliser :

  • protection acces non autorise (I(2)(d)),
  • integrite (I(2)(f)),
  • updates securisees (I(2)(c)),
  • reduction d'impact (I(2)(k)).[1]

2.2 Pattern pratique embarque

Objectif : chaque device a une identite crypto unique ancree dans du materiel protege.

Options typiques (selon le SoC) :

  • OTP / eFuse pour cle uniques ou KEK,
  • PUF-derived keys (cle unique sans stocker les bits),
  • Secure element externe ou secure enclave / TEE interne,
  • Partition TrustZone pour crypto + stockage securise (Armv8-M/A).

Pipeline identite et provisioning

Preuves a garder (dossier technique) :

  • spec provisioning (quoi est injecte/derive et ou),
  • diagramme lifecycle (manufacturing → production → RMA),
  • plan de rotation/revocation des cles/certs.

3) Secure boot et integrite mesuree (programme + configuration)

3.1 Ancre CRA

  • protection d'integrite des programmes/config (I(2)(f))
  • reduction surface et mitigation exploitation (I(2)(j), I(2)(k))
  • updates securisees et anti-rollback en pratique (I(2)(c)).[1]

3.2 Chaine secure boot embarquee (design minimal credible)

Decisions a prendre :

  • scheme de signature (type de cle, strategie de rotation),
  • anti-rollback (compteurs monotones / politique de version),
  • comportement en echec (mode recovery vs rollback slot),
  • integrite config (bundles signes, commandes authentifiees).

Preuves :

  • tests negatifs (mauvaise signature, version downgrade, flash corrompue),
  • tests de coupure courant en cours d'update (voir section update),
  • evenements de boot logs (verdict) relies a I(2)(l).[1]

4) Isolation runtime et controles memory-safety

4.1 Ancre CRA

  • reduire impact des incidents via mitigations exploitation (I(2)(k))
  • limiter surface d'attaque (I(2)(j))
  • proteger confidentialite/integrite (I(2)(e)-(f)).[1]

4.2 Ce que signifie "exploitation mitigation" en embarque

Sans MMU complete, vous pouvez (et devez) utiliser :

  • MPU (regions privilege vs unpriv, code RO, no-execute data si dispo),
  • TrustZone-M (partition Secure/Non-secure + gateways securises),
  • builds durcis (stack canaries, checks de bornes, W^X si supporte, protections controle de flux si toolchain le permet).

Esquisse TrustZone-M (concept)

Preuves :

  • memory map (regions secure vs non-secure, regions MPU),
  • liste des APIs privilegiees (ce qui requiert secure world / kernel),
  • plan de tests prouvant les frontieres (tests negatifs).

5) Durcissement des interfaces et lifecycle debug

5.1 Ancre CRA

  • secure-by-default (I(2)(b))
  • protection acces non autorise + reporting (I(2)(d))
  • reduction surface d'attaque (I(2)(j)).[1]

5.2 Inventaire d'interfaces obligatoire en pratique

Faire une liste unique :

  • ports physiques (USB, UART, CAN, SWD/JTAG),
  • surfaces radio (BLE, Wi-Fi, NFC),
  • services logiciels (web UI, RPC, protocoles mgmt, endpoints update).

Pour chaque, indiquer :

  • active en production ?
  • authentifie/autorise ?
  • rate limite ?
  • logge ?
  • comment desactiver ?

Machine a etats lifecycle debug (exemple)

Preuves :

  • politique lifecycle (quand le debug est on, comment unlock, traces audit),
  • rapport de configuration production (secure defaults, services desactives),
  • notes de pen-test du plan de management.

6) Cryptographie et gestion des cles (state of the art)

6.1 Ancre CRA

  • confidentialite via mecanismes "state of the art" (I(2)(e))
  • integrite et reporting de corruption (I(2)(f)).[1]

6.2 Ce qu'attendent les auditeurs (version embarquee)

Savoir montrer :

  • quels protocoles (TLS/DTLS, MQTT over TLS, etc.),
  • quelles cipher suites et tailles de cle (politique explicite),
  • comment les cles sont generees, stockees, rotatees, revokeees, recuperees (RMA).

Rester simple et defensible :

  • bibliotheques crypto maintenues,
  • pas de protocols obsoletes ni cles faibles,
  • regles de validation de certificats adapte es a votre contexte.

Preuves :

  • document profil crypto,
  • modele de confiance certifs (root CA, intermediaires, pinning),
  • SOP de lifecycle de cle et plan d'incident (compromission de cle).

7) Hooks de logging / monitoring (niveau device)

7.1 Ancre CRA

Annexe I Part I(2)(l) : enregistrer et monitorer l'activite interne pertinente (acces/modif de donnees/services/fonctions), avec opt-out utilisateur.[1]

7.2 Patterns embarques

Even des devices limites doivent produire des events securite. Classes typiques :

  • verdicts de boot (secure boot OK/KO),
  • resultats auth/authz,
  • tentatives d'update (download, verify, activate, rollback),
  • changements de config,
  • fautes d'integrite (signature fail, flags corruption),
  • tentatives debug unlock / changements lifecycle.

Esquisse pipeline logging

Preuves :

  • taxonomie events + mapping severite,
  • design de protection des logs (anti-tamper / integrite),
  • definition de l'opt-out (ce qui est desactive et ce qui reste requis pour safety/security).

8) Chemin d'update securise (device + flotte)

8.1 Ancre CRA (exact)

  • Part I(2)(c) : security updates, auto-updates par defaut quand applicable, opt-out, notifications, report possible.[1]
  • Part II(2) : remedier sans delai, fournir des security updates ; separer updates securite / fonctionnalite si faisable.[1]
  • Part II(7)-(8) : mecanismes de distribution securises ; diffuser sans delai (et generalement gratuit) ; messages d'avis.[1]

8.2 Proprieties minimales pour un mecanisme d'update embarque

Credible si :

  1. Authenticity : seules les images autorisees manufacturer s'installent (signature verifiee).
  2. Integrity : corruption detectee avant activation (hash, verification).
  3. Anti-rollback : politique empeche downgrade vers builds vulnerables.
  4. Power-fail safety : recovery apres interruption (A/B, swap, mode recovery).
  5. Status transparency : l'appareil peut rapporter l'etat d'update de facon securisee.
  6. Fleet control : rollout etage + rollback flotte (gestion de risque).

Esquisse style Zephyr + MCUboot

Preuves :

  • doc architecture update (device + backend),
  • resultats de tests sur la matrice d'echec (download interrompu, swap interrompu, image corrompue),
  • templates d'advisory (Part II(8)) et traces de rollout.

9) SBOM et controles supply-chain (realites firmware)

9.1 Ancre CRA

Annexe I Part II(1) : identifier/documenter vulnerabilites et composants, avec une SBOM en format machine courant, au moins pour les dependances top-level.[1]

9.2 Specifiques SBOM embarque (a inclure a minima)

Pour firmware, la SBOM doit couvrir :

  • bootloader,
  • RTOS,
  • bibliotheques reseau/crypto,
  • middleware (parsers, stacks de serialisation),
  • HALs constructeur et SDK d'elements securises,
  • composants toolchain pertinents pour la provenance.

Flux SBOM robuste

Preuves :

  • SBOM par release liee au hash du build,
  • log de triage CVE et (optionnel) statements VEX,
  • preuve que les vuln sont remediees sans delai (Part II(2)).[1]

10) Checklist des "knobs" (ce que les equipes configurent vraiment)

Hardware / SoC

  • lifecycle state (manufacturing/production/RMA)
  • stockage securise dispo (OTP/PUF/SE/TEE)
  • politique debug lock (permanent vs unlock controle)
  • compteurs monotones / stockage anti-rollback
  • TRNG dispo + health checks

Boot / firmware

  • verification de signature pour boot et updates
  • politique de version et regles rollback
  • politique d'entree/sortie recovery mode
  • integrite config (config signee / commandes authentifiees)

RTOS / runtime

  • separation de privilege (MPU/MMU, userspace)
  • services crypto isoles (TEE ou secure partition si possible)
  • flags de compilation hardening
  • politiques de validation d'entree pour tous parsers/handlers
  • limites ressources (heap, queues, connexions) pour la disponibilite

Networking

  • TLS/DTLS impose et configure (versions, suites)
  • validation de certificats et ancres de confiance
  • rate limiting/backoff pour ne pas nuire aux reseaux tiers (I(2)(i))

Observabilite / logging

  • taxonomie des evenements + retention
  • protection d'integrite des logs
  • auth pour l'export securise

Problemes courants lors du mapping (specifique embarque)

Si l'application parait "dure", c'est souvent :

  1. Frontiere PDE floue : device documente mais OTA/provisioning/telemetry absents (mapping updates/logging casse).
  2. Explosion de variantes : multiples memory maps/boot chains (A/B vs swap) mais evidences sur une seule voie.
  3. Pas de politique lifecycle : manufacturing vs production vs RMA non defini, donc debug/cles/rollback incoherents.
  4. Modele d'identite non specifie : "device a TLS" mais pas d'identite par device ni plan d'emission/revocation.
  5. Anti-rollback absent : mecanisme d'update permet downgrade vers firmware vuln (oppose I(2)(c)).
  6. Logging present mais non securise : logs falsifiables ou export non authentifie (affaiblit I(2)(l)).
  7. Secure wipe non implemente : reset usine laisse des secrets (I(2)(m)).
  8. SBOM sans triage : SBOM produite mais pas de process d'impact/remediation rapide (Part II(2)).
  9. Opt-out ambigu : opt-out logs/auto-updates non defini pour votre type de produit ; documenter interpretation + instructions utilisateur (Annexe II).
  10. Evidences non versionnees : controles existent mais artefacts non lies a un hash de release dans la doc technique (echec Annexe VII).

References

[1]: Regulation (EU) 2024/2847 (Cyber Resilience Act) - Annexe I (Part I & Part II) (EUR-Lex) https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:32024R2847
[2]: ETSI EN 303 645 v3.1.3 (Consumer IoT baseline) https://www.etsi.org/deliver/etsi_en/303600_303699/303645/03.01.03_60/en_303645v030103p.pdf
[3]: IEC 62443-4-2 (IACS component technical security requirements) (standard reference; obtain via IEC/ISA)
[4]: CRA Annexe VII - exigences de documentation technique (EUR-Lex) https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:32024R2847

Partager cette page

Partager sur LinkedIn