Mahdi Bouzarouata - Snort Config
Mahdi Bouzarouata - Snort Config
Mahdi Bouzarouata - Snort Config
PROJET DE SECURITE
Thème:
Snort/Mysql et Base
Réalisé par :
BOUZAROUATA Mahdi
Encadré par :
Pr. Mustapha Hedabou
On installe la bibliothèque libdnet, qui fournit une interface simplifiée, portable à plusieurs
routines de mise en réseau de bas niveau, y compris la manipulation des adresses réseau :
7) mkdir /usr/local/snort
8) mkdir /usr/local/snort
9) cd /usr/local/snort
10) wget http://libdnet.googlecode.com/files/libdnet-1.12.tgz
11) tar xzvf libdnet-1.12.tgz
12) cd libdnet-1.12/
13) ./configure
14) make
15) make install
16) ln -s /usr/local/lib/libdnet.1.0.1 /usr/lib/libdnet.1
Et pour capturer le trafic Réseau, on va installer l’outil libpcap, qui permet de sauvegarder
les paquets capturés dans un fichier, et la lecture de fichiers provenant de captures
précédentes :
17) cd /usr/local/snort
18) wget http://www.tcpdump.org/release/libpcap-1.3.0.tar.gz
19) tar zxf libpcap-1.3.0.tar.gz
20) cd libpcap-1.3.0
21) ./configure
22) make
23) make install
24) echo “/usr/local/lib” >> /etc/ld.so.conf
25) ldconfig –v
Les nouvelles versions de Snort ont introduit une nouvelle API d'acquisition de données (Data
AcQuisition library DAQ). Alors on aura besoin de télécharger et l'installer avant de mettre en
place le serveur Snort :
26) cd /usr/local/snort
27) Wget
http://switch.dl.sourceforge.net/project/snort/OLD%20STUFF%20THAT%20YOU%20S
HOULDNT%20USE/daq-2.0.2.tar.gz
28) tar zxvf daq-2.0.2.tar.gz
29) cd daq-2.0.2
30) ./configure
31) make
32) make install
Installation et configuration de Snort
33) sudo apt-get install snort
Pendant l’installation de Snort, on doit mentionner le sous-réseau protégé par l’IDS, ici c’est :
192.168.21.0/24.
Snort utilise un langage de description de règles légère simple, souple et assez puissant, ces
règles sont appliquées sur les paquets sniffés par Snort, et sont définit dans le fichier de
configuration des rules de Snort :
Dans ce fichier on met deux règles, une pour le protocole ICMP, qui sera déclenché si il y a
un Ping sue le réseau, et l’autre règle sur le protocole http de port 80 :
40) alert icmp any any -> $HOME_NET any (msg:"ICMP Test NOW!!!"; classtype:not-
suspicious; sid:1000001; rev:1;)
41) alert tcp any any -> $HOME_NET 80 (msg:"HTTP Test NOW!!!"; classtype:not-
suspicious; sid:1000002; rev:1;)
( snort est le nom utilisateur de base de données, rootroot et son password, localhost est
l’adresse du base de données )
Installation et Configuration de MySQL :
On installe le serveur de base de données MySQL par la commande suivante :
60) sudo apt-get install mysql-server
(Entrer le mot de passe du l’utilisateur root du BD : rootroot)
Puis on créer un utilisateur snort, et ses droit d’accès, les bases de données Snort et Archive :
61) sudo mysql -u root –p (mot de passe rootroot)
62) create database snort;
63) create database archive;
64) grant usage on snort.* to snort@localhost;
65) grant usage on archive.* to snort@localhost;
66) set password for snort@localhost=PASSWORD('rootroot');
67) grant all privileges on snort.* to snort@localhost;
68) grant all privileges on archive.* to snort@localhost;
69) flush privileges;
70) exit
Ensuite on génère les tables de MySQL à partir de la structure interne de Snort :
71) sudo mysql -u root –p rootroot
72) use snort;
73) source /usr/src/create_mysql;
74) show tables; (Affichages des tables importés)
75) exit
#!/bin/sh
case $1 in
start)
echo "Starting Barnyard2"
sudo bash -c "barnyard2 -D -c /etc/snort/barnyard2.conf -d /var/log/snort -f snort.log -n"
echo 'Barnyard2 started.'
;;
stop)
echo "Stopping Barnyard2"
sudo killall barnyard2
echo 'Barnyard2 stopped.'
;;
restart)
$0 stop
sleep 4
$0 start
;;
*)
echo "usage: $0 (start|stop|restart)"
;;
esac
exit 0
83) sudo chmod 700 /etc/init.d/runbarnyard2
84) sudo update-rc.d runbarnyard2 defaults 21 00
et pour lancer Baynard2 comme étant un Deamon, on modifie le fichier Baynard2.conf :
85) sudo gedit /etc/snort/barnyard2.conf
86) on décommente la ligne «config daemon »
Et pour lancer le Daemon de Baynard2, on peut utiliser la commande suivante :
87) sudo /etc/init.d/runbarnyard2 start/stop/restart
Installation de Apache2 :
88) sudo apt-get install apache2
89) sudo apt-get install libapache2-mod-php5
90) sudo apt-get install libphp-adodb
Puis on modifie le fichier, "/etc/php5/apache2/php.ini", la ligne de "error_reporting", et on la
change en :
91) error_reporting = E_ALL & ~E_NOTICE
Ensuite on ajoute l’autorisation pour « www/base » dans le fichier
« /etc/apache2/apache2.conf »:
-----------------------------------------------------------------------------------------------------
<Directory /var/www/html/base>
AllowOverride All
Require all granted
</Directory>
-----------------------------------------------------------------------------------------------------
A ce stade, une erreur va être déclenché en affichant «ne pouvait pas extraire le fichier
package.xml ». Cela est dû à une évolution de PEAR. Et pour remédier à ce problème on doit
manuellement installer les six 6 PEAR Packages.
Installation de BASE :
99) cd /usr/src
100) sudo wget https://code-jinchengjiang.googlecode.com/files/base-1.4.5.tar.gz
101) sudo tar -zxf base-1.4.5.tar.gz
102) sudo cp -r base-1.4.5 /var/www/html/base
103) sudo chown -R www-data:www-data /var/www/html/base
104) sudo service apache2 restart
Configuration de BASE :
On lance la page web « http://localhost/base », puis on suit les 5 étapes de configuration en
saisissant les paramètres nécessaires.
Pour tester le système, on va faire un ping d’une autre machine, dans notre cas la machine
host @IP 192.168.21.50, puis on vérifie l’interface BASE.
Machine host :
Apres Authentification, on peut voir toutes les informations sur le Dashboard de Snort :
Et vue qu’on a fait beaucoup de requete Ping, le taux d’erreur ICMP est grand :
On accède de l’extérieur, vers le serveur web à l’app de BASE :
Pour verifier les logs en Base de données, voici une prise d’écran de la table event avec
phpMyAdmin :