WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Mise en place d'un système de détection d'intrusion avec snort.

( Télécharger le fichier original )
par Yanice CHACHA
Ecole Supérieure de Gestion d'Informatique et des Sciences - Licence en Ingénierie Informatique et Réseaux (Option: Systèmes Réseaux et Sécurité;) 2013
  

Disponible en mode multipage

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

    REPUBLIQUE DU BENIN

    Fraternité-Justice-travail

    ******************

    MINISTERE DE L'ENSEIGNEMENT SUPERIEUR ET DE LA RECHERCHE SCIENTIFIQUE (MESRS)

    **************************

    ECOLE SUPéRIEUR DE GESTION D'INFORMATIQUE ET

    DES SCIENCES (ESGIS)

    *************************************

    RAPPORT DE STAGE

    NIVEAU D'éTUDE : Licence

    FILIèRE : Ingénierie Informatique et Réseaux

    (Option : Système Réseaux et Sécurité)

    THEME :

    Mise en place d'un système de

    détection d'intrusion avec

    SNORT

    Réalisé et soutenu par : Vanice CHACHA Sous la direction de :

    Mr Wilfried QUENUM

    Année académique : 2013-2014

    Dédicace

    :

    Nous dédions cette oeuvre :

    ? A Dieu tout puissant pour toute sa bienveillance et l'aide de son esprit saint pour l'accomplissement de mes oeuvres ;

    ? A mes parents, qui ont voulu le meilleur pour nous, recevez ce travail comme source de reconnaissance et d'une profonde affection.

    Remerciements :

    La réalisation de ce rapport ne serait effective sans l'appui de certaines personnes ressources à qui nous devons une reconnaissance particulière. Nous tenons donc de façon sincère à adresser nos remerciement à l'endroit de :

    ? Notre maître de mémoire M. Wilfried QUENUM qui en dépit de ses multiples occupations n'a ménagé aucun effort pour mettre à notre disposition l'expertise nécessaire pour la réalisation de ce rapport ;

    ? Tout le personnel de la Direction de l'Informatique le LinKnet Africa, pour leur franche collaboration, leur aide et leurs explications ;

    ? A tous ceux qui ont participé de près comme de loin à la rédaction de ce rapport.

    Pour finir ces mots de remerciements, nous exprimons notre gratitude à tous ceux qui par leur soutien et conseils ont contribué d'une manière ou d'une autre à la réalisation de ce travail.

    Yanice CHACHA

    Plan

    Introduction

    Première partie :

    I- Présentation de Linknet Africa Sarl

    II- Tâches accomplies au cours du stage

    Deuxième partie :

    I- Objectifs

    II- IDS, IPS et Choix de SNORT

    III- Fonctionnement, avantages, inconvénients et limites

    1- Fonctionnement de SNORT

    2- Définition des règles de snort

    3- Positionnement de SNORT dans le réseau

    4- Avantages, inconvénients et Limites

    IV- Installation et Configuration de snort

    V- Difficultés rencontrées

    Conclusion

    Réalisé et présenté par Yanice CHACHA

    6

    Mise en place d'un système de détection d'intrusion avec SNORT

    INTRODUCTION

    L'informatique de l'entreprise fournit le support et l'accès au Système d'Information(SI). Le SI est constitué de l'ensemble des données qui représentent les principaux risques. «Le 31 janvier 2014, Orange France a informé certains de ses abonnés (800 000) qu'ils ont été la cible d'une intrusion. Pas plus tard que quelques mois, ils se sont encore fait voler des données clients. Cette fois, près de 1,3 million de personnes seraient concernées. Et il ne s'agit plus seulement d'abonnés, mais aussi de prospects liés à d'autres fournisseurs. Autant de contacts à qui l'opérateur a dû écrire en insistant sur les conséquences de l'attaque, c'est-à-dire les risques de « phishing » encourus».

    Ces chiffres sont loin d'être suffisants pour expliquer les risques auxquels s'expose un système informatique mal ou peu sécurisé, mais assez effrayants pour me pousser à porter mon choix sur le thème : « Mise en place d'un système de détection d'intrusion avec SNORT»

    Mon rapport s'articule en deux parties :

    - une première portera sur la présentation de Linknet Africa SARL, société où j'ai

    effectué mon stage, et des tâches que j'ai accomplies durant mon apprentissage.

    - et la deuxième, sur la mise en place de l'IDS SNORT. Je m'appesantirai ici sur le fonctionnement, l'installation, la configuration du système et enfin quelques tests pratiques.

    Présentation de la structure

    d'accueil

    Première partie :

    Réalisé et présenté par Yanice CHACHA

    8

    Mise en place d'un système de détection d'intrusion avec SNORT

    I- Présentation de Linknet Africa Sarl

    LinkNet Africa Sarl est une Société de Service et d'Ingénierie Informatique (SSII) créée par des Ingénieurs MCSE (Microsoft Certified System Engineer) et CCNA (Cisco Certified Network Associate) en Mai 1998. Elle est spécialisée dans l'offre de services dans les domaines des Réseaux Informatiques, de l'Internet et des Télécommunications.

    LinkNet Africa Sarl offre ses prestations pour la configuration et l'implémentation des services à valeur ajoutée sur les réseaux TCP/IP. On peut citer entre autres services : la configuration d'environnement Intranet/Internet, l'interconnexion de sites distants, la Voix sur IP (VOIP), la configuration de routeur Cisco, l'installation de connexion XDSL... etc....

    Le savoir-faire de Linknet Africa Sarl réside notamment dans sa compétence prouvée à travers la mise en oeuvre de solutions simples, pratiques et adaptées à l'environnement technologique de notre pays, qui respectent les normes requises. Linknet Africa Sarl accompagne aussi ses clients dans la sélection, l'acquisition et la gestion des équipements centraux de leur système d'Information.

    Métier

    Réseaux Informatiques :

    Configurations, Serveurs, Interconnexion, Voix sur IP, Wireless, Câblage, Formation, Matériel, Conseil, Rédaction Cahier de Charge ...

    Télécommunications :

    Ingénierie, VPN, Installateur Réseau interne et Centrale privée PABX, Liaison radio, Terminaux...

    Internet :

    Sites Web, Hébergement, Configurations et Routage, Server mail, ADSL, SDSL...

    nologies

    Système d'Exploitation :

    Microsoft Serveur, Linux, Novell Netware ...

    Langages:

    Java, Visual-Basic, VBA, C++, XML, PHP, JavaScript, Html, SQL, langages SAS (L4G, Macro, SCL, SQL)

    Bases de données :

    SAS, MySQL, SQL Server, Access, Oracle

    Analyses Statistiques:

    SAS System, Dataware house, Data mining

    Réalisé et présenté par Yanice CHACHA

    9

    Mise en place d'un système de détection d'intrusion avec SNORT

    A- Structuration de Linknet Africa

    LNA est constitué de cinq (5) départements qui se présentent comme suit:

    a. La direction générale

    Cette unité assurée par le Directeur général Mr Martin ATCHADE s'occupe de l'existence de plans d'actions et de leur cohérence. Elle suit la réalisation des objectifs de LNA et contrôle la mise en place d'actions correctrices au sein de la société. Enfin elle gère et évalue le personnel de la Société et coordonne les activités de tous les employés de l'entreprise.

    b. Le service E-CENTER

    L'E-CENTER a pour fonction principale de répondre aux divers besoins de ses clients par l'intermédiaire de www.wabenin.com, site d'information portant sur les diverses offres et opportunités au Benin. Ce site a été créé par les développeurs de LNA et permet au personnel de ce service de disposer des informations nécessaires pouvant satisfaire les attentes des clients' E-Center s'occupe également de fournir du matériel informatique accessibles aux clients et de dispenser une formation de type qualifiée à toute personne désirant maitriser la bureautique.

    c. Le Service Commercial

    Ce service est Composé de deux divisions coordonnées par un responsable commercial:

    La division Recherche prospective et Fidélité de la clientèle :

    Elle se charge de :

    - constituer une base de données d'informations sur ses clients potentiels et de les classer par secteur d'activités

    - planifier des campagnes de prospection par secteur d'activité.

    - identifier et prospecter de nouveaux clients.

    - mettre en oeuvre des stratégies de fidélité des clients de LNA.

    La division de Gestion de la clientèle et Rédaction DAO :

    Le personnel de cette division a pour rôle :

    - d'adresser des courriers aux clients pour tout ce que LNA entreprend.

    - d'étudier les attentes des clients et des prospects et y répondre avec diligence.

    - de suivre et d'analyser les réactions sur l'utilisation des offres de LNA.

    - de s'informer sur les appels d'offres relatifs aux technologies de l'information à travers les articles de presse.

    d. Le Service administratif financier et Logistique

    Réalisé et présenté par Yanice CHACHA

    10

    Mise en place d'un système de détection d'intrusion avec SNORT

    Le service administratif, financier et logistique comprend également deux divisions:

    Le support administratif

    Il est chargé :

    - de mettre en exécution la mission administrative et financière.

    - de contrôler et de suivre l'ensemble des relations avec les Tiers administratives de l'entreprise.

    - de recueillir les données comptables provenant des autres services, de vérifier, de valider et de traiter ces informations.

    - de produire les Etats financiers et rapports fidèles et fiables en vue de faciliter la prise de décision

    Le support projet et logistique

    Il est chargé, en coopération avec le Directeur général :

    - du suivi de l'exécution des projets internes et/ou externes à l'entreprise.

    - d'assurer la gestion des approvisionnements et du stock de fournitures de tout genre en place au sein de l'entreprise.

    e- Le service technique

    Il est organisé en :

    Support développement et présence Internet

    Il a pour principales tâches:

    - le développement et la conception d'applications et de sites web.

    - la mise en place de solutions graphiques utiles au bon fonctionnement de l'institution

    - l'Administration de www.wabenin.com site web Crée au sein de LNA

    Support maintenance clientèle

    Cette division a pour tâches principales:

    - d'installer de nouveaux équipements informatiques.

    - de maintenir des matériels : entretien par nettoyage, réglage, contrôle, diagnostic de pannes et dépannage.

    - d'intervenir par télémaintenance.

    - de suivre des nouveautés du marché informatique.

    Support administration réseau et Etude technique

    Réalisé et présenté par Yanice CHACHA

    11

    Mise en place d'un système de détection d'intrusion avec SNORT

    Il s'occupe :

    - de la maintenance et de l`amélioration du système informatique de l'entreprise.

    - de la gestion quotidienne du réseau informatique.

    - du contrôle des journaux d'activités.

    - de la fourniture de solutions en cas d'urgence ou d'incident.

    - de mettre en place les procédés de protection adaptés.

    - de faire intervenir des techniciens pour résoudre les problèmes immédiats.

    - de gérer les comptes utilisateurs à travers la création, la modification et la suppression.

    - de surveiller les alertes de sécurité et optimiser l'infrastructure du réseau en fonction des nouvelles technologies.

    Organigramme de Linknet Africa

    Direction
    Générale

     
     
     
     
     
     
     

    E-Center

     
     
     
     

    Responsable Commercial

     
     
     
     

    Direction Technique

     
     
     
     
     
     
     
     
     
     
     
     
     
     

    Division

    Gestion de la

     

    Administra

     

    Responsable

     

    tion

    clientèle et

     
     
     

    Administratif,

     
     

    Réseau et

     
     

    Rédaction DAO

     
     

    Financier et Logistique

     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     

    Support

    technique

    et

    Division

     
     
     
     
     
     

    Recherche, Prospective, et

     
     

    Support

    Administratif

     
     

    Hygiène du Bureau

     
     
     

    maintenanc

     
     
     

    Fidélisation

     
     
     
     
     
     
     
     
     
     

    Clients

     
     
     
     
     
     
     

    Support

     
     
     

    Support Projet

     
     

    développement

     
     
     
     
     
     

    et Logistique

    Chauffeurs

     

    et présence

     
     
     
     
     
     
     
     

    Internet

     
     

    Réalisé et présenté par Yanice CHACHA

    12

    Mise en place d'un système de détection d'intrusion avec SNORT

    B- Présentation et description des équipements

    LNA dispose d'une salle serveur dans laquelle sont installés :

    - Deux machines physiques chacune de capacités 6 go de RAM et de disques dur 500 giga-octets qui abritent les serveurs :

    - Un moniteur relié aux machines physiques comme le décrit la figure suivante permet aux administrateurs réseaux de paramétrer les serveurs dans l'enceinte de la salle Serveur.

    Mise en place d'un système de détection d'intrusion avec SNORT

    - Deux Switches Catalyst express 500 puis Catalyst 2960 disposants respectivement de 24 et 48 ports et permettant d'interconnecter les machines clientes de LNA au Réseau de l'entreprise.

    - le Catalyst 2960 permet en effet de relier les utilisateurs d'E-Center au réseau puis le Catalyst express 500 relie les services techniques, financier, administratif puis développement

    L'intranet de l'entreprise est connecté au réseau public (internet) par un routeur CISCO 3800 séries.

     
     
     

    Réalisé et présenté par Yanice CHACHA

    13

    Réalisé et présenté par Yanice CHACHA

    14

    Mise en place d'un système de détection d'intrusion avec SNORT

    Tout le système d'information de LNA est centralisé sur le Serveur Windows 2008 Entreprise R2. En effet sur l'une des machines physiques est installé le serveur auquel est ajouté le rôle d' Hyper-V qui héberge toutes les autres applications Serveurs Windows. Il s'agit du:

    o contrôleur de domaine DC01, Serveur qui permet de créer et de gérer tous les utilisateurs du réseau, de définir les règles d'utilisations des ressources partagées. et de sécurité relatif à chaque utilisateur du domaine de l'entreprise ( LNA.LinkNetAfrika.com) grâce à ses principaux services : Active Directory, DNS, DHCP de serveur de fichiers

    o Serveur Exchange EX01, Serveur de messagerie de Microsoft configuré pour permettre l'envoi et la réception de courriers électroniques dans et en dehors du domaine de l'entreprise

    o Windows7, une machine virtuelle « test » installée expressément pour tester les nouveaux rôles ajouter au Windows serveur et faire évaluer également une panne en cas de disfonctionnement du système (exemple : un plantage de Outlook)

    o Serveur Alcasar qui tourne sous Magéa une distribution de Linux. En effet ce Serveur est un portail captif qui intègre un ensemble de services qui interagissent. Il dispose de deux interfaces : une interface utilisateur ou passerelle par laquelle les clients se connectent à internet via la page d'accueil du portail captif puis une interface réseau qui sert de WAN au serveur Alcasar pour fournir la connexion aux clients.( Les deux interfaces sont adressées dans des sous réseaux-différents )

    o Serveur WEB : c'est le serveur Web dédié à héberger le site commercial wabenin.com crée et administré par les développeurs de l'entreprise pour permettre aux internautes béninois ou étrangers de disposer d'informations réelles de tous genres axées sur le Benin .Il s'agit notamment des pages jaunes, des opportunités d'affaires, des annonces telles que les avis de recrutement, les avis d'appels d'offres... Enfin il

    Réalisé et présenté par Yanice CHACHA

    15

    Mise en place d'un système de détection d'intrusion avec SNORT

    permet de stocker les informations relatives aux services offerts par le site pour permettre leur diffusion en ligne.

    II- Tâches accomplies au cours du stage

    Durant les mois de stages que j'ai effectués à Linknet Africa, j'ai pu mettre en pratique les connaissances théoriques que j'ai acquises en cours. Mise à part les pannes techniques auxquelles j'ai été souvent confrontées et que j'ai pu résoudre parfois aisément ou non, j'ai entre autres :

    - Installé et configuré le portail captif ALCASAR dont il est question dans mon rapport

    - Installé et configuré le serveur web en installant LAMP sur Ubuntu

    - Installé et configuré le server de partage de fichier (SAMBA sur ubuntu)

    - Installé un server VPN sur Debian et installé GLPI un outil de gestion du parc informatique

    - Installé un proxy avec Squid

    - Installé Windows serveur 2008 et Exchange pour le Ministère de l'Enseignement Supérieur et de la Recherche Scientifique

    - Réalisé le plan de câblage réseau du Ministère de l'Enseignement Supérieur et de la Recherche Scientifique - Intervenir dans plusieurs sociétés pour des pannes réseaux et maintenance

    Ce stage m'a également permis de mieux comprendre certains concepts en systèmes et réseaux, d'approfondir mes connaissances dans les technologies de virtualisation.

    Mise en place d'un Système

    de détection d'intrusion avec

    SNORT

    Deuxième partie :

    Réalisé et présenté par Yanice CHACHA

    17

    Mise en place d'un système de détection d'intrusion avec SNORT

    I. Objectifs

    Les objectifs que nous poursuivons dans cette mise en oeuvre sont les suivants :

    - Mettre en place un système capable de détecter tout type de trafic à l'entrée du réseau que l'on veut sécuriser

    - Pouvoir bloquer automatiquement toutes connexions entrantes dans le réseau suite à une tentative d'intrusion

    II. IDS, IPS et Choix de SNORT A- Les IDS

    1. Qu'est-ce que la détection d'intrusion ?

    En sécurité informatique, la détection d'intrusion est l'acte de détecter les actions qui essaient de compromettre la confidentialité, l'intégrité ou la disponibilité d'une ressource. La détection d'intrusion peut être effectuée manuellement ou automatiquement. Dans le processus de détection d'intrusion manuelle, un analyste humain procède à l'examen de fichiers de logs à la recherche de tout signe suspect pouvant indiquer une intrusion

    2. Définition d'un IDS

    Un IDS (Intrusion Detection System) est un mécanisme destinée à repérer les activités anormales ou suspectes sur la cible analysée (réseau ou hôte). Il permet ainsi d'avoir une connaissance sur les tentatives reçues réussies comme échouées des tentatives.

    3. Pourquoi faut - il mettre un IDS ?

    Schématiquement il existe deux types de sécurité en informatique que sont la sécurité active et la sécurité passive. La sécurité active regroupe les actions sur les flux (autorisations et interdictions etc. ...) ; on y retrouve les pare-feu, les relais applicatifs, les relayeurs de messagerie etc... La sécurité passive, elle n'agit pas sur les flux entrants. Elle permet de reconnaître les flux hostiles. On y retrouve les IDS.

    En effet la sécurité active n'est pas suffisante puisque le pare-feu ne peut contrer toutes les menaces, les techniques de hacking sont en constante innovation et il existe de potentielles failles selon les fonctionnalités des systèmes sans compter que ces failles sont inhérentes pour certains OS. Les IDS permettent de remonter la source des attaques, la détection des techniques employées et les traces en cas d'intrusion qui constituent des preuves tangibles. Ils sont une aide indispensable pour se prémunir des intrusions en prenant des mesures de sécurité adéquates.

    4. Fonctionnement d'un IDS

    Lorsqu'une intrusion est découverte par un IDS, les actions typiques qu'il peut entreprendre sont par exemple d'enregistrer l'information pertinente dans un fichier ou une base de données, de générer une alerte par e-mail ou un message sur un pager ou un téléphone mobile. Déterminer quelle est réellement l'intrusion détectée et entreprendre certaines actions pour y mettre fin ou l'empêcher de se reproduire, ne font généralement pas partie du domaine de la détection d'intrusion. Cependant, quelques formes de réaction automatique peuvent être implémentées par l'interaction de l'IDS et de systèmes de contrôle d'accès tels que les pare-feu. Les techniques de détection d'intrusion. Deux techniques de détection d'intrusion sont généralement mises en oeuvre par les IDS courants :

    La détection d'abus (misuse detection) : dans la détection d'abus (aussi appelée détection de mauvaise utilisation), l'IDS analyse l'information recueillie et la compare (pattern matching, approche par scénarii) avec une base de données

    Réalisé et présenté par Yanice CHACHA

    18

    Mise en place d'un système de détection d'intrusion avec SNORT

    de signatures (motifs définis, caractéristiques explicites) d'attaques connues (i.e., qui ont déjà été documentées), et toute activité correspondante est considérée comme une attaque (avec différents niveaux de sévérité).

    La détection d'anomalie (anomaly detection) : la détection d'anomalie de comportement est une technique assez ancienne (elle est utilisée également pour détecter des comportements suspects en téléphonie, comme le phreaking). L'idée principale est de modéliser durant une période d'apprentissage le comportement «normal» d'un système/programme/utilisateur en définissant une ligne de conduite (dite baseline ou profil3), et de considérer ensuite (en phase de détection) comme suspect tout comportement inhabituel (les déviations significatives par rapport au modèle de comportement «normal»).

    Trafic réseau/Application

    Détection
    Abus/Anomalie

    Alerte

    Réaction IDS selon
    configuration

     

    Analyse Humaine

     
     

    Logs

    Collecte

    d'informat
    ions sur

    l'attaque/l'
    attaquant

    Blocage

    Schéma de fonctionnement d'un IDS

    5- Rôles d'un IDS

    Les IDS ont pour rôles principaux :

    - la reconnaissance des tentatives d'intrusions :

    · par analyse des flux réseaux

    · par détection d'un comportement anormal

    - le blocage les tentatives d'intrusion

    - et permettent de remonter des alertes lorsque des activités suspectes sont détectées

    Réalisé et présenté par Yanice CHACHA

    19

    Mise en place d'un système de détection d'intrusion avec SNORT

    6- Les types d'IDS

    Les IDS sont catégorisés en trois familles :

    - Les NIDS (Networks Intrusion Detection System) qui surveillent l'état de la sécurité au niveau du réseau

    - Les HIDS (HostBased Intrusion Detection System) qui surveillent l'état de la sécurité au niveau des hôtes

    - Et les IDS hybrides qui utilisent les NIDS et les HIDS pour fournir des alertes plus pertinentes.

    Les HIDS sont particulièrement efficaces pour déterminer si un hôte est contaminé et les NIDS permettent de surveiller l'ensemble d'un réseau contrairement à un HIDS qui est restreint à un hôte.

    B- Les IPS

    Faute de pouvoir maîtriser correctement les fausses alertes, la plupart des systèmes actuels d'IDS sont voués à disparaître ou à évoluer grandement. L'apparition sur le marché de la sécurité informatique des systèmes IPS est très récente et résulte de la nécessité d'améliorer, encore et toujours, les solutions existantes ayant prouvées leurs limites. Les IPS n'existent pas vraiment en tant que technologies bien définies mais plutôt en tant que concepts que tentent de mettre en oeuvre les différents acteurs du marché à travers de multiples technologies et solutions de sécurité.

    1- Qu'est qu'un système de prévention d'intrusion ?

    Un système de prévention d'intrusion (ou IPS, Intrusion Prevention System) est un outil des spécialistes en sécurité des systèmes d'information, similaire aux IDS, permettant de prendre des mesures afin de diminuer les impacts d'une attaque.

    2- Principe de fonctionnement

    De l'avis des analystes, le concept d'IPS (systèmes de prévention des intrusions) vise à anticiper les attaques de pirates informatiques dès lors que leur empreinte est connue. Il ne s'agit plus seulement de réagir à une attaque en cours, mais d'empêcher que celle-ci puisse seulement débuter. Un système IPS est placé en ligne et examine en théorie tous les paquets entrants ou sortants. Il réalise un ensemble d'analyses de détection, non seulement sur chaque paquet individuel, mais également sur les conversations et motifs du réseau, en visualisant chaque transaction dans le contexte de celles qui précèdent ou qui suivent. Si le système IPS considère le paquet inoffensif, il le transmet sous forme d'un élément traditionnel de couches 2 ou 3 du réseau. Les utilisateurs finaux ne doivent en ressentir aucun effet. Cependant, lorsque le système IPS détecte un trafic douteux il doit pouvoir activer un mécanisme de réponse adéquat en un temps record. L'IPS doit aussi, offrir un moyen de diminuer considérablement l'utilisation des ressources humaines nécessaires au bon fonctionnement des IDS. Cela doit aboutir, notamment, à une automatisation des fonctions d'analyse des logs, même si ce point demeure encore une tâche difficile. La prise de décision doit ainsi pouvoir être automatisée non seulement grâce à la reconnaissance de signatures mais aussi, et de plus en plus, grâce à l'utilisation d'analyses heuristiques provenant du monde des antivirus. Deux voies principales sont actuellement explorées par les promoteurs d'IPS. La première est l'approche des constructeurs d'IDS dont les produits n'ont que faiblement convaincu le marché français alors qu'ils sont utilisés dans plus d'une entreprise sur deux aux Etats-Unis. Comme pour les IDS, les IPS peuvent être orientés Host ou Réseaux. La seconde approche touche les fournisseurs de pare-feu qui commencent à intégrer des systèmes IPS au sein de leurs matériels qui savent fonctionner "en ligne". Cela passe par exemple par l'intégration de signatures et d'un contrôle des protocoles HTTP, FTP et SMTP, mais aussi pour certains constructeurs de la mise en Asic (Application specific integrated circuit) de leurs IPS afin de s'intégrer facilement à leurs matériels.

    3- Les types d'IPS

    ? Les HIPS (Host-based Intrusion Prevention System) qui sont des IPS permettant de surveiller le poste de travail à travers différentes techniques, ils surveillent les processus, les drivers, les .dll etc. En cas de

    Réalisé et présenté par Yanice CHACHA

    20

    Mise en place d'un système de détection d'intrusion avec SNORT

    détection de processus suspect le HIPS peut le tuer pour mettre fin à ses agissements. Les HIPS peuvent donc protéger des attaques de buffer overflow.

    ? Les NIPS (Network Intrusion Prevention System) sont des IPS permettant de surveiller le trafic réseau, ils peuvent prendre des mesures telles que terminer une session TCP. Une déclinaison en WIPS (Wireless

    Intrusion Prevention System) est parfois utilisée pour évoquer la protection des réseaux sans-fil.

    ? Il existe aussi les KIPS (Kernel Intrusion Prevention System) qui permettent de détecter toutes tentatives d'intrusion au niveau du noyau, mais ils sont moins utilisés.

    4- Rôles et Inconvénients

    Les IPS sont en quelques sortes des IDS actifs. Ils détectent un balayage automatisé. L'IPS peut bloquer les ports automatiquement. Les IPS peuvent donc parer les attaques connues et inconnues. Comme les IDS, ils ne sont pas fiables à 100 % et risquent même en cas de faux positif de bloquer du trafic légitime. Les IPS ne sont pas des logiciels miracles qui nous permettront de surfer en toute quiétude sur le net. Voici quelques-uns de leurs inconvénients :

    ? Ils bloquent tout ce qui parait infectieux à leurs yeux, mais n'étant pas fiable à 100 % ils peuvent donc bloquer malencontreusement des applications ou des trafics légitimes.

    ? Ils laissent parfois passer certaines attaques sans les repérer, et permettent donc aux pirates d'attaquer un PC.

    ? Ils sont peu discrets et peuvent être découverts lors de l'attaque d'un pirate qui une fois qu'il aura découvert l'IPS s'empressera de trouver une faille dans ce dernier pour le détourner et arriver à son but.

    C- Différences entre IDS et IPS

    Les IPS sont souvent considérés comme des IDS de deuxième génération. Bien qu'il s'agisse d'un abus de langage, cette expression traduit bien le fait que les IPS remplacent petit à petit les IDS. Il est pour autant prématuré de dire que les IDS sont morts, comme l'avait prétendu Gartner Group il y a 2 ans. En fait, les IPS ont avant tout été conçus pour lever les limitations des IDS en matière de réponse à des attaques. Alors qu'un IDS n'a aucun moyen efficace de bloquer une intrusion, un IPS pourra, de par son positionnement en coupure, bloquer une intrusion en temps réel (voir NIPS).

    En effet, le positionnement en coupure, tel un firewall ou un proxy, est le seul mode permettant d'analyser à la volée les données entrantes ou sortantes et de détruire dynamiquement les paquets intrusifs avant qu'ils n'atteignent leur destination.

    Une autre limite à laquelle devaient faire face les IDS il y a quelques années était due à leur incapacité à gérer les hauts débits du fait d'une architecture logicielle. Plusieurs constructeurs ont intégré des circuits spécifiques (ASICs) dans leurs sondes IPS, si bien que le débit devient de moins en moins une problématique.

    D- Choix de snort

    Il existe plusieurs logiciels de détection d'intrusion mais mon choix c'est porté sur snort. SNORT est un IDS open source disponible sur les plateformes Windows, linux et mac et offre une mise en oeuvre basique rapide. De nouveaux plugins et règles sont régulièrement proposés. Les documentions pour comprendre et implémenter snort sont nombreux et les fichiers d'alertes utilisables pour sa configuration sont très complets (entêtes des paquets, lien vers la description de l'attaque...). Parmi les autres solutions on peut citer Bro, Pleludes-IDS, Check point, AIDE, etc... qui sont soit des logiciels libres ou payants mais n'offrent forcément pas les mêmes possibilités que SNORT.

    Réalisé et présenté par Yanice CHACHA

    21

    Mise en place d'un système de détection d'intrusion avec SNORT

    III- Fonctionnement, avantages, inconvénients et limites

    1- Fonctionnement de SNORT

    SNORT permet d'analyser le trafic réseau de type IP, il peut être configuré pour fonctionner en trois 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 établit des actions à exécuter ;

    2- Définition des règles de snort

    Les règles de snort sont composées de deux parties distinctes : le header et les options.

    - Le header permet de spécifier le type d'alerte à générer (alert, log..) et d'indiquer les champs de base nécessaires au filtrage : le protocole (TCP, UDP ou ICMP), l'orientation du trafic auquel la règle s'applique (unidirectionnel ou bidirectionnel) ainsi que les adresses IP et ports sources et destination.

    - Les options, spécifiées entre parenthèses, permettent d'affiner l'analyse, en décomposant la signature en différentes valeurs à observer parmi certains champs du header ou parmi les données

    L'entête de règle contient l'information qui définit le `'qui, où, et quoi» d'un paquet, ainsi que quoi faire dans l'évènement où le paquet dans une règle avec tous les attributs indiqués dans la règle devrait se présenter. Le premier élément dans une règle est l'action de la règle. L'action de la règle dit à snort quoi faire quand il trouve un paquet qui correspond aux critères de la règle. Il y a cinq actions accessibles par défaut dans snort : alert, log, pass, activate, et dynamic.

    - Alert : génère une alerte en utilisant la méthode d'alerte sélectionnée, et alors journalise le paquet - Log : journalise le paquet

    - Pass ; ignore le paquet

    - Activate : alerte et alors active une autre règle

    - Dynamic : reste passive jusqu'à être activée par une règle activate, et donc agit comme une règle log Les options de règle forment le coeur du moteur de détection d'intrusion de snort combinant facilité d'utilisation, puissance et flexibilité. Toutes les options de règle de snort sont séparées les unes des autres par un caractère point-virgule « ; ». Les mots clés des options de règle sont séparés de leurs arguments avec un caractère deux points « : ».

    Ci- dessous les différentes options de règles disponibles dans snort

    - msg : affiche un message dans les alertes et journalise les paquets

    - ttl : teste la valeur du champ TTL de l'entête IP

    - ipotion : regarde les champs des options IP pour des codes spécifiques

    - fragbits : teste les bits de fragmentation de l'entête IP

    - content : recherche un motif dans la charge d'un paquet

    - content-list : recherche un ensemble de motifs dans la charge d'un paquet

    - sid : identifiant de signature contenue dans la base de signature

    3- Positionnement de SNORT dans le réseau

    L'emplacement physique de la sonde SNORT sur le réseau a un impact considérable sur son efficacité. Dans le cas d'une architecture classique, composée d'un Firewall et d'une DMZ, trois positions sont généralement envisageables :

    Réalisé et présenté par Yanice CHACHA

    22

    Mise en place d'un système de détection d'intrusion avec SNORT

    - avant le Firewall ou le routeur filtrant : dans cette position, la sonde occupe une place de premier choix dans la détection des attaques de sources extérieures visant l'entreprise. SNORT pourra alors analyser le trafic qui sera éventuellement bloqué par le Firewall. Les deux inconvénients de cette position du NIDS sont: primo, le risque engendré par un trafic très important qui pourrait entraîner une perte de fiabilité et secondo, étant situé hors du domaine de protection du firewall, le NIDS est alors exposé à d'éventuelles attaques pouvant le rendre inefficace

    - sur la DMZ : dans cette position, la sonde peut détecter tout le trafic filtré par le Firewall et qui a atteint la zone
    DMZ. Cette position de la sonde permet de surveiller les attaques dirigées vers les différents serveurs de l'entreprise accessibles de l'extérieur.

    - sur le réseau interne : le positionnement du NIDS à cet endroit nous permet d'observer les tentatives d'intrusion parvenues à l'intérieur du réseau d'entreprise ainsi que les tentatives d'attaques à partir de l'intérieur. Dans le cas d'entreprises utilisant largement l'outil informatique pour la gestion de leur activités ou de réseaux fournissant un accès à des personnes peu soucieuses de la sécurité (réseaux d'écoles et d'universités), cette position peut revêtir un intérêt primordial.

    Schéma explicatif du fonctionnement de snort

    4- Avantages, inconvénients et Limites

    a- Avantages

    Snort est un logiciel libre qui concurrence habilement les outils de détection d'intrusion commerciaux. Le format ouvert de ses signatures est donc rapidement devenu un standard que les IDS commerciaux commencent à intégrer. Cela représente un avantage important, il s'agit là d'une des principales raisons du succès de Snort. En effet, les IDS commerciaux ont tendance à cacher le contenu de leurs signatures (la séquence précise que recherche le logiciel pour identifier une attaque), cela oblige les clients à dépendre d'eux pour bénéficier de nouvelles règles de détections d'intrusions. Snort, lui, offre un format ouvert et documenté qui permet d'écrire les règles de son choix. Un autre avantage est la gratuité au niveau des licences qui permet d'installer des sondes Snort en tout point du réseau. La prolifération de ces sondes peut tout de même rapidement devenir un handicap si nous travaillons sur un réseau plus conséquent que celui de notre étude pour ce qui est de l'étude des rapports.

    Réalisé et présenté par Yanice CHACHA

    23

    Mise en place d'un système de détection d'intrusion avec SNORT

    b- Inconvénients

    Souvent vulnérable par rapport à des attaques de DoS (Denial of Service),

    - SNORT a plus tendance que d'autres IDS à fournir des fausses alertes (en moyenne, 70% des alertes remontées

    sont fausses), par exemple à cause de petites signatures comme phf qui déclenchent une alerte alors que cela peut être une simple requête contenant les mots "dhfudge" ou "muphf".

    - Ne peut pas traiter les flux cryptés car la signature de ces attaques dépend évidemment du type de cryptage et aussi

    évidemment de la clé employée (c'est une des raisons). Mais de toute manière, à ma connaissance, aucun IDS ne sait traiter des flux cryptés.

    - Un IDS fonctionne en mode binaire : il traduit toute requête comme une intrusion ou comme une trame "permise".

    Il n'existe pas d'intermédiaire entre les deux. Tout ce qui est possible, est de donner un degré d'importance aux alertes.

    Par contre, les vraies attaques menées par exemple sur cgi-bin, ne sont pas toujours détectées...

    c- Limites

    Dilution temporelle des scans

    Les IDS se basent sur certains critères autres que les signatures, afin de détecter les attaques réseaux. Prenons l'exemple d'un scan de port banal ciblant une machine du réseau de l'IDS. Ce dernier sera automatiquement détecté étant donné la fréquence des scans et une alerte sera remontée. Cependant, les outils de scan disposent de plus en plus d'options et certains, comme "nmap" dispose de précaution (mode "Paranoïd", "Sneaky") qui permettent d'adapter la fréquence de ces scans, afin de leurrer l'IDS. Par exemple, l'option -T permet de changer la fréquence des scans afin de passer en dessous du seuil qui déclenche l'adresse. La commande suivante permet d'effectuer des scans furtifs et discrets: "#nmap -P0 -sS -T Sneaky -p 21, 20 ADDERSS_IP"

    Le revers mapping

    De même, certaines techniques de scan telles que le "reverse mapping" disposent d'une élaboration accrue. Elle consiste à envoyer des paquets à un ensemble de machines, avec le flag RST positionné à "1". Ainsi, si l'on reçoit en retour le message ICMP "Host Unreachable" d'une machine on sait qu'elle n'est pas présente. Par contre, si l'on ne reçoit rien, il y a de grande chance pour que la machine visée existe. L'outil "hping" (option "-R -c 1 -p IP_MACHINE") permet de telles opérations. Le mauvais trafic peut alors être détecté selon la configuration de snort (car le port source par défaut des paquets générés par snort est 0). En utilisant l'argument -s, on peut éviter d'être reconnu par l'IDS en mettant un port normal).

    Inconvénients du mode promiscuous

    Par nature, les IDS doivent mettre leur carte réseau en mode "promiscuous" ce qui va leur permettre de recevoir l'intégralité des trames circulant sur le réseau. Ainsi, l'IDS ne générera généralement aucun trafic et se contentera d'aspirer tous les paquets. Cependant, ce mode spécial affranchi la machine de la couche 2 et le filtrage sur les adresses MAC n'est plus activé. Il se peut alors que la machine répondent à certains messages (icmp echo request généré avec l'outil "nemesis"). Si la machine n'est pas en mode "promiscuous", elle ignorera le paquet sinon, elle répondra. Ce mode génère des accès mémoire et processeur important et il est possible de détecter de telles sondes en comparant les latences de temps de réponse avec celles des machines du même brin LAN (ou proche). Des temps de réponse trop importants sont significatifs d'une activité gourmande en ressources tels que le "sniffing". On pourra alors s'appuyer sur ces données pour valider la présence d'un IDS.

    Surcharge de l'IDS

    Réalisé et présenté par Yanice CHACHA

    24

    Mise en place d'un système de détection d'intrusion avec SNORT

    Il est aussi possible d'envoyer une quantité importante d'attaques bénignes afin de surcharger les alertes de l'IDS, et ainsi glisser une attaque plus furtive qui aura du mal à être identifiée, si le flot d'informations généré est suffisant.

    Scan Zombie

    Le "scan zombie" permet de s'appuyer sur une autre machine, afin de leurrer l'IDS sur la provenance de l'attaque. En effet, "nmap" dispose de l'option "-sI" qui permet de forger des paquets adéquates afin de se faire passer pour une autre machine, puis de déterminer le comportement à adopter, en fonction de la réaction de la cible. Dans tous les cas, l'assaillant ne peut être directement découvert par l'IDS.

    IV- Installation et Configuration de snort

    1. Configuration matériel

    - une machine virtuelle Debian 7.6 (serveur) configurée avec deux cartes réseaux : une en « host-only » servant d'interface de management et l'autre en bridge servant d'interface de collection ; mémoire ram 1giga. L'iso de la distribution debian7.6-nestinst est disponible sur le lien http://www.debian.org/distrib/netinst

    - une machine virtuelle Debian 7.6 version desktop dans le même réseau host-only pour les tests

    2. Installation et configuration

    Après l'installation de la machine serveur qui abritera le service snort, il est nécessaire de mettre à jour le système pour disposer des versions récentes des services nécessaire au bon fonctionnement du serveur Debian. Il s'agit de lancer sur le serveur la commande apt-get update && apt-get upgrade en mode root.

    Pour l'administration du serveur à distance il faut ensuite installer le service ssh par la commande apt-get install openssh-server toujours en tant que super administrateur (root).

    A présent toute l'installation et les configurations vont se faire depuis ma machine physique avec l'outil de connexion à distance putty

    - Je me connecte alors avec putty et je passe en root

    Réalisé et présenté par Yanice CHACHA

    25

    Mise en place d'un système de détection d'intrusion avec SNORT

    a- Installation des dépendances et prérequis

    - L'installation de snort nécessite certaines dépendances qu'il faut impérativement installer de la manière suivante :

    # apt-get update && apt-get -y install apache2 apache2-doc autoconf automake bison ca-certificates ethtool flex g++ gcc gcc-4.4 libapache2-modphp5

    libcrypt-ssleay-perl libmysqlclient-dev libnet1 libnet1-dev libpcre3 libpcre3-dev libphp-adodb libssl-dev libtool libwww-perl make mysqlclient

    mysql-common mysql-server ntp php5-cli php5-gd php5-mysql php-pear sendmail sysstat usbmount

    Réalisé et présenté par Yanice CHACHA

    26

    Mise en place d'un système de détection d'intrusion avec SNORT

    - Certains prérequis sont également nécessaires. Il s'agit des paquets libpcap, libdnet, et DAQ qu'il faut télécharger et compiler de la manière suivante :

    Compilation de libpcap:

    # cd /usr/src && wget http://www.tcpdump.org/release/libpcap-1.6.1.tar.gz

    # tar -zxf libpcap-1.6.1.tar.gz && cd libpcap-1.6.1

    # ./configure --prefix=/usr && make && make install

    Compilation de libdnet:

    # cd /usr/src && wget http://libdnet.googlecode.com/files/libdnet-1.12.tgz

    # tar -zxf libdnet-1.12.tgz && cd libdnet-1.12

    # ./configure --prefix=/usr --enable-shared && make && make install

    Compilation de daq:

    # cd /usr/src && wget https://www.snort.org/downloads/snort/daq-2.0.2.tar.gz

    # tar -zxf daq-2.0.2.tar.gz && cd daq-2.0.2

    # ./configure && make && make install

    - Après compilation il est nécessaire de mettre à jour le chemin vers certaines librairies partagées ; ceci passe par l'exécution des commandes suivantes :

    # echo >> /etc/ ld.so.conf /usr/lib

    # echo >> /etc/ ld.so.conf /usr/local/lib && ldconfig

    b- Installation et configuration de snort

    Cette étape consiste à récupérer le paquet snort-2.9.6.2.tar.gz sur le site officiel de snort. Les captures ci-dessus expliquent le cheminement à suivre :

    - Configuration interface

    Réalisé et présenté par Yanice CHACHA

    27

    Mise en place d'un système de détection d'intrusion avec SNORT

    - On se déplace dans le répertoire /usr/src

    - on télécharge le paquet compressé de snort-2.9.6.2

    - ensuite on le décompresse avec la commande tar

    - On se déplace ensuite dans le répertoire obtenu pour effectuer la compilation

    Réalisé et présenté par Yanice CHACHA

    28

    Mise en place d'un système de détection d'intrusion avec SNORT

    Réalisé et présenté par Yanice CHACHA

    29

    Mise en place d'un système de détection d'intrusion avec SNORT

    -make et make install

    Réalisé et présenté par Yanice CHACHA

    30

    Mise en place d'un système de détection d'intrusion avec SNORT

    - On crée les répertoires à utiliser pour la configuration de snort :

    Réalisé et présenté par Yanice CHACHA

    31

    Mise en place d'un système de détection d'intrusion avec SNORT

    - Création des fichiers à utiliser pour la configuration de snort

    - Création du groupe snort et ajout de l'utilisateur snort à ce groupe

    Mise en place d'un système de détection d'intrusion avec SNORT

    - On rend l'utilisateur snort propriétaire des fichiers de journalisation (logs)

    Réalisé et présenté par Yanice CHACHA

    32

    - Copie des fichiers de configuration dans les dossiers principaux de configuration

    Réalisé et présenté par Yanice CHACHA

    33

    Mise en place d'un système de détection d'intrusion avec SNORT

    - On télécharge un exemplaire du fichier snort.conf

    Mise en place d'un système de détection d'intrusion avec SNORT

    Réalisé et présenté par Yanice CHACHA

    34

    - Copie de l'exemplaire du fichier snort.conf dans /usr/local/etc/snort/

    Réalisé et présenté par Yanice CHACHA

    35

    Mise en place d'un système de détection d'intrusion avec SNORT

    - Edition du fichier snort.conf : # vi /usr/local/etc/snort/snort.conf

    On modifie les lignes suivantes: 45, 48, 104, 109, 110, 293, 521 et 543

    - Sur les lignes 45 et 46 on inique l'adresse du réseau local comme suit

    Réalisé et présenté par Yanice CHACHA

    36

    Mise en place d'un système de détection d'intrusion avec SNORT

    - On applique les modifications à la ligne 104 comme telle

    - On modifie les lignes 109 et 110 comme dans la capture

    Réalisé et présenté par Yanice CHACHA

    37

    Mise en place d'un système de détection d'intrusion avec SNORT

    - On ajoute juste après «decompress_depth 65535» max_gzip_mem 104857600 sur la ligne 293

    - On ajoute ces paramètres sur la ligne 521 output unified2: filename snort.log, limit 128

    - On supprime ou on commente toutes les lignes «include $RULE_PATH» sauf celle de «local.rules» après la ligne 543

    - On édite le fichier local.rules dans /usr/local/etc/snort/rules/

    - # vi /usr/local/etc/snort/rules/local.rules

    Mise en place d'un système de détection d'intrusion avec SNORT

    - On entre une simple règle comme ceci pour tester:

    - alert icmp any any -> $HOME_NET any (msg:"ICMP test"; sid:10000001; rev:1;)

    - on enregistre et on ferme

    Réalisé et présenté par Yanice CHACHA

    38

    - on fait un premier essai pour voir si snort répond à l'alerte

    Réalisé et présenté par Yanice CHACHA

    39

    Mise en place d'un système de détection d'intrusion avec SNORT

    - résultat du test

    Réalisé et présenté par Yanice CHACHA

    40

    Mise en place d'un système de détection d'intrusion avec SNORT

    Installation et configuration de barnyard :

    On récupère l'archive master.tar.gz et on le décompresse et on se déplace ensuite dans le dossier barynyard2 -master obtenu

    - # cd /usr/src && wget https://github.com/firnsy/barnyard2/archive/master.tar.gz

    - # tar -zxf master.tar.gz && cd barnyard2-* - Ensuite on tape les commandes suivantes :

    - On déplace le fichier de configuration barnyard2.conf dans /usr/local/etc/snort et on copie le fichier create_mysql dans /usr/src

    # mv /usr/local/etc/barnyard2.conf /usr/local/etc/snort

    # cp schemas/create_mysql /usr/src

    - Il faut alors configurer barnyard2 en éditant son fichier de configuration de la manière suivante

    Mise en place d'un système de détection d'intrusion avec SNORT

    - On modifie les lignes 27, 28, 29 et 30 comme ci-après

    Réalisé et présenté par Yanice CHACHA

    41

    - Ensuite on modifie la ligne 227 comme suit

    Réalisé et présenté par Yanice CHACHA

    42

    Mise en place d'un système de détection d'intrusion avec SNORT

    - Par finir on ajoute à la fin de ce fichier la ligne suivante :

    output database: log, mysql, user=snort password=<mypassword> dbname=snort host=localhost où « mypassword » est le mot de passe qui sera utiliser lors de la création de la base de donnée snort (mot de passe de l'utilisateur snort)

    Réalisé et présenté par Yanice CHACHA

    43

    Mise en place d'un système de détection d'intrusion avec SNORT

    - Il faut ensuite créer la base snort en suivant les étapes ci-dessus

    # mysql -u root -p # ici on entre le mot de passe créer lors de l'installation de mysql-server

    mysql> create database snort;

    mysql> grant CREATE, INSERT, SELECT, DELETE, UPDATE on snort.* to snort@localhost;

    mysql> SET PASSWORD FOR snort@localhost=PASSWORD ('mypassword'); # ajouter le mot de passe de l'utilisateur snort

    mysql> use snort;

    mysql> source /usr/src/create_mysql mysql> show tables; # on devrait voir la listes des nouvelles tables qui ont été importées.

    mysql> exit

    - Maintenant on démarre snort et barnyard avec la commande ci-dessous :

    # /usr/local/bin/snort -q -u snort -g snort -c /usr/local/etc/snort/snort.conf -i eth1&

    # /usr/local/bin/barnyard2 -c /usr/local/etc/snort/barnyard2.conf -d /var/log/snort -f snort.log -w /usr/local/etc/snort/bylog.waldo -C /usr/local/etc/snort/classification.config &

    - Ensuite on ping l'interface de mangement depuis une autre machine - Résultat du ping :

    La commande suivante montre que barnyard est correctement inséré dans la base de données:

    # mysql -u root -p -D snort -e "select count(*) from event"

    - On configure apache ; on copie le fichier default-ssl dans sites-enabled - Par suite on édite le fichier /etc/php5/apache2/php.ini

    Réalisé et présenté par Yanice CHACHA

    44

    Mise en place d'un système de détection d'intrusion avec SNORT

    - En modifiant la ligne 463

    - On active alors le module ssl avec la commande a2enmod ssl et configure également PHP avec les options ci-après

    - # pear config-set preferred_state alpha && pear channel-update pear.php.net

    - # pear install --alldeps Image_Color2 Image_Canvas Image_Graph

    - Il faut alors redémarrer le service apache2 pour que la configuration prenne effet :

    /etc/init.d/apache2 restart

    c- Installation de BASE pour la gestion des alertes depuis une interface graphique

    - La première étape consiste déjà à télécharger le paquet et le décompresser et donner ensuite provisoirement les droits sur le dossier extrait tous les utilisateurs utilisant le système

    # cd /usr/src && wget http://sourceforge.net/projects/secureideas/files/BASE/base-1.4.5/base-1.4.5.tar.gz

    # tar -zxf base-1.4.5.tar.gz && cp -r base-1.4.5 /var/www/base # chmod 777 /var/www/base

    Réalisé et présenté par Yanice CHACHA

    45

    Mise en place d'un système de détection d'intrusion avec SNORT

    - On se connecte sur l'interface pour finir la configuration de base comme le montre les captures suivantes :

    - On clique sur continue et on renseigne la langue : dans mon cas j'ai pris «English » et puis on indique le chemin sur d'accessibilité de la base adoddb : /usr/share/php/adodb sur continue

    Réalisé et présenté par Yanice CHACHA

    46

    Mise en place d'un système de détection d'intrusion avec SNORT

    - On renseigne alors les paramètres sur la base de données

    - On clique sur continues et ensuite Clique "create baseag" une base qui va s'étendre au support snort

    Réalisé et présenté par Yanice CHACHA

    47

    Mise en place d'un système de détection d'intrusion avec SNORT

    - L'étape qui suit est celle de l'authentification pour se connecter sur Base

    -On va dès à présent créer un script pour mettre en marche snort et barnyard au démarrage : Ce script sera placé dans /etc/init.d/ :

    # vi /etc/init.d/snortbarn

    #! /bin/sh

    #

    ### BEGIN INIT INFO

    # Provides: snortbarn

    # Required-Start: $remote_fs $syslog mysql

    # Required-Stop: $remote_fs $syslog

    # Default-Start: 2 3 4 5

    # Default-Stop: 0 1 6

    Réalisé et présenté par Yanice CHACHA

    48

    Mise en place d'un système de détection d'intrusion avec SNORT

    # X-Interactive: true

    # Short-Description: Start Snort and Barnyard

    ### END INIT INFO

    . /lib/init/ vars.sh

    . /lib/lsb/init-functions

    mysqld_get_param() {

    /usr/sbin/mysqld --print-defaults | tr " " "\n" | grep -- "--$1" | tail -n 1 | cut -d= -f2

    }

    do_start()

    {

    log_daemon_msg "Starting Snort and Barnyard" ""

    # Make sure mysql has finished starting

    ps_alive=0

    while [ $ps_alive -lt 1 ];

    do

    pidfile=`mysqld_get_param pid-file`

    if [ -f "$pidfile" ] && ps `cat $pidfile` >/dev/null 2>&1; then ps_alive=1; fi

    sleep 1

    done

    /sbin/ifconfig eth1 up

    /usr/local/bin/snort -q -u snort -g snort -c /usr/local/etc/snort/snort.conf -i eth1 &

    /usr/local/bin/barnyard2 -q -c /usr/local/etc/snort/barnyard2.conf -d /var/log/snort -f snort.log -w

    /usr/local/etc/snort/bylog.waldo -C

    /usr/local/etc/snort/classification.config 2> /dev/null &

    log_end_msg 0

    return 0

    }

    do_stop()

    {

    log_daemon_msg "Stopping Snort and Barnyard" ""

    kill $(pidof snort) 2> /dev/null

    Mise en place d'un système de détection d'intrusion avec SNORT

    kill $(pidof barnyard2) 2> /dev/null

    log_end_msg 0

    return 0

    }

    case "$1" in

    start)

    do_start

    ;;

    stop)

    do_stop

    ;;

    restart)

    do_stop

    do_start

    ;;

    *)

    echo "Usage: snort-barn {start|stop|restart}" >&2

    exit 3

    ;;

    esac

    exit 0

    - Il faut ensuite rendre ce fichier exécutable et créer les liens symboliques de démarrage En exécutant les commandes :

    # chmod +x /etc/init.d/snortbarn # insserv -f -v snortbarn

    Snort et barnyard démarreront maintenant automatiquement au démarrage

     
     
     

    Réalisé et présenté par Yanice CHACHA

    49

    Réalisé et présenté par Yanice CHACHA

    50

    Mise en place d'un système de détection d'intrusion avec SNORT

    - L'étape suivante est la mise à jour des règles avec pulledpork dont il faut récupérer l'archive et faire les manipulations suivantes :

    # cd /usr/src && wget https://pulledpork.googlecode.com/files/pulledpork-0.7.0.tar.gz

    # tar -zxf pulledpork-0.7.0.tar.gz && cd pulledpork-0.7.0

    # cp pulledpork.pl /usr/local/bin && cp etc/*.conf /usr/local/etc/snort

    Ces captures ci-dessus expliquent clairement la procédure

    Réalisé et présenté par Yanice CHACHA

    51

    Mise en place d'un système de détection d'intrusion avec SNORT

    Réalisé et présenté par Yanice CHACHA

    52

    Mise en place d'un système de détection d'intrusion avec SNORT

    - Ensuite il la commande ci-dessus pour désactiver tous les blocks de règles fwsam # echo pcre:fwsam >> /usr/local/etc/snort/disablesid.conf

    Réalisé et présenté par Yanice CHACHA

    53

    Mise en place d'un système de détection d'intrusion avec SNORT

    - Et on démarre pulledpork avec les commandes ci-dessous # chmod +x /usr/local/bin/ pulledpork.pl

    # /usr/local/bin/ pulledpork.pl -c /usr/local/etc/snort/pulledpork.conf -T -l

    Réalisé et présenté par Yanice CHACHA

    54

    Mise en place d'un système de détection d'intrusion avec SNORT

    Les fichiers local.rules et snort.rules apparaîtront alors dans le répertoire /usr/local/etc/snort/rules.

    - On supprimer alors le fichier index.html par défaut dans /var/www, on retire alors le droit d'écriture au groupe et aux autres sur le répertoire base dans /var/www. Il est nécessaire aussi d'arrêter les processus snort et barnyard2 et on supprime le contenu des répertoires log de snort et barnyard2

    # rm /var/www/index.html

    # chmod 755 /var/www/base

    # pkill snort && pkill barnyard2

    # rm -rf /var/log/snort/* /var/log/barnyard2/*

    Réalisé et présenté par Yanice CHACHA

    55

    Mise en place d'un système de détection d'intrusion avec SNORT

    - Par suite on réédite le fichier snort.conf à la ligne 542 de la manière suivante : # vi /usr/local/etc/snort/snort.conf

    Réalisé et présenté par Yanice CHACHA

    56

    Mise en place d'un système de détection d'intrusion avec SNORT

    - En ajoutant à la ligne 542 include $RULE_PATH/snort.rules

    - Par finir on redémarre snortbarn

    # /etc/init.d/snortbarn restart

    Réalisé et présenté par Yanice CHACHA

    57

    Mise en place d'un système de détection d'intrusion avec SNORT

    Exemple de règle snort

    Cette règle permet :

    - De générer une alerte icmp (un ping)

    - Provenant de n'importe quel hôte du réseau local

    - Vers n'importe quel autre hôte du réseau local

    - Et renvoie un message : ICMP test

    - Ainsi que l'identifiant de la signature dans la base de données

    Réalisé et présenté par Yanice CHACHA

    58

    Mise en place d'un système de détection d'intrusion avec SNORT

    V- Difficultés rencontrées

    Ayant parcouru de nombreuses documentations notamment celle du site officiel de snort.org pour l'implémentation de l'IDS snort, J'ai malheureusement pas à ce moment précis où j'écris ces lignes pu obtenir des alertes sur interface de gestion BASE (Basic Analysis and Security Engine) quoi que en console, elles sont bien présentes.

    Réalisé et présenté par Yanice CHACHA

    59

    Mise en place d'un système de détection d'intrusion avec SNORT

    CONCLUSION

    La mise en place d'un système de détection d'intrusion dépend des besoins et du contexte dans lesquels il est déployé. Snort offre un large éventail de possibilités et peut aider les administrateurs à mieux gérer les activités anormales dans le réseau. Cependant malgré sa perpétuelle évolution et les nombreuses mises à jour il est limité et présente des inconvénients notamment les fausses alertes et son incapacité à détecter tout type d'attaques vu les nombreuses innovations faites au niveau des outils de scan (nmap et autres). Certes limités, mais snort ou tout autre système de détection d'intrusion deviennent quand même de nos jours des outils indispensables pour se prémunir un tant soit peu des attaques.

    La configuration que nous avons proposée dans notre rapport reste typique des tests dont nous avons fait cas dans notre présentation. Le déploiement de l'IDS snort dans une entreprise, lycée ou école dépendrait des politiques d'accès et des restrictions définies pour répondre à un certain nombre d'exigences.

    Le stage effectuer à Linknet Africa m'a permis de mieux appréhender certaines notions en administration système et réseaux et de faire évoluer un peu plus mes connaissances dans le monde linux.

    Notons enfin que la réalisation de ce projet nous as permis de mieux comprendre le concept des IDS et les aspects qu'il faut considérer pour le configurer.

    Webographie :

    https://snort.org www.debian.org http://fr.wikipedia.org/wiki/Syst%C3%A8me_de_pr%C3%A9vention_d%27intrusion http://lemondeinformatique.fr

    www.securityfocus.com

    www.01net.com

    www.linuxsecurity.com

    www.linuxfocus.org

    www.z0rglub.com/piratage/

    www.secway.fr

    http://www.securityfocus.com/infocus/1524 http://www.securityfocus.com/infocus/1534 http://www.securityfocus.com/infocus/1544 http://dbprog.developpez.com/securite/ids/ Cours CEA (Vincent Glaume) http://www.wikipedia.org http://www.groar.org/trad/snort/snortfaq/writing_snort_rules.html https://trac.prelude-ids.org/wiki/PreludeHandbook

    http://lehmann.free.fr/

    Bibliographie :

    Snort_manual .pdf (snort users manual 2.9.6) téléchargeable sur le site officiel https://snort.org Debian__Snort_Based_Intrusion_Detection_System.pdf téléchargeable sur le même site

    Cours CEA (Vincent Glaume). Les pages de « man » sous linux

    Conclusion 59

    SOMMAIRE

    Dédicaces : 3

    Remerciements : 4

    Plan 5

    Introduction 6

    Première partie : 7

    I- Présentation de Linknet Africa Sarl 8

    A- Structuration de Linknet Africa 9

    a- La direction générale 9

    b- Le service E-CENTER 9

    c- Le Service Commercial 9

    d- Le Service administratif financier et Logistique 9

    e- Le service technique 10

    B- Présentation et description des équipements 12

    II- Tâches accomplies au cours du stage 15

    Deuxième partie : 16

    I- Objectifs 17

    II- IDS, IPS et Choix de SNORT 17

    A- Les IDS 17

    1- Qu'est-ce que la détection d'intrusion ? 17

    2- Définition d'un IDS 17

    3- Pourquoi faut - il mettre un IDS ? 17

    4- Fonctionnement d'un IDS 17

    5- Rôles d'un IDS 18

    6- Les types d'IDS 19

    B- Les IPS 19

    1- Qu'est qu'un système de prévention d'intrusion ? 19

    2- Principe de fonctionnement 19

    3- Les types d'IPS 19

    4- Rôles et Inconvénients 20

    C- Différences entre IDS et IPS 20

    D- Choix de snort 20

    III- Fonctionnement, avantages, inconvénients et limites 21

    1- Fonctionnement de SNORT 21

    2- Définition des règles de snort 21

    3- Positionnement de SNORT dans le réseau 21

    4- Avantages, inconvénients et Limites 22

    a- Avantages 22

    b- Inconvénients 23

    c- Limites 23

    IV- Installation et Configuration de snort 24

    1- Configuration matériel 24

    2- Installation et configuration 24

    a- Installation des dépendances et prérequis 25

    b- Installation et configuration de snort 26

    c- Installation de BASE pour la gestion des alertes depuis une interface graphique 44

    V- Difficultés rencontrées 58

    Webographie : 60

    Bibliographie : 60






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Il existe une chose plus puissante que toutes les armées du monde, c'est une idée dont l'heure est venue"   Victor Hugo