Parcours d'auto-formation pas à pas, écrit pour quelqu'un qui a déjà des bases en
cybersécurité et en systèmes embarqués (ENSA Tétouan) et qui veut ajouter la partie
« industrialisation » : CI/CD, automatisation des contrôles de sécurité, supply chain,
conformité (CRA, IEC 62443).
L'objectif n'est pas de devenir développeur web : c'est d'être capable de construire une
chaîne de build/déploiement dans laquelle la sécurité est automatisée, y compris pour du
firmware.
- Un module = un fichier
.md = 1 semaine (environ 6–10 h).
- Chaque module a la même structure :
- Objectifs — ce que tu dois savoir faire à la fin
- Théorie utile — le minimum, pas un cours magistral
- Outils — ce qu'on installe et pourquoi
- Lab — manipulation concrète, commandes réelles
- Critères de validation — tu passes au module suivant quand c'est coché
- Pièges / erreurs classiques
- Pour aller plus loin
- Ne lis pas sans faire le lab. Le DevSecOps se mesure en pipelines qui tournent, pas en
fiches de lecture.
- Les livrables des labs vont dans
labs/ (un sous-dossier par module).
Machine de travail (état au 2026-09-20)#
| Élément |
État |
Conséquence |
| Fedora 44 |
OK |
dnf pour tout installer |
podman |
installé |
on utilise podman partout, pas docker (alias docker=podman marche à 95 %) |
python3 |
installé, pip absent en système |
toujours créer un venv : python3 -m venv .venv && .venv/bin/pip install ... |
gcc, make, cmake, qemu |
absents |
à installer au module 04 (sudo dnf install ...) |
git + gh |
installés et configurés |
les labs CI se font sur GitHub Actions |
sudo |
ne marche pas via Claude Code (pas de TTY) |
ouvre un vrai terminal pour les installs root |
Plan du parcours#
Socle (semaines 1–3)#
Automatisation (semaines 4–8)#
| # |
Module |
Cœur du sujet |
| 03 |
CI/CD : bases |
GitHub Actions, runners, artefacts, gates |
| 04 |
SAST — analyse statique |
Semgrep, CodeQL, clang-tidy, MISRA, flags de durcissement C |
| 05 |
SCA, CVE et SBOM |
Syft/Grype, CycloneDX, CVE check Yocto/Buildroot |
| 06 |
Gestion des secrets |
SOPS/age, Vault, OIDC, clés dans le firmware, TPM/SE |
| 07 |
Sécurité des conteneurs |
Durcissement d'image, Trivy, signature Cosign |
| 08 |
DAST et fuzzing |
ZAP, nuclei, AFL++/libFuzzer, fuzzing de protocole embarqué |
Infrastructure et embarqué (semaines 9–11)#
| # |
Module |
Cœur du sujet |
| 09 |
IaC et durcissement système |
Ansible/Terraform, Checkov, CIS, durcissement noyau |
| 10 |
Supply chain du firmware |
Le module clé pour toi : Yocto/Buildroot, secure boot, OTA signé, builds reproductibles |
| 11 |
Runtime, détection et réponse |
Logs, Wazuh/Falco, auditd, incident response |
Cadre et synthèse (semaines 12–14)#
Suivi de progression#
Ce que tu sauras faire à la fin#
- Écrire un pipeline GitHub Actions qui casse le build sur secret commité, CVE critique,
vulnérabilité SAST ou image non signée.
- Produire un SBOM CycloneDX pour une image firmware et le confronter à la base CVE.
- Mettre en place une chaîne secure boot + mise à jour OTA signée et la tester en CI.
- Justifier tes choix face aux exigences du Cyber Resilience Act et de l'IEC 62443-4-1.