Vous êtes sur la page 1sur 6

S E C U R I N E T S

C l u b d e l a s c ur i t i n f o r m at i q ue
I N S A T

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
Club de la scurit informatique
I N S A T
www.securinets.com
Tel : 20322191
S E C U R I N E T S
C l u b d e l a s c ur i t i n f o r m at i q ue
I N S A T

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 :
Le modesniffer:dansce mode,SNORTlit lespaquetscirculantsur lerseauetles
affichedunefaoncontinuesurlcran
Lemodepacketlogger:danscemodeSNORTjournaliseletraficrseaudansdes
rpertoiressurledisque
Lemodedtecteurdintrusionrseau(NIDS):danscemode,SNORTanalyseletrafic
du rseau, compare ce trafic des rgles dj dfinies par lutilisateur et tabli des
actionsexcuter
LemodePrventiondesintrusionsrseau(IPS): cestSNORTinline.

Snort (larchitecture)

Fig ure 1: Architecture de Snort

Larchitecture de SNORT est modulaire (Figure 1), elle est compose de :


Un noyau de 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
Club de la scurit informatique
I N S A T
www.securinets.com
Tel : 20322191
S E C U R I N E T S
C l u b d e l a s c ur i t i n f o r m at i q ue
I N S A T

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 Snort


Commandes Remarques
cd/usr/local/snort
tarxvzfsnort Dcompactelapplication
2.3.3.tar.gz
./configure Configuration
Make Compilation
makeinstall 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 Snort


Commandes Remarques

mkdir/etc/snort Crationdurpertoirecontenantla
configurationSnort
cp/usr/local/snort/snort.conf Copiedufichierdeconfigsnortdans/etc/snort
/etc/snort/snort.conf
cpsnortrules.tar.gz/etc/snort Miseenplacedesrglesdanslerpertoirede
configurationSnort
cd/etc/snort Onseplacedanslerpertoiredeconfiguration
Snort
tarxvzfsnortrules.tar.gz Dcompactagedesrgles

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
S E C U R I N E T S
C l u b d e l a s c ur i t i n f o r m at i q ue
I N S A T

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,parmicesoptions
onpeutciter:
Option Description
v Listetouslespaquetsreussur
lasortiestandard.
cfichier ActiveSnortenmode`Dtection
dintrusion`Ondonneen
paramtrelefichierde
configurationdesrglesde
dtection.Pardfaut,les
alertessontmmorisesdansle
fichieralert.
D Activesnortenmodedmon.
lrpertoire Activelemodejournalisationdes
paquetsetspcifielerpertoire
osontstockslesalerteset
lespaquetscapturs.Pardfaut,

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
S E C U R I N E T S
C l u b d e l a s c ur i t i n f o r m at i q ue
I N S A T

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.

Figur e2:For matdelargleSnor 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
Club de la scurit informatique
I N S A T
www.securinets.com
Tel : 20322191
S E C U R I N E T S
C l u b d e l a s c ur i t i n f o r m at i q ue
I N S A T

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.2
ICMPTTL:46TOS:0x0ID:9937IpLen:20DgmLen:28
Type:8Code:0ID:32676Seq:23169ECHO
=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=

[**]SCANFIN[**]
04/2323:27:49.202929192.168.0.1:59321>192.168.0.2:1
TCPTTL:52TOS:0x0ID:38933IpLen:20DgmLen:40
*******FSeq:0x26F2832BAck:0x0Win:0x400TcpLen:20
=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=

[**]SCANFIN[**]
04/2323:27:41.248172192.168.0.1:59321>192.168.0.2:10
TCPTTL: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.

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

Vous aimerez peut-être aussi