Aller au contenu principal
Expert Cybersécurité & IAv9.0
Centres de ressources conformité
Besoin d'un accompagnement expert ?
Devis personnalisé sous 24h — audit, conformité, incident
Checklists Sécurité — Audit & Durcissement
Formats disponibles
📄 PDF 📊 Excel 🌐 Web

11 checklists professionnelles couvrant 2 200+ points de contrôle. Téléchargement gratuit, aucune inscription.

Attack Tree

devsecops

Dé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

Un projet cybersécurité ?

Expert dispo · Réponse 24h

Devis