REPUBLIQUE DU SENEGAL
Année académique : 2018-2019
Un peuple - un but - une foi
Ministère de l'enseignement supérieur, de
la recherche et de l'innovation
Direction générale de l'enseignement
supérieur Direction de l'enseignement supérieur
privé Ecole supérieure de technologie et de
management
Mémoire de fin de cycle pour l'obtention de la
licence en Téléinformatique Option : Génie logiciel et
Administration réseaux
Intitulé
Inspection du trafic pour la détection et la
prévention d'intrusions
Présenté et soutenu par : Sous la direction
de :
M. Frèse YABOUI M. Youssef KHLIL
Spécialité : Cryptographie
I
Dédicace
Dédicace à mes chers parents M. Emmanuel
YABOUI et Mme Julienne OKOUYA en guise de
reconnaissance et de gratitude pour leur amour, leur patience, leur soutien,
leur encouragement et leur sacrifice. Aucun mot, aucune dédicace ne
pourrait exprimer mon respect, ma considération, ainsi que l'expression
de mon profond amour. Puisse Dieu vous accordé santé, bonheur et
longue vie afin que je puisse un jour combler de joie vos vieux jours.
Je dédie également ce travail à mon
père spirituel Dr. Cyrille KINHOEGBE qui m'a soutenu
moralement dans l'élaboration de ce travail. Son encouragement m'a
permis de garder le cap afin d'atteindre mon objectif.
II
Remerciements
Tout d'abord, je tiens à remercier Dieu le
Père de notre Seigneur Jésus-Christ de
m'avoir donné la force, la volonté et le courage pour arriver
à l'achèvement de ce travail.
De plus, j'ai la fierté et le plaisir de
présenter mes sincères remerciements à mon encadreur
M. Youssef KHILL, pour m'avoir guidé tout au long de
mon travail, m'aider à trouver des solutions pour avancer et le temps
qu'il m'a accordé pour mon encadrement.
Je tiens à remercier tous les enseignants qui ont
contribué à la formation pendant tout mon cycle. En effet, leur
aide m'a été précieuse pour arriver au terme de ce
travail.
Je tiens aussi à remercier le Directeur des Etudes de
ESTM, M. Félix KAMPAL pour m'avoir accepté au
sein de cet établissement. Permettez-moi de vous exprimer mon admiration
pour vos qualités humaines et professionnelles.
J'exprime également mes remerciements à mes
frères Régis NDOSSANI, Hanniel
COULIDIATI SOUANDAMBA, Grâce GOTRON,
Fortunet GUINDOGBA WEMON, Juste Emmanuel YABOUI
et à mes soeurs Christen GUIMBETY,
Jeannice ROBOTY, Fulberte KPODE, NZASSI
Sheirole, Juliema YABOUI, Frèsia YABOUI et Karina
YABOUI Zinnia qui m'ont soutenu moralement dans l'élaboration
de ce travail. Leur encouragement m'ont permis de garder le cap afin
d'atteindre mon objectif.
J'associe nos remerciements aux membres du Jury pour avoir
accepté de siéger pour la perfection de ce mémoire.
Enfin, je tiens à remercier tous ceux qui ont
participé de près ou de loin à l'élaboration de ce
mémoire.
III
Avant-propos
L'Ecole Supérieure de Technologie et de Management a
été créée en 2002. Spécialisée entre
autres dans les domaines de l'informatique, de la
télécommunication et du management des entreprises, elle a pour
missions de former les étudiants qui ont toujours su se faire distinguer
sur le marché du travail, de par leurs connaissances et
compétences acquises à l'issue de leur formation. Forte de son
expérience, elle a toujours su se hisser parmi les meilleures
écoles de la place évoluant dans le même secteur
d'activité. Les diplômes délivrés sont la licence et
le master homologués par les institutions académiques (CAMES)
africaines.
Pour l'obtention de la licence en
téléinformatique, l'ESTM exige à ses étudiants
l'élaboration d'un mémoire de fin de cycle. C'est dans cette
perspective que nous avons rédigé ce document qui s'intitule
Inspection du trafic pour la détection et la prévention
d'intrusions.
Dans ce sujet il s'agira de mettre en place un système
de détection et de prévention d'intrusions en utilisant des
outils libres. Ce système de sécurité permettra de
détecter et d'y remédier aux intrusions sur le réseau
aussi bien que sur les équipements du système d'information.
Ce document représente notre premier travail de
recherche. A cet effet, nous sollicitons de la part du jury beaucoup
d'indulgence quant à l'évaluation.
IV
Sommaire
Introduction générale 1
I. Cadre théorique et méthodologique
3
1.1. Cadre méthodologique 3
1.1.1. Présentation de l'ESTM 3
1.1.2. Problématique 4
1.1.3. Objectifs 4
1.1.4. Délimitation du sujet 4
1.2. La sécurité informatique
5
1.2.1. Qu'est-ce que la sécurité ? 5
1.2.2. Objectifs de la sécurité 5
1.2.3. Les enjeux de la sécurité 6
1.2.4. Les vulnérabilités 6
1.2.5. Les menaces 7
1.2.6. Les logiciels malveillants 7
1.2.7. Les intrusions 7
1.2.8. Les attaques 8
1.2.9. Les moyens de sécuriser un réseau 15
1.2.10. Mise en oeuvre d'une politique de sécurité
21
II. Cadre conceptuel 22
2.3. Système de détection et de
prévention d'intrusions 23
2.3.1. Système de détection d'intrusions (IDS)
23
2.3.2. Systèmes de prévention d'intrusions (IPS)
38
2.4. Etude des solutions 44
2.4.1. Systèmes de détection d'intrusions
basée sur l'hôte (RIDS) 44
2.4.2. Systèmes de détection d'intrusions
réseau (NIDS) 47
2.4.3. Choix des solutions 50
2.4.4. Présentation générale de SNORT 50
2.4.5. Présentation générale d'OSSEC 57
III. Mise en oeuvre 63
3.5. Architecture et prérequis 63
3.5.1. Architecture 63
V
3.5.2. Prérequis 64
3.6. Configuration et tests 65
3.6.1. SNORT 65
3.6.2. Installation de Barnyard2 69
3.6.3. Installation de PulledPork 72
3.6.4. Création de Scripts SystemD 74
3.6.5. Installation de B.A.S.E 75
3.6.6. OSSEC 76
3.6.7. Tests d'intrusions 79
Conclusion générale 82
VI
Glossaire
ACID: Analyse Consol for Intrusions Database
ADODB: Active DATA Objects DATA Base
ARP: Address Resolution Protocol
ASA: Adaptive Security Appliance
CD ROM: Compact Disc Read OnlyMemory
CERT: Computer Emergency Response Team
CIDR: Classless Inter-Domain Routing
CGI: Information Systems and Management Consultants
CIS: Center for Internet Security
CPU: Central Processing Unit
DAQ: Data Acquisition
DDoS: Distributed Denial of Service
DHCP: Dynamic Host Configuration Protocol
DMZ: DeMilitarized Zone
DNS: Domain Name Service
DVD: Digital Versatile Disc
ESTM: Ecole Supérieure de Technologie et de
Management
FTP: File Transfer Protocol
H-IDS: Host Based Intrusions Detection System
HIPS: Host Kernel Intrusion Prevention System
HTTP: HyperText Transfer Protocol
HTTPS: HyperText Transfer Protocol Secure
ICMP: Internet Control Message Protocol
IDS: Intrusions Detection System
IDWG: Intrusions Detection exchange formatWorking Group
IETF: Internet Engineering Task Force
IGRP: Interior Gateway Routing Protocol
IOS: Internetwork Operating System
IPS: Intrusions Prevention System
IPSec: Internet Protocol Security
IPX: Internetwork Packet Exchange
ISS: Internet Secure System
VII
KIPS: Kernel Intrusion Prevention System
LAN: Local Area Network
NFS: Network File System
NNIDS: Node Network Intrusion Detection System
NIPS: Network Intrusion Prevention System
NMAP: Network Mapper
NTP: Network Time Protocol
OSPF: Open Shortest Path First
OSI: Open Systems Interconnection
PCI: Peripheral Component Interconnect
PHP: Hypertext Preprocessor
POP3: Post Office Protocol Version 3
PSSI: Politique de Sécurité des Systèmes
d'Information
RIP: Routing Information Protocol
RPC: Remote Procedure Call
SI: Système d'Information
SIEM: Security Information and Event Management
SGBD: Système de Gestion de Base de
Données
SIM: Security Information Management
SMB: Server message block
SMTP: Simple Mail Transfer Protocol
SNMP: Simple Network Management Protocol
SSH: Secure Shell
SSI: Sécurité des Systèmes
d'Information
SSL: Secure Socket Layer
SUID: Set User IDentifier
TCP/IP: Transmission Control Protocol /Internet Protocol
TLS: Transport Layer Security
TTL: Time-To-Live
UDP: User Datagram Protocol
URI: Uniform Resource Identifier
URL: Uniform Resource Locator
USB: Universal Serial Bus
VPN: Virtual Private Network
VIII
Liste des figures
Figure 1.1 : Architecture du réseau de l'ESTM 3
Figure 2.1 : Attaque directe 9
Figure 2.2 : Attaque indirecte par rebond 9
Figure 2.3: Attaque indirecte par réponse 10
Figure 2.4: Attaque par interruption 10
Figure 2.5: Attaque par interception 11
Figure 2.6: Attaque par modification 11
Figure 2.7: Attaque par fabrication 12
Figure 2.8: L'attaque SYN Flood 12
Figure 2.9: DDos attaque 13
Figure 2.10: Firewall 16
Figure 2.11: Architecture DMZ 17
Figure 2.12: Principe d'un VPN 18
Figure 2.13: Système de détection d'intrusions
18
Figure 2.14: Système de prévention d'intrusions
19
Figure 2.15: Un tunnel IPSec entre deux sites d'entreprise
21
Figure 4.1: Différentes positions possible de SNORT
dans un réseau informatiques 51
Figure 4.2: Architecture de SNORT 52
Figure 4.3: Les différents champs d'une règle
SNORT 54
Figure 4.4: architecture d'OSSEC 59
Figure 5.1 : Architecture du projet 64
Figure 6.1: Test du binaire SNORT 66
Figure 6.2: Validation du fichier de configuration 69
Figure 6.3: Validation de la nouvelle règle 69
Figure 6.4: Test d'installation de Barnyard2 70
Figure 6.5: Vérification d'enregistrement des
événements par Barnyard2 72
Figure 6.6: Oinkcode 72
Figure 6.7: Test de fonctionnement de PulledPork 73
Figure 6.8: Exécution manuelle de PulledPork 74
Figure 6.9: Installation de l'agent OSSEC sur la machine
Ubuntu 77
Figure 6.10: Ajout de la machine Ubuntu comme agent du serveur
OSSEC 77
Figure 6.11: Extraction de la clé pour la machine
Ubuntu 78
Figure 6.12: Ajout de la clé sur la machine Ubuntu
78
Figure 6.13: Agent connecté 79
Figure 6.14 : Ping de la machine Windows XP vers la machine
Ubuntu 79
Figure 6.15 : Détection du ping par la machine Ubuntu
80
Figure 6.16 : Connection SSH à la machine Ubuntu 80
Figure 6.17 : Accès au compte root de la machine Ubuntu
81
Figure 6.18 : Connection SSH détectée par le
serveur OSSEC via le Dashboard Kibana 81
Figure 6.19 : Connection SSH détectée par le
serveur OSSEC via le fichier alerts.log 82
IX
Liste des tableaux
Tableau 3.1: Avantages et inconvénient de l'approche
comportementale 33
Tableau 3.2: Avantages et inconvénient de l'approche
par scénario 34
Tableau 3.3 : Avantages et limites d'un IDS 38
Tableau 4.1: Comparaison des HIDS 46
Tableau 4.2 : Comparaison des NIDS 49
Tableau 4.3 : Systèmes et périphériques
pris en charge par OSSEC 62
Inspection du trafic pour la détection et la
prévention d'intrusions
Introduction générale
Les réseaux informatiques sont devenus beaucoup plus
important qu'ils en aient il y a quelques années. De nos jours les
entreprises dès leur création n'hésitent pas à
mettre en place un réseau informatique pour faciliter la gestion de leur
infrastructure, c'est pour cela que la sécurité de ces
réseaux constitue un enjeu crucial. Vu le nombre sans cesse croissant
d'attaques et d'incidents, et à titre d'exemple de WannaCry en 2017 dont
200 000 ordinateurs auraient été infectés sur tous les
continents. Etre réactif et proactif dans la détection et la
gestion des incidents cybers est une préoccupation de toutes les
structures.
Un système de détection d'intrusion (IDS) est un
mécanisme écoutant le trafic réseau de manière
furtive afin de repérer des activités anormales ou suspectes et
permettant aussi d'avoir une action de prévention sur les risques
d'intrusion. Il existe deux grandes familles distinctes d'IDS à savoir
les NIDS (Network Based Intrusion Detection System) et les
HIDS (Host Based Intrusion Detection System). Le but des NIDS
est de regarder les paquets transitant dans le réseau pour
déterminer si une attaque a lieu. Ainsi, un NIDS ne pourra
protéger que les ordinateurs se trouvant sur le même réseau
que lui, sauf dans le cas où il existe des machines routant les
informations d'un système différent vers l'IDS. Un
désavantage des NIDS est que tout paquet chiffré ne pourra pas
être compris par les NIDS, qui doivent lire le contenu des paquets. Ce
désavantage peut disparaître en utilisant des HIDS qui vont
obtenir les informations après leur déchiffrement sur la machine.
C'est dans cette logique qu'on se pose la question de savoir quel
système de sécurité mettre en place afin de
détecter et d'y remédier aux intrusions sur le réseau
aussi bien que sur les équipements du système d'information ?
L'objectif général de notre travail est de
mettre en place une solution de détection et de prévention
d'intrusions en utilisant des outils libres. Aussi pour remédier
à certaines limites que présentent ces logiciels libres que nous
utiliserons dans notre projet, nous écrirons des scripts qui
exécuteront certaines tâches bien définies. Et comme
objectifs spécifiques, nous aurons à faire une étude sur
les différentes solutions présentes sur le marché,
identifier la meilleure solution pour la mise en place de notre système
de détection d'intrusion réseau (NIDS) et l'implémenter,
identifier la meilleure solution pour la mise en place de notre système
de détection d'intrusion hôte (NIDS) et l'implémenter et
faire des tests d'intrusions.
Vu la panoplie des systèmes de détection et de
prévention d'intrusions efficaces sur le marché, raison pour
laquelle notre choix s'est porté sur ce sujet. Il sera question de
mettre à la
1
YABOUI Frèse
Inspection du trafic pour la détection et la
prévention d'intrusions
disposition des entreprises et des particuliers une solution
de sécurité pour prévenir contre toute tentation
d'intrusion au sein de leurs systèmes d'informations.
Pour matérialiser notre projet nous pouvons
considérer les hypothèses suivantes :
D'une part qu'on mette en place un système de
détection d'intrusion réseau (NIDS) pour sécuriser le
trafic sur le réseau. Et d'autre part qu'on mette en place un
système de détection d'intrusion hôte (HIDS) pour
sécuriser les équipements physiques du système
d'information.
Afin de prendre en compte la réalité des besoins
de la sécurité des systèmes d'information au sein des
entreprises qu'aussi au niveau des particuliers, nous nous sommes
appuyés sur une base assez conséquente de documents fiables
provenant des autorités d'organisation de ce domaine et le web. Aussi
nous nous sommes basés sur des idées novatrices tirées
d'échanges entre plusieurs acteurs du domaine de la
sécurité des systèmes d'information.
Ainsi notre travail s'articulera sur trois parties. Nous
commencerons par faire la présentation générale en
définissant les cadres théorique et méthodologique.
Ensuite nous passerons au cadre conceptuel de notre système. Enfin nous
terminerons par sa mise en oeuvre en abordant sa réalisation et son
test.
2
YABOUI Frèse
Inspection du trafic pour la détection et la
prévention d'intrusions
I. Cadre théorique et
méthodologique
Les cadres théoriques et méthodologiques feront
l'objet de notre première partie qui sera consacré à la
présentation générale de la structure d'accueil et des
concepts de la sécurité informatique.
1.1. Cadre méthodologique
1.1.1. Présentation de l'ESTM
ESTM (Ecole Supérieure de Technologie et de Management)
est une école d'ingénieurs et de spécialistes du
management à la pointe des dernières technologies qui a
été créée en 2002. Elle s'appuie sur un corps
professoral très expérimenté émanant de structures
universitaires et professionnelles de haut niveau. Elle possède un
environnement matériel interconnecté, qui vous permet
d'accéder à l'ensemble des ressources informatiques de
l'école.
Figure 1.1 : Architecture du réseau de
l'ESTM
Vu le nombre sans cesse croissant d'attaques et d'incidents,
l'ESTM se doit d'investir dans la sécurisation de son système
d'information et dans la qualité de service fournit aux clients.
Cependant il revient à souligner l'absence d'un système de
sécurité au sein de l'ESTM permettant d'identifier ces attaques
bien avant afin de les éradiquer pour ainsi assurer la protection de son
système d'information.
3
YABOUI Frèse
Inspection du trafic pour la détection et la
prévention d'intrusions
1.1.2. Problématique
Le système d'information (SI) est un
élément central d'une entreprise ou d'une organisation.
Il permet aux différents acteurs de véhiculer des informations et
de communiquer grâce à un ensemble de ressources
matérielles, humaines et logicielles. Un SI permet de créer,
collecter, stocker, traiter, modifier des informations sous divers formats. Le
système d'information est l'objet de nombreuses attaques et d'incidents.
C'est pourquoi, il sera nécessaire d'avoir un bon système de
sécurité pouvant défendre le système d'information
contre ces attaques et ces incidents. Ainsi, mettre en place un système
de sécurité afin de détecter et d'y remédier aux
intrusions sur le réseau aussi bien que sur les équipements du
système d'information.
|