Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
snort [Le 25/11/2009, 18:03]
psychederic
snort [Le 31/08/2022, 23:29] (Version actuelle)
moths-art Passage de http à https sur les liens externes (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892)
Ligne 1: Ligne 1:
-{{tag>​pare-feu sécurité réseau vétuste ​brouillon ​}}+{{tag>​pare-feu sécurité réseau vétuste ​BROUILLON ​}}
 ====== SNORT - Système de détection d'​intrusion ====== ====== SNORT - Système de détection d'​intrusion ======
  
 +[[https://​www.snort.org/​|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.
  
-SNORT® est un logiciel de détection d'​intrusion réseau géré par des règles (rules). Je ne vais pas m'​attarder sur le sujet, en quelques mots : c'est le cheval gagnant en matière de détection d'​intrusion,​ utilisé par beaucoup d'​entreprises et organisations gouvernementales , snort est aussi très utile pour les particuliers,​ c'est le mouton a 5 pattes.  +<​note>​**[[Snort inline]]** ​est une  ​version ​//améliorée// de snort pour en faire un IPS (Système de prévention d'​intrusion ), capable de bloquer les intrusions/​attaques.</​note>​
- +
-Site officiel : [[http://​www.snort.org/​]] +
- +
-Voir : **[[Snort inline]]**version ​'améliorée' ​de snort pour en faire un IPS (Système de prévention d'​intrusion ), capable de bloquer les intrusions/​attaques. +
 ===== Installation ===== ===== Installation =====
-==== Par dépot ​==== +==== Par dépôt ​====
- +
- +
-Il faut commencer par installer **snort** et **oinkmaster**,​ [[apt://​snort,​oinkmaster,​snort-rules-default|en cliquant ici]], ou :+
  
-<​code>​sudo ​apt-get install ​snort oinkmaster snort-rules-default</​code>​+[[:​tutoriel:​comment_installer_un_paquet|Installez les paquets]] **[[apt>snort,oinkmaster,snort-rules-default|oinkmaster snort snort-rules-default]]**
  
 ==== Par Compilation ==== ==== Par Compilation ====
  
-Pour ceux qui voudraient faire l'​installation en le compilant c'​est ​ici : [[http://www.system-linux.eu|http://www.system-linux.eu]] (catégorie sécurité)+Pour ceux qui voudraient faire l'​installation en le compilant c'est [[https://www.snort.org/​downloads|ici]] pour obtenir les dernières sources et [[https://www.snort.org/​docs|là]] pour trouver de la documentation.
  
 ===== Configuration ===== ===== Configuration =====
  
 +  - [[:​tutoriel:​comment_modifier_un_fichier|Éditez avec les droits d'​administration]] le fichier **/​etc/​oinkmaster.conf**.\\ Dans la section ​ "​Location of rules archive",​ commentez ((ajoutez un dièse #)) la ligne :<​file>#​url = https://​www.snort.org/​dl/​rules/​snortrules-snapshot-2_2.tar.gz</​file>​et ajoutez juste en dessous la ligne suivante :<​file>​url = http://​rules.emergingthreats.net/​open-nogpl/​snort-2.8.4/​emerging.rules.tar.gz</​file>​
 +  - Attention cette commande peut nécessiter une adaptation en fonction de la version de snort. Cette version s'​obtient à l'aide de <​file>​snort -V</​file>​ et l'URL en allant sur le site rules.emergingthreats.net/​open-nogpl.
 +  - Saisissez dans un [[:​terminal]] la [[:​commande_shell|commande]] suivante : <​code>​sudo oinkmaster -o /​etc/​snort/​rules</​code>​Si vous avez une erreur du type : <​code>/​usr/​sbin/​oinkmaster:​ Error: the temporary directory "/​var/​run/​oinkmaster"​ does not exist or isn't writable by you.</​code>​Créez alors le dossier temporaire indiqué avec la commande : <​code>​sudo mkdir /​var/​run/​oinkmaster</​code>​puis relancez la commande :<​code>​sudo oinkmaster -o /​etc/​snort/​rules</​code>​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 : <​code>​crontab -e</​code>​ pour y ajouter cette ligne : <​code>​55 13 * * 6 /​usr/​sbin/​oinkmaster -o /​etc/​snort/​rules</​code>//​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): <​code>​sudo -s</​code>​puis :<​code>​echo "#​EmergingThreats.net Rules" >> /​etc/​snort/​snort.conf</​code>​
 +  - Ouvrez un autre terminal en root (sudo -s) et placez-vous dans le répertoire **/​etc/​snort/​rules** <​code>​cd /​etc/​snort/​rules</​code>​
 +  - Saisissez puis validez cette ligne de code pour vous simplifier la vie : //édition au 20/06/11 : erratum qui fonctionne vraiment// :<​code>​for i in `ls emerging*` ; do echo "​include \$RULE_PATH/"​$i >> /​etc/​snort/​snort.conf ; done;</​code>​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à.
 +  - [[:​tutoriel:​comment_modifier_un_fichier|É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 ((ajouter un dièse #))quelques unes (pour plus de détail sur "​pourquoi bloquer certaines règles?"​ reportez-vous au [[https://​www.snort.org/​|site officiel snort.org]]) :<​file>#​include $RULE_PATH/​emerging-botcc-BLOCK.rules</​file><​file>#​include $RULE_PATH/​emerging-compromised-BLOCK.rules</​file><​file>#​include $RULE_PATH/​emerging-drop-BLOCK.rules</​file><​file>#​include $RULE_PATH/​emerging-dshield-BLOCK.rules</​file><​file>#​include $RULE_PATH/​emerging-rbn-BLOCK.rules</​file><​file>#​include $RULE_PATH/​emerging-sid-msg.map</​file><​file>#​include $RULE_PATH/​emerging-sid-msg.map.txt</​file>​
  
-Ensuite éditez oinkmaster.conf:​ +Et voilà SNORT est installé et prêt à fonctionner et à guetter toute intrusion.\\ 
- +Démarrez SNORT avec la commande :
-<​code>​sudo gedit /​etc/​oinkmaster.conf</​code>​ +
- +
-Dans la section ​ "​Location of rules archive",​ commentez 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://​www.emergingthreats.net/​rules/​emerging.rules.tar.gz +
- +
-Ensuite lancez la commande: +
-<​code>​sudo oinkmaster -o /​etc/​snort/​rules</​code>​ +
- +
-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.// +
-Il faut simplement créer le dossier temporaire avec la commande: +
- +
-<​code>​sudo -s (entrez mot de passe)</​code>​ +
- +
-Puis: +
- +
-<​code>​mkdir /​var/​run/​oinkmaster</​code>​ +
- +
-et ensuite relancez la commande: +
- +
-<​code>​sudo oinkmaster -o /​etc/​snort/​rules</​code>​ +
- +
-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. +
- +
-Ensuite lancez la commande: +
- +
-<​code>​crontab -e</​code>​ +
- +
-et ajoutez cette ligne: +
- +
-<​code>​55 13 * * 6 /​usr/​sbin/​oinkmaster -o /​etc/​snort/​rules</​code>​ +
- +
-ctrl o et ctrl x pour sauver et quitter le fichier. +
- +
-Ensuite insérez un commentaire a la fin du fichier snort.conf (pour s'y retrouver avec l'​insertion des futures règles): +
- +
-<​code>​sudo -s</​code>​ +
- +
-puis +
- +
-<​code>​echo "#​EmergingThreats.net Rules" >> /​etc/​snort/​snort.conf</​code>​ +
- +
-Puis ouvrez un autre terminal en root (sudo -s) et placez vous dans: +
- +
-<​code>​cd /​etc/​snort/​rules</​code>​ +
- +
-puis lancez un petit programme que j'ai fait pour vous simplifier la vida: +
- +
-<​code>​for i in `ls -1 emerging*` ; do echo "​include \$RULE_PATH/"​$i ; done >> /​etc/​snort/​snort.conf</​code>​ +
- +
-erratum : ''​**for i in `ls -1 emerging*` ; do echo "​include \$RULE_PATH/"​$i ​ » /​etc/​snort/​snort.conf ; done;​**''​  +
- +
- +
-Cela va vous économiser une bonne dixaine 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 installer Snort sur des centaines de serveurs, on veut toujours gagner un peu plus de temps ici et la. +
- +
-Ensuite editez snort.conf:​ +
- +
-<​code>​sudo vi /​etc/​snort/​snort.conf</​code>​ +
- +
-Tout en bas du fichier, en dessous de **#​EmergingThreats.net Rules** vous allez voir toute les règles insérées avec la méthode ci-dessus, il faut en commenter quelques unes (pour plus de detail sur "​pourquoi bloquer certaines regles?":​[[http://​www.snort.org/​]]):​ +
- +
-Commentez #include $RULE_PATH/​emerging-botcc-BLOCK.rules +
- +
-Commentez #include $RULE_PATH/​emerging-compromised-BLOCK.rules +
- +
-Commentez #include $RULE_PATH/​emerging-drop-BLOCK.rules +
- +
-Commentez #include $RULE_PATH/​emerging-dshield-BLOCK.rules +
- +
-Commentez #include $RULE_PATH/​emerging-rbn-BLOCK.rules +
- +
-Commentez #include $RULE_PATH/​emerging-sid-msg.map +
- +
-Commentez #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: +
 <​code>​sudo /​etc/​init.d/​snort start</​code>​ <​code>​sudo /​etc/​init.d/​snort start</​code>​
  
-Si vous souhaitez pousser la sécurité ​son presque maximum dans la branche intrusion, ​lancez ces commandes: +Si vous souhaitez pousser la sécurité ​à son presque maximum dans la branche intrusion, ​[[:tutoriel:​comment_installer_un_paquet|installez les paquets]] **[[apt>​logcheck,logcheck-database,rkhunter,binutils|logcheck logcheck-database rkhunter binutils]]** puis lancez RootKit Hunter :
- +
-<code>sudo aptitude install ​logcheck logcheck-database rkhunter binutils</​code>​ +
- +
-Ensuite ​lancez RootKit Hunter: +
 <​code>​sudo -s <​code>​sudo -s
 rkhunter -c</​code>​ rkhunter -c</​code>​
Ligne 118: Ligne 36:
 Et veillez à prendre chaque message de mise en garde au sérieux... Et veillez à prendre chaque message de mise en garde au sérieux...
  
 +Vous trouverez sur [[https://​forum.ubuntu-fr.org/​viewtopic.php?​pid=2647403|ce fil du forum]] un autre article sur Snort.
 +=====Pages connexes=====
 +
 +====Optimiser snort====
 +FIXME
 +==== IPS reseau ====
 +
 +   * [[Snort Inline]] - solution officielle, désormais intégrée dans snort : compiler avec l'​option --enable-inline
 +   * [[IPS]] en conjonction de [[snort]] :
 +       * [[http://​www.chaotic.org/​guardian/​|Guardian]] - Active Response for Snort
 +       * [[http://​www.snortsam.net/​|SnortSam]]
 +       * [[http://​snort2c.sourceforge.net|Snort2c]],​ un fork de snort2pf
 +       * [[https://​sourceforge.net/​projects/​snort2pf|Snort2pf]] ​
 +
 +====Monitoring compatible snort====
 +   * [[Prelude]].
 +   * [[https://​help.ubuntu.com/​community/​SnortIDS|tutoriel]] (en) d'​installation et de configuration d'​AcideBase conjointement à Snort.
  
-Voici un autre article sur snort: [[http://​forum.ubuntu-fr.org/​viewtopic.php?​pid=2647403]] 
 ===== Liens ===== ===== Liens =====
 ==== Ressources ==== ==== Ressources ====
 +Règles :
   * (en) [[http://​www.emergingthreats.net/​index.php/​rules-mainmenu-38.html|Emerging Threats]] : Communauté maintenant des jeux de règles (rulesets) pour Snort   * (en) [[http://​www.emergingthreats.net/​index.php/​rules-mainmenu-38.html|Emerging Threats]] : Communauté maintenant des jeux de règles (rulesets) pour Snort
 +  * (en) [[http://​sagan.softwink.com/​|Les règles de sagan]]
 +  * (en) [[http://​www.bleedingsnort.com/​|Bleedingsnort]]
 +
  
 Des interfaces utilisateurs libres (monitoring):​ Des interfaces utilisateurs libres (monitoring):​
   * [[http://​sguil.sourceforge.net/​|Sguil]] - Une interface ​ open source de surveillance de la sécurité réseau   * [[http://​sguil.sourceforge.net/​|Sguil]] - Une interface ​ open source de surveillance de la sécurité réseau
-  * [[http://​base.secureideas.net/​ Basic Analysis and Security Engine]]+  * [[http://​base.secureideas.net/​]] - Basic Analysis and Security Engine 
 + 
 +====Tutoriel==== 
 +   * [[http://​arnofear.free.fr/​linux/​template.php?​tuto=11&​page=1|Tutoriel]]
  
 ==== Documentation ==== ==== Documentation ====
Ligne 132: Ligne 73:
  
 ---- ----
-//Contributeur ​: **David Schwindenhammer,​ Tucson AZ USA**// [[:​tutoriel:​comment_editer_un_fichier|éditez le fichier]]+//Contributeurs ​: **Racoon97**//
  • snort.1259168580.txt.gz
  • Dernière modification: Le 18/04/2011, 14:56
  • (modification externe)