Les Systèmes de Détection
d’Intrusion
Systèmes de détection d’intrusion - IDS
• IDS (Intrusion Detection System)
• Objectif : détecter les activités suspectes risquant de
compromettre des ressources à protéger
• Historique (source : « Les IDS » de Thierry Evangelista)
– Concept introduit en 1980 par Paul Anderson (HIDS)
– Premières versions entre 1984 et 1994 (approche comportementale
puis notion de signature)
• A l’origine pour détecter les intrusions en provenance de
l’Internet, mais souvent utile aussi en interne
• L’étude du Clusif montre que le personnel représente la plus
grande menace pour l’entreprise
IDS / IPS
• IDS : logiciels et/ou matériels de détection et
analyse de tentatives d’intrusion, volontaire
ou non (entrée, maintien, modification d’un
système)
• IPS : logiciels et/ou matériels de blocage
d’activité suspecte détectée
IDS
• Deux grandes familles :
– NIDS : sonde d’analyse passive des flux réseau ayant pour
but de détecter les intrusions en temps réel
• Pattern matching
• Analyse de protocole
• Détection d’anomalies
– HIDS : logiciel analysant en temps réel journaux et flux de
la machine locale
• Signatures
• Analyse comportementale ou analyse statistique (détecte la
déviance par rapport au comportement normal). Peut détecter de
nouvelles attaques non répertoriées ; peut produire des faux
positifs
Modules noyaux
• KIDS : HIDS noyau inspectant les appels
système
• KIPS : HIDS noyau avec contrôle d’accès aux
appels système
IDS : problèmes courants
• Les faux positifs : fausses alertes
• Les faux négatifs : intrusions non détectées
• Les NIDS analysent correctement en dessous
d’un certain seuil ; passé ce seuil, des
intrusions peuvent passer inaperçues
• Les NIDS ne peuvent pas analyser le trafic
chiffré
• Scanner de vulnérabilité et HIPS : mauvaise
détection
Positionnement de sondes
• Où les mettre ?
Détection IDS
• Détection de l’IDS par usurpation d’@ MAC
– ICMP echo request avec MAC de destination
égale à zéro
(si on reçoit la réponse, la carte réseau est
probablement en mode promiscuous)
• OK sous Unix et Win9x
• Ne marche pas sous NT+
– Contre-mesure : 2 cartes réseau dont une seule a
une adresse IP, l’autre servant à la détection
furtive
Détection IDS
• Mesure de temps de latence
– 2 séries de ping (avec ou sans surcharge réseau
avec trafic de diffusion)
• Test des réponses actives (permet de
discerner un IDS d’un autre)
• Surveillance de requêtes DNS
• Rappel : « Tout mouvement nous découvre »
(Montaigne)
Techniques d’évasion des IDS
• 2 grandes classes :
– Utilisation de la spécificité d’un protocole ou d’un
comportement pour faire en sorte que l’IDS ait
une vue différente des cibles
• Comportement de pile TCP/IP
• Absence de vérification d’intégrité ou complétude
d’analyse par l’IDS (étalement temporel, longueur de
requête)
• Normalisation de requête avant journalisation
– Mutation d’une attaque
Techniques d’évasion des IDS
• Injection de données supplémentaires pour que
l’attaque ait l’air inoffensive du point de vue de l’IDS;
ces données supplémentaires ne sont pas
interprétées par la cible réelle
– Fragmentation IP utilisant l’écrasement (avec
recouvrement, avec re-émission d’un fragment) ou
l’expiration côté IDS (fragment arrivant trop tardivement)
– Découpage de paquets TCP en plusieurs sessions se
recouvrant (assemblage des segments anciens vs
nouveaux)
– Injection de paquets corrompus (CRC erronée ou TTL faible
si la cible n’est pas sur le même segment que l’IDS)
Techniques d’évasion des IDS
• HTTP
– Changement de méthode (head au lieu de get)
– Encodage d’URL (%20 pour espace)
– Répétitions de caractères non significatives (//) ou
à sens différent (\ à la place de /)
– Chemins relatifs bidons (/bidule/../ ou /./)
– Découpage de requête ou camouflage
– Augmentation artificielle de la longueur d’URL
– URL véritable en paramètre de formulaire ou de
script
IDS : produits
• Snort (NIDS)
• Prelude
• Realsecure (ISS)
• Manhunt (Symantec)
• Cisco
• Enterasys Networks
• Network Associates
• …
Règles de signatures IDS
• Tous les IDS savent importer les règles de détection de Snort
• Apprendre et comprendre leur format est donc un bon
investissement
• http://www.snort.org/docs/snort_manual/node14.html
• Exemple : SQL Slammer
(http://www.winnetmag.com/Articles/Print.cfm?ArticleID=39
360)
– alert udp $EXTERNAL_NET any -> $HOME_NET 1434
(msg:"MS-SQL Worm propagation attempt";
content:"|04|"; depth:1; content:"|81 F1 03 01
04 9B 81 F1 01|"; content:"sock";
content:"send"; reference:bugtraq,5310;
classtype:misc-attack; reference:bugtraq,5311;
reference:url,vil.nai.com/vil/content/v_99992.h
tm; sid:2003; rev:2;)
Normalisation des IDS / attaques
• Systèmes de corrélation et de gestion des
intrusions
– Besoin d’agglomérer et de filtrer différentes
sources
– Nécessité d’avoir un format normalisé
– Travaux en cours sur le sujet
• IDMEF pour la normalisation des messages
• IDXP pour l’échange des messages
Les pots de miel
• Objectif : détecter les intrusions à l’aide de machines et/ou
réseaux leurres non sécurisés et surveillés
• Principe du low hanging fruit
– L’attaquant recherche souvent des cibles faciles à attaquer
– On lui en propose afin de
1. Détecter sa présence
2. Lui faire perdre du temps
• Le pot de miel peut être soit une machine, soit tout un
réseau, souvent entièrement émulé ou faisant appel à des
machines virtuelles (cf honeynet)
• Permet de détecter de nouvelles attaques et de comprendre
la façon d’opérer de l’attaquant