Attack Tree
devsecopsDéfinition
Un Attack Tree (arbre d'attaque) est un modèle formel et hiérarchique représentant les différentes manières dont un attaquant peut atteindre un objectif malveillant contre un système. Introduit par Bruce Schneier en 1999, ce concept est devenu un outil fondamental du threat modeling et de l'analyse de risques cybersécurité. La structure d'un Attack Tree est arborescente : le nœud racine représente l'objectif de l'attaquant (par exemple "voler des données clients"), et les nœuds enfants représentent les sous-objectifs ou méthodes d'attaque nécessaires pour atteindre le parent. Les nœuds sont reliés par des portes logiques AND (toutes les conditions doivent être réunies) ou OR (une des conditions suffit), permettant de modéliser des scénarios d'attaque complexes avec leurs dépendances. Chaque feuille de l'arbre représente une action primitive de l'attaquant. On peut enrichir l'arbre en associant à chaque nœud des attributs quantitatifs : coût d'attaque, probabilité de succès, niveau de compétence requis, détectabilité. Ces métriques permettent d'identifier les chemins d'attaque les plus probables ou les plus dangereux et de prioriser les contre-mesures. Dans un contexte DevSecOps, les Attack Trees servent plusieurs objectifs. Ils guident la conception des tests de pénétration en identifiant les vecteurs d'attaque à couvrir. Ils alimentent les Security User Stories en transformant les feuilles de l'arbre en scénarios de test de sécurité. Ils justifient les investissements en sécurité en comparant le coût des contre-mesures au coût des attaques bloquées. Ils documentent la pensée adversariale de l'équipe sécurité pour partage avec les développeurs. Les Attack Trees s'intègrent naturellement dans les méthodologies PASTA et STRIDE. Des outils comme SecuriTree, AttackTree+, ou des représentations en format libre (Mermaid, draw.io) facilitent leur création collaborative. La difficulté principale réside dans la complétude de l'analyse : un Attack Tree n'est utile que si les chemins d'attaque majeurs sont bien représentés.
Structure et notation des Attack Trees
Un Attack Tree se construit de haut en bas : l'objectif attaquant à la racine, les sous-objectifs ou techniques aux nœuds intermédiaires, les actions atomiques aux feuilles. Les portes AND (conditions cumulatives) et OR (conditions alternatives) modélisent les dépendances. Des attributs quantitatifs (coût, probabilité, détectabilité) enrichissent l'analyse pour prioriser les chemins critiques.
Utilisation en threat modeling DevSecOps
Les Attack Trees s'utilisent lors du design d'une nouvelle fonctionnalité (en complément de STRIDE/PASTA), pour préparer les tests de pénétration (mapping des vecteurs à tester), ou pour documenter les scénarios d'attaque dans les runbooks de réponse aux incidents. Chaque feuille peut générer une Security User Story ou un test automatisé dans le pipeline de sécurité.
Outils et formats pratiques
Des outils spécialisés comme SecuriTree ou ADTool automatisent les calculs quantitatifs sur les arbres. Pour un usage DevSecOps agile, les représentations en Markdown avec Mermaid ou des cartes Miro permettent une collaboration rapide en atelier. L'essentiel est de maintenir les arbres à jour lors des changements architecturaux significatifs plutôt que d'aspirer à une complétude parfaite.
Articles liés
Expert en cybersécurité offensive et intelligence artificielle. Pentest, audit et développement IA sur-mesure.
Services
- Audit Infrastructure
- Audit Kubernetes
- Audit Microsoft 365
- Audit Sécurité Réseau
- Analyse de Risques
- Audit Active Directory
- Audit Application Web
- Audit Cloud (AWS/Azure/GCP)
- Audit Messagerie
- Audit API (OWASP Top 10)
- Audit DevSecOps & CI/CD
- Audit Code Source (SAST)
- Audit Postes de Travail
- Audit Sauvegarde & Résilience
- Audit OT/SCADA (IEC 62443)
- Développement IA
- Formations
Ressources
Projets & Outils
© 2026 Ayi NEDJIMI Consultants. Tous droits réservés.
Un projet cybersécurité ?
Expert dispo · Réponse 24h