Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
Détection de nouvelles attaques
Yacine Bouzida, Frédéric Cuppens, Sylvain Gombault
2
Contexte
Problèmes Réseau : principal vecteur des attaques Nouvelles formes d’attaque (+ 1000 /an)
Variante d’une attaque existante Nouvelle nouvelle
Incapacité des méthodes existantes à déceler cesnouvelles attaques
Objectifs Détection de nouvelles attaques réseaux Proposition de méthodes innovantes pour détecter ces
nouvelles attaques
DADDI (détection sûre de fonctionnement de nouvellesformes d’attaque) - ACI Sécurité 2004
3
Plan
Limites des techniques actuelles
Méthode adaptée Approche comportementale à apprentissage supervisé
Fonction de transformation de trafic
Expérimentation KDD99 (DARPA98) Trafic réel
Conclusion et Perspectives
4
Base designatures
activités
intrusion
Détection d’intrusion : approche par signature
Analyse des événements systèmes ou réseau pourdétecter les attaques (action litigieuses) décrites dans labase de signatures
Une signature décrit une attaque ou une action litigieuse Exemple d’une signature snort alert tcp any any -> 192.168.1.0/24 143 (content: “|9068
C0FFFFFF|/bin/sh“; msg: “IMAP buffer overflow“; )
Inconvénients dus à l’imprécision des signatures Faux positifs ou faux négatifs
Par principe, ne peut détecter une nouvelle attaque
5
mesuresd’activités
0102030405060708090
CPU ProcessSize
profil normalanormal
intrusionprobable
Approche comportementale
Détection d’une déviation d’un comportement (utilisateur,application, trafic réseau, …) par rapport à son profil deréférence
2 étapes (apprentissage, détection) Inconvénients
Faux positifs lorsque qu’une une évolution du profil del’utilisateur est vue comme une anomalie
Néanmoins la seule approche susceptible de détecter denouvelles attaques
6
Approche comportementale à apprentissage supervisé
Deux étapes Phase d’apprentissage à partir de données étiquetées Phase de détection : données à classifier (analyser)
Plusieurs techniques de classifications existantes Réseaux neuronaux Réseaux bayésiens Arbres de décision …
Difficulté dans le choix d’attributs pertinents Attributs observables Connaissance a priori des attributs caractérisant
l’utilisateur (application, trafic, etc.)
7
outlook
overcast
humidity windy
high normal falsetrue
sunny rain
N NP P
P
Arbres de décision
Outlook Temperature Humidity Windy Classsunny hot high false Nsunny hot high true Novercast hot high false Prain mild high false Prain cool normal false Prain cool normal true Novercast cool normal true Psunny mild high false Nsunny cool normal false Prain mild normal false Psunny mild normal true Povercast mild high true Povercast hot normal false Prain mild high true N
Génération de règlesUne règle est générée pour chaquechemin parcourant l’arbre de la racineaux feuillesexempleSi outlook=rain et windy=false alors P
Apprentissage: Choix du meilleurattribut dans le nœud racine puisanalyse récursive et construction del’arbre
8
Prise en compte des nouvelles attaques avec del’apprentissage supervisé Apprentissage
Du comportement normal (référence) du profil en question Des anomalies connues a priori
Classification d’un nouveau profil audité Normal, ou Anormal si l’anomalie correspondante est connue, ou Nouveau, considéré momentanément comme nouvelle
attaque. Diagnostic nécessaire
Réalisation a priori possible avec les outils de classificationcomme les arbres de décision
Possibilité de classifier plus de 2 classes Proposition pour les nouvelles attaques
Choix des attributs ?
9
Fonction de transformation
Données considérées: Trafic réseau
Pour alimenter l’outil de classification à partir du trafic brut: Fonction de transformation T
R : ensemble du trafic brut I : ensemble d’items structurés
10
Propriétés à satisfaire
Condition nécessaire de transformation La fonction de transformation T doit être riche
Sans perte d’information utile pour distinguer entre lesdifférentes connexions
Fonction pauvre♣ ∃ items xi ∈ I ayant des classes différentes mais les valeurs
de leurs attributs respectifs sont identiques.♣ D’une manière formelle
Réduction du nombre d’incohérences pour effectuerun apprentissage précis
11
Exemple de transformation
DARPA98 (trafic brut) -> Base d’apprentissage et de testKDD99
Transformation du trafic tcpdump en 41 attributs Logiciel non disponible
4 catégories d’attributs : Données générales de la connexion (niveau réseau et
transport) Attributs liés à la couche application Attributs statistiques sur les 2 dernières secondes Attributs statistiques sur les 100 dernières connexion
12
t Source Destination Protocole Service Port
0.5 201.215.21.1 192.168.0.1 tcp http 80
1.0 201.215.21.1 192.168.0.2 tcp ftp 21
1.5 193.252.19.3 192.168.0.1 tcp http 80
1.8 193.252.19.3 192.168.0.1 udp ssh 22
Exemple d’attribut de 4e catégorie
Calcul de l’attribut diff_srv_rate Hôte courant : 192.168.0.1 Nombre de services différents : 2 Nombre d’entrée: 3 soit diff_srv_rate=0.67
13
Base d’apprentissage KDD99
Enregistrement : 41 attributs + nom de classe pour apprendre Fichiers au format texte
Base d’apprentissage ~5 millions de connexions (10% (494000) utilisées) 4 classes d’attaques + trafic normal
Probing (4) : scan de port (nmap, satan …) DoS (6) : déni de Service (syn flooding, smurf …) U2R (4) : acquisition des privilèges d’un super utilisateur R2L (9) : accès illégitime à partir d’une machine distante
(password guessing) Normal : trafic légitime
14
Base de tests KDD99
Enregistrement : 41 attributs + nom de classe pour vérifier
Base de test ~ 311000 connexions 4 classes d’attaques enrichies + trafic normal
Probing (4+2) : scan de port (mscan, saint) DoS (6+4) : déni de Service (apache2, …) U2R (4+4) : acquisition des privilèges d’un super
utilisateur (sqlattack…) R2L (9+7) : accès illégitime à partir d’une machine
distante (snmpguess, snmpgetattack…) Normal : trafic légitime
15
Résultats avec c4.5
PSP=92.30% CPT=0.2342
2.85%0.70%0.00%14.85%81.60%R2L(16189)
5.26%7.02%0.44%4.39%82.89%U2R(228)
0.18%0.00%97.14%0.06%2.62%DoS(229853)
6.58%0.00%2.45%72.73%18.24%Probing(4166)
0.00%0.01%0.12%0.40%99.47%Normal (60593)
R2LU2RDoSProbingNormal PréditeEffective
Arbre de décision (c4.5)
CPT = Coût par testPSP = Nbre de connexions correctement classifiées/Nbre total
02224R2L
20223U2R
22012DoS
22201Probing
22210Normal
R2LU2RDoSProbingNormal
16
Analyse des premiers résultats
Faiblesse de la détection des nouvelles attaquesdes classes U2R (7,02%) et R2L (2,85%)
Attaques classifiée dans la classe Normal à 82,89%et à 81,60%
Comment c4.5 gère-t-il les nouvelles attaques ? Utilisation d’une classe par défaut par les arbres
de décision Celle qui contient le plus grand nombre d’instances
non couvertes par les règles générées Si conflit, alors la classe la plus fréquente est choisie
17
Ajout d’une classe d’attaque « New »
Proposition et amélioration Classifier les nouvelles attaques dans la classe
«New»
Satisfaction de la proposition pour l’améliorationde l’approche comportementale
La nouvelle classe correspond à la classe desnouveaux comportements
18
PSP=92.30% CPT=0.2342
2.85%0.70%0.00%14.85%81.60%R2L(16189)
5.26%7.02%0.44%4.39%82.89%U2R(228)
0.18%0.00%97.14%0.06%2.62%DoS(229853)
6.58%0.00%2.45%72.73%18.24%Probing(4166)
0.00%0.01%0.12%0.40%99.47%Normal (60593)
R2LU2RDoSProbingNormal PréditeEffective
2.85%
5.26%
0.18%
6.58%
0.00%
R2L
2.20%0.70%0.00%14.85%79.41%R2L(16189)
PSP=(92.30+0.57)%, CPT=0.2228
60.96%7.02%0.44%4.39%21.93%U2R(228)
0.36%0.00%97.14%0.06%2.26%DoS(229853)
10.06%0.00%2.45%72.73%8.19%Probing(4166)
0.04%0.01%0.12%0.40%99.43%Normal (60593)
NewU2RDoSProbingNormal PréditeEffective
Résultats avec c4.5 modifié
Arbre de décision C4.5 standard
Arbre de décision C4.5 modifié (proposition précédente)
19
Analyse des nouveaux résultats
Remarque: PSP=92.87% (loin de 100%)
Détection de U2R et R2L améliorée ? U2R
7.02% ⇒ 7.02% + 60.96% (new) = 67.98%
Meilleur taux de détection sur la base KDD jusqu’àprésent
R2L 79.41% connexions toujours prédites comme du
trafic normal Besoin de continuer à investiguer
20
Analyse du contenu de la base de test R2L
Nouvelles attaques R2L: snmpguess (26,75% : 4.367 /16.189)
Deviner le mot de communauté SNMP (mot de passe)en utilisant une attaque par dictionnaire
snmpgetattack (47,82% : 7.741 /16.189) Exploiter le mot de passe trouvé pour administrer
l’agent snmp
snmpguess snmpgetattack
21
Mise en cause de la base de tests
63.33%
0.00%
0.00%
0.00%
1.50%
R2L
0.19%0.05%0.01%0.02%36.40%R2L(16189)
PSP=97.70%
0.88%96.93%0.00%0.00%2.19%U2R(228)
0.00%0.00%99.99%0.00%0.01%DoS(229853)
0.38%0.00%0.07%99.35%0.19%Probing(4166)
0.11%0.01%0.03%0.02%98.347%Normal (60593)
NewU2RDoSProbingNormal PréditeEffective
Expérimentation réalisée Base d’apprentissage = base de test KDD
R2L: Mauvaise classification des instances apprises Faible taux de classification avec succès : 63.33% snmpgetattack (7741) -> 71.85% : Normal
22
Exemple de pauvreté de la fonction de transformation
snmpguess/snmpgetattack Attributs des attaques de la classe R2L
identiques à ceux du trafic normal Dû à la pauvreté de la fonction de
transformation (rappel)♣ ∃ items xi ∈ I ayant des classes différentes mais les
valeurs de leurs attributs respectifs sont identiques.
Seule solution possible : enrichissement de lafonction de transformation par la prise encompte de snmp
23
Test avec du trafic réel
Résultat sur un trafic réel récent Base d’apprentissage KDD99
Slammer 2003 Détection 100% dans la classe DoS
DDoS (trafic d’inondation au niveau victime) Détection 100% dans la classe DoS
24
Conclusion et perspectives
Travaux réalisés Mise en œuvre des conditions nécessaires que doit vérifier
une fonction de transformation Extension de la définition de l’approche comportementale Amélioration des approches de classification supervisée
pour la prise en compte des nouvelles instances (attaquespour notre cas) en utilisant les arbres de décision
Logiciels développés Outil de transformation de trafic tcpdump connexions
de 41 attributs, Arbres de décision (c4.5 modifié) prenant en compte les
nouvelles instances
25
Conclusion et perspectives
Travaux futurs D’autres méthodes de classification en cours
d’investigation pour la prise en compte desnouveaux comportement pour comparer lesrésultats
Transformation adaptée aux nouveauxprotocoles émergeants (SIP, VoIP, etc,…)
Extraction automatique d’attributs pertinents àpartir du trafic brut
26
Questions ?