Upload
chawkitrabelsi
View
12
Download
0
Embed Size (px)
DESCRIPTION
Tuto Snort
Citation preview
S E C U R I N E T S C l u b d e l a s c u r i t i n f o r m a t i q u e
I N S A T
S E C U R I N E T S Club de la scurit informatique
I N S A T www.securinets.com
Tel : 20322191
Atelier IDS
Snort Outil de Dtection dintrusion
Introduction Les systmes de dtection dintrusion ou IDS pour (Intrusion Detection System) sont
indispensables pour la scurit du rseau, ils permettent (comme leur nom lindique) de dtecter les tentatives dintrusions, et ceci en se basant sur une base de signatures des diffrentes attaques connues, donc leur fonctionnement est semblable celui des anti-virus.
Snort Snort est un systme de dtection d'intrusions rseau en Open Source, capable d'effectuer
l'analyse du trafic en temps rel. On l'utilise en gnral pour dtecter une varit d'attaques et de
S E C U R I N E T S C l u b d e l a s c u r i t i n f o r m a t i q u e
I N S A T
S E C U R I N E T S Club de la scurit informatique
I N S A T www.securinets.com
Tel : 20322191
scans tels que des dbordements de tampons, des scans de ports furtifs, des attaques CGI, des scans SMB, des tentatives d'identification d'OS, et bien plus.
Snort permet danalyser le trafic rseau, il peut tre configur pour fonctionner en plusieurs modes :
Lemodesniffer :danscemode,SNORTlit lespaquetscirculantsur lerseauet lesaffichedunefaoncontinuesurlcran
Lemodepacketlogger:danscemodeSNORTjournaliseletraficrseaudansdesrpertoiressurledisque
Lemodedtecteurdintrusionrseau(NIDS):danscemode,SNORTanalyseletraficdu rseau, compare ce trafic des rgles dj dfinies par lutilisateur et tabli desactionsexcuter
LemodePrventiondesintrusionsrseau(IPS): cestSNORTinline.
Snort (larchitecture)
Figure 1: Architecture de Snort
Larchitecture de SNORT est modulaire (Figure 1), elle est compose de :
Unnoyaude base : (Packet Decoder) au dmarrage, ce noyau charge un ensemble de rgles, compile,optimise et classe celles-ci. Durant lexcution, le rle principal du noyau est la capture de paquets.
Une srie de pr processeurs : ceux-ci amliorent les possibilits de SNORT en matire danalyse et de recomposition du trafic captur. Ils reoivent les paquets directement capturs, ventuellement les retravaillent puis les fournissent au moteur de recherche de signatures.
Un ou plusieurs moteurs de dtection (Detection Engine) applique une srie danalyses aux paquets, ces analyses se composent principalement de comparaisons de diffrents champs des headers des protocoles (IP, ICMP, TCP et UDP) par rapport des valeurs prcises.
S E C U R I N E T S C l u b d e l a s c u r i t i n f o r m a t i q u e
I N S A T
S E C U R I N E T S Club de la scurit informatique
I N S A T www.securinets.com
Tel : 20322191
Aprs la dtection dintrusion, une srie de output plugins permet de traiter cette intrusion de plusieurs manires : envoie vers un fichier log, envoie dun message dalerte vers un serveur syslog, stocker cette intrusion dans une base de donnes SQL.
Installation Linstallation de Snort nest pas dune grande difficult, toutefois avant linstallation de
SNORT, on doit installer :
Libpcap:LibrairieutiliseparSnortpourcapturerlespaquets Gcc :indispensablepourcompilerlessourcesdeSnort BASE :(BasicAnalysisandSecurity Engine)(optionnel),sertfournirune
reprsentationvisuelledesdonnesconcernantlesventuellesintrusions.
On peut dcomposer linstallation en deux parties :
Installation de loutil SnortCommandes Remarques
cd/usr/local/snort
tarxvzfsnort2.3.3.tar.gz
Dcompactelapplication
./configure ConfigurationMake Compilationmakeinstall Installation
Sinon aussi, on peut installer Snort sous forme de fichier rpm, la commande sera dans ce cas :
rpm isnort2.3.32.i586.rpm
Installation des rgles SnortCommandes Remarques
mkdir/etc/snort CrationdurpertoirecontenantlaconfigurationSnort
cp/usr/local/snort/snort.conf/etc/snort/snort.conf
Copiedufichierdeconfigsnortdans/etc/snort
cpsnortrules.tar.gz/etc/snort MiseenplacedesrglesdanslerpertoiredeconfigurationSnort
cd/etc/snort OnseplacedanslerpertoiredeconfigurationSnort
tarxvzfsnortrules.tar.gz Dcompactagedesrgles
S E C U R I N E T S C l u b d e l a s c u r i t i n f o r m a t i q u e
I N S A T
S E C U R I N E T S Club de la scurit informatique
I N S A T www.securinets.com
Tel : 20322191
Pour un fonctionnement performant, on doit toujours mettre jours les rgles de Snort, pour cela il suffit de tlcharger les mises jours de lInternet (voir www.snort.org ) et procder linstallation de ces rgles comme expliqu ci-dessus.
Configuration et Lancement Les rgles Snort sont places dans le rpertoire /etc/snort/rules.
Il faut diter le fichier de configuration snort (/etc/snort/snort.conf) et spcifier le rseau sur lequel l'IDS travaille. Il faut pour cela modifier la variable HOME_NET :
varHOME_NET[192.168.0.0/24]
Dans le fichier de configuration de Snort (/etc/snort/snort.conf), il y a une srie de include. Il s'agit des rgles utilises par Snort pour dtecter d'ventuelles intrusions. Il y a des rgles de telnet, ICMP, FTP, ..., On doit commenter les rgles quon ne veut pas appliquer et enlever le commentaire des rgles qui nous intressent.
Snort est maintenant prt tre lanc avec, par exemple, la commande:
snortDieth0l/var/log/snortc/etc/snort/snort.conf
Cette ligne de commande indique que Snort sera lanc en tant que daemon (-D), il regardera l'interface rseau eth0 (-i eth0), utilisera le rpertoire /var/log/snort/ pour enregistrer les logs et le fichier de configuration /etc/snort/snort.conf.
Remarque : pour lancer Snort chaque dmarrage, il suffit de rajouter la ligne prcdente la fin du fichier /etc/init.d/rc.local.
Les options de la commande snort Lacommandesnortpossdeplusieursoptions,parmicesoptionsonpeutciter:
Option Descriptionv Listetouslespaquetsreussur
lasortiestandard.cfichier ActiveSnortenmode`Dtection
dintrusion`Ondonneenparamtrelefichierdeconfigurationdesrglesdedtection.Pardfaut,lesalertessontmmorisesdanslefichieralert.
D Activesnortenmodedmon.lrpertoire Activelemodejournalisationdes
paquetsetspcifielerpertoireosontstockslesalertesetlespaquetscapturs.Pardfaut,
S E C U R I N E T S C l u b d e l a s c u r i t i n f o r m a t i q u e
I N S A T
S E C U R I N E T S Club de la scurit informatique
I N S A T www.securinets.com
Tel : 20322191
lerpertoire/var/log/snort.icarte Spcifielacarterseau.b Journaliselespaquetsauformat
binairetcpdump.rfichier Litunfichierauformattcpdump.hrseau Spcifielerseaulocal,par
exemple192.168.1.0/24.nnb Traitenbpaquetsetsarrte.
Lcriture des rgles Snort Snort permet lcriture de rgles personnelles et utilise un langage simple et lger de
description de rgles qui est flexible et assez puissant.
Les rgles Snort sont divises en deux sections logiques, l'entte de la rgle et les options de la rgle comme le montre la figure 2. L'entte de rgle contient comme informations l'action de la rgle, le protocole, les adresses IP source et destination et les masques rseau, et les ports source et destination. La section options de la rgle contient les messages d'alerte et les informations sur les parties du paquet qui doivent tre inspectes pour dterminer si l'action de la rgle doit tre accepte.
Figure2:FormatdelargleSnor t
Voiciunexempledergle:
Alerttcpanyany>192.168.1.0/2480(flags:Acontent:passwdmsg:detectionde`passwd`)
Cette rgle permet de gnrer un message dalerte dtection de passwd lorsque le trafic destination dune machine du rseau local 192.168.1.0/24 vers le port 80, contient la chane passwd (spcifi par lutilisation du mot-cl content ), et que le flag ACK du header TCP est activ (flags : A).
Tests Notre machine dont on a install Snort est dadresse IP 192.168.0.2
A partir de la machine dadresse 192.168.0.1, on essaye de scanner notre machine en utilisant la commande nmap avec l'option -sS qui permet de faire un scan de type SCAN FIN
S E C U R I N E T S C l u b d e l a s c u r i t i n f o r m a t i q u e
I N S A T
S E C U R I N E T S Club de la scurit informatique
I N S A T www.securinets.com
Tel : 20322191
nmapsF192.168.0.2
On remarque que Snort dtecte cette intrusion et enregistre dans un dossier portant l'adresse de la machine source de l'intrusion (192.168.0.1) les logs suivants :
[**]ICMPPINGNMAP[**]04/2323:27:37.895549192.168.0.1>192.168.0.2ICMPTTL:46TOS:0x0ID:9937IpLen:20DgmLen:28Type:8Code:0ID:32676Seq:23169ECHO=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=
[**]SCANFIN[**]04/2323:27:49.202929192.168.0.1:59321>192.168.0.2:1TCPTTL:52TOS:0x0ID:38933IpLen:20DgmLen:40*******FSeq:0x26F2832BAck:0x0Win:0x400TcpLen:20=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=
[**]SCANFIN[**]04/2323:27:41.248172192.168.0.1:59321>192.168.0.2:10TCPTTL:42TOS:0x0ID:4473IpLen:20DgmLen:40*******FSeq:0x26F2832BAck:0x0Win:0xC00TcpLen:20=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+
Conclusion Outre la mise en place des pares feu et des systmes dauthentification, il est de nos jours
ncessaire de mettre en place un systme de dtection dintrusion.
Nous avons tudi le fonctionnement de ces systmes en particulier nous avons pris comme exemple loutil Open Source Snort qui est le plus rput en terme defficacit et prsente une souplesse en terme de personnalisation.
Pour une meilleure lisibilit dans la lecture des logs et les alertes il existe plusieurs interfaces graphiques pour Snort les plus connues sont SnartSnort et ACID.
Aussi pour une meilleure gestion des logs, Snort peut tre interfac avec un SGBD (Systme de Gestion de Base de Donnes) comme par exemple MySQL.