pfSense : installer l’IDS Snort
Nous allons voir dans cet article comment installer le package Snort sur un routeur/pare-feu pfSense, et ainsi en faire un IDS voir même un IPS !
Avant de commencer, il convient d’abord d’expliquer un peu ce qu’est un IDS et la différence avec un IPS.
IDS :
Système de détection d’intrustion en français, c’est un service qui va surveiller le réseau et alerter en cas de trafic malicieux, mais il ne va pas prendre lui-même des mesures pour bloquer/mitiger ces attaques ou tentatives d’attaques. Snort est un IDS.
IPS :
Système de prévention d’intrusion, c’est ce service qui va permettre de bloquer, mitiger, rediriger les attaques sur le réseau. Snort a une option permettant de bloquer les hôtes malveillants agissants sur le réseau, mais cette fonctionnalité reste basique et en entreprise il est conseillé de bien séparer IDS/IPS, mais nous verrons tout de même son activation ici 😉
Bien, une fois notre pfSense installé et configuré, nous nous rendons dans le Packet Manager :

On clique ensuite sur Install puis Confirm et l’installation se lance ! Rien de très compliqué donc.
Une fois installé, Snort apparaîtra dans l’onglet Services. Une fois rendu dessus, nous allons dans un premier temps aller sur l’onglet Global Settings :

La première étape est donc d’activer le téléchargement de règles gratuites, en cochant la première case (Enable Snort VRT). Il faudra renseigner une clé et pour l’obtenir il vous faudra créer un compte sur le site officiel de Snort (très rapide à effectuer, ne vous en faites pas).
Et ensuite nous pouvons cocher les cases :
- Enable Snort GPLv2, pour les règles communautaires ;
- Enable ET Open, qui sont des règles proposées par la société ET ;
- Enable OpenAppID, éventuellement, qui est une autre société ;
Et ensuite, pour les derniers paramètres il convient simplement de configurer l’update pour les différentes règles, c’est-à-dire le délai avant de vérifier les mises à jour pour les différentes règles ou pour de nouvelles :

12H est suffisant, mais en entreprise il conviendra de mettre 6H par précaution. Et pour l’heure de début de vérification pour les updates, j’ai choisi 01:00 (à vous de choisir l’heure qui vous convient).
Une fois cliqué sur Save, nous pouvons nous rendre sur l’onglet Updates et manuellement mettre à jour les différentes règles que nous avons cochées juste avant (ici cela prendra un peu plus de temps, car nous allons toutes les télécharger une première fois, forcément) :

Une fois la mise à jour terminé, nous approchons de la fin ! Rendons-nous donc sur Snort interfaces pour choisir l’interface (ou les interfaces) sur laquelle Snort va écouter et analyser le trafic :

Ici nous choisissons donc l’interface de notre choix (LAN ici), puis une courte description, et ensuite nous cochons simplement le fait d’envoyer les alertes sur le système de log interne, ce qui est toujours bien.
A noter qu’ici, nous pouvons justement faire de Snort un IPS, en cochant la case Block Offenders :

En faisant cela, Snort va donc bloquer les hôtes générant des alertes… Faites donc bien attention en production, car nous ne sommes jamais à l’abri de faux positifs ! (Un serveur WSUS qui fait des scans de temps à autre et hop, c’est le ban !)
Et enfin pour le reste nous n’allons pas nous y attarder, il s’agit de l’algorithme pour la recherche d’intrusion ainsi que les options avancées :

On valide et le tour est joué !
L’avant dernière étape est d’activer toutes les règles précédemment téléchargées en nous rendant dans LAN Categories, sur Snort Interfaces, LAN en cochant l’option Use IPS Policy :

On valide donc le tout, et on retourne à la liste des interfaces de Snort pour cliquer sur Start :

Hop là ! Rien de plus simple ! On peut même s’amuser un peu pour vérifier que Snort fonctionne bel et bien et tenter de lancer un petit nmap via Kali Linux, histoire de voir si nous arrivons à passer sous les radars ou non…


Woops, on dirait bien qu’on est grillé… et idem avec un petit wpscan :

Et bien voilà ! C’était un article ma foi assez rapide mais désormais vous savez comment installer et configurer Snort en tant qu’IDS/IPS sur un pfSense !
10 comments