Qu’est-ce que Snort ?
Snort est un système open source de détection et de prévention des intrusions (IDS/IPS)
qui surveille le trafic réseau et identifie les activités potentiellement malveillantes sur les
réseaux IP (Internet Protocol). Les organisations peuvent utiliser Snort par
l’intermédiaire d’un langage de règles qui combine différentes méthodes d’inspection
(protocoles, signatures et anomalies) pour détecter les paquets malveillants dans le trafic
réseau et bloquer les vecteurs d’attaque potentiels.
Cas d’usage de Snort
Surveillance du trafic réseau en temps réel : Snort permet de surveiller le trafic
réseau en temps réel détectant les paquets ou les menaces potentiellement malveillant
sur les réseaux IP ;
Analyse des protocoles : Snort effectue une analyse approfondie des protocoles réseau. Il
recherche des modèles correspondant à des signatures de menaces connues ;
Analyse des paquets et journalisation : Snort capture le trafic réseau sur une interface
locale et peux être utiliser comme un enregistreur de paquet pour déboguer le trafic réseau ;
Correspondance de contenu : regroupement des règles en fonction des protocoles et
des ports, puis en fonction de leur contenu ou non ;
Empreinte du système d’exploitation : permet de savoir à partir de quel os un
système a accès ou a eu accès au réseau ;
Compatibilité avec tous les systèmes d’exploitation.
Alertes et règles : Snort génère des alertes pour tout paquet inhabituel découvert dans
le trafic réseau, conformément aux règles configurées, l’on peut personnaliser nos
propres règles Snort pour différencier l’activité régulière du réseau a l’activité
anormale
Différents modes de Snort
Snort peux fonctionner sous 3 modes différents à savoir :
Mode sniffer : Snort lit les paquets TCP/IP et affiche les informations relatives aux
paquets sur la console. Ce mode permet d’observer les paquets reçus sans générer
d’alertes. Il est utile pour le débogage et l’analyse du trafic réseau en temps rée l. Il offre une
flexibilité d’utilisation pour une surveillance en temps réel {Indicateur -V}
Utilisation
Débogage réseau : Pour identifier les problèmes de réseau, les erreurs de
configuration ;
Sécurité : Pour détecter les tentatives d’intrusion, les attaques malveillantes ou les
comportements suspects ;
Analyse du trafic : Pour étudier le trafic réseau, surveiller les performances, etc.
Détection des goulots d’étranglement du trafic : Pour identifier les ralentissements
du trafic. Cela permet de localiser les problèmes de performance et d’optimiser les
réseaux ;
Test des pares-feux : Les sniffeurs sont employés pour évaluer l’efficacité des pares-
feux. Ils permettent de vérifier si les règles de filtrage sont correctement appliquées et
si le trafic autorisé passe sans encombre ;
Collecte de données statistiques : Les sniffeurs sont utilisés pour recueillir des
informations sur la bande passante, la disponibilité du réseau, les taux d’utilisation,
etc. Ces données sont essentielles pour la surveillance et l’optimisation du réseau ;
Déchiffrement des paquets : Dans certains cas, les sniffeurs sont utilisés
pour déchiffrer les paquets cryptés. Cela peut être utile pour analyser le trafic chiffré
et détecter des menaces potentielles ;
Détection des activités malveillantes : Les sniffeurs sont employés pour repérer les
comportements suspects. Ils peuvent aider à identifier les tentatives d’intrusion, les
attaques de logiciels malveillants et d’autres activités anormales ;
NB : il peut fonctionner en 2 modes à savoir
En mode normale : En fonctionnement normal, la carte réseau filtre le trafic qui n’est pas
destiné à son adresse MAC (ou diffusion). Elle ignore les trames qui ne lui sont pas
directement destinées.
En mode promiscuité : En mode promiscuité, la carte réseau traite toutes les trames,
qu’elles lui soient destinées ou non
Les règles de sniffage peuvent être configurer en interface graphique par le logiciel NetScaler
Protocoles vulnérables au reniflement
Les protocoles suivants sont vulnérables au reniflement :
TELNET : frappes, y compris les noms d’utilisateur et les mots de passe sont
en texte clair,
IMAP : mots de passe et données envoyés en texte clair,
HTTP : données envoyées en texte clair,
SMTP : mots de passe et données envoyés en texte clair,
POP : mots de passe et données envoyés en texte clair,
FTP : mots de passe et données envoyés en texte clair.
Mode log de paquet : Snort enregistre les paquets TCP/IP entrants dans un répertoire
de journalisation sur le disque en vue d’une analyse ultérieure. {Indicateur : -I}
Utilisation :
Audit de sécurité : Les journaux de paquets permettent aux administrateurs de vérifier les
activités suspectes, les tentatives d’intrusion et les vulnérabilités potentielles.
Analyse rétrospective : En cas d’incident, les journaux de paquets fournissent des
informations pour retracer les événements et comprendre ce qui s’est passé.
Conformité : Certains secteurs (comme la finance ou la santé) exigent la conservation de
journaux de paquets pour des raisons de conformité.
Mode NIPDS : SNORT n’enregistre que les paquets considérés comme malveillants
selon les paramètres qu’on aura définis. {Indicateur : -C}. Dans ce mode, Snort agit à
la fois comme un système de détection d’intrusion (IDS) et un système de prévention
d’intrusion (IPS).
Utilisation :
Le mode NIPDS est particulièrement utile pour réduire la charge de stockage associée à
l’enregistrement de tous les paquets. Il permet de se concentrer sur les paquets pertinents pour la
sécurité.
En cas d’incident, les journaux générés en mode NIPDS fournissent des informations
spécifiques sur les attaques détectées, ce qui facilite l’analyse rétrospective.
L’IDS surveille le trafic réseau, détecte les activités suspectes et génère des alertes en
fonction des règles configurées.
L’IPS va plus loin en bloquant activement le trafic malveillant pour prévenir les
attaques.
En fonction des besoins, Snort peut être activé en mode IPS ou IDS. En mode IDS, Snort
inspecte le trafic et signale les alertes, mais ne prend aucune mesure pour empêcher les
attaques. En mode IPS, outre la détection des intrusions, des actions sont prises pour
empêcher les attaques.
Snort en tant qu’IPS
Pour agir en tant qu’ips, la configuration du mode inline est nécessaire. Le mode
inline dans Snort est une configuration qui permet à Snort d’agir en tant que système de
prévention d’intrusion (IPS). Snort inline communique avec iptables via la bibliothèque libipq. Il
emploie des règles (drop, reject…) pour indiquer à iptables si on devrait rejeter, modifier ou laisser
passer un paquet.
Fonctionnement :
En mode inline, Snort agit comme un pont transparent entre deux segments de réseau. Voici
comment cela fonctionne :
Snort dispose de deux interfaces réseau, chacune sur un segment de réseau différent.
Ces interfaces sont configurées sans adresse IP et en mode promiscuité.
Lorsque Snort s’exécute, il écoute le trafic sur chaque interface.
Si Snort détecte un trafic malveillant ou suspect, il peut rejeter les paquets en temps
réel
Snort inline charge une base de signatures d’attaques.
Lorsqu’un paquet de données entre dans le réseau, Snort inline le confronte à sa base
de signatures afin de vérifier la présence de paquets de réseau malveillants.
Le noyau s’en charge en poussant les paquets de données dans une file d’attente à
l’aide du module IP queue.
Snort inline devrait commencer à traiter les paquets contenus dans l’IP queue et donc
reprendre une activité réseau normale.
Rôle :
En mode inline, Snort agit comme un système de prévention d’intrusion (IPS). Voici ce qu’il
peut faire :
Bloquer les paquets : Snort peut abandonner ou rejeter les paquets correspondant à
des règles de détection.
Abandonner les tentatives d’exploitation : Si Snort détecte une tentative
d’exploitation, il peut immédiatement abandonner le paquet pour empêcher toute
action malveillante
Snort en tant qu’IDS
Snort, en tant que système de détection d’intrusion (IDS), est un outil puissant pour surveiller et
protéger les réseaux contre les activités malveillantes
Fonctionnement
Snort analyse le trafic réseau en temps réel à la recherche de signatures correspondant à des
attaques connues. Il peut également détecter des anomalies en surveillant les modèles de trafic
et en générant des alertes lorsque des comportements inhabituels sont détectés.
Snort utilise une base de données de signatures pour comparer le trafic réseau avec des
modèles connus d’attaques. Les mises à jour régulières de la base de données garantissent que
Snort reste efficace contre les nouvelles menaces.
Rôle
Surveillance du trafic réseau : L’IDS analyse en permanence le trafic réseau à la recherche
d’activités suspectes ou malveillantes. Il surveille les paquets entrants et sortants pour détecter
toute anomalie.
Détection des menaces : L’IDS identifie les attaques potentielles telles que les virus, les vers,
les tentatives d’intrusion et les activités malveillantes. Il utilise des signatures (modèles de
comportement) ou des méthodes basées sur l’anomalie pour repérer ces menaces.
Alertes et notifications : Lorsqu’une activité suspecte est détectée, l’IDS génère
des alertes pour informer les administrateurs. Ces alertes peuvent être consultées via des
consoles de gestion centralisée.
Inconvénients
NIDS ne peut pas analyse des informations chiffrées (cryptées). Ce problème a lieu
dans les organisations utilisant le VPN.
Type d’IDS
Il existe plusieurs types d’IDS, chacun avec ses propres caractéristiques et méthodes de
détection
IDS basés sur les signatures : Ces IDS recherchent des correspondances
exactes entre les signatures de menaces connues et le trafic réseau. Ils utilisent des
bases de données de signatures pour identifier les attaques courantes telles que les
virus, les vers et les attaques de déni de service (DoS).
Avantages : Faciles à configurer et efficaces pour détecter des menaces connues.
Inconvénients : Ne détectent pas les nouvelles menaces ou les variantes de signatures.
IDS basés sur l’anomalie : Ces IDS surveillent le trafic réseau et identifient les
comportements anormaux par rapport à un modèle de trafic normal. Ils apprennent les
modèles de trafic au fil du temps et génèrent des alertes lorsque des déviations
significatives sont détectées.
Avantages : Capables de détecter des menaces inconnues et des comportements
inhabituels.
Inconvénients : Peuvent générer des faux positifs.
IDS hybrides : Les IDS hybrides combinent les approches basées sur les signatures et
les anomalies. Ils utilisent à la fois des règles de détection spécifiques et des modèles
de trafic normaux pour améliorer la précision de la détection.
Avantages : Équilibre entre la détection des menaces connues et inconnues.
Inconvénients : Plus complexes à configurer
IDS réseau : Surveillent le trafic réseau au niveau des commutateurs, des routeurs et
des pares-feux.
Avantages : Peuvent détecter les menaces avant qu’elles n’atteignent les systèmes finaux.
Inconvénients : Ne peuvent pas détecter les menaces internes.
IDS hôte : Surveillent les activités sur des systèmes individuels (hôtes).
Avantages : Peuvent détecter les activités suspectes sur des machines spécifiques.
Inconvénients : Ne surveillent que l’hôte spécifique.
IDS basés sur le comportement : Surveillent les modèles de comportement des
utilisateurs et des applications.
Avantages : Détectent les activités anormales liées aux utilisateurs et aux
applications.
Inconvénients : Nécessitent une configuration fine pour éviter les faux positifs.
Type de règles de Snort
Snort n’évalue pas les règles dans l’ordre où elles apparaissent dans le fichier de
configuration ; il les examine plutôt en fonction de leur type, qui spécifie l’action à
entreprendre lorsque Snort trouve un paquet qui correspond aux critères de la règle.
Les cinq types de règles de base de Snort sont les suivants :
Règles d’alerte : Snort génère une alerte lors de la détection d’un paquet suspect dans
le trafic réseau. Elles permettent de détecter des activités malveillantes potentielles.
Les règles d’alerte sont efficaces pour identifier les menaces connues
Règles de blocage : Snort bloque le paquet suspect et tous les paquets suivants dans le
flux du réseau. Ces règles sont utiles pour empêcher les attaques connues de se
propager.
Règles d’abandon : Snort abandonne le paquet dès la génération de l’alerte. Cela
signifie que le paquet ne sera pas transmis plus loin dans le réseau. Les règles
d’abandon sont utilisées pour réagir rapidement aux menaces.
Règles de journalisation : Snort enregistre le paquet dès la génération de l’alerte. Ces
règles sont utiles pour examiner les activités suspectes après coup. Elles permettent de
garder une trace des événements pour l’analyse ultérieure.
Règles de passage : Si le paquet est considéré comme malveillant, Snort l’ignore et le
laisse passer. Ces règles sont utilisées pour exclure certains types de trafic du
processus de détection.
Utilisation des règles de Snort
Les règles définies dans Snort permettent d’effectuer plusieurs actions à savoir
Effectuer le reniflage de paquet : Snort va collecter les données qui transite dans et
hors le réseau pour une analyse
Déboguer le trafic réseau : Snort va analyser le trafic, identifier les problèmes et les
corriger afin de maintenir le réseau stable et sécuriser (installer Nmap ou Netcat)
Généré des alertes :
Topologie d’utilisation de Snort
1. Topologie en étoile :
o Dans cette configuration, vous pouvez déployer un serveur Snort central au
siège social de l’entreprise. Tous les flux de données entre les sites passent par
ce serveur central.
o Chaque site dispose d’un capteur Snort positionné à son point d’entrée/sortie
(pare-feu, passerelle, etc.). Ces capteurs envoient le trafic au serveur central
pour analyse.
o Avantages : Surveillance centralisée, gestion simplifiée des règles et des
alertes.
o Inconvénients : Dépendance du serveur central
2. Topologie distribuée :
o Dans cette approche, chaque site dispose de son propre capteur Snort. Les
alertes sont générées localement et agrégées sur un serveur SIEM central.
o Avantages : Scalabilité, gestion efficace des alertes sur un réseau étendu.
o Inconvénients : Configuration et maintenance des capteurs individuels.
Un serveur Siem fournit une plateforme complète d’analyse et de gestion des données de
sécurité.
Le SIEM va au-delà de la simple détection. Il collecte, centralise et analyse les journaux et les
événements provenant de diverses sources dans un environnement informatique. Il s’agit d’un
centre de renseignements qui consolide les données afin d’offrir une vue d’ensemble du
paysage de la sécurité. Avec son champ d’application plus large, le SIEM ne se contente pas
de détecter, mais met également en corrélation les données, facilite l’analyse médico-légale et
prend en charge l’établissement de rapports de conformité
Structure Fondamentale des Règles Snort
Action : L’action détermine la réponse à une correspondance. L’action “alerte” est
couramment utilisée, signalant la détection d’une activité suspecte.
Protocole : Cette section spécifie le protocole réseau à surveiller, tel que TCP, UDP, ICMP,
etc. Elle définit le type de trafic que la règle cible.
Adresses IP Source et Destination : Définissent les adresses IP source et destination du
trafic à surveiller, permettant de préciser l’origine et la destination du flux de données
analysé.
Ports Source et Destination
Ces paramètres restreignent la règle à des flux de données spécifiques basés sur les ports
utilisés dans le trafic réseau.
Options Facultatives (Msg ; Sid)
Incluent des paramètres supplémentaires pour affiner les conditions de détection. Cela peut
inclure des messages personnalisés, des références à des vulnérabilités connues, des
identifiants de signature, et la révision de la règle.
Msg : Message d’alerte personnaliser
Sid : ID de signature unique
Quelque règle Snort à écrire
Attaques DoS
Attaque DDoS
Attaques CGI
Attaques par dépassement de tampon
Analyse furtive de port
Attaque par force brute
Attaque man-in-the-middle
Attaque spoofing
Quelques prérequis
Périmètre de sécurité
Définir ce que l’on souhaite protéger (Réseau, hôtes, DMZ…)
Définir le périmètre de sécurité (définir les différents points d’entre à sécuriser)
Définir une politique de sécurité (définir ce qui est autoriser ou interdit)
Test de vulnérabilité
Evaluer le niveau de sécurité actuel de ce que l’on souhaite protéger à travers différent techniques et
outils.
Tests de vulnérabilité non intrusif (kali linux)
Un test de vulnérabilité non intrusif est une approche qui vise à identifier les vulnérabilités
potentielles dans un système sans perturber son fonctionnement normal. Voici les étapes à
suivre pour effectuer un tel test en détail :
Reconnaissance :
Collectez des informations sur la cible (système, réseau ou application) pour
comprendre son fonctionnement, son architecture et ses points d’entrée.
Utilisez des outils tels que Nmap pour scanner les ports ouverts (fonction principale)
et découvrir les services exposés
Analyse de vulnérabilité :
Identifiez les vulnérabilités connues dans les services, les applications et les systèmes
d’exploitation.
Utilisez des scanners de vulnérabilité comme Open VAS, Nessus ou Qualys pour
détecter les failles sans perturber le système
Évaluation des risques :
Évaluez l’impact et le risque associés à chaque vulnérabilité identifiée.
Classez les vulnérabilités par ordre de priorité pour déterminer celles qui nécessitent
une attention immédiate
Stratégies d’atténuation :
Élaborez des stratégies pour remédier aux vulnérabilités identifiées.
Prévoyez des mesures correctives pour renforcer la sécurité globale du système
٭ Création des mots de passe fort
٭ Authentification a 2 facteurs
٭ Mise à jour régulière des logiciels
٭ Utilisation des pares-feux
٭ Sensibilisation des utilisateurs sur les techniques d’attaque tels que le phishing et
l’hameçonnage
٭ Installer des méthodes de chiffrement
NB : Authentification et chiffrement sont indissociables :
Chiffrer sans authentifier ne protège pas des usurpations d’identité (attaque de type
man in the middle),
Authentifier sans chiffrer laisse la porte ouverte au vol de données. (Attaque de type
fuite de donnée)
Outils de Test de Sécurité :
Voici quelques outils populaires pour évaluer la sécurité de votre réseau :
o Nmap : Pour la découverte d’hôtes et l’analyse des ports.
o Nessus : Un scanner de vulnérabilités complet.
o Open VAS : Une alternative open source à Nessus.
Formation des équipes de sécurité sur l’utilisation de l’IDS
Introduction à la cybersécurité : Comprendre les risques et les enjeux liés à
la sécurité informatique.
Fonctionnement d’un IDS : Expliquer les principes de base, les types d’IDS
(comme les IDS réseau, les IDS hôtes, etc.) et leurs rôles dans une architecture
réseau.
Installation et configuration d’un IDS : Pratique sur la mise en place d’un
IDS spécifique (par exemple, Suricata).
Analyse des alertes : Interprétation des alertes générées par l’IDS et prise de
mesures appropriées.
Bonnes pratiques de gestion des IDS : Maintenance, mises à jour,
surveillance continue, etc