• Aucun résultat trouvé

Un réseau de neurones simple avec fenêtre qui prévoie la commande suivante en fonction

exprime la probabilité de voir un événement apparaître à la suite d’une séquence d’autres événements. Par exemple, une fois les événements a, b, et c apparus séquentiellement, l’événement d a une proba-bilité de 95% d’apparaître, et e apparaîtrait avec une probaproba-bilité de 5%. Ce sont tous les deux normaux et acceptables. Les règles aident à savoir à l’avance la probabilité d’être sous l’attaque en donnant un ensemble de modèles observés [173]. Des événements seront marqués comme intrusifs quand ils cor-respondent au côté gauche d’une règle mais divergent sur les probabilités qui apparaissent dans le côté droit. On réclame que si un intrus essaye de guider la phase de construire des règles pour accepter l’ac-tivité irrégulière en tant que normale, la signification même des règles peut aider à déterminer quelque chose d’anormalité a été capturé [173] (c.-à-d., les règles sont facilement lues et interprétées par les ad-ministrateurs). Cette méthode à base d’anomalies a une faiblesse importante : aucune attaque inconnue ne correspond à aucun côté gauche d’une règle ne sera pas considéré pour davantage d’inspection.

Réseaux de neurones. Les réseaux de neurones sont l’une des méthodes qui utilisent la classifica-tion supervisée pour développer un classifieur qui prévoie des valeurs de sortie basées sur un ensemble d’attributs d’entrée.

Dans le cas de la détection d’intrusion, un réseau de neurones peut être employé pour prévoir le prochain événement à apparaître. Par exemple, l’historique des commandes d’un utilisateur peut être employé pour former un réseau de neurones. Une fois que l’apprentissage est réalisée, une fenêtre des k commandes glissera en fonction du temps afin de surveiller l’activité de l’utilisateur. Si on observe que le réseau de neurones indique qu’après k événements, l’événement ejdevrait suivre mais que l’on observe un événement différent, alors une alerte est activée. La figure 3.6 montre un petit réseau qui prévoit la prochaine commande à partir des trois commandes passées. Les séquences de commande doivent être divisées en fenêtres glissantes. Dans ce cas, la fenêtre glissera d’une commande à la fois et emploiera trois commandes en entrée afin de déterminer laquelle des valeurs de sortie doit apparaître. Le temps d’apprentissage est la restriction principale de l’approche des réseaux de neurones pour le problème de la détection d’intrusion. Cependant, ces modèles traitent très bien les données bruitées [156].

Approche immunologique Forrest [64] a proposé une approche immunologique pour modéliser les processus sur une machine. Sa méthode consiste à décrire le comportement normal via une séquence finie d’appels systèmes. Les séquences appelées N-gram servent de base pour comparer les appels systèmes des processus lors d’une phase de surveillance. Cette comparaison énumère les différences entre les paires dans une fenêtre de taille k (tide) [64] ou utilise des règles de r bits contiguës (stide) [83]. Wespi, Dacier et Debar [185] considèrent un cas plus général en analysant les événements d’audit. Ils génèrent

des séquences d’événements de taille variable pour modéliser l’état normal du système. Ensuite un motif est sélectionné s’il existe d motifs qui le suivent directement, sinon le score d’anomalie est incrémenté de 1 et une alerte est déclenchée lorsque le score dépasse le seuil toléré.

Marceau [128] optimise la représentation des N-gram sous forme de graphes orientés sans circuits (DAG) ce qui permet de réduire la base de profils définie par Forrest. De plus, il utilise le mécanisme de fenêtre glissante pour comparer les motifs. Kosoresow [108] étudie les caractéristiques des traces des appels systèmes et remarque que les différences entre motifs apparaissent dans des régions de tailles fixes. En divisant la trace en 3 parties : début, corps et fin, il réussit à générer de nouvelles séquences de motifs représentées par des machines à états finis. La méthode permet de réduire le nombre de séquences. Par exemple, 26 descriptions du processus sendmail suffisent au lieu de 147. Cependant l’auteur propose une construction manuelle de l’automate pour traduire ces motifs.

Warrender et Forest comparent dans [184] quatre approches immunologiques : la séquence simple d’événements (stide), la séquence d’événements des fréquences d’apparition (t-stide), la génération au-tomatique des règles inductives via RIPPER et le modèle de Markov caché (HMM). Ils concluent qu’en moyenne la modélisation HMM présente des meilleurs performances. Mais il ne s’agit pas d’une supé-riorité absolue puisque les résultats des expériences dépendent des programmes testés.

3.5.1.3 Occurence des événements multiples

Règles d’association Lee et Xiang [120] utilisent la théorie d’information pour comprendre la nature des données auditées et par suite construire des modèles de détection d’intrusions comportementale. Les techniques de fouilles de données (Data Mining) permettent également de construire des modèles de dé-tection adaptatifs. Les algorithmes utilisées par Lee [117, 114] divisent les données en deux catégories : des données normales et des données anormales. Cette classification permet de construire des règles d’as-sociation qui expriment des relations entre les enregistrements des fichiers de sécurité. Par exemple, pour un utilisateur particulier, l’éditeur Xemacs est le plus souvent associé à des fichiers ".c". Lee souligne que l’extraction des événements fréquents permet de mieux analyser les traces d’événements. De plus une méta-classification des analyses de plusieurs IDS garantit une meilleure détection avec moins de faux positifs. Ces différentes techniques sont implantées dans le système de détection d’intrusions JAM [170]. De plus l’analyse de données porte sur des traces normales pour assurer une détection comportementale ou bien sur des traces d’intrusions. Elle contribue donc à construire des règles de détection d’attaques utilisables lors d’une détection d’intrusions par abus.

ADAM est un autre système de détection d’intrusions qui utilise les règles d’association. Il est basé sur les travaux de Barbara [15, 16] et effectue deux étapes d’apprentissage. La première étape utilise des données hors ligne pour construire des règles d’association modélisant les profils normaux. La deuxième étape considère des données en ligne et emploie les règles d’association déjà construites pour créer un classificateur d’événements suspects. L’objectif de cette phase est de rendre le système de détection d’intrusions plus apte à distinguer les vraies attaques des faux positifs.

3.5.2 Approche par abus

La détection d’intrusion par abus se rapporte à la détection des intrusions en les définissant avec pré-cision sous forme des signatures et l’observation de leur occurence. Les signatures d’intrusion indiquent les dispositifs, les conditions, les arrangements et les corrélations parmi les événements qui mènent à une pénétration ou à un autre abus. En général, les méthodes de détection d’intrusions par abus les plus courantes utilisent des techniques qui manipulent des séquences d’événements, en créant des règles ou des signatures qui décrivent l’ordre des actions qu’un attaquant exécute pour attaquer un système. Dans les sections suivantes nous décrivons quelques approches utilisées dans la détection par abus.

3.5. Les techniques de détection

3.5.2.1 Utilisation de la probabilité conditionnelle pour prévoir des intrusions d’abus

Cette méthode de prédiction des intrusions est similaire à celle décrite dans 3.5.1.1 à l’exception que l’"évidence" est maintenant une séquence des événements externes plûtot que des valeurs de mesures d’anomalie. Pour la détection par abus, nous sommes intéressés par la détermination de la probabilité conditionnelle

P(Intrusion | EventPattern)

Comme précédemment, en appliquant la formule de Bayes à cette équation, nous obtenons

P(Intrusion | EventPattern) = P(EventPattern | Intrusion)P(EventPattern)P(Intrusion) (3.9) Considérons par exemple le réseau d’un campus universitaire comme domaine dans lequel on va prédire la probabilité conditionnelle d’intrusion. Un expert de sécurité responsable de ce campus pourrait quantifier la probabilité à priori d’occurence d’une intrusion dans le système du campus, P(Intrusion), se basant sur son expérience. D’autre part, la fréquence relative d’occurence d’une séquence d’évenements dans l’ensemble des données d’intrusion donne la probabilité P(Eventsequence | Intrusion). De même, nous pouvons calculer la probabilité P(Eventsequence | ¬Intrusion) à partir d’un ensemble de données normales.

3.5.2.2 Analyse de transition d’état.

L’analyse de transition d’état a été développée par le Reliable Software Group à l’université de Ca-lifornie [85]. Cette méthode est employée pour représenter un ordre des actions qu’un attaquant exécute pour attaquer un système. Ces couples actions-conditions sont représentées par un diagramme de transi-tions d’état. Il est basé sur le fait que toutes les intrusions ont deux caractéristiques communes : un atta-quant obtient l’accès à un système cible d’une ou une autre manière, et il gagne par l’intrusion quelques capacités qu’il n’avait pas avant.

Dans cette approche qui est utilisée par STAT [148] et implémentée pour Unix dans USTAT [85], les attaques sont représentées comme une séquence des transitions d’état d’un système surveillé. Les états dans le modèle d’attaque correspondent aux états de système et ont des affirmations booléennes liées entre elles et qui doivent être satisfaites pour passer d’un état à un autre. Les états successifs sont liés par des arcs qui représentent les événements nécessaires pour changer l’état.

3.5.2.3 Systèmes à base de règles.

Les systèmes experts ont été également employés dans la détection des intrusion par abus [87, 111, 159]. Ces systèmes incarnent la connaissance d’un expert afin d’identifier les données anormales et les actions irrégulières. Ils appartiennent à la famille de détection à base de scénariis car ils indiquent expli-citement les motifs à rechercher [109]. Le succès de ces méthodes est directement lié à deux facteurs : (1) l’expertise de l’administrateur de sécurité qui sera employé comme entrée au mécanisme de détec-tion, et (2) l’efficacité de l’implémentation pour structurer avec cohérence l’expertise de l’humain dans un logiciel. Dans de tels systèmes, comme dans n’importe quel autre système expert, la connaissance déclarative liée aux intrusions est separée du moteur d’inférence exécutant un raisonnement au sujet de la base de fait. En d’autres termes, il signifie que, en général, trois composants principaux peuvent être distingués :

– la base des faits qui contient les évenements sur les états de système.