SECURINETS CLUB DE LA SECURITE INFORMATIQUE INSAT SECURIDAY 2012 Pro Edition [Application de notification en cas d incident] Roua TOUIHRI (RT3) Nesrine DRIWECH (RT3) Amira ABID(GL3) Chef Atelier : Aymen DRIRA (RT5)
Table des matières 1) Présentation de l atelier... 3 2) Outils utilisés :... 3 3) Topologie du réseau :... 5 4) Configuration des outils.... 5 5) Sénario de test... 8 6) Conclusion... 9 2
1) Présentation de l atelier Cet atelier présente une configuration de l IDS SNORT assisté par un système de surveillance appelé Swatch permettant d alerter un administrateur réseau en temps réel des intrusions qui arrivent. 2) Outils utilisés Snort : Snort est un système de détection d'intrusions réseau en Open Source, capable d'effectuer l'analyse du trafic en temps réel. On l'utilise en général pour détecter une variété d'attaques et de scans tels que des débordements de tampons, des scans de ports furtifs, des attaques CGI, des scans SMB, des tentatives d'identification d'os, et bien plus. Snort permet d analyser le trafic réseau, il peut être configuré pour fonctionner en plusieurs modes : Le mode sniffer : dans ce mode, SNORT lit les paquets circulant sur le réseau et les affiche d une façon continue sur l écran Le mode packet logger : dans ce mode SNORT journalise le trafic réseau dans des répertoires sur le disque. Le mode détecteur d intrusion réseau (NIDS) : dans ce mode, SNORT analyse le trafic du réseau, compare ce trafic à des règles déjà définies par l utilisateur et établi des actions à exécuter. Le mode Prévention des intrusions réseau (IPS) : c est SNORTinline. Fig1 : Architecture de Snort 3
L architecture de SNORT est modulaire, elle est composée de : Un noyau de base : (Packet Decoder) au démarrage, ce noyau charge un ensemble de règles, compile,optimise et classe celles-ci. Durant l exécution, le rôle principal du noyau est la capture de paquets. Une série de pré processeurs : ceux-ci améliorent les possibilités de SNORT en matière d analyse et de recomposition du trafic capturé. Ils reçoivent les paquets directement capturés, éventuellement les retravaillent puis les fournissent au moteur de recherche de signatures. Un ou plusieurs moteurs de détection (Detection Engine) applique une série d analyses aux paquets, ces analyses se composent principalement de comparaisons de différents champs des headers des protocoles (IP, ICMP, TCP et UDP) par rapport à des valeurs précises. Swatch Swatch est un parseur de log, qui va permettre au serveur d envoyer des mails d alertes dès qu une alerte de haute priorité sera détectée dans les logs de Snort POSTFIX Postfix est un serveur mail qui a vu le jour chez IBM en tant qu alternative pour le fameux programme Sendmail. Postfix est rapide, sécurisé et facile à administrer. 4
3) Topologie du réseau Fig 2 : topologie du réseau 4) Configuration des outils Configuration de snort Installation de snort sur Ubuntu 11.04 Aller à : Système administration gestionnaire des paquets synaptics Cocher snort et confirmer On introduit la ligne output alert_full: alert Cette modification configure snort à fin qu il enregistre les alertes générées par les fichiers des règles dans le fichier /var/log/snort/alert Fig2 : Modification du fichier /etc/snort/snort.conf 5
On démarre Snort à l aide de la commande : snort c /etc/snort/snort.conf Configuration de postfix Installation des utilitaires du mail $ sudo apt-get install mailutils Installation de postfix $ sudo apt-get install postfix Acceder au menu de configuration de postfix $ sudo spkg-reconfigure postfix Le deb-installer vous proposera une série de questions pour la configuration 1. Type of mail server : Satellite System 2. Mail Name : example.org (the name you want on your outbound mail) 3. SMTP relay host : smtp.gmail.com (@ du serveur smtp) 4. Postmaster : laisser vide 5. Other destinations : I left this blank 6. Synchronous Queues : votre choix n a pas d impact 7. Network blocks to allow relay :valeur par défault 8. Mailbox size : votre choix n a pas d impact 9. Local address : + 10. Listen Address : all On doit par la suite ajouter les lignes suivantes dans le fichier de config de postfix qui se trouve à /etc/postfix/main.cf pour activer TLS et les mots de passe des connexions sortantes. smtp_use_tls=yes smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd smtp_sasl_security_options = noanonymous smtp_sasl_tls_security_options = noanonymous On crée par la suite le fichier /etc/postfix/sasl_passwd avec une seule ligne (remplacer le user et le mot de passe par les votre) 6
smtp.gmail.com some.user@gmail.com:password reconstruire le hash: $ postmap /etc/postfix/sasl_passwd redémarrer postfix : $ sudo /etc/init.d/postfix restart Une fois postfix configuré l envoi du mail est désormais possible à l aide de la commande sendmail ou mail Configuration de swatch Installation de swatch $ sudo apt-get install swatch On crée le fichier de configuration de swatch sous /home/ubuntu/swatch $ sudo touch.swatchrc configuration SWATCH / SNORT Si l'on decommente les lignes si dessous: 5 bips (haut parleur PC) se feront entendre puis 'throttle' limite le nombre de fois ou le modele rencontre dans les logs doit apparaitre afin de declencher l'alerte. Ceci est utile en effet si vous ne souhaitez pas que pour chaque paquet recu sur un port specifique, un mail ne soit emis ou une pop?up affichee... watchfor /Priority\: 1/ bell 5 throttle 00:00:10 Si dessous meme syntaxe.. mais on envoie un mail. bold sert a ecrire en gras dans les logs.. watchfor /Priority\: 1/ echo bold exec /home/ubuntu/desktop/s_alert throttle 00:00:10 7
Watchfor : filtre le contenu du fichier alert et lance l exécution de la commande exec si elle rencontre la chaine de caractères passée en paramètre. exec : permet d exécuter un script ou une commande Le script à exécuter s appelle s_alert et il est formé comme suit : Fig2 : script d envoi du mail On démarre ensuite swatch pour surveiller le fichier alert de snort et exécuter le script s_alert $ swatch c /home/ubuntu/swatch/.swatchrc t /var:log/snort/alert Maintenant que tous nos outils sont configurés on passe à un sénario de test 5) Sénario de test On dispose de deux machines : Une machine A (système sur lequel est installé Snort) Une machine B (pirate) On démarre Snort sur la machine A en utilisant la commande : /etc/init.d/snort start On fait un scan fin à partir de la machine B (pirate) sur la machine A et on obtient instantanément une journalisation des alertes au niveau du fichier /var/log/snort/alert au niveau de la machine A 8
Fig3 : détection des alertes au niveau du fichier alert Grace à la configuration de Swatch un mail d alerte est immédiatement envoyé à la boite mail de l administrateur réseau à fin de l alerter qu une intrusion de niveau 2 a été détecté et qu une personne est en train de scanner le réseau Fig4 : capture de la boite mail de l administrateur Conclusion Les systèmes de détection d intrusion sont d une importance majeure dans le monde professionnel et leur interaction avec l administrateur réseau est de nos jours encore plus indispensable pour la sécurité de l entreprise et de ses informations, c est pourquoi il est primordial de s équiper d un tel mécanisme d alerte qui permet aux responsables de sécurité informatique de réagir à temps et d etre au courant des risques ou des tentatives d attaques et de pouvoir s en protéger. 9