15
Les IDS Philippe Sèvre le 10/01/2009

Les IDS Philippe Sèvre le 10/01/2009. Introduction •IDS : Intrusion Détection System (Système de détection d’Intrusion) •Ce sont des logiciels permettant

Embed Size (px)

Citation preview

Page 1: Les IDS Philippe Sèvre le 10/01/2009. Introduction •IDS : Intrusion Détection System (Système de détection d’Intrusion) •Ce sont des logiciels permettant

Les IDS

Philippe Sèvre le 10/01/2009

Page 2: Les IDS Philippe Sèvre le 10/01/2009. Introduction •IDS : Intrusion Détection System (Système de détection d’Intrusion) •Ce sont des logiciels permettant

Introduction

• IDS : Intrusion Détection System (Système de détection d’Intrusion)

• Ce sont des logiciels permettant de mettre en évidences les intrusions dans les systèmes

• Il existe actuellement deux types d’IDS :– Les HIDS (Host based IDS)– Les NIDS (Network IDS)

Page 3: Les IDS Philippe Sèvre le 10/01/2009. Introduction •IDS : Intrusion Détection System (Système de détection d’Intrusion) •Ce sont des logiciels permettant

Les HIDS

• Ils sont installés sur une machine et vont permettre de vérifier l’intégrité des fichiers systèmes (binaire, fichiers de configuration, etc)

• Il calculent des sommes md5 des fichiers sensibles et stockent le résultat dans un fichier crypté. Périodiquement, on lance un nouveau calcul d’intégrité ce qui permet de détecter les changement survenus dans les fichiers

Page 4: Les IDS Philippe Sèvre le 10/01/2009. Introduction •IDS : Intrusion Détection System (Système de détection d’Intrusion) •Ce sont des logiciels permettant

HIDS – Suite

• On devrait installer un HIDS sur chaque serveur exposé (en particulier ceux qui se trouvent dans la DMZ)

• C'est le seul procédé sûr permettant de mettre en évidence une intrusion

• Quelques exemples d’HIDS :– Tripwire (http://tripwire.org) : versions Linux et

Windows– Aide (http://www.cs.tut.fi/~rammer/aide.html)– OSSEC

Page 5: Les IDS Philippe Sèvre le 10/01/2009. Introduction •IDS : Intrusion Détection System (Système de détection d’Intrusion) •Ce sont des logiciels permettant

Installation de Tripwire

• Installer le paquetage tripwire• Lancer /etc/tripwire/twinstall.sh• Donner les passphrases • Editer le fichier /etc/tripwire/twpol.txt pour l’adapter

aux besoins• Lancer tripwire –init pour générer la base• Lancer tripwire –check pour vérifier • Pour obtenir un rapport texte :twprint –m r –twrfile /var/lib/tripwire/report/nomdureport.twr

Page 6: Les IDS Philippe Sèvre le 10/01/2009. Introduction •IDS : Intrusion Détection System (Système de détection d’Intrusion) •Ce sont des logiciels permettant

Les fichiers de configuration• tripwire :Permet de créer la base, de vérifier l'intégrité du système,

mettre à jour la base.• twadmin : Permet de créer les clés (du site et local), de créer les

fichiers tw.pol et tw.cfg à partir de leur version texte. Permet de signer des fichiers.

• twprint : Permet de générer le rapport ou la base en texte clair.• twcfg.txt : Fichier de configuration de tripwire. Inchangé

Il se transforme une fois crypté en tw.cfg. • twpol.txt : Fichier contenant les règles de police à appliquer. 

Attention aux modifications.Se transforme en tw.pol une fois crypté• twinstall.sh : script qui crée les clés si elles n'existent pas, et qui

crypte les deux fichiers précédents. A réutiliser à chaque modification de l'un d'eux. 

Page 7: Les IDS Philippe Sèvre le 10/01/2009. Introduction •IDS : Intrusion Détection System (Système de détection d’Intrusion) •Ce sont des logiciels permettant

Tripwire - Suite• En case de mise à jour des règles (pol) : modifier la version en

claire de ce fichier twpol.txt, puis recréer le fichier crypté avec la commande :

twadmin --create-polfile -S site.key /etc/tripwire/twpol.txt.Puis regénérer la base : supprimer l’ancienne, puis tripwire --init.

• Mise à jour de la base• Pour mettre à jour votre base de données après des modifications

et à partir du rapport d'intégrité, utiliser la commande :tripwire --update --twrfile /var/lib/tripwire/report/nomdurapport.twr . S'ouvre alors le rapport dans l'éditeur vi.

• Cocher les cases pour accepter la mise à jour ou ne pas l'accepter. Sauvegardez et quittez vi avec :x on vous demande alors la passphrase. Une fois cela fait, les fichiers acceptés ne seront plus dans les rapports.

Page 8: Les IDS Philippe Sèvre le 10/01/2009. Introduction •IDS : Intrusion Détection System (Système de détection d’Intrusion) •Ce sont des logiciels permettant

Les NIDS• Ils consistent à analyser les paquets entrant sur

une interface et à détecter en temps réel des motifs répertoriés dans une base (+ de 1200 pour Snort)

• Utilisés en général pour détecter une variété d'attaques et de scans tels que des débordements de tampons, des scans de ports furtifs, des attaques CGI, des scans SMB, des tentatives d'identification d'OS, des DOS, attaques applicatives (SQL injection, …) et d’autres ….

Page 9: Les IDS Philippe Sèvre le 10/01/2009. Introduction •IDS : Intrusion Détection System (Système de détection d’Intrusion) •Ce sont des logiciels permettant

Les NIDS – Suite

• Nécessitent beaucoup de puissance (Attention sur les liens à 100 Mb/s ou Gigabit)

• Doivent être placés sur le port d’entrée • Un NIDS doit être branché sur un HUB après le routeur

ou bien sur un port SPAN (Switch Port Analysis) pour pouvoir récupérer tous les paquets

• Génèrent un gros (ou très gros) volume de log• Produisent également des faux positifs (fausses alertes)• Importance des bases de signatures ...

Page 10: Les IDS Philippe Sèvre le 10/01/2009. Introduction •IDS : Intrusion Détection System (Système de détection d’Intrusion) •Ce sont des logiciels permettant

Les NIDS – suite - 2

• Détection active : en cas de détection d'alerte, on met en oeuvre des règles de protection (filtrage pare-feu iptables, TCP wrapper) : IPS (Intrusion Prevention System)

• Ces actions sont délicates à mettre en oeuvre ..

• Ou passive

Page 11: Les IDS Philippe Sèvre le 10/01/2009. Introduction •IDS : Intrusion Détection System (Système de détection d’Intrusion) •Ce sont des logiciels permettant

Les NIDS - Quelques exemples

• Snort : très utilisé

• Prelude : architecture modulaire

Page 12: Les IDS Philippe Sèvre le 10/01/2009. Introduction •IDS : Intrusion Détection System (Système de détection d’Intrusion) •Ce sont des logiciels permettant

SNORT• Cf http://www.snort.org

• Snort utilise un fichier téléchargeable de règles mises à jour une permanence pour détecter les attaques (+ de 2700 à ce jour)

• Snort peut utiliser mysql ou postgresql pour stocker les logs

• ACID est un add-on permettant d’obtenir des statistiques depuis une interface Web

Page 13: Les IDS Philippe Sèvre le 10/01/2009. Introduction •IDS : Intrusion Détection System (Système de détection d’Intrusion) •Ce sont des logiciels permettant

SNORT – Installation

• Installer le paquetage :– Snort

– Et éventuellement les paquetages mysql et Acid

• Récupérer sur le site de snort le dernier fichier de règles (.tar.gz) et le décompacter dans le répertoire /etc/snort/rules

• En cas d’utilisation de base de données lancer le script create_mysql dans /usr/share/doc/snortxxx

• Éditer le fichier snort.conf

Page 14: Les IDS Philippe Sèvre le 10/01/2009. Introduction •IDS : Intrusion Détection System (Système de détection d’Intrusion) •Ce sont des logiciels permettant

Snort – Paramétrage

• Éditer snort pour adapter :var HOME_NET [172.16.0.0/16]

• Changer éventuellement la redirection des logs pour envoyer dans mysql :

#output database:log,mysql,user=root password=test dbname=SNORT host=localhost

• Décommenter et modifier cette ligne par :output database:log,mysql,user=user_snort

password=snort_pwd dbname=snort host=localhost

Page 15: Les IDS Philippe Sèvre le 10/01/2009. Introduction •IDS : Intrusion Détection System (Système de détection d’Intrusion) •Ce sont des logiciels permettant

SNORT utilisation

• Snort peut fonctionner en renifleur simple :

snort –v

• En NIDS, simplement taper

service snort start

• Ou peut alors aller examiner les logs après avoir lancé un scan avec nmap ou nessus