Recommandations pour l’analyse des menaces

S’applique à cette recommandation de liste de contrôle de sécurité Azure Well-Architected Framework :

SE :02 Établissez une base de référence de sécurité alignée sur les exigences de conformité, les normes du secteur et les recommandations de la plateforme. Mesurez régulièrement votre architecture et vos opérations de charge de travail par rapport à la base de référence pour maintenir ou améliorer votre posture de sécurité au fil du temps.

Guide associé : Recommandations pour sécuriser un cycle de vie de développement

Une analyse complète pour identifier les menaces, les attaques, les vulnérabilités et les contre-mesures est essentielle pendant la phase de conception d’une charge de travail. La modélisation des menaces est un exercice d’ingénierie qui comprend la définition des exigences de sécurité, l’identification et l’atténuation des menaces, et la validation de ces atténuations. Vous pouvez utiliser cette technique à n’importe quel stade du développement ou de la production d’applications, mais elle est plus efficace pendant les phases de conception de nouvelles fonctionnalités.

Ce guide décrit les recommandations relatives à la modélisation des menaces afin de pouvoir identifier rapidement les lacunes de sécurité et concevoir vos défenses de sécurité.

Définitions 

Terme Définition
Cycle de vie du développement logiciel (SDLC) Processus systématique à plusieurs étapes pour le développement de systèmes logiciels.
FOULÉE Taxonomie définie par Microsoft pour catégoriser les types de menaces.
Modélisation des menaces Processus permettant d’identifier les vulnérabilités de sécurité potentielles dans l’application et le système, d’atténuer les risques et de valider les contrôles de sécurité.

Stratégies de conception

La modélisation des menaces est un processus crucial qu’un organization doit intégrer dans son SDLC. La modélisation des menaces n’est pas uniquement une tâche de développeur. Il s’agit d’une responsabilité partagée entre :

  • L’équipe de charge de travail, qui est responsable des aspects techniques du système.
  • Les parties prenantes de l’entreprise, qui comprennent les résultats de l’entreprise et qui ont un intérêt direct dans la sécurité.

Il existe souvent une déconnexion entre la direction de l’organisation et les équipes techniques concernant les besoins liés aux charges de travail critiques. Cette déconnexion peut entraîner des résultats indésirables, en particulier pour les investissements de sécurité.

Lorsque l’équipe de charge de travail effectue un exercice de modélisation des menaces, elle doit tenir compte des exigences métier et techniques. L’équipe de charge de travail et les parties prenantes de l’entreprise doivent se mettre d’accord sur les besoins de sécurité de la charge de travail afin qu’ils puissent effectuer des investissements adéquats dans les contre-mesures.

Les exigences de sécurité servent de guide pour l’ensemble du processus de modélisation des menaces. Pour en faire un exercice efficace, l’équipe de charge de travail doit avoir une mentalité de sécurité et être formée aux outils de modélisation des menaces.

Comprendre l’étendue de l’exercice

Une compréhension claire de l’étendue est essentielle pour une modélisation efficace des menaces. Il permet de concentrer les efforts et les ressources sur les domaines les plus critiques. Cette stratégie implique la définition des limites du système, l’inventaire des biens qui doivent être protégés et la compréhension du niveau d’investissement requis dans les contrôles de sécurité.

Collecter des informations sur chaque composant

Un diagramme d’architecture de charge de travail est un point de départ pour la collecte d’informations, car il fournit une représentation visuelle du système. Le diagramme met en évidence les dimensions techniques du système. Par exemple, il montre les flux utilisateur, la façon dont les données se déplacent dans le réseau, les niveaux de sensibilité des données et les types d’informations, ainsi que les chemins d’accès aux identités.

Cette analyse détaillée peut souvent fournir des informations sur les vulnérabilités potentielles dans la conception. Il est important de comprendre les fonctionnalités de chaque composant et ses dépendances.

Évaluer les menaces potentielles

Analysez chaque composant du point de vue de l’extérieur. Par exemple, dans quelle facilité un attaquant peut-il accéder à des données sensibles ? Si les attaquants accèdent à l’environnement, peuvent-ils se déplacer latéralement et potentiellement accéder ou même manipuler d’autres ressources ? Ces questions vous aident à comprendre comment un attaquant peut exploiter les ressources de charge de travail.

Classifier les menaces à l’aide d’une méthodologie sectorielle

L’une des méthodologies de classification des menaces est STRIDE, que le cycle de vie du développement de la sécurité Microsoft utilise. La classification des menaces vous aide à comprendre la nature de chaque menace et à utiliser les contrôles de sécurité appropriés.

Atténuer les menaces

Documentez toutes les menaces identifiées. Pour chaque menace, définissez les contrôles de sécurité et la réponse à une attaque si ces contrôles échouent. Définissez un processus et un chronologie qui réduisent l’exposition aux vulnérabilités identifiées dans la charge de travail, afin que ces vulnérabilités ne puissent pas être laissées sans réponse.

Utilisez l’approche de violation de l’hypothèse . Il peut aider à identifier les contrôles nécessaires dans la conception pour atténuer les risques en cas d’échec d’un contrôle de sécurité principal. Évaluez la probabilité d’échec du contrôle principal. En cas d’échec, quelle est l’étendue du risque organisationnel potentiel ? En outre, quelle est l’efficacité du contrôle de compensation ? En fonction de l’évaluation, appliquez des mesures de défense en profondeur pour résoudre les défaillances potentielles des contrôles de sécurité.

Voici un exemple :

Poser cette question Pour déterminer les contrôles qui...
Les connexions sont-elles authentifiées via Microsoft Entra ID, TLS (Transport Layer Security) avec l’authentification mutuelle ou un autre protocole de sécurité moderne approuvé par l’équipe de sécurité :

- Entre les utilisateurs et l’application ?

- Entre les composants d’application et les services ?
Empêcher l’accès non autorisé aux composants et données de l’application.
Limitez-vous l’accès aux seuls comptes qui doivent écrire ou modifier des données dans l’application ? Empêchent la falsification ou l’altération non autorisées de données.
L’activité de l’application est-elle journalisée et introduite dans un système SIEM (Security Information and Event Management) par le biais d’Azure Monitor ou d’une solution similaire ? Détectent et examinent les attaques rapidement.
Les données critiques sont-elles protégées par le chiffrement approuvé par l’équipe de sécurité ? Empêchent la copie non autorisée de données au repos.
Le trafic réseau entrant et sortant est-il chiffré via TLS ? Empêchent la copie non autorisée de données en transit.
L’application est-elle protégée contre les attaques par déni de service distribué (DDoS) via des services tels qu’Azure DDoS Protection ? Détectent les attaques conçues pour surcharger l’application afin que celle-ci devienne inutilisable.
L’application stocke-t-elle des informations d’identification ou des clés de connexion pour accéder à d’autres applications, bases de données ou services ? Déterminent si une attaque peut utiliser votre application pour attaquer d’autres systèmes.
Les contrôles d’application vous permettent-ils de vous conformer aux exigences réglementaires ? Protégez les données privées des utilisateurs et évitez les amendes de conformité.

Suivre les résultats de la modélisation des menaces

Nous vous recommandons vivement d’utiliser un outil de modélisation des menaces. Les outils peuvent automatiser le processus d’identification des menaces et produire un rapport complet de toutes les menaces identifiées. Veillez à communiquer les résultats à toutes les équipes intéressées.

Suivez les résultats dans le cadre du backlog de l’équipe de charge de travail pour permettre une reddition de comptes en temps opportun. Attribuez des tâches à des personnes chargées d’atténuer un risque particulier identifié par la modélisation des menaces.

Lorsque vous ajoutez de nouvelles fonctionnalités à la solution, mettez à jour le modèle de menace et intégrez-le au processus de gestion du code. Si vous rencontrez un problème de sécurité, assurez-vous qu’il existe un processus pour trier le problème en fonction de sa gravité. Le processus doit vous aider à déterminer quand et comment corriger le problème (par exemple, dans le prochain cycle de publication ou dans une version plus rapide).

Passez régulièrement en revue les exigences de charge de travail critiques pour l’entreprise

Rencontrez régulièrement des sponsors exécutifs pour définir les exigences. Ces examens offrent l’occasion d’aligner les attentes et de garantir l’allocation des ressources opérationnelles à l’initiative.

Facilitation Azure

Le cycle de vie du développement de la sécurité Microsoft fournit un outil de modélisation des menaces pour faciliter le processus de modélisation des menaces. Cet outil est disponible sans coût supplémentaire. Pour plus d’informations, consultez la page Modélisation des menaces.

Exemple

Cet exemple s’appuie sur l’environnement informatique établi dans la base de référence de sécurité (SE :01). Cette approche fournit une compréhension large du paysage des menaces dans différents scénarios informatiques.

Diagramme montrant un exemple de base de base de sécurité d’un organization avec le paysage des menaces.

  1. Personnages du cycle de vie du développement. De nombreux personnages sont impliqués dans un cycle de vie de développement, notamment les développeurs, les testeurs, les utilisateurs finaux et les administrateurs. Tous ces éléments peuvent être compromis et mettre votre environnement en danger en cas de vulnérabilités ou de menaces créées intentionnellement.

  2. Attaquants potentiels. Les attaquants considèrent un large éventail d’outils disponibles facilement pour être utilisés à tout moment pour explorer vos vulnérabilités et démarrer une attaque.

  3. Contrôles de sécurité. Dans le cadre de l’analyse des menaces, identifiez les services de sécurité Azure à utiliser pour protéger votre solution et l’efficacité de ces solutions.

  4. Collection de journaux. Les journaux des ressources Azure et de certains composants locaux peuvent être envoyés à Azure Log Analytics afin que vous puissiez comprendre le comportement de votre solution développée et essayer de capturer les vulnérabilités initiales.

  5. Solution SIEM (Security Information Event Management). Microsoft Sentinel peut être ajouté même à un stade précoce de la solution afin que vous puissiez créer des requêtes d’analyse pour atténuer les menaces et les vulnérabilités, en anticipant votre environnement de sécurité lorsque vous êtes en production.

  6. Microsoft Defender pour le cloud peut faire des recommandations de sécurité pour améliorer la posture de sécurité.

La communauté Open Web Application Security Project (OWASP) a documenté une approche de modélisation des menaces pour les applications.

Liste de contrôle de sécurité

Reportez-vous à l’ensemble complet de recommandations.