La modélisation des menaces est une méthode permettant d'identifier à l'avance les vulnérabilités possibles dans l'architecture d'une application. Il s'agit de schématiser une application, d'identifier les failles de sécurité et de les atténuer.
Cet article s'articule autour des points suivants :
Contenu associé
Test de pénétration
Qu’est-ce que le top 10 de l’OWASP ?
Traque des menaces
Informations sur les menaces
Qu'est-ce que la sécurité des applications web ?
Abonnez-vous à theNET, le récapitulatif mensuel de Cloudflare des idées les plus populaires concernant Internet !
Copier le lien de l'article
La modélisation des menaces est un exercice qui permet de trouver des failles de sécurité dans une application et son environnement. Il s'agit de créer une représentation d'une application avec tous ses composants, puis d' en identifier les points faibles. Idéalement, les développeurs et les ingénieurs en sécurité utilisent la modélisation des menaces tout au long du processus de développement des logiciels ; pas seulement après la mise en service d'une application, mais en commençant avant. Avec la modélisation des menaces, une application a des chances d'être beaucoup plus sûre qu'elle ne l'aurait été autrement, elle ne sera toutefois pas inviolable pour autant.
Dans les films de braquage, les personnages principaux étudient souvent les plans de l'installation qu'ils prévoient de cambrioler, afin d'en déceler les points faibles ; les issues par lesquelles il est plus facile de pénétrer dans le bâtiment, les angles morts des caméras de sécurité ne peuvent pas voir, etc. Dans le même esprit, la modélisation des menaces consiste à étudier les « plans » de l'application. À la différence près que la modélisation des menaces est effectuée par des personnes qui souhaitent sécuriser l'application, et non par les voleurs potentiels.
La modélisation des menaces exige des équipes qu'elles créent une vue complète de l'application.Il s'agit ensuite de se mettre dans l'état d'esprit d'une personne qui voudrait compromettre l'application.Comment agirait un attaquant ?Profiterait-il des faiblesses de la sécurité de l'API? Aurait-il recours à une attaque sur la chaîne d'approvisionnement pour infecter la bibliothèque système intégrée ?Si les attaques ne peuvent pas toutes être anticipées, la modélisation des menaces permet d'en bloquer certaines avant qu'elles ne se produisent.
Il existe de nombreuses méthodes applicables pour la modélisation des menaces, et aucune de ces méthodes ne convient à toutes les situations. Cependant, en règle générale, les quatre étapes principales sont les suivantes :
Les modélisateurs de menaces tentent d'identifier et de décrire :
Si Terry écrit une application simple qui affiche des images de ballons, son diagramme de l'application pourrait ressembler à ce qui suit :
Il s'agit évidemment d'un exemple très simplifié, et le diagramme d'application de la modélisation pourrait être beaucoup plus complexe pour une menace réelle.
Avec ce type de représentation des applications, il peut être plus facile d'identifier les failles. Terry, remarquera par exemple que les communications entre sa base de données de photos de ballons et son serveur web se font sans Transport Layer Security (TLS). Cela signifie qu'aucun des deux serveurs ne vérifie l'identité de l'autre à l'aide de signatures numériques, il est donc possible pour un acteur malveillant d'usurper l'identité du serveur de base de données et d'envoyer un contenu malveillant au serveur web.
La modélisation des menaces s'effectuant tout au long du processus de développement, il peut être nécessaire pour atténuer ces failles de modifier le plan de l'architecture d'une application, ou de déployer un correctif dans une application en cours de développement.
Pour atténuer la menace qu'il a identifiée, Terry peut reconfigurer son serveur de base de données et son serveur web de façon que leur connexion s'appuie sur TLS ou mieux encore mutual TLS (mTLS) afin qu'ils se vérifient l'un l'autre.
À ce stade, Terry peut exécuter l'application dans un environnement de test et observer si 1) les serveurs utilisent TLS conformément à la configuration et si 2) le serveur web accepte le trafic HTTP provenant d'un serveur non vérifié au lieu du serveur de base de données. Il effectuera des contrôles similaires pour toutes les autres mesures d'atténuation qu'il a appliquées.
Une méthodologie de modélisation des menaces est une technique permettant d'identifier les menaces. Les méthodologies permettent de structurer le processus de modélisation des menaces, auquel il serait autrement impossible de faire face dans un système complexe. Les organisations ont le choix parmi un large éventail de méthodologies de modélisation des menaces, mais elles peuvent également développer leurs propres méthodologies. Parmi les méthodologies les plus courantes, on peut citer :
Il existe également plusieurs autres méthodes de modélisation des menaces. Certaines, telles que « Trike » et différentes méthodologies hybrides, ne sont désignées par aucun acronyme.
La modélisation des menaces doit être réalisée avant et pendant le développement du logiciel, tout au long du cycle de vie de l'application. Si une application est publiée sans modélisation ou atténuation des menaces, ce sont les utilisateurs (ou les attaquants) qui risquent de découvrir les failles de sécurité avant les équipes de sécurité. Cela peut entraîner une violation des données et augmente le risque de menaces de type "zero-day".
Cependant, la modélisation des menaces ne permettant pas de découvrir tous les risques au sein d'un système, les développeurs et les organisations doivent poursuivre ce processus même après le lancement. Parallèlement à la modélisation des menaces, il y a toujours la possibilité de :
Cloudflare propose également un service d'informations et d'opérations sur les menaces, Cloudforce One, dont l'objectif est de protéger les clients contre les dernières menaces. Cloudforce One est dirigé par une équipe de recherche sur les menaces constituée de spécialistes très expérimentés dans le blocage des attaquants à l'échelle mondiale. Pour en savoir plus sur Cloudforce One, cliquez ici.
Prise en main
À propos de la sécurité des applications Web
Menaces courantes
Ressources VPN
Glossaire de sécurité