100% ont trouvé ce document utile (1 vote)
104 vues18 pages

Snort Installation

Ce document décrit la configuration d'un environnement de test pour Snort, un système de détection d'intrusion, en utilisant deux machines virtuelles et une machine physique. Il détaille l'installation et la configuration de Snort, ainsi que la simulation d'attaques pour tester son efficacité à détecter des activités malveillantes. Enfin, il aborde l'analyse des logs et des alertes générées par Snort lors de la détection d'intrusions.

Transféré par

christianbusa000
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
100% ont trouvé ce document utile (1 vote)
104 vues18 pages

Snort Installation

Ce document décrit la configuration d'un environnement de test pour Snort, un système de détection d'intrusion, en utilisant deux machines virtuelles et une machine physique. Il détaille l'installation et la configuration de Snort, ainsi que la simulation d'attaques pour tester son efficacité à détecter des activités malveillantes. Enfin, il aborde l'analyse des logs et des alertes générées par Snort lors de la détection d'intrusions.

Transféré par

christianbusa000
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

1.

Configuration du réseau de test


Pour configurer un environnement de test pour Snort, nous aurons besoin de deux machines
virtuelles (tournant sur Ubuntu) et d’une machine physique, que nous appellerons respectivement
« Machine-attaquante1", "HOTE" et "GROUPE-1 pour machine IDS". L'objectif est de simuler
un réseau où Snort fonctionnera en tant que système de détection d'intrusion (IDS) et la Machine
Attaquante générera du trafic malveillant pour que Snort puisse le détecter.

1.1.Environnement de Test :
L'objectif de cette étape est de créer un environnement de test où l’on pourra simuler des attaques
et observer comment votre Snort réagit.

1.1.1. Matériel :
Nous aurons besoin de :
- Machine virtuelle (tournant sur Ubuntu) appelée GROUPE1. C’est sur cette dernière qu’on
installera SNORT. Son adresse IP : 192.168.100.141
- Une machine virtuelle (tournant sur Ubuntu 20.04) nommée MACHINE-
ATTAQUANTE1 : elle sera utilisée comme machine attaquante. Son adresse IP est
192.168.100.145
- Une machine physique (tourant sur Windows 10 sur laquelle est installé l’outil de
virtualisation VirtualBox). Elle servira de machine hôte Son adresse IP est 192.168.100.138

Une fois que nous avez créé cet environnement de test isolé avec les bonnes configurations
réseau, nous pouvons passer aux étapes suivantes, notamment l'installation de Snort, la
configuration et la génération de trafic malveillant pour tester notre IDS.

L'objectif de cette étape est de s'assurer que notre IDS Snort peut surveiller le trafic entre les
deux machines et détecter toute activité malveillante.

2. Mise en place d’un IDS : Snort


2.1.Installation

Nous allons maintenant passer à l’installation de Snort, sachons que Snort peut fonctionner dans
trois modes différents :

 Sniffer : permet d’observer les paquets reçus


 Log de paquet : pour archiver les logs du réseau

Page 2
 IDS : génération d’alerte en fonction des comportements du réseau
Commençons par mettre à jour notre système, ouvrir terminal et taper les deux commandes
suivantes :
sudo apt-get update
sudo apt-get upgrade
Une fois le système mis à jour, nous allons installer Snort, pour cela tapons la commande
suivante :

sudo apt-get install snort

Figure : Installation de Snort


Nous allons arriver sur l’assistant de configuration de Snort, faisons « Entrer » sur la fenêtre de
présentation. Vous devez ensuite renseigner l’interface sur laquelle l’outil écoutera le réseau,
sélectionnez l’interface reliée à notre réseau local. Si nous ne connaissons pas le nom de notre
interface, ouvrir un second terminal et entrer la commande « ifconfig ». Nous obtiendrons le nom
de notre interface.

Ensuite il faut continuer l’opération cliquant « ok » pour dire oui.


Si aucune erreur ne survient vous aurez cette fenêtre :

Figure : Configuration de Snort


Dans le cas d’une erreur survenue, il faut taper la commande en mode privilégié :

sudo apt-get update

Ensuite, il faudra valider en appuyant sur la touche du clavier Tab pour sélectionner « OK »
comme sur la figure ci-dessus. Puis vient la configuration des interfaces sur les quelles Snort
écoutera

Page 3
Figure : Configuration du port eth0 en enp0s3
Il faut remplacer eth0 en enp0s3, valider.

Figure : Configuration de ensp0s3

Appuyer sur entrée pour continuer. Une fois que c’est terminé, il faudra configurer la plage
d’adresses du réseau local à surveiller.

Figure : Configuration de la plage d’adresses


Une fois que c’est terminé,

Page 4
Figure : configuration des plages d’adresse 192.168.100.0/24
2.2.Configuration de Snort.

- Accéder au répertoire de configuration de Snort : Les fichiers de configuration de Snort


sont situés dans le répertoire /etc/snort. Nous pouvons y accéder en utilisant la commande
suivante dans le terminal :

cd /etc/snort

- Configuration de snort.conf :

Le fichier principal de configuration de Snort est snort.conf.

Dans ce fichier, nous pouvons spécifier les règles de détection, les fichiers de sortie des journaux,
les réseaux à surveiller, etc. Nous devons personnaliser ce fichier en fonction de nos besoins à
partir de l'éditeur de texte nano suivant la commande :

sudo nano /etc/snort/snort.conf


Puis localisez la section de configuration des réseaux et interfaces. Elle ressemble à ceci :
# Setup the network addresses you are protecting
ipvar HOME_NET any

Page 5
Figure : localisation de la section de configuration des réseaux et interfaces
Nous allons modifier cette section pour définir HOME_NET any comme suit pour écouter le
réseau 192.168.100.0/24 :

# Setup the network addresses you are protecting


ipvar HOME_NET 192.168.100.0/24

Figure : Modification de l’adresse


Ensuite, on s’assure que l'interface d'écoute est correctement configurée.

Page 6
Toujours dans le fichier de configuration, nous allons ajouter à la fin les lignes manquantes pour
permettre la surveillance de l’interface. Dans d’autre cas ces lignes peuvent exister, il faut juste
les rechercher :
# Setup the network interface - the name of your network card
config interface: enp0s3
Lors de cette manipulation, il faut s’assurer que le nom de l'interface (enp0s3 dans notre cas)
correspond à votre interface réseau. Puis sauvegarder les modifications apportées au fichier
snort.conf et quitter l'éditeur de texte.

Figure : ajout de l’interface


Nous pouvons maintenant exécuter Snort en mode écoute en utilisant la commande suivante :
sudo snort -A console -q -u snort -g snort -c /etc/snort/snort.conf -i enp0s3
Après exécution de cette commande on constate que Snort écoute le trafic sur l'interface
spécifiée (enp0s3) et génére des alertes en cas de détection d'activités suspectes.

Figure : Exécution de Snort en mode écoute

Page 7
Cette configuration nous permet d'utiliser Snort pour surveiller le réseau 192.168.100.0/24 à
partir de l'interface enp0s3 de notre machine virtuelle Ubuntu. Il nous reste maintenant à simuler
des attaques

3. SIMULATION DES ATTAQUES

3.1.Installation des règles de détection :


Nous devons télécharger et ajouter des règles de détection spécifiques pour détecter les attaques
que nous souhaitons simuler. Nous pouvons télécharger les règles de détection de Snort à partir
du site officiel ou utiliser des règles personnalisées. Pour télécharger les règles de détection de
base :

sudo apt install snort-rules-default


Dans notre cas, nous allons créer et ajouter quelques-unes dans le fichier local.rules s’il n’existe
pas :
- Ouvrir le fichier de configuration Snort snort.conf situé dans le répertoire /etc/snort/ en
tapant la commande

sudo nano /etc/snort/snort.conf

- Recherchez la section "site specific rules". Si elle n'existe pas, on peut la créer à la fin du
fichier snort.conf. Elle doit ressembler à ceci :

# site specific rules include $RULE_PATH/local.rules

Dans notre cas, elle existe.

Figure : Affichage local.rules

Page 8
- Maintenant, on va ouvrir ou créer le fichier local.rules dans le même répertoire
($RULE_PATH) en utilisant la commande

sudo nano /etc/snort/rules/local.rules

- Dans ce fichier local.rules, on va ajouter nos règles personnalisées :


 Détection de tentatives de scan de port depuis une adresse IP extérieure vers des
machines du réseau 192.168.100.0/24 :

alert tcp !$HOME_NET any -> 192.168.100.0/24 any (msg:"Tentative de scan de port depuis
l'extérieur"; sid:10001;)
 Détection de tentatives de force brute SSH :
alert tcp any any -> 192.168.100.141 22 (msg:"Tentative de bruteforce SSH"; content:"Failed
password"; sid:10002;)
 Détection d'attaques par déni de service (DoS) :
alert udp any any -> 192.168.100.0/24 any (msg:"Attaque UDP anormalement volumineuse";
dsize:>1000; sid:10003;)
 Détection d'attaques ICMP :
alert icmp any any -> 192.168.100.0/24 any (msg:"Attaque ICMP"; itype:8; sid:10004;)
Après avoir ajouté ces règles à local.rules, enregistrer le fichier et quitter l'éditeur de texte.
- Nous allons redémarrer Snort pour appliquer les nouvelles règles personnalisées avec la
commande :
sudo systemctl restart snort

Figure : ouverture du fichier local.rules et redémarrage Snort


Les règles de détection que nous avez spécifiées dans local.rules seront désormais prises en
compte par Snort lorsqu'il analysera le trafic réseau.

Page 9
Figure : ajout des règles de détection spécifique

- Lancement de Snort :
Nous allons de nouveau lancer Snort avec la configuration créée en utilisant la commande
suivante :
sudo snort -A console -q -u snort -g snort -c /etc/snort/snort.conf -i enp0s3

Figure : console de Snort

3.2.Simulation des attaques :


Nous pouvons maintenant simuler des attaques sur le réseau de test à l'aide des outils comme
Nmap pour le scanning de port, Hydra pour les attaques par force brute, etc. Pour cela, nous
allons effectuer un Scanning de port avec Nmap. Pour effectuer des tests avec Nmap, nous allons
l’installer sur la machine attaquante car il est courant d'utiliser une machine distincte pour
effectuer des tests de sécurité sur le réseau.

Page 10
Nous effectuerons ces tests à partir de la machine attaquante 1. Nous devons au préalable
l’installer.

3.2.1. INSTALLATION NMAP SUR LA MACHINE ATTAQUANTE 1

Pour installer Nmap sur Ubuntu, il faut suivre les étapes suivantes :
Ouvrir un terminal et exécuter les commandes suivantes :
sudo apt update
sudo apt install nmap

Lors de l’exécution de la deuxième commande, on va demander de continuer, valider Y pour yes


3.2.2. SCANNING DE PORTS AVEC NMAP :

Pour simuler une analyse de ports sur un hôte ou dans le réseau surveillé, nous utiliserons Nmap.
Nous allons effectuer deux scans :
3.2.2.1.Scan dans tout le réseau 192.168.100.0/24 en CIDR :
Taper la commande :
nmap 192.168.100.0/24

Figure : scan de ports dans tout le réseau 192.168.100.0/24


3.2.2.2.Scan uniquement vers la machine portant Snort (192.168.100.141)
Taper la commande :
Nmap 192.168.100.141

Page 11
Nous allons constater que tous les ports de cette machine sont fermés.

Figure : Scan de port de la machine IDS snort

Après avoir effectué ces attaques simulées, nous pouvons vérifier les alertes générées par Snort
en consultant les journaux et les rapports. Snort devrait enregistrer des alertes pour les activités
malveillantes détectées.

Figure : Affichage de la console Snort après Scan de port

4. ANALYSE DE LOGS ET ALERTES GENEREES

4.1.Analyse des logs et alertes :


4.1.1. Créations et configuration du dossier de récupérations des logs de Snort

Page 12
Snort génère des logs et des alertes lorsqu'il détecte une activité suspecte. Nous devons
premièrement créer un répertoire de logs nommé snort_logs puis qu’il n’existe pas encore.

Pour cela, tapons la commande suivante toujours en mode privilégié pour créer ce répertoire
dans le répertoire des utilisateurs de Snort :

mkdir snort_logs

Puis faisons un ls dans le terminal pour vérifier qu’il est bien créé.

Figure : création du fichier snort_logs

Ensuite rentrons dans le fichier snort.conf pour configurer la redirection des logs de Snort dans
ce dossier. Tapons la commande :

sudo nano /etc/snort/snort.conf

Les lignes spécifiques pour le répertoire de logs (var LOGDIR), le mode de log (var
LOGMODE), et le format du nom de fichier de log (var LOGNAME) ne sont pas définies dans
notre fichier snort.conf, Nous allons les ajouter pour personnaliser la configuration des logs.
Voici comment nous procèderons :

Page 13
4.1.1.1.Création du répertoire de logs (var LOGDIR) :

Nous allons spécifier le répertoire snort_logs personnalisé en ajoutant la ligne suivante dans
notre fichier snort.conf :

var LOGDIR /home/groupe1/snort_logs

4.1.1.2.Création du mode de log (var LOGMODE) :

Pour spécifier le mode d'écriture des fichiers de logs (append ou overwrite), nous allons ajouter
la ligne suivante dans notre fichier snort.conf :

var LOGMODE append

Cela indiquera à Snort d'ajouter les entrées de log au fichier existant plutôt que de les écraser.

4.1.1.3.Format du nom de fichier de log (var LOGNAME) :

Nous allons personnaliser le format du nom de fichier de log en ajoutant la ligne suivante dans
notre fichier snort.conf :

var LOGNAME snort.log

Une fois ces lignes ajoutées à notre fichier snort.conf, enregistrons-le et redémarrons Snort pour
que les modifications prennent effet. Snort créera ensuite les fichiers de logs en fonction de ces
paramètres personnalisés dans le répertoire que nous avons spécifié.

Figure : Ajout des variables

Nous allons nous assurez que l'utilisateur sous lequel Snort s'exécute a les permissions
nécessaires pour écrire dans le répertoire snort_logs. Nous allons faire :

Page 14
- Vérification de l'existence du répertoire :

Ouvrir un terminal et exécuter la commande suivante pour vérifier si le répertoire de logs


spécifié existe déjà :

ls /home/groupe1/snort_logs

Si le répertoire existe, il s'affichera dans la liste des fichiers et répertoires. Si ce n'est pas le cas,
nous devons le créer en utilisant la commande mkdir comme expliqué précédemment.

- Vérification des permissions :

Nous pouvons utiliser la commande ls -l pour afficher les permissions du répertoire et s’assurer
que l'utilisateur sous lequel Snort s'exécute a les droits d'écriture.

Exécutons la commande suivante pour afficher les permissions du répertoire de logs :

ls -l /home/groupe1/snort_logs

Nous avons une sortie qui ressemble à ceci :

drwxr-xr-x 2 groupe1 groupe1 4096 Sep 19 10:00 snort_logs

on va également s’assurer que l'utilisateur "groupe1" a les droits d'écriture (w) pour le répertoire.
Si ce n'est pas le cas, nous utiliserons la commande chmod pour ajouter les droits d'écriture :

chmod +w /home/groupe1/snort_logs

Cela permettra à l'utilisateur "groupe1" d'écrire dans le répertoire de logs.

- Test d'écriture :

Nous allons créer un fichier de test dans le répertoire pour nous assurer que l'utilisateur peut y
écrire. Pour ce faire, nous utiliserons la commande touch pour créer un fichier vide :

touch /home/groupe1/snort_logs/test.txt

Si aucun message d'erreur n'est affiché, cela signifie que l'utilisateur a les permissions d'écriture
appropriées.

Une fois que le répertoire de logs est créé et configuré dans le fichier snort.conf, Snort
enregistrera ses fichiers de logs dans cet emplacement spécifié.

sudo tail -f /var/log/snort/alert

Page 15
Cela vous montrera en temps réel les alertes générées par Snort.

4.2.Analyse des logs et alertes

Prenons une alerte générée dans le fichier logs et analysons-la :

Alerte : tentative de scan de ports depuis l’extérieur (TCP), priority 0, 34.117.65.55 :443 ->
192.168.100.141 : 44710

L'alerte générée indique une tentative de scan de ports depuis l'extérieur (utilisation du protocole
TCP) avec les détails suivants :

 Priority 0 : Cela peut être une indication de la gravité de l'alerte. Les priorités plus
élevées indiquent des alertes potentiellement plus graves.

Page 16
 34.117.65.55 :443 : C'est l'adresse IP source (34.117.65.55) et le port source (443) de
l'attaquant.
 192.168.100.141 : 44710 : C'est l'adresse IP de destination (votre machine) et le port de
destination (44710) qui a été ciblé par l'attaque.

Cette alerte suggère qu'une tentative de scan de ports a été détectée depuis l'adresse IP
34.117.65.55 vers votre machine (192.168.100.141) sur le port 44710.

4.3.Proposition de mesures de sécurité :

Pour faire face à une tentative de scan de ports depuis l'extérieur, vous pouvez prendre plusieurs
mesures de sécurité pour renforcer votre système et protéger vos ressources réseau. Voici
quelques recommandations :

Une tentative de scan de ports depuis l'extérieur, comme celle que vous avez détectée
avec Snort, peut indiquer une activité malveillante visant à identifier des vulnérabilités
sur vos systèmes. Voici des mesures de sécurité que vous pouvez prendre pour faire face
à cette situation :

4.3.1. Surveillance et Analyse :


- Continuez de surveiller le trafic réseau à l'aide de Snort ou d'autres outils de détection
d'intrusion.
- Analysez régulièrement les logs de Snort pour détecter des tendances ou des modèles
d'attaque.
4.3.2. Bloquer les IP malveillantes :
- Identifier et bloquer l'adresse IP source (34.117.65.55) qui a tenté le scan de ports depuis
l'extérieur.
- Utiliser des listes de blocage d'adresses IP (comme IPtables) pour empêcher cette IP
d'accéder à notre réseau.
4.3.3. Mises à Jour et Correctifs :
- S’assurer que tous les systèmes et logiciels exposés sur Internet sont à jour avec les derniers
correctifs de sécurité.
- Réduire les services inutiles pour réduire la surface d'attaque.
4.3.4. Renforcement de la Sécurité du Pare-feu :

Page 17
- Réviser et renforcer notre configuration de pare-feu pour bloquer ou surveiller les activités
suspectes.
- Mettre en place des règles de pare-feu qui limitent le trafic entrant aux ports nécessaires.
4.3.5. Notification et Réponse aux Incidents :
- Établir un plan de réponse aux incidents pour réagir rapidement en cas de menace sérieuse.
- Définir des alertes pour être informé immédiatement des activités suspectes.
4.3.6. Surveillance des Fichiers de Log :
- Examiner les fichiers de log système et d'application à la recherche d'indices d'une
éventuelle intrusion.
- Corréler les données provenant de plusieurs sources pour détecter des comportements
anormaux.
4.3.7. Plan de Gestion des Vulnérabilités :
- Mettre en place un plan de gestion des vulnérabilités pour identifier et corriger rapidement
les vulnérabilités.
4.3.8. Test de Pénétration :

Effectuer des tests de pénétration réguliers pour identifier les faiblesses de notre réseau et les
corriger.

Page 18
CONCLUSION GENERALE

La mise en place d'un système de détection d'intrusion tel que Snort dans un environnement de
test est une étape cruciale pour renforcer la sécurité d’un réseau. Cet exposé a couvert en détail
les étapes essentielles pour configurer, installer, et tester Snort, tout en fournissant des
recommandations de sécurité importantes.

L'importance de Snort réside dans sa capacité à détecter les activités malveillantes et les
comportements suspects, ce qui permet de prévenir les menaces potentielles avant qu'elles ne
causent des dommages importants. Cependant, Snort est aussi puissant que sa configuration et sa
personnalisation. Nous avons appris comment personnaliser les règles de détection pour répondre
à nos besoins spécifiques.

En surveillant et en analysant les alertes générées par Snort, nous pouvons identifier les
vulnérabilités, les tentatives d'intrusion, et les activités malveillantes. Cela nous donne la
possibilité de prendre des mesures de sécurité proactives pour renforcer notre réseau.

En fin de compte, la sécurité des réseaux est un processus continu qui nécessite une vigilance
constante et une mise à jour régulière des configurations et des règles de détection. Snort est un
outil puissant qui peut contribuer de manière significative à renforcer la sécurité d’un réseau,
mais il doit être utilisé en conjonction avec d'autres mesures de sécurité pour offrir une
protection complète.

En suivant les bonnes pratiques de sécurité, en restant informé des dernières menaces et en
maintenant une surveillance constante, nous pouvons réduire considérablement les risques
d'attaques et assurer la sécurité de nos systèmes et des données. Sans oublier que la sécurité est
un effort collectif, et la mise en place de solutions de détection d'intrusion telles que Snort est
une étape importante vers un réseau plus sécurisé.

Page 19

Vous aimerez peut-être aussi