Cette page est en cours de rédaction.
Apportez votre aide…
SNORT - Système de détection d'intrusion
Snort, maintenu par Sourcefire, est un système de détection d'intrusion libre pour le réseau (ou NIDS) publié sous licence GNU GPL. Sa configuration est gérée par des règles (rules) qu'une communauté d'utilisateur partage librement.
C'est également le cheval gagnant en matière de détection d'intrusion, utilisé par beaucoup d'entreprises et organisations gouvernementales. Snort est un des plus actifs NIDS Open Source et possède une communauté importante contribuant à son succès.
Installation
Par dépôt
Par Compilation
Pour ceux qui voudraient faire l'installation en le compilant c'est ici pour obtenir les dernières sources et là pour trouver de la documentation.
Configuration
- Éditez avec les droits d'administration le fichier /etc/oinkmaster.conf.
Dans la section "Location of rules archive", commentez 1) la ligne :#url = http://www.snort.org/dl/rules/snortrules-snapshot-2_2.tar.gz
et ajoutez juste en dessous la ligne suivante :
url = http://rules.emergingthreats.net/open-nogpl/snort-2.8.4/emerging.rules.tar.gz
- Attention cette commande peut nécessiter une adaptation en fonction de la version de snort. Cette version s'obtient à l'aide de
snort -V
et l'URL en allant sur le site rules.emergingthreats.net/open-nogpl.
- Saisissez dans un terminal la commande suivante :
sudo oinkmaster -o /etc/snort/rules
Si vous avez une erreur du type :
/usr/sbin/oinkmaster: Error: the temporary directory "/var/run/oinkmaster" does not exist or isn't writable by you.
Créez alors le dossier temporaire indiqué avec la commande :
sudo mkdir /var/run/oinkmaster
puis relancez la commande :
sudo oinkmaster -o /etc/snort/rules
Oinkmaster va alors se charger de télécharger les règles depuis le site emergingthreats vers /etc/snort/rules. Ce site change souvent de nom et d'URL car les règles étant publiques, toute personne avec de bonnes comme de mauvaises intentions peut y accéder. Malgré tout, ces règles sont très bien faites et emergingthreats dépense beaucoup de temps et d'énergie à nous faire de bonnes règles de détection.
- Lancez la commande :
crontab -e
pour y ajouter cette ligne :
55 13 * * 6 /usr/sbin/oinkmaster -o /etc/snort/rules
Ctrl+o et Ctrl+x pour sauver et quitter le fichier.
- Insérez un commentaire à la fin du fichier snort.conf (pour s'y retrouver avec l'insertion des futures règles):
sudo -s
puis :
echo "#EmergingThreats.net Rules" >> /etc/snort/snort.conf
- Ouvrez un autre terminal en root (sudo -s) et placez-vous dans le répertoire /etc/snort/rules
cd /etc/snort/rules
- Saisissez puis validez cette ligne de code pour vous simplifier la vie : édition au 20/06/11 : erratum qui fonctionne vraiment :
for i in `ls emerging*` ; do echo "include \$RULE_PATH/"$i >> /etc/snort/snort.conf ; done;
Cela va vous économiser une bonne dizaine de minutes en listant, (affichant) et insérant toutes les règles avec le mot "emerging" dans le fichier de conf de Snort. Très pratique, non ? Après avoir installé Snort sur des centaines de serveurs, on veut toujours gagner un peu plus de temps ici et là.
- Éditez avec les droits d'administration le fichier /etc/snort/snort.conf.
Tout en bas du fichier, en dessous de #EmergingThreats.net Rules vous allez voir toutes les règles insérées avec la méthode ci-dessus, il faut en commenter 2)quelques unes (pour plus de détail sur "pourquoi bloquer certaines règles?" reportez-vous au site officiel snort.org) :#include $RULE_PATH/emerging-botcc-BLOCK.rules
#include $RULE_PATH/emerging-compromised-BLOCK.rules
#include $RULE_PATH/emerging-drop-BLOCK.rules
#include $RULE_PATH/emerging-dshield-BLOCK.rules
#include $RULE_PATH/emerging-rbn-BLOCK.rules
#include $RULE_PATH/emerging-sid-msg.map
#include $RULE_PATH/emerging-sid-msg.map.txt
Et voilà SNORT est installé et prêt à fonctionner et à guetter toute intrusion.
Démarrez SNORT avec la commande :
sudo /etc/init.d/snort start
Si vous souhaitez pousser la sécurité à son presque maximum dans la branche intrusion, installez les paquets logcheck logcheck-database rkhunter binutils puis lancez RootKit Hunter :
sudo -s rkhunter -c
Et veillez à prendre chaque message de mise en garde au sérieux…
Vous trouverez sur ce fil du forum un autre article sur Snort.
Pages connexes
Optimiser snort
- Barnyard2 : Barnyard permet de prendre en charge l’inscription des événements en base de données et libère donc des resources à Snort qui peut davantage se concentrer sur la détection des intrusions.
IPS reseau
- Snort Inline - solution officielle, désormais intégrée dans snort : compiler avec l'option –enable-inline
Monitoring compatible snort
Liens
Ressources
Règles :
- (en) Emerging Threats : Communauté maintenant des jeux de règles (rulesets) pour Snort
- (en) Les règles de sagan
- (en) Bleedingsnort
Des interfaces utilisateurs libres (monitoring):
- Sguil - Une interface open source de surveillance de la sécurité réseau
- http://base.secureideas.net/ - Basic Analysis and Security Engine
Tutoriel
Documentation
Contributeurs : Racoon97