Aller au contenu
← Retour aux projets
risk-check catching a review set too far away and an acceptance signed by the wrong authority, then validating the register
Projet personnel

Matrice d'évaluation des risques — registre méthodique

Un registre de risques qui suit une méthode écrite — ISO/IEC 27005:2022 ou EBIOS Risk Manager — et se vérifie lui-même : notes, traitement, acceptation formelle par la bonne autorité et revues, avec rapports, import/export CSV sûrs et interface web

Contexte

J'ai reconstruit ce projet de zéro, en remplacement de deux anciens prototypes (une matrice de risques en anglais et sa reconstruction en français). L'objectif : un registre de risques qu'une PME ou une ETI peut défendre devant sa direction ou un auditeur ISO/IEC 27001. La méthode — échelles, grille, appétence, autorités d'acceptation — est écrite dans un fichier et vérifiée ; chaque risque est ensuite contrôlé automatiquement par rapport à elle. Atelier Lumen, l'entreprise fictive de mon exercice sur table de réponse aux incidents, fournit les registres d'exemple.

Contenu du dépôt

  • Un format de méthode en TOML, bilingue, avec deux préréglages : 5×5 vraisemblance × impact (ISO/IEC 27005:2022) et EBIOS RM 4×4 (vraisemblance V1–V4 × gravité G1–G4, ANSSI 1.5)
  • Un format de registre : actifs, menace, vulnérabilité, risque inhérent et résiduel, mesures prévues, traitement (réduire, accepter, transférer, éviter), acceptation formelle, revue, historique
  • Des références sur chaque risque et chaque mesure : mesures de l'annexe A d'ISO/IEC 27001:2022 (numéros seulement), techniques MITRE ATT&CK et playbook de réponse aux incidents correspondant
  • Quatre commandes : risk-check (vérification), risk-report (Markdown et HTML), risk-export (JSON, CSV) et risk-import (CSV vers TOML)
  • Un guide d'évaluation et les registres d'exemple d'Atelier Lumen, en français et en anglais

Règles vérifiées automatiquement

  • Une méthode cohérente : grille monotone, chaque niveau utilisé, une autorité d'acceptation pour chaque niveau au-dessus de l'appétence, revues plus fréquentes pour les risques plus graves
  • Risque résiduel jamais supérieur à l'inhérent sans justification
  • Acceptation formelle exigée quand le risque résiduel reste au-dessus de l'appétence et que plus rien n'est en cours pour le réduire (ISO/IEC 27001, 6.1.3) — signée par l'autorité prévue par la méthode, pour sa durée maximale
  • Prochaine revue dans la fréquence du niveau résiduel ; historique chronologique
  • Erreurs (données invalides) distinctes des avertissements (mesure ou revue en retard, acceptation expirée) ; --strict rend les avertissements bloquants

Choix de sécurité

  • Export CSV protégé contre l'injection de formules (CWE-1236) : les cellules commençant par =, +, -, @ sont neutralisées, et la protection est retirée à l'import
  • Imports limités en taille et en lignes, UTF-8 exigé, aucun fichier écrasé sans --force
  • Rapport HTML en un seul fichier sans script : tout texte échappé, CSP n'autorisant que sa propre feuille de style par empreinte SHA-256
  • Registres réels exclus de Git par convention de nommage ; l'interface web lit un fichier localement, sans jamais l'envoyer ni le conserver

Interface web

  • Chargement des registres d'exemple ou d'un export JSON local, entièrement validé avant affichage (types, dates, couleurs, cohérence avec la grille)
  • Synthèse des risques actifs, au-dessus de l'appétence, des mesures et revues en retard, des acceptations expirées
  • Cartographies cliquables du risque inhérent et résiduel, filtres (niveau, responsable, traitement, recherche sans accents) et fiche détaillée par risque
  • Plan d'action et calendrier des revues ; français et anglais, thèmes clair et sombre, clavier et mobile, CSP stricte

Qualité d'ingénierie

240
Tests automatisés
216 Python + 24 web
7
Jobs de CI
Windows + Linux, Python 3.11/3.14, Ruff, registres, interface web
2
Préréglages de méthode
5×5 et EBIOS RM 4×4
0
Dépendances d'exécution

Utilisation

  1. 1
    Préparer
    Choisir un préréglage, adapter les échelles et l'appétence avec la direction, puis faire valider la méthode par risk-check.
  2. 2
    Apprécier
    Décrire chaque risque (cause → événement → conséquence) et coter le risque inhérent ; le niveau est lu dans la grille de la méthode.
  3. 3
    Traiter et accepter
    Planifier les mesures avec responsables et échéances, coter le risque résiduel, et faire accepter ce qui reste par l'autorité désignée.
  4. 4
    Revoir
    Revues et acceptations expirent à leur rythme ; risk-check --strict et le rapport signalent ce qui est en retard.

Captures d'écran

Web interface in French: summary cards and residual risk heat map