• Aucun résultat trouvé

5.3 Évaluation de la résistance aux fautes

5.3.1 Classification des fautes

Dans un cas idéal, l’arbre d’action permet de produire, à l’aide de la base de connaissances du système, une règle de corrélation décrivant ce que le système permet de détecter. Au cours de la détection, les observateurs génèrent les messages attendus et ces derniers permettent de valider la reconnaissance du scénario d’attaque correspondant à la règle de corrélation.

Cependant, des perturbations peuvent altérer le fonctionnement nominal du processus. En particulier, la spécification cohérente de l’arbre d’actions initial, le fonctionnement nominal des observateurs lors de la détection ou encore la synchronisation de la base de connaissances avec le système réel constituent des hypothèses pour un fonctionnement nominal. Les deux premières hy- pothèses font intervenir des éléments externes à notre système de génération, alors que la troisième dépend plus fortement de l’adéquation de la base de connaissances avec le système réel.

A Sources de fautes externes au processus de génération

Le premier type de fautes est lié à une mauvaise spécification d’un arbre d’attaque. Dans ce cas, les règles générées ne permettent pas de détecter les scénarios attendus.

Le second type de faute survient dans le cas où certains observateurs ne produisent pas les messages souhaités lorsque les actions correspondantes à ce qui a été spécifié dans l’arbre d’actions sont effectuées par l’attaquant. La reconnaissance du scénario d’attaque est alors compromise. Si la cause de ce problème est une mauvaise spécification des capacités de détection des observateurs, alors il s’agit d’un problème lié à la base de connaissance, traité dans la sous-section précédente. Il peut s’agir d’une défaillance d’un observateur (ce dernier ne renvoie plus d’alertes par exemple) ou bien d’un attaquant ayant réussi à effectuer une action prévue de manière furtive. La règle de corrélation peut être mise hors de cause dans ces cas. Il faut par conséquent compter sur les capacités du corrélateur à tolérer des messages manquants pour faire progresser la reconnaissance du scénario d’attaque.

B Base de connaissances non représentative de l’environnement

Lorsque l’environnement évolue sans mise à jour de la base de connaissances, celle-ci ne repré- sente alors plus le système courant. La base de connaissances peut représenter un sur-ensemble du système (présence d’éléments obsolètes), un sous-ensemble (certains éléments présents dans le système ne sont pas répertoriés) ou une combinaison de ces deux propriétés.

Il est important de différencier l’impact de chaque faute, sur l’arbre de corrélation d’une part, sur la détection d’autre part. Pour un scénario d’attaque donné, une faute peut ne pas avoir de conséquence sur l’arbre de corrélation. C’est le cas lorsque l’élément impacté dans la base de connaissances n’est pas requis pour la création de l’arbre de corrélation. La structure de l’arbre de corrélation est alors potentiellement modifiée par une faute, mais il est possible que cette modifi- cation n’impacte pas la qualité de la détection. La structure est par exemple impactée lorsqu’une nouvelle branche est ajoutée à un opérateur OR et référence des messages invalides qui ne peuvent pas être générés par des observateurs du système.

Quatre cas élémentaires principaux caractérisent les différences entre les éléments représentés par une base de connaissances B et une base de connaissances B′.

(1) B = B′

(2) B ( B′

(3) B ) B′

(4) B 6⊂ B′∧ B 6⊃ B∧ B 6= B

Le cas (1) représente l’identité entre les deux bases de connaissances (les mêmes éléments du système sont représentés dans le deux bases). Les cas (2) et (3) représentent respectivement une base de connaissances B′qui est un sur-ensemble strict de B (Bcontient des entrées additionnelles

obsolètes) et un sous-ensemble strict de B (Certaines entrées manquent dans B′ par rapport à B).

éléments non présents dans le système. Ce cas peut se modéliser par un retrait de n faits suivi d’un ajout de n nouveaux faits qui ne sont pas déjà présents dans la base de connaissances. Par conséquent, la suite propose uniquement une analyse de deux types de fautes qui sont les entrées additionnelles obsolètes et les entrées manquantes dans la base de connaissances.

B.1 Entrées additionnelles obsolètes La présence dans la base de connaissances d’éléments non présents dans le système réel peut avoir plusieurs conséquences qui sont référencées dans le tableau 5.5. Des faux positifs sont possibles lorsque l’arbre de corrélation référence des messages non pertinents. L’occurrence de ces messages fait avancer la détection et mène à une reconnaissance erronée du scénario d’attaque. Cependant cela ne devrait pas se produire si aucun observateur n’est capable de générer de telles informations. Les faux négatifs liés par exemple à la présence de messages obsolètes ajoutés comme fils d’un opérateur AND ou SAND peuvent bloquer le processus de reconnaissance3

.

Influences sur l’arbre de corrélation influence sur la détection branche supplémentaire faux positifs

feuilles supplémentaires faux positifs ou faux négatifs

Table 5.5 – Influences des entrées additionnelles obsolètes sur l’arbre de corrélation et sur la détection.

La figure 5.2 présente un exemple de conséquence d’une entrée additionnelle obsolète correspon- dant à un ancien NIDS retiré du système mais toujours présent dans la base de connaissances. La conséquence sur l’arbre de corrélation est la présence des feuilles N0_1 et N0_2 qui correspondent à la spécification des messages potentiellement générés par cet observateur pour la première action du scénario d’attaque.

Figure 5.2 – Influence d’un élément additionnel obsolète sur un arbre de corrélation. L’arbre d’actions correspondant est constitué d’une séquence de trois actions dont la première est visible à la fois par un NIDS N1 et par un HIDS L1. L’opérateur SAND présent initialement dans l’arbre d’action est représenté en traits pleins alors que les opérateurs OR introduits lors de la création de l’arbre de corrélation sont en pointillés.

B.2 Entrées manquantes L’absence de certains éléments présents dans le système mène à la génération de règles de corrélation incomplètes ou erronées. Le tableau 5.6 résume les effets possibles d’un tel manque sur l’arbre de corrélation et sur la détection.

3. Ce blocage dépend du mode de fonctionnement du corrélateur, en particulier si ce dernier a une tolérance lui permettant de continuer la reconnaissance d’un plan dans le cas où un message est manquant, mais le suivant est présent.

5.3. ÉVALUATION DE LA RÉSISTANCE AUX FAUTES 109

Influences sur l’arbre de corrélation influence sur la détection branche manquante faux négatifs

feuilles manquantes faux positifs ou faux négatifs

Table5.6 – Influences des entrées manquantes sur l’arbre de corrélation et sur la détection.

Les faux négatifs sont liés à l’absence de certaines parties de l’arbre de corrélation par rapport à l’arbre de référence, comme dans l’exemple de la figure 5.3 pour laquelle une attaque sur le nœud manquant ne peut pas être détectée en utilisant l’arbre de corrélation. Les faux positifs sont liés à la réduction des règles de corrélation et à la suppression potentielle de certains messages indispensables pour différencier l’attaque d’un comportement normal. Ce cas intervient par exemple dans la séquence de trois actions suivantes : la connexion à une machine avec des droits non privilégiés ; l’exploitation d’une vulnérabilité permettant d’obtenir les privilèges administrateurs et la création d’un nouvel utilisateur privilégié. Lorsque le HIDS capable de détecter l’élévation de privilège n’est pas renseigné dans la base de connaissances, l’arbre de corrélation généré se réduit à une séquence de deux actions dont l’enchaînement est potentiellement légitime (connexion et création d’un nouveau compte administrateur), ce qui provoque des faux positifs dans le cas où cet enchaînement légitime survient.

Par exemple, la figure 5.3 illustre les conséquences sur l’arbre de corrélation de la suppression d’un nœud de la base de connaissances (nœud manquant). Une branche entière manque à l’arbre de corrélation résultant par rapport à l’arbre de corrélation de référence.

Figure5.3 – Influence d’un élément manquant.

Les trois dimensions (mauvaise spécification, dysfonctionnement des observateurs, base de connaissances non représentative du système) pouvant altérer le processus de reconnaissance de scénarios d’attaque sont liées à des causes différentes. Une mauvaise spécification de l’arbre d’action initial ou un dysfonctionnement d’un observateur au moment de la détection sont des facteurs externes au processus de génération et difficilement contrôlable. Par conséquent, ils ne sont pas considérés dans l’évaluation. Par contre, l’adéquation du contenu de la base de connaissances avec le système réel est une composante essentielle de ce processus. Il est donc naturel de mettre l’accent sur l’évaluation des conséquences de l’utilisation d’une base de connaissances qui est désynchronisée de l’environnement réel, c’est-à-dire qui ne le modélise pas correctement.

5.3.2 Mise en œuvre d’un processus d’évaluation de l’influence des fautes