FWSnort est un ips ( système de prévention d'intrusion ) agissant de pair avec le pare-feu iptable ( intégré dans ubuntu/linux ) afin de bloquer des attaques réseau qu'il détecte.
fwsnort, comme son nom l'indique, convertit les règles de Snort dans le pare-feu iptables. fwsnort évalue d'abord votre pare-feu actuel et ajoute des règles pour le trafic acceptés. Par défaut, fwsnort logue le trafic suspect, et psad 1) surveille les journaux.
fwsnort accepte les arguments de ligne de commande pour restreindre le traitement à une classe particulière des règles snort comme "ddos", "backdoor" ou "web-attaques".
Le traitement peut même être limité à une règle Snort spécifique identifié par son "id snort" ou "sid". fwsnort fait usage de IPTables:: Parse module pour traduire les règles de Snort pour laquelle le trafic correspondant pourrait être passé à travers le jeu de règles iptables existants. Autrement dit, si iptables ne va pas passer, par exemple, le trafic HTTP, puis fwsnort ne comprendra pas les signatures HTTP au sein de l'ensemble de règles iptables qu'elle construit.
Si vous souhaitez utiliser une version de FWSnort qui n'est pas dans les dépôts officiels, il est nécessaire d'utiliser un kernel spécifique.
wget http://www.kernel.org/pub/linux/kernel/v2.4/linux-2.4.21.tar.bz2 wget http://www.netfilter.org/files/iptables-1.2.7a.tar.bz2 wget http://www.netfilter.org/files/patch-o-matic-20030107.tar.bz2 wget http://www.cipherdyne.com/fwsnort/download/string_replace_iptables.patch wget http://www.cipherdyne.com/fwsnort/download/string_replace_kernel.patch tar -jxf linux.2.4.21.tar.bz2 tar -jxf iptables-1.2.8.tar.bz2 tar -jxf patch-o-matic-20030107.tar.bz2 echo "Apply libipt_string patch to iptables source and build iptables kernel and user spaces code:" cd iptables-1.2.7a/extensions patch -p1 < libipt_string.c.patch make KERNEL_DIR=../linux-2.4.21 sudo make install KERNEL_DIR=../linux-2.4.21 echo "Next step is to apply a string match support from a patch-o-matic package. " cd patch-o-matic-20030107 KERNEL_DIR=../linux-2.4.21 ./runme extra make mrproper && make menuconfig make menuconfig make dep && make bzImage sudo make modules && make modules_install sudo cp arch/i386/boot/bzImage /boot/vmlinuz-2.4.21 sudo mkinitrd -f -v /boot/initrd-2.4.21.img 2.4.21
Redémarrer avec ce kernel.
fwsnortversion=fwsnort-1.1 cd ~/Téléchargements wget http://cipherdyne.org/fwsnort/download/$fwsnortversion.tar.gz tar xvf $fwsnortversion.tar.gz cd $fwsnortversion sudo ./install.pl
Lancer la récupération de règle de type snort :
sudo su cd /etc/fwsnort/snort_rules/ wget http://www.emergingthreats.net/rules/emerging.rules.tar.gz tar xvf emerging.rules.tar.gz cp rules/* .
Vous pouvez trouvez d'autres règles sur internet :
Bien qu'il existe une fonction fwsnort pour trier ce que vous allez ajouter au pare-feu, vous pouvez par exemple trier manuellement les fichiers rules. ( exemple : sudo nautilus /etc/fwsnort/snort_rules/ et déplacez ce qui ne vous sert pas dans un sous dossier )
La commande par défaut récupère http://www.emergingthreats.net/rules/emerging-all.rules 2) :
sudo fwsnort --update-rules
Lancez cette commande pour générer le script avec des règles choisi3) :
sudo fwsnort
Pour tout transformer en règle snort :
sudo fwsnort
Pour affiner le choix des règles ( voir :"man fwsnort" ) :
sudo fwsnort --include-regex scan
sudo fwsnort --include-type
sudo fwsnort --exclude-type
sudo fwsnort --snort-sid 2001842,1834
fwsnort --no-ipt-test --verbose
sudo /etc/fwsnort/fwsnort.sh
/etc/rc.local
/etc/fwsnort/fwsnort.sh
vous pouvez écrire vos propres profils AppArmor ou télécharger celui-ci 5):
sudo -i wget http://bodhizazen.net/aa-profiles/bodhizazen/ubuntu-10.04/usr.sbin.fwsnort wget http://bodhizazen.net/aa-profiles/bodhizazen/ubuntu-10.04/etc.fwsnort.fwsnort.sh aa-enforce usr.sbin.fwsnort etc.fwsnort.fwsnort.sh
sudo nano /etc/fwsnort/update.sh
cd /etc/fwsnort/snort_rules/ wget http://www.emergingthreats.net/rules/emerging.rules.tar.gz tar xvf emerging.rules.tar.gz cd rules echo "copiez ici les fichiers / rules que vous avez choisi pour votre configuration" echo " remplacez * par les noms de fichier séparé d'un espace" cp * /etc/fwsnort/snort_rules/ fwsnort /etc/fwsnort/fwsnort.sh
sudo chmod +x /etc/fwsnort/update.sh
/etc/crontab
15 17 * * * root /etc/fwsnort/update.sh
Voici quelques caractéristiques principales de "fwsnort":
Pour supprimer cette application, il suffit de supprimer son paquet. La configuration de l'application sera conservée ou supprimée selon la méthode de désinstallation que vous choisirez.
: Détailler ici les script à lancer pour désinstaller FWSnort.
FWSnort a fait l'objet d'un article de sécurité en vedette "Prévention basic d'intrusions en utilisant le filtrage basé sur le contenu" sur linuxsecurity.com, et est également apparue dans SysAdmin Magazine dans l'article "filtrage de contenu et inspection avec fwsnort et psad". fwsnort est également en vedette dans le livre "Resolution de Pare-feu Linux (R) " par Michael Shinn et Scott Shinn, et publié par Addison Wesley, et un traitement complet de fwsnort peuvent être trouvés dans "Linux Firewalls: Attack Detection and Response avec iptables, psad et fwsnort"publié par No Starch Press.
* (en) **[[http://bodhizazen.net/Tutorials/psad/|NIDS with psad and fwsnort]]** (ubuntu, debian, fedora) * (en) [[http://www.linuxsecurity.com/content/view/117370/49/|Basic Intrusion Prevention using Content-based Filtering]] * (en) [[http://www.tinker.tv/download/firewalls_ch10.pdf|DEPLOYING FWSNORT]]
—- Contributeurs : Psychederic, draco31.fr …