Qu'est-ce que c'est ?
On appelle
IDS (Intrusion Detection System) un mécanisme écoutant le
trafic réseau de maniere furtive afin de repérer des
activités anormales ou suspectes et permettant ainsi d'avoir
une action de prévention sur les risques d'intrusion.Il
existe deux grandes familles distinctes d’IDS :
* Les N-IDS
(Network Based Intrusion Detection System), ils assurent la
sécurité au niveau du réseau.
* Les H-IDS
(Host Based Intrusion Detection System), ils assurent la
sécurité au niveau des hôtes.
Un N-IDS nécessite un matériel dédié et constitue un systeme
capable de contrôler les paquets circulant sur un ou
plusieurs lien(s) réseau dans le but de découvrir si un acte
malveillant ou anormal a lieu. Le N-IDS place une ou
plusieurs cartes d’interface réseau du systeme dédié en mode
promiscuité (promiscuous mode), elles sont alors en mode «
furtif » afin qu’elles n’aient pas d’adresse IP. Elles n’ont
pas non plus de pile de protocole attachée. Il est fréquent
de trouver plusieurs IDS sur les différentes parties du
réseau et en particulier de placer une sonde a l'extérieur
du réseau afin d'étudier les tentatives d'attaques ainsi
qu'une sonde en interne pour analyser les requetes ayant
traversé le pare-feu ou bien menée depuis l'intérieur.
Le H-IDS réside sur un hôte particulier et la gamme de ces
logiciels couvre donc une grande partie des systemes
d’exploitation tels que Windows, Solaris, Linux, HP-UX, Aix,
etc…Le H-IDS se comporte comme un démon ou un service
standard sur un systeme hôte. Traditionnellement, le H-IDS
analyse des informations particulieres dans les journaux de
logs (syslogs, messages, lastlog, wtmp…) et aussi capture
les paquets réseaux entrant/sortant de l’hôte pour y déceler
des signaux d’intrusions (Déni de Services, Backdoors,
chevaux de Troie, tentatives d’acces non autorisés,
exécution de codes malicieux, attaques par débordement de
buffeurs…).
On peut
aussi définir deux modes de fonctionnement selon qu'ils se
basent sur des signatures d'attaques ou sur des modeles
comportementaux.
IDS a Bibliotheques de signatures
Cette
approche consiste a rechercher dans l'activité de l'élément
surveillé les signatures d'attaques connues. Cette démarche
appliquée a la détection d'intrusion, est tres similaire a
celle des outils antivirus et présente les meme
inconvénients que celle ci. Il est aisé de comprendre que ce
type d'IDS est purement réactif ; il ne peut détecter que
les attaques dont il possede la signature. De ce fait, il
nécessite des mises a jour quotidiennes. De plus, ce systeme
de détection est aussi bon que l'est la base de signature.
Si les signatures sont erronées ou incorrectement conçues
l'ensemble du systeme est inefficace. C'est pourquoi ces
systemes sont souvent contournés par les pirates qui
utilisent des techniques dites " d'évasion " qui consistent
a maquiller les attaques utilisées. Ces techniques de
maquillage tendent a faire varier les signatures des
attaques qui ainsi ne sont plus reconnues par l'IDS. Ce
modele est par contre tres aisé a implémenter et a
optimiser. Il permet la séparation du moteur logiciel de la
base de signature qui peut ainsi etre mise a jour
indépendamment. Il permet également une classification
relativement facile de la criticité des attaques signalées.
IDS a Modeles comportementaux
Ils
ont pour principe la détection d'anomalies. Leurs mise en
œuvre comprend toujours une phase d'apprentissage au cours
de laquelle ils vont " découvrir " le fonctionnement "
normal " des éléments surveillés. Une fois cet apprentissage
effectué ces IDS signaleront les divergences par rapport au
fonctionnement de référence. Les modeles comportementaux
peuvent etre élaborés a partir d'analyses statistiques ou de
techniques proches de l'intelligence artificielle. La
principale promesse des IDS comportementaux est la détection
des nouveaux type d'attaque. En effet ces IDS ne sont pas
programmés pour reconnaître des attaques spécifiques mais
signalent toute activité " anormale ". De ce fait une
attaque ne doit pas nécessairement etre connue d'avance ;
des lors qu'elle représente une activité anormale elle peut
etre détectée par l'IDS comportemental. Du fait meme de leur
conception ces IDS sont incapables de qualifier la criticité
des attaques. De plus, ces IDS signaleront par exemple tout
changement dans le comportement d'un utilisateur qu'il soit
hostile ou non. De fréquents ajustements sont nécessaires
afin de faire évoluer le modele de référence de sorte qu'il
reflete l'activité normale des utilisateurs et réduire le
nombre de fausses alertes générées.
Lequel choisir?
Aujourd'hui les systemes de
détection d'intrusion sont réellement devenus
indispensables lors de la mise en place d'une
infrastructure de sécurité opérationnelle. Ils
s'integrent donc toujours dans un contexte et une
architecture qui imposent des contraintes pouvant etre
tres diverses. C'est pourquoi il n'existe pas de grille
d'évaluation unique pour ce type d'outil. Pourtant un
certain nombre de criteres peuvent etre dégagés ; ceux
ci devront nécessairement etre pondérés en fonction du
contexte de l'étude.
-
Fiabilité : Un détecteur d'intrusion
doit etre fiable ; les alertes qu'il génere doivent
etre justifiées et aucune intrusion ne doit pouvoir
lui échapper. Un IDS générant trop de fausses
alertes sera a coup sur désactivé par
l'administrateur et un IDS ne détectant rien sera
rapidement considéré comme inutile.
-
Réactivité : Un IDS doit etre capable
de détecter les nouveaux types d'attaque le plus
rapidement possible ; pour cela il doit rester
constamment a jour. Des capacités de mise a jour
automatique sont pour ainsi dire indispensables.
-
Facilité de mise en œuvre et adaptabilité :
Un IDS doit etre facile a mettre en œuvre et doit
pouvoir surtout s'adapter au contexte dans lequel il
doit opérer ; il est inutile d'avoir un IDS émettant
des alertes en moins de 10 secondes si les
ressources nécessaires a une réaction ne sont pas
disponible pour agir dans les memes contraintes de
temps.
-
Performance : la mise en place d'un
IDS ne doit en aucun cas affecter les performance
des systemes surveillés. De plus, il faut toujours
avoir la certitude que l'IDS a la capacité de
traiter toute l'information a sa disposition (par
exemple un IDS réseau doit etre capable de traiter
l'ensemble du flux pouvant se présenter a un instant
donné sans jamais dropper de paquets) car dans le
cas contraire il devient trivial de masquer les
attaques en augmentant la quantité d'information.
-
Multicanal : Un bon IDS doit pouvoir
utiliser plusieurs canaux d'alerte (email, pager,
téléphone, fax...) afin de pouvoir garantir que les
alertes seront effectivement émises. Information :
L'IDS doit donner un maximum d'information sur
l'attaque détectée afin de préparer la réaction.
Classification : il doit etre aisé de hiérarchiser
la gravité des attaques détectées afin d'adapter le
mode d'alerte.