Modélisation de menaces en une heure
Une séance de soixante minutes, déclenchée par un changement de frontière de confiance, qui produit trois à cinq tickets et une liste de risques acceptés, et les raisons pour lesquelles les versions plus ambitieuses ne survivent pas à deux sprints.
Par Elias Varen7 min de lectureMembres
La modélisation de menaces meurt presque toujours de la même façon. Une équipe y consacre deux jours, produit un diagramme complet du système et un tableau de quatre-vingts menaces classées par criticité. Six mois plus tard, l'architecture a changé et personne n'a rouvert le document.
Ce qui a tué l'exercice, c'est son périmètre. Un modèle du système entier est faux le lendemain et ne produit aucune décision. Je fais l'inverse : je modélise un changement plutôt qu'un système, en une heure au lieu de deux jours, avec une sortie qui se mesure en tickets. Une séance qui ne modifie pas le backlog n'a pas eu lieu.
Le déclencheur : une frontière de confiance qui bouge
Une frontière de confiance est l'endroit où une donnée passe d'une entité à une autre qui n'a pas les mêmes droits ou les mêmes intérêts : du navigateur au serveur, d'un tenant à un autre, de votre application à un prestataire, d'un utilisateur anonyme à un utilisateur authentifié. Les failles vivent sur ces frontières, parce qu'une hypothèse faite d'un côté y cesse d'être vraie de l'autre.
La séance se déclenche quand un changement en crée une, en déplace une ou en fait traverser une à un nouveau type de donnée :
- un nouveau point d'entrée (route publique, webhook entrant, import de fichier) ;
- une nouvelle intégration (prestataire, API tierce, agent qui appelle des outils) ;
- un nouveau type de donnée sensible, ou une donnée existante envoyée vers une nouvelle destination ;
- un changement du modèle d'autorisation (nouveau rôle, partage, délégation) ;
- un nouveau composant qui exécute ou interprète du contenu venu d'ailleurs.
Le critère se pose pendant le cadrage. Une modélisation faite sur du code terminé ne peut plus recommander que des rustines, et chacune sera négociée contre la date de livraison.
À lire ensuite
Toute la rubrique SécuritéOrganisation
Cycles de six semaines et appétit fixe : les prérequis rarement réunis
Ce que la méthode à cycles de six semaines suppose sans le dire (cadrage senior, équipes complètes, droit d'abandonner, absence d'interruptions) et comment décider ce que vous pouvez en adopter.
7 minMembres
Sécurité
Tokens d'API : concevoir pour la fuite
Un token d'API finira dans un repo, des logs ou une capture d'écran. Le format, le stockage, les portées et la rotation qui font de cette fuite un ticket de support plutôt qu'un incident.
7 minMembres
Sécurité
BOLA : le bug numéro un et son test
Pourquoi l'autorisation au niveau de l'objet échappe aux revues et aux scanners, et comment une matrice de tests à deux tenants, branchée sur le routeur, la rend impossible à oublier.
7 minLecture libre