Sujet 2 : Base de données des risques de sécurité IoT (D2)
Hypothèses
Une entreprise spécialisée en cybersécurité souhaite mettre en place une base de données relationnelle pour gérer les risques de sécurité associés aux composants IoT, en intégrant les vulnérabilités CVE (pour Common Vulnerability Enumeration), les faiblesses CWE (pour Common Weakness Enumeration), les événements de menace CAPEC (pour Common Attack Pattern Enumeration and Classification). Elle souhaite démontrer également des modèles de scénarios d'attaque, associant les CAPEC aux CWE pour illustrer les chaînes d'exploitation possibles, ainsi que des implémentations réelles reliant les CAPEC aux CVE pour démontrer concrètement l'exploitation des vulnérabilités.
Chaque dispositif (considéré un composant IoT) IoT possède un identifiant unique, un nom, un fabricant, ainsi que des spécifications techniques : la mémoire RAM, la puissance CPU, et la consommation énergétique. Les dispositifs IoT peuvent être classifiés selon leurs contraintes de ressources (mémoire, puissance de traitement, consommation énergétique) très contraints, moyennement contraints ou non contraint :
Très contraints : RAM (<= 128 KB) ; la puissance CPU (<= 16 MHz) ; consommation énergétique (< 0.1 Watt)
Moyennement contraints : RAM (128 KB-512 KB); la puissance CPU (16-100 MHz); consommation énergétique (0.01-0.5 Watt)
Non contraints : RAM (> 512 KB); la puissance CPU (> 100 MHz); consommation énergétique (> 0.5 Watt)
Chaque dispositif IoT implémente un ou plusieurs protocoles de communication (considéré un composant IoT). Chaque protocole a un identifiant, un nom, une version, un type de chiffrement utilisé, un débit (pour datarate), une fréquence, une bande passante (pour bandwidth). L’identifiant et la version du protocole sont uniques ensembles. Un protocole peut être classé simplement en deux catégories selon la portée : courte portée (distance ≤ 100 m) ou longue portée (> 100 m).
Il y a trois types de menaces : les vulnérabilités (CVE), les faiblesses (CWE), et les événements de menace (CAPEC).
Les composants IoT peuvent être affectés par une ou plusieurs CVE. Chaque CVE a un identifiant unique (e.g., CVE-2025-88588), une description, une date de publication, un niveau de sévérité (Faible, Moyen, Élevé), un score CVSS (pour Common Vulnerability Scoring System, 0< CVSS <10), un statut de mitigation (Non disponible, En cours d'investigation, Atténuation disponible, Correctif publié) et une référence externe. Une CVE peut être associée à plusieurs composants IoT. Chaque CVE est associée à une faiblesse de sécurité CWE qui représente le type de CVE.
Chaque CWE possède un identifiant unique (e.g., CWE-20), un nom, une description, et est associée à d'autres CWE par des relations telles que PeerOf, MemberOf, ParentOf CanFollow, CanPreceede, ChildOf, et CanAlsoBe. De plus, chaque CWE peut associer aux plusieurs plateformes applicables (e.g., Non associée à un langage de programmation spécifique, Non spécifique à un système d'exploitation, associée au langage de programmation C++, etc.). Chaque plateforme applicable a un identifiant unique et une description.
Les scénarios d'attaque sont décrits par des événements de menace CAPEC possible exploitant une vulnérabilité. Chaque CAPEC possède un identifiant unique (e.g., CAPEC-94), un nom, une description, un niveau de compétence requis pour l'attaquant (Débutant, Intermédiaire, Avancé), et les ressources nécessaires (Faible, Moyen, Élevé) pour effectuer l'attaque. Un CAPEC peut être associé à plusieurs CWE et plusieurs CVE.
Chaque combinaison CAPEC-CWE forme un modèle de scénario d'attaque, possédant un identifiant unique et une description du scénario. Chaque modèle de scénario d'attaque peut avoir plusieurs implémentations réelles, chacune associée à une combinaison CAPEC-CVE. Chaque implémentation réelle a un identifiant unique, une description, une probabilité de réalisation (Faible, Moyen, Élevé), une sévérité typique (Faible, Moyen, Élevé) et un statut indiquant la disponibilité d'un exploit. De plus, chaque scenario d’attaque réelle est associé à au moins un et jusqu’à six domaines d’attaque (Logiciel, Matériel, Communications, Chaîne d'alimentation, Ingénierie sociale, Sécurité physique). En outre, chaque scenario d’attaque réelle peut être associé à des mécanismes de mitigation potentiels, chaque mécanisme ayant un identifiant unique de mitigation et une description.
Besoins
Développer une base de données relationnelle claire et complète pour gérer les risques de sécurité associées aux composants IoT. En complément, l'entreprise demande les requêtes suivantes :
Quels sont les composants IoT ayant le plus grand nombre de CVE non mitigées ?
Quel est le protocole courte portée IoT qui est associé au plus grand nombre de modèles de scénarios d'attaque ?
Quels sont les trois événements de menace (CAPEC) les plus fréquents dans les implémentations de scénarios réels associés à des vulnérabilités critiques (CVSS > 8) ?