Analyse de protocoles binaires avec les N-Grams N-Gram against the Machine : On the Feasibility of the N-Gram network Analysis for Binary Protocols Thomas LETAN 26 novembre 2012
Objectifs des auteurs : Comparer quatre algorithmes de l état de l art ; Interpréter les résultats, comprendre les échecs et les réussites ; Conclure sur l utilisation de ces algorithmes dans la «vraie vie».
SOMMAIRE ÉTAT DE L ART COMPARER DES NIDS BENCHMARKS CONCLUSION
ÉTAT DE L ART ÉTAT DE L ART Network Intrusion Detection System N-Gram analysis NIDS utilisant les N-Grams Les algorithmes COMPARER DES NIDS BENCHMARKS CONCLUSION
NETWORK INTRUSION DETECTION SYSTEM Basés sur les anomalies : Trop de faux positifs en utilisation réelle ; Machine learning pas assez efficace en utilisation réelle.
NETWORK INTRUSION DETECTION SYSTEM Deux approches comportementales possibles : Par flux : durée d une connexion, nombre et tailles des paquets échangés, etc. ; Par analyse des payloads échangés : plus ponctuelle, concerne les données transmises.
NETWORK INTRUSION DETECTION SYSTEM Deux approches comportementales possibles : Par flux : durée d une connexion, nombre et tailles des paquets échangés, etc. ; Par analyse des payloads échangés : plus ponctuelle, concerne les données transmises.
NETWORK INTRUSION DETECTION SYSTEM Deux approches comportementales possibles : Par flux : durée d une connexion, nombre et tailles des paquets échangés, etc. ; Par analyse des payloads échangés : plus ponctuelle, concerne les données transmises. Sur deux types de protocoles : Textuels : HTTP, SMTP,... ; Binaires : SMB/CIFS, ICS,...
NETWORK INTRUSION DETECTION SYSTEM Deux approches comportementales possibles : Par flux : durée d une connexion, nombre et tailles des paquets échangés, etc. ; Par analyse des payloads échangés : plus ponctuelle, concerne les données transmises. Sur deux types de protocoles : Textuels : HTTP, SMTP,... ; Binaires : SMB/CIFS, ICS,...
N-GRAM ANALYSIS Définition Un N-Gram d une séquence donnée est une sous-séquence de taille N.
N-GRAM ANALYSIS Définition Un N-Gram d une séquence donnée est une sous-séquence de taille N. Dans le cadre de la sécurité informatique : Représentation du comportement normal. Doter un système informatique d un «système immunitaire» ;
N-GRAM ANALYSIS Doter un système informatique d un «système immunitaire» : La détection se fait de manière distribuée, chaque instance du système de détection est unique ; La détection est probabiliste ; Les détecteurs reconnaissent tous les corps étrangers, pas seulement ceux qu ils connaissent déjà.
NIDS UTILISANT LES N-GRAMS Avec les N-Grams, on s intéresse aux octets des payloads, on construit à partir de chaque payload un ensemble de N-Grams. Apprentissage : Construction du détecteur grâce aux N-Grams ; Détection : Soumission des N-Grams au détecteur.
NIDS UTILISANT LES N-GRAMS Avec les N-Grams, on s intéresse aux octets des payloads, on construit à partir de chaque payload un ensemble de N-Grams. Apprentissage : Construction du détecteur grâce aux N-Grams ; Détection : Soumission des N-Grams au détecteur. Le détecteur peut être : L ensemble des N-Grams légaux (Anagram) ; Un modèle décrivant les N-Grams légaux (PAYL, POSEIDON, McPAD).
LES ALGORITHMES Caractéristiques communes : Ils sont adaptés aux protocoles binaires ; Ils utilisent un détecteur par port/protocole (détection distribuée) ; Ils sont présentés comme des améliorations successives.
LES ALGORITHMES PAYL Découpage du payload en 1-Grams (un octet) ; Un modèle par taille de payloads ; Construction d un modèle de distribution moyenne des octets (apprentissage) ; Utilisation d une distance statistique pour connaître la différence entre le modèle et la distribution des 1-Grams (détection) ;
LES ALGORITHMES PAYL Découpage du payload en 1-Grams (un octet) ; Un modèle par taille de payloads ; Construction d un modèle de distribution moyenne des octets (apprentissage) ; Utilisation d une distance statistique pour connaître la différence entre le modèle et la distribution des 1-Grams (détection) ; Taille du payload Trafic du réseau Paquet payload PAYL Port
LES ALGORITHMES POSEIDON Payl Over Som Intrusion Detection ; Le facteur discriminant n est plus la taille du payload ; SOM classe les payloads selon leur similarité.
LES ALGORITHMES POSEIDON Payl Over Som Intrusion Detection ; Le facteur discriminant n est plus la taille du payload ; SOM classe les payloads selon leur similarité. SOM C Trafic du réseau Paquet payload PAYL Port
LES ALGORITHMES Anagram On utilise des N-Grams avec N > 1 ; On les stocke grâce à des filtres de Bloom (apprentissage) ; Possibilité d avoir des faux positifs sur la présence d un élément ; Possibilité de saturer le filtre (répond toujours présent) ; Gain de place important. On regarde le nombre de N-Grams absent (détection).
LES ALGORITHMES Anagram On utilise des N-Grams avec N > 1 ; On les stocke grâce à des filtres de Bloom (apprentissage) ; Possibilité d avoir des faux positifs sur la présence d un élément ; Possibilité de saturer le filtre (répond toujours présent) ; Gain de place important. On regarde le nombre de N-Grams absent (détection). Ne pas utiliser de modèle statistique est considéré comme une meilleure approche dans le cadre de l analyse d un réseau.
LES ALGORITHMES McPAD Cet algorithme utilise des 2-Grams modifiés par rapport à la définition d origine Définition Le couple (a, b) est un 2-Grams modifié d une séquence s s ils sont présents dans la séquence séparés par v éléments. En faisant varier v entre 1 et m, on obtient m SVM d une classe (apprentissage) ; On interroge ensuite les SVM et on utilise un consensus à la majorité (détection).
COMPARER DES NIDS ÉTAT DE L ART COMPARER DES NIDS Critères de comparaison Vérifier les implémentations BENCHMARKS CONCLUSION
CRITÈRES DE COMPARAISON On se base sur deux critères : Taux de détections ; Taux de faux positifs.
CRITÈRES DE COMPARAISON On se base sur deux critères : Taux de détections ; Taux de faux positifs. Le taux de faux positifs est la faiblesse des NIDS comportemental, on définit deux seuils : 10 faux positifs/jour : seuil de confort ; 1 faux positif/min : seuil critique.
COMPARER DES NIDS Pour réaliser nos Benchmarks, on se base sur deux jeux de données : Un ensemble de traces provenant d un réseau «de la vraie vie» ; Une moitié pour construire le détecteur ; Une moitié pour le tester. Un ensemble de traces d attaques.
VÉRIFIER LES IMPLÉMENTATIONS POSEIDON et McPAD : sources récupérées chez les auteurs ; PAYL et Anagram : écriture d une implémentation. Il faut s assurer que les prototypes utilisés sont bons : refaire les tests proposés dans les articles de recherche.
BENCHMARKS ÉTAT DE L ART COMPARER DES NIDS BENCHMARKS SMB/CIFS ICS CONCLUSION
SMB/CIFS Qu est-ce que SMB/CIFS? Protocoles pour le dialogue entre ordinateurs sous Windows ; Échange de fichiers ; Encapsulation d autres services (RPC).
SMB/CIFS Jeux de données réseaux utilisés : Traces du réseau d une grande université, collecté sur plusieurs semaines ; Sept traces d instances de quatre vulnérabilités.
SMB/CIFS Jeux de données réseaux utilisés : Traces du réseau d une grande université, collecté sur plusieurs semaines ; Sept traces d instances de quatre vulnérabilités. À raison d un trafic de 22 paquets/s (mesure du trafic de l université) : 0.0005% 10 faux positifs/jour ; 0.073% 1 faux positif/min.
SMB/CIFS Essai avec les données bruts : Les filtres de Bloom d Anagram saturent rapidement ; Les autres algorithmes ont tous un très haut taux de faux positifs peu importe les réglages.
SMB/CIFS Essai avec les données bruts : Les filtres de Bloom d Anagram saturent rapidement ; Les autres algorithmes ont tous un très haut taux de faux positifs peu importe les réglages. Les vulnérabilités sélectionnées portent toutes sur du RPC encapsulé.
SMB/CIFS Essai avec des données filtrées (RPC encapsulé) : Anagram «remporte la manche» : découvre les sept attaques avec un seuil inférieur au seuil critique ; PAYL et POSEIDON s en sortent bien : respectivement 5 et 3 attaques ; McPAD ne parvient pas à avoir un taux de faux positifs inférieur à 19%.
SMB/CIFS ms04-011 utilise une injection de ShellCode le paquet contient une longue suite de 0x90 (NOP). Anagram analyse beaucoup de N-Grams ne contenant que des NOP ; PAYL et POSEIDON voient un payload avec une distribution d octets déséquilibrés ; McPAD est capable de voir le pic d instructions NOP dans ses 2-Grams.
SMB/CIFS Les paquets porteur de ms06-040 possèdent beaucoup de caractères imprimables. PAYL et POSEIDON ne la détectent pas facilement. Distribution des octets influencée SMB/CIFS permet l échange de fichiers (impression distante).
ICS Famille de protocoles qui permettent le monitoring de sites distants : Obtenir des informations sur les sites ; Déclencher des actions sur ces sites. Dans l article : SCADA (Supervisory Control and Data Acquisition)
ICS On adopte une démarche proche de celle utilisée pour SMB/CIFS. Pas besoin de filtrer les données pour obtenir des résultats intéressants ; Anagram reste le meilleur (messages courts et réguliers) ; McPAD s en sort très bien car le trafic analysé est exprimé avec des paquets de taille fixe et stables ; PAYL et POSEIDON sont moins adaptés.
CONCLUSION Plus la part du payload utile à l attaque est utile, plus elle est difficile à détecter ; Aucun algorithme n est vraiment meilleur que l autre ; L utilisation en conditions réelles doit s accompagner d un filtrage «sémantique»
BIBLIOGRAPHIE I Damiano Bolzoni, Sandro Etalle, and Pieter Hartel. Poseidon : a 2-tier anomaly-based network intrusion detection system. In UNIVERSITY OF TWENTE, pages 144 156. IEEE Computer Society, 2006. Stephanie Forrest, Steven A. Hofmeyr, Anil Somayaji, and Thomas A. Longstaff. A sense of self for unix processes. In Proceedings of the 1996 IEEE Symposium on Security and Privacy, SP 96, pages 120, Washington, DC, USA, 1996. IEEE Computer Society. Stephanie Forrest, Alan S. Perelson, Lawrence Allen, and Rajesh Cherukuri. Self-nonself discrimination in a computer. In Proceedings of the 1994 IEEE Symposium on Security and Privacy, SP 94, pages 202, Washington, DC, USA, 1994. IEEE Computer Society. D. Hadžiosmanović, L. Simionato, D. Bolzoni, E. Zambon, and S. Etalle. N-gram against the machine : On the feasibility of the n-gram network analysis for binary protocols. Research in Attacks, Intrusions, and Defenses, pages 354 373, 2012.