TARGET DECK: Sécurité des réseaux et de leurs protocoles::Attaques et sécurisation des couches OSI::Couche 7 - Application::IPS
# Qu’est-ce qu’un système de prévention d’intrusion ?
Comme son nom l’indique, les systèmes de prévention d’intrusion (IPS) vont encore plus loin que les systèmes de détection d’intrusion : après avoir détecté une attaque potentielle, ils informent non seulement l’administrateur, mais mettent aussi immédiatement en place des **contre-mesures** appropriées. Ainsi on évite d’avoir un délai trop long entre la détection d’un problème et la réaction face à ce dernier, contrairement à ce qui peut se produire avec les logiciels [[IDS]]. Toutefois il n’existe pratiquement aucune différence entre les deux **mécanismes de protection du réseau** au niveau des méthodes d’analyse qui sont utilisées. Comme un [[IDS]], un IPS moderne utilise des capteurs hôte et réseau pour enregistrer et évaluer les données du système et les paquets du réseau.
<!--ID: 1698484882513-->
Un système de prévention d’intrusion doit généralement être configurable de manière individuelle afin d’éviter que les actions courantes de l’utilisateur ne soient alors classifiées comme dangereuses et donc bloquées par le détecteur d’anomalies. Cela apporte la garantit de pouvoir mettre en œuvre à la fois des systèmes de prévention et de détection d'intrusion avec de nombreux programmes et ainsi **de choisir entre le blocage actif et la surveillance pure** : comme Snort et Suricata avec les applications open source énumérées plus haut. Il est donc concevable d'avoir un système combinant les deux approches ou d'utiliser deux systèmes distincts. Cette dernière variante est recommandée car le filtrage et le blocage peuvent être distribués dans différents environnements matériels.
La portée du logiciel IPS utilisé peut varier considérablement, comme l’illustre l’exemple des deux logiciels open source DenyHosts et Snort.
## DenyHosts : la réponse simple à l’attaque par force brute
A l’aide de l’outil DenyHosts écrit avec le langage de programmation Python, vous pouvez installer un système de prévention d’intrusion basé sur un hôte pour **vos connexions SSH/SSHD** qui détecte et bloque les [[Attaques de force brute]]. Pour cela, l’application open source **vérifie les entrées du log d’authentification** pour détecter de nouvelles tentatives de connexion SSH qui ont échouées. Si le nombre de tentatives échouées et effectuées à partir d'une seule adresse IP dépasse un nombre défini par l'utilisateur, DenyHosts bloque alors cette IP et l'inscrit dans une liste noire. De cette façon, l'attaquant se verra refuser à l'avenir la possibilité de s'enregistrer s'il utilise la même adresse.
<!--ID: 1698484882518-->
Les seules conditions préalables sont un **système d’exploitation unixoid** et le langage de script **Python** avec le module ipaddr, qui sont des standards inclus dans la plupart des distributions. Les versions actuelles de l’outil IPS se trouvent dans le répertoire officiel de [DenyHosts GitHub](https://github.com/denyhosts/denyhosts "Cliquez ici pour accéder au projet DenyHosts sur GitHub"). Une alternative possible est le framework de sécurité [Fail2ban](https://www.ionos.fr/digitalguide/serveur/securite/proteger-son-serveur-grace-a-fail2ban/ "Protéger son serveur grâce à Fail2ban").
## Snort : des règles flexibles pour sécuriser un réseau
Dès 1998, le programmeur Martin Roesch a publié le logiciel de sécurité Snort, au départ dans une version Unix. Depuis 2013, **Cisco Systems** est responsable du développement du programme multiplateforme et sous licence GPL. La société américaine propose différents **modèles d’abonnements commerciaux** pour ce logiciel gratuit, ces abonnement permettent aux particuliers tout comme aux entreprises de mettre à jour les règles plus rapidement et de fournir un support utilisateur supplémentaire. Snort offre la possibilité de créer de puissants systèmes de prévention d’intrusion sur réseau. Toutefois, vous pouvez aussi configurer le logiciel pour qu'il permette de surveiller simplement les composants respectifs et ainsi servir de base à un système de détection d'intrusion.
<!--ID: 1698484882523-->
Snort vérifie le trafic réseau en temps réel et utilise Misuse Detection Engine BASE pour l’analyse. Il compare les paquets de données entrants et sortants avec les entrées de signature nommés dans les **règles** Snort (Rules). Cisco Systems ajoute régulièrement à cet ensemble de règles des modèles d’attaques récemment découverts, les clients qui payent un abonnement reçoivent des mises à jour plus rapidement. Vous pouvez aussi définir vos propres règles **pour améliorer les capacités de détection de votre système Snort**. Pour plus d’informations sur l’utilisation gratuite ou payante de Snort, vous pouvez visiter le [site officiel de Snort](https://snort.org/ "Snort, le logiciel de détection et de prévention d’intrusion du réseau").