Zoui Oumaima

Télécharger au format docx, pdf ou txt
Télécharger au format docx, pdf ou txt
Vous êtes sur la page 1sur 87

‫وزارة التعليم العالي والبحث العلمي‬

‫الجمهورية الجزائرية الديمقراطية الشعبية‬

UNIVERSITE BADJI MOKHTAR- ‫عنابة‬-‫جامعة باجي مختار‬


ANNABA

BADJI MOKHTAR ANNABA UNIVERSITY

Faculté : Technologie

Département : Informatique

Domaine : Mathématique-informatique

Filière : Informatique

Spécialité : Réseaux et Sécurité Informatique

Mémoire
Présente en vue de l`obtention du Diplôme de Master

Thème

Détection des attaques de déni de service par une


approche basée Deep learning

Réalisé par :
Zaoui Guerfi Oumaima

Devant le jury :
Pr . Merouani UNIVERSITE BADJI MOKHTAR-ANNABA
Dédicace
Je remercie Allah de m’avoir donné le courage pour
accomplir ce modeste travail que je dédie :
À mes très chers parents :
Aucune dédicace ne peut exprimer l'amour,
l'appréciation, le dévouement et le respect que j'ai
toujours pour vous, Ce travail est le fruit des sacrifices
que vous avez consentis pour m'enseigner au fil des
années, je vous en suis reconnaissant toute ma vie.
A ma belle-sœur :
Lorsque la mer représentait ma tristesse tu m'as appris à
nager
A mes chers frères :
Je leur souhaite du succès dans leur vie personnelle et
académique.
A Mes chers amis :
Merci pour tous les souvenirs intemporels dans nos
cœurs, je les remercie pour leur soutien et pour m’avoir
accompagné.
Remerciements
Un merci spécial à mes collègues de classe et amis qui ont créé un
environnement propice à l'échange d'idées et au partage de
connaissances. Leur camaraderie a apporté une dimension humaine
essentielle à cette expérience académique.

Je remercie également tous les membres du jury d'avoir accepté à


participer à l'évaluation de notre travail.

Je n'oublie pas le soutien indéfectible de ma famille, qui a été une


source constante de motivation et d'encouragement. Leur
compréhension, leur patience et leur amour ont été des forces motrices
essentielles pendant ces moments d'intenses efforts.

Enfin, je tiens à exprimer ma reconnaissance envers toutes les


personnes qui, de près ou de loin, ont contribué à faire de ce mémoire
une réalité. Vos efforts ont été une part intégrante de cette réussite
collective.
Résumé
Les attaques par déni de service constituent l'une des menaces les plus sévères
en matière de cyber sécurité. La diversité de ces attaques, ainsi que l'utilisation
de méthodes complexes difficiles à détecter et à contrer, demeurent parmi les
principales préoccupations dans le domaine du cyber sécurité. La mise au point
de méthodes sophistiquées de détection des attaques par déni de service revêt
une importance capitale pour garantir la sécurité des réseaux. Récemment, cette
problématique a fait l'objet de nombreuses recherches qui ont exploité diverses
approches d'apprentissage automatique pour détecter ces attaques.

L'objectif de notre travail est de modéliser un système visant à aider les


administrateurs de cyber sécurité à détecter et à identifier différentes formes
d'attaques. Dans cette étude, nous examinons des méthodes d'apprentissage
automatique (ML) dédiées à la détection d'intrusions. Nous appliquons ensuite
une technique spécifique d'apprentissage profond, le Réseau de Neurones
Convolutif (CNN), que nous testons sur l'ensemble de données CICDDoS2019.
Cet ensemble de données englobe plus de 60 millions de transactions,
enregistrant 14 types de cyberattaques. Nous évaluons les méthodes proposées
en utilisant diverses mesures destinées à évaluer les performances de
l'apprentissage automatique, telles que la précision, le rappel et le score F1.

Les résultats obtenus démontrent que l'apprentissage profond offre des


performances supérieures par rapport aux algorithmes traditionnels
d'apprentissage automatique (ML).

Mots clés : Apprentissage automatique, Apprentissage profond, Déni de service,


CNN, CICDDoS2019.

I
Liste des tableaux

Table 1-1 : Résume des diffèrent placements des IDS.......................................................................... 20

Table 2-1 : Les fonctions d'activation les plus courantes [24].............................................................. 29

Table 2-2 : Les résultats de Sharafaldin et al [4]................................................................................... 32

Table 2-3 : Travaux antérieurs connexes pour la détection d’intrusion basée sur le deep learning…. 34

Table 3-1 : Caractéristiques de matériel .............................................................................................. 39

Table 3-2 : Collecte de données publies sur la cyber sécurité ............................................................. 41

Table 3-3 : l'ensemble de donnée (jour 01-12-2019)........................................................................... 44

Table 3-4 : Pourcentage de chaque type d'attaque dans le dataset ....................................................47

Table 3-5 : l’ensemble de donnée (Jour 03-11 -2019)......................................................................... 48

Table 3-6 : Sous ensembles 1 (2 classes).............................................................................................. 54

Table 3-7 : Sous-ensembles 2 (8 classes).............................................................................................. 54

Table 3-8 : Sous-ensembles 3 (13 classes)............................................................................................ 55

Table 3-9 : Modifier des étiquettes par classe ..................................................................................... 56

Table 3-10 : Sous-ensembles 4 (14 classes).......................................................................................... 56

Table 3-11 : Comparaison des résultats du machine learning et du deep learning.............................. 66

Table 3-12 : Le rapport de classification binaire .................................................................................. 67

Table 3-13 : Le rapport de classification (7 classes classifications)....................................................... 69

Table 3-14 : Le rapport de classification (13 classes classifications)..................................................... 70

Table 3-15 : Le rapport de classification (14 classes classifications)..................................................... 72

Table 3-16 : Les résultats des méthodes proposées............................................................................. 74

IX
Liste des figures
Figure 1-1 : L’attaque par déni de service (DoS) .......................................................... 8
Figure 1-2 : L’attaque par distribué déni de service (DDoS) ......................................... 9
Figure 1-3 : L’attaque par distribué réflexion déni de service (DrDoS).......................... 10
Figure 1-4 : Attaque par SMURF .................................................................................... 12
Figure 1-5 : Attaque par SYN FLOOD ............................................................................. 13
Figure 1-6 : Attaque par UDP FLOOD ............................................................................. 13
Figure 1-7 : Attaque par HTTP FLOOD ........................................................................... 15
Figure 1-8 : Un modèle fonctionnel du Système de détection d’intrusion proposé
par l’IDWG [14] ... 17
Figure 1-9 : les composants d’un NIDS [15]................................................................... 19
Figure 2-1 : L’architecture d’un réseau neuronal convolutive [25]............................... 30
Figure 2-2 : L’architecture d’un modèle RNN [25]......................................................... 31
Figure 2-3 : Organigramme de la méthodologie utilise dans article [27]..................... 33
Figure 3-1 : l'ensemble de donnée par pourcentage (jour 01-12-2019)...................... 46
Figure 3-2 : pourcentage des attaques dans le dataset CICDDoS2019 ................................................. 47
Figure 3-3 : les attaques par réflexion et les attaques par l’exploitation [41]....................................... 49
Figure 3-4 : Matrice de confusion par les colonnes................................................................................
53
Figure 3-5 : exemple pour colonne supprimé (stabilise à 0).................................................................. 58
Figure 3-6 : le modèle Cnn utilisé pour 13-Class classification................................................................
61
Figure 3-7 : Schéma conceptuel de notre méthode d’implémentation DL.............................................
63
Figure 3-8 : Matrice de confusion ...........................................................................................................
64
Figure 3-9 : L’exactitude et la perte de la classification binaire...............................................................
67
Figure 3-10 : Matrice de confusion (2 - classes) ............................................... ......................................
68
Figure 3-11 : L’exactitude et la perte (8 classes classifications)..............................................................
68
Figure 3-12 : L’exactitude et la perte (13 classes classifications)............................................................
70
Figure 3-13 : Matrice de confusion (13 classifications)............................................................................
71
Figure 3-14 : L’exactitude et la perte (14 classes classifications)............................................................
72
Figure 3-15 : Matrice de confusion (14 classifications)...........................................................................
73
X

Le sommaire
RESUME ..................................................................................................................................................
.... I
LISTE DES
TABLEAUX...................................................................................................................................IX
LISTE DES
FIGURES ..................................................................................................................................... X
TABLE DES
MATIERES..................................................................................................................................XI
INTRODUCTION
GENERALE......................................................................................................................... 1
CHAPITRE 1 : LES SYSTEMES IDS ET LES ATTAQUES
DOS........................................................................... 3
1.1. LES ATTAQUES PAR DENI DE
SERVICE ?...........................................................................................4
1.2. CATEGORIES DES ATTAQUES DE DENI DE
SERVICE.........................................................................5
1.2.1. L’attaque par déni de service
(DoS)......................................................................................5
1.2.2. L’attaque par distribué déni de service
(DDoS).....................................................................5
1.2.3. L’attaque par distribué réflexion déni de service
(DrDoS).....................................................7
1.2.4. Synthèse et comparaison ....................................................................................................
8
1.3. DIFFERENTS TYPES D’ATTAQUES
DOS........................................................................................... 9
1.3.1. Attaque par SMURF ............................................................................................................
9
1.3.2. Attaque par SYN
FLOOD ...................................................................................................... 10
1.3.3. Attaque par UDP
FLOOD..................................................................................................... 11
1.3.4. Attaque par HTTP
FLOOD.................................................................................................... 12
1.4. LES SYSTEMES DE DETECTION DES INTRUSIONS
(IDS).................................................................. 13
1.4.1. Les types des systèmes de détection d'intrusion ...............................................................
13
1.4.1.1. IDSs à base de
signature : ..............................................................................................14
1.4.1.2. IDSs à base
d’anomalie :.................................................................................................15
1.4.2. Architecture des IDS et principe de fonctionnement :........................................................
15
1.4.3. Emplacement de l’IDS .........................................................................................................
16
1.4.3.1. Les NIDS (Systèmes de détection d'intrusion basés sur le
réseau) :..............................16
1.4.3.2. Les HIDS (Host-Base Intrusion Détection
System):........................................................17
1.4.3.3. Les IDSs
hybrides ............................................................................................................17
1.4.4. Méthodes de détection:......................................................................................................
18
XI
1.4.5. Les mesures de notation IDS : .............................................................................................
19
CHAPITRE 2 : ETAT DE L’ART SUR L’APPRENTISSAGE PROFOND POUR LA
CYBERSECURITE....................20
2.1. GENERALITES SUR L’APPRENTISSAGE
AUTOMATIQUE.............................................................. 22
2.1.1. Définition ..............................................................................................................................
23
2.1.2. Approches de l'apprentissage automatique........................................................................
23
2.1.2.1. L'apprentissage
supervisé..............................................................................................23
2.1.2.2. Apprentissage non
supervisé ........................................................................................23
2.1.2.3. Apprentissage semi-
supervisé.......................................................................................24
2.2. L’APPRENTISSAGE PROFOND POUR LA
CYBERSECURITE .......................................................24
2.3. QUELQUES METHODES D’APPRENTISSAGE
PROFOND.......................................................... 25
2.3.1. Les réseaux de neurones artificiels (ANN)........................................................................
26
2.3.2. Réseaux de neurones convolutifs (CNN)..........................................................................
27
2.3.3. Réseaux de neurones récurrents (RNN)...........................................................................
27
.2.4 TRAVAUX CONNEXES SUR LA DETECTION DES ATTAQUES DOS BASES DEEP ET
MACHINE LEARNING.31

CHAPITRE 3 : CONTRIBUTION, RESULTAT ET


DISCUSSION.......................................................................29
3.1. ENVIRONNEMENT DE
DEVELOPPEMENT ............................................................................. ..30
3.1.1. Matériel utilisé...................................................................................................................
30
3.1.2. Environnement logiciel....................................................................................................
30
3.1.3. Langages de programmation et bibliothèque............................................................... 31
3.2. DONNEES UTILISEES POUR
L’EXPERIMENTATION.................................................................. 40
3.2.1. Les Datasets d’évaluation des attaques DoS basé sur Deep learning...........................
31
3.2.2. Le dataset
CICDDoS2019 ................................................................................................ 32
.3.2.3 Prétraitements et normalisation des données .............................................................. 40
. 3.2.3.1 Uniformisation des
étiquettes ..................................................................................42
3.2.3.2. Prétraitement de
données........................................................................................46
3.2.3.3. Normalisation des
données......................................................................................46
3.2.4. L’Architecture de modèle et Model proposé ................................................................
50
3.3. RESULTATS ET
DISCUSSION.................................................................................................... 52
3.3.1. Les mesures d’évaluation du modèle.............................................................................
54
3.3.1.1. La matrice de
confusion ...........................................................................................54
XI
3.3.1.2. Mesures de performance de la
classification...........................................................54
3.3.2. Les modèle de base utilisée pour la comparaison .............................................. 56
3.3.3. Résultat.................................................................................................................. 56
CONCLUSION
GENERALE ...................................................................................................................63
PERSPECTIVE ......................................................................................................................................
63
BIBLIOGRAPHIES
……………………………………………………………………………………………………………
……… ….... 64
XI
Introduction Générale

1
Introduction Générale

A l'ère actuelle, marquée par l'avènement de la technologie, Internet se positionne


comme le socle fondamental des nations et de la civilisation. De nos jours, il revêt une
importance cruciale pour les activités d'apprentissage, de travail, de communication
instantanée, ainsi que pour de nombreuses autres technologies émergentes telles que les
véhicules autonomes a conduite à distance, la vente de machines, et diverses autres
innovations liées à l'information. La prolifération de ces outils d'information à l'échelle
mondiale a engendré de nouvelles vulnérabilités en matière de sécurité. L'évolution des
réseaux d'information à travers le monde est confrontée à des menaces réelles, délibérées ou
accidentelles, illustrées quotidiennement par des récits de piratages, d'atteintes à la vie privée,
d'espionnage, de fraudes et de cyber sécurité.

Le cyber sécurité doit aujourd'hui faire face à un certain nombre de défis et de menaces,
dont l'actualité la plus récente est la guerre russo-ukrainienne du 15 au 16 février 2022.
L'Ukraine a été la cible d'une attaque par déni de service touchant l'ensemble de ses
institutions militaires et financières. Les pirates russes ont continué à attaquer les sources
d'information ukrainiennes de manière ininterrompue, submergeant les serveurs ukrainiens de
trafic. Ceci souligne le défi majeur que représente le cyber sécurité.

Parmi les risques les plus pernicieux pour la sécurité figurent les attaques par déni de
service, caractérisées par leur diversité visant à submerger les systèmes de sécurité. Ces
attaques représentent un enjeu crucial pour la cyber sécurité.

Problématique

Avec l'avancement du monde et la nécessité de construire une infrastructure mondiale


pour les technologies de l'information, les systèmes de détection d'intrusion font face à de
nombreux défis incontournables pour assurer la protection des systèmes. Ces défis incluent
l'amélioration du taux de détection correcte des attaques, l'optimisation du temps et du type de
détection d'attaque, ainsi que la réduction du taux de fausses alarmes.

Introduction Générale
But de travail

Le but de cette étude est d'apporter une contribution significative à l'amélioration des
systèmes de détection d'intrusion. Plus spécifiquement, nous visons à permettre aux
administrateurs réseau, en particulier les administrateurs de cyber sécurité des systèmes de
détection d'intrusion, d'améliorer la détection de divers types d'attaques par déni de service.
Cela nécessite généralement la mise en œuvre de plusieurs méthodes de détection d'intrusion
basées sur des approches d'apprentissage en profondeur, en utilisant des jeux de données
réels.

3
CHAPITRE 1 : Les systèmes
IDS et les attaques Dos

4
CHAPITRE 1 : Les systèmes IDS et les attaques DoS

La détection d'intrusion d'une attaque par déni de service est un composant essentiel des systèmes de
protection et de sécurité. Avec l'apparition quotidienne de nouvelles cyberattaques, les systèmes de
détection d'intrusion (IDS) jouent un rôle majeur dans l'identification des cyberattaques potentielles
sur un réseau ou un système approprié et fourni. IDS doit s'adapter au mieux à ces nouvelles menaces
(cyberattaques) et à leurs tactiques, tout en continuant à évaluer. De nombreux outils sur le marché
permettent aujourd'hui plusieurs niveaux de détection d'intrusion. Certaines solutions utilisent des
signatures pour surveiller les attaques connues. Certaines plates-formes permettent la surveillance la
journalisation du réseau, en choisissant des méthodes de détection d'intrusion, nous avons préservé nos
ressources réseau et les avons protégées contre les attaques indésirables. Dans ce chapitre, nous
expliquerons comment fonctionne une attaque par déni de service avec un système de détection
d'intrusion. Ensuite, nous décrivons les types de systèmes de détection d'intrusion. Les techniques
d'attaque par déni de service ont été discutées, avant l'introduction des techniques de détection des
systèmes de détection d'intrusion et la conclusion du chapitre.
1.1. Les attaques par déni de service ?
Une attaque par déni de service est une attaque contre un appareil connecté à un réseau qui fournit un
service à des utilisateurs légitimes [1], avec cette attaque, vous bloquez le service et le rendez
indisponible par exemple la saturation de la bande passante du réseau (c’est ce qu'on appelle les
attaques volumétriques) [2], ces attaques peuvent entraîner des pertes financières importantes en
perturbant le service pour des cibles non préparées. Ça il est difficile de le détecter, car dans de
nombreux cas, le trafic est similaire au trafic légitime [3].
Il existe trois catégories d’attaque DoS1 et DDoS 2 et DRDOS 3 :

1 Dos : Déni de service, de l’anglais’ Denial of service’


2 DDoS : Distribué déni de service, de l’anglais’ Distributed denial of service’
3 DRDOS : Réflexion distribuée déni de service, de l’anglais’ Distributed Réflexions Denial of
Service’

5
CHAPITRE 1 : Les systèmes IDS et les attaques DoS

1.2. Catégories des attaques de déni de service


Dans les attaques par déni de service, il existe trois types de catégories importantes dans la Cyber
sécurité DoS et DDoS et DRDoS
1.2.1. L’attaque par déni de service (DoS)
Une attaque par déni de service (DoS) est un type de cyberattaque dans lequel un acteur malveillant
vise à rendre un ordinateur ou un autre appareil indisponible pour ses utilisateurs prévus en
interrompant le fonctionnement normal de l'appareil. Les attaques DoS fonctionnent généralement en
submergeant ou en saturant une machine ciblée de requêtes jusqu'à ce que le trafic normal ne puisse
plus être traité, ce qui entraîne un déni de service pour les utilisateurs supplémentaires. Une attaque
DoS se caractérise par l'utilisation d'u seul ordinateur pour lancer l'attaque

1.2.2. L’attaque par distribué déni de service (DDoS)


Une attaque DDoS, également une attaque par déni de service, est une technique de piratage qui
inonde les serveurs de sites Web de (trop) de fausses connexions, rendant le site Web inaccessible.
Cela est fait par moi (les pirates) en utilisant des botnets4, qui sont une grande collection de machines
infectées qui envoient des requêtes en boucle, c'est-à-dire tout ce qui peut se connecter à un site Web,
et de plus en plus ces bot nets. [4] [5]

Bot nets : Il s'agit d'appareils endommagés par un virus ou similaire dans le but d'une attaque
intrusive ou similaire

6
CHAPITRE 1 : Les systèmes IDS et les attaques DoS

1.2.3. L’attaque par distribuer réflexion déni de service (DrDoS)


L'attaque DRDoS diffère de son prédécesseur, l'attaque DDoS, car elle étend l'attaque DDoS en
incluant l'usurpation d'adresse IP tout en rendant l'attaque complexe. L'attaque DoS par réflexion
distribuée se compose de deux phases : le premier est l'usurpation d'adresse IP pour masquer les
attaquants à l'aide du réflecteur et la seconde est l'amplification utilisée pour maximiser la taille des
réponses par rapport aux tailles de la demande. La principale caractéristique de l'attaque DRDoS, qui
différencie ce type de l'attaque DDoS, est qu'elle n'attaque pas directement la destination mais envoie
plutôt des paquets à la demande via un intermédiaire, un « réflecteur » exploitable qui consiste
également à usurper l'adresse IP de l'expéditeur [6] [7]

7
CHAPITRE 1 : Les systèmes IDS et les attaques DoS

1.2.4. Synthèse et comparaison


Toute attaque conçue pour dénier le service aux utilisateurs visés peut être qualifiée d'attaque DoS.
Cependant, si une attaque est lancée par plusieurs hôtes simultanément, elle s'appelle DDoS.
Cependant, si une attaque est effectuée par un seul hôte, elle est différenciée en une attaque DoS
(normale) (par opposition à une attaque DoS distribuée). Et si une attaque est lancée par plusieurs
hôtes simultanément à l'aide d’une amplification de flux, cela s'appelle un DrDoS. (Distributed
Réflexion Denial of Service).
L'avantage de DDoS est la capacité à générer plus de trafic d'attaque. De plus, il est très difficile de
bloquer les attaques car il y a tellement d'endroits d'où arrivent les demandes. De plus, il est très
difficile de trouver le véritable attaquant qui a effectué l'attaque (puisqu'un attaquant DDoS et DrDoS
peut lancer une attaque et rester à l'écart, toutes les autres machines infectées envoient des requêtes à
un hôte sans se rendre compte qu'"elles feront désormais partie d’une attaque DDoS et DrDoS)
La méthode d'attaque DrDoS. Dans une attaque DrDoS, le site cible semble être attaqué par les
serveurs victimes, et non par l'attaquant réel. Cette approche est appelée usurpation d'identité. Cela
implique de simuler la source de la demande. L'amplification est un autre avantage de la méthode
d'attaque DrDoS. En impliquant plusieurs serveurs victimes, la requête initiale d'un attaquant produit
une réponse plus importante que celle qui a été envoyée, augmentant ainsi la bande passante de
l'attaque, ce qui la rend plus susceptible de provoquer une panne par déni de service.

8
CHAPITRE 1 : Les systèmes IDS et les attaques DoS

1.3. Différents types d’attaques DoS


Il existe plusieurs types d’attaques, Mais nous allons expliquer les types les plus courants :
1.3.1. Attaque par SMURF
L'attaque SMURF est un moyen de générer un trafic réseau informatique important sur un réseau
victime. Il s'agit d'un type d'attaque par déni de service qui inonde un système cible via des messages
Ping de diffusion usurpés. Une attaque par déni de service (Attaque DoS) ou attaque par déni de
service distribué (Attaque DDoS) est une tentative de compromettre la disponibilité d'une ressource
réseau pour ses utilisateurs prévus.
Dans une telle attaque, un auteur diffuse un grand nombre de requêtes d'écho ICMP (Ping) à toutes les
adresses du réseau. Toutes les requêtes diffusées ont une adresse IP source usurpée de la victime visée
dans leur champ d'adresse IP source. Une fois que le périphérique de routage a transmis la demande
d'écho à l'hôte ciblé (par exemple via une diffusion de couche 2), la plupart des hôtes de ce réseau IP
répondront à la demande d'écho ICMP en y répondant par une réponse d'écho. La réponse du groupe à
la requête d'écho entraînera un important trafic envoyé à l'hôte victime. Sur un réseau de diffusion
multi-accès, des centaines de machines peuvent répondre à chaque paquet de requête d'écho [8]

1.3.2. Attaque par SYN FLOOD


Une attaque SYN Flood est une attaque visant à provoquer un déni de service en émettant un nombre
important de demandes de synchronisation TCP incomplète avec un serveur .

CHAPITRE 1 : Les systèmes IDS et les attaques DoS


Quand un système (client) tente d'établir une connexion TCP vers un système offrant un service
(serveur), le client et le serveur échangent une séquence de messages.

Le système client commence par envoyer un message SYN au serveur. Le serveur reconnaît ensuite le
message en envoyant un SYN-ACK message au client. Le client finit alors d’établir la connexion en
répondant par un message ACK. La connexion entre le client et le serveur est alors ouverte, et le
service de données spécifiques peut être échangé entre le client et le serveur

1.3.3. Attaque par UDP FLOOD


Ce déni de service exploite le mode non connecté du protocole UDP. Il crée une UDP Packet
Storm (génération d’une grande quantité de paquets UDP) soit à destination d’une machine soit entre
deux machines. Une telle attaque entre deux machines entraîne une congestion du réseau ainsi qu’une
saturation des ressources des deux hôtes victimes. La congestion est plus importante du fait que le
trafic UDP est prioritaire sur le trafic TCP. En effet, le protocole TCP possède un mécanisme de
contrôle de congestion, dans le cas où l’acquittement d’un paquet arrive après un long délai, ce
mécanisme adapte la fréquence d’émission des paquets TCP et le débit diminue. Le protocole UDP ne
possède pas ce mécanisme. Au bout d’un certain temps, le trafic UDP occupe donc toute la bande
passante, ne laissant qu’une infime partie au trafic TCP.

L’exemple le plus connu d’UDP Flooding est la « Chargent Denial of Service Attac ». La mise en
pratique de cette attaque est simple, il suffit de faire communiquer le service chargent d’une machine
avec le service écho d’une autre. Le premier génère des caractères, tandis que le second se contente de
réémettre les données qu’il reçoit. Il suffit alors à l’attaquant d’envoyer des paquets UDP sur le port 19
(chargent) à une des victimes en usurpant l'adresse IP et le port source de l’autre. Dans ce cas, le port
source est le port UDP 7 (écho). L’UDP Flooding entraîne une saturation de la bande passante entre
les deux machines, il peut donc neutraliser complètement un réseau

10

CHAPITRE 1 : Les systèmes IDS et les attaques DoS


1.3.4. Attaque par HTTP FLOOD

Les attaques HTTP flood sont un type d'attaque de déni de service distribué (DDoS) conçu pour
submerger des cibles avec des requêtes HTTP. Lorsque la cible est saturée de demandes et ne peut pas
répondre au trafic existant, un rejet de service se produit pour les demandes supplémentaires des
utilisateurs existants [11]. Il existe deux variantes d'attaques HTTP flood :

HTTP GET : Dans cette forme d'attaque, plusieurs ordinateurs ou autres appareils sont
coordonnés pour envoyer de multiples demandes d'images, de fichiers ou d'autres éléments à partir du
serveur cible. Un déni de service se produit pour des demandes supplémentaires provenant de sources
de trafic légitimes lorsque la cible est submergée de demandes et de réponses entrantes.

HTTP POST : Lorsqu'un formulaire est soumis sur un site Web, le serveur doit traiter la
demande entrante et transmettre les données à une couche de persistance, généralement une base de
données. Le traitement des données de formulaire et l'exécution des commandes de base de données
nécessaires sont relativement intensifs par rapport à la puissance de traitement et à la bande passante
requise pour envoyer une requête POST. Cette attaque exploite la différence de consommation relative
des ressources en envoyant un grand nombre de requêtes POST directement au serveur cible jusqu'à ce
que sa capacité soit saturée et qu'un déni de service se produise [11].

11

CHAPITRE 1 : Les systèmes IDS et les attaques DoS


1.4. Les systèmes de détection des intrusions (IDS)
Les méthodes et technologies traditionnelles de prévention des intrusions, telles que les pare-feux, le
chiffrement et le contrôle d'accès, se révèlent largement inefficaces face à l'émergence rapide de
nouvelles menaces sophistiquées, alimentée par la croissance rapide des technologies réseau, en
particulier les réseaux sans fil. Les données constituent un problème critique qui ne peut être ignoré.
Un IDS, ou système de détection d'intrusion, est une combinaison de logiciel et de matériel visant à
détecter une intrusion. Il peut être défini comme un système automatisé chargé de détecter les intrus
entrant dans un système informatique tout en vérifiant les contrôles de sécurité fournis par les
systèmes d'exploitation ou les outils de contrôle du réseau. Son objectif principal est de repérer
l'utilisation non autorisée, la mauvaise utilisation et l'abus des systèmes informatiques par les
utilisateurs internes et externes [12].

1.4.1. Les type des systèmes de détection d'intrusion


Il existe deux grands types d’IDS :
1.4.1.1. IDSs à base de signature :

12

CHAPITRE 1 : Les systèmes IDS et les attaques DoS

Une technique de détection qui ne se concentre pas sur la recherche d'intrusions, mais plutôt sur
l'analyse du comportement en le comparant à un modèle considéré comme normal, est basée sur un
ensemble de signatures. Chacune de ces signatures représente un profil d'attaque.
Les approches basées sur les signatures scrutent les flux réseau à la recherche d'empreintes digitales
d'attaques connues, similaire au fonctionnement des logiciels antivirus, utilisant des signatures définies
comme une série d'événements et de conditions associés à une tentative d'intrusion. Ensuite, en
utilisant la correspondance de motifs, elles identifient les schémas. Si l'IDS est en mode actif, une
alarme peut être déclenchée en cas de détection d'une attaque ; sinon, l'IDS enregistrera simplement
l'attaque [13].

1.4.1.2. IDSs à base d’anomalie :

Les IDS basés sur des anomalies nécessitent un apprentissage initial où l'outil apprend le
comportement considéré comme "normal" des flux applicatifs présents sur son réseau. Chaque flux et
son comportement par défaut doivent être déclarés pendant cette phase d'apprentissage. L'IDS émet
une alerte lorsqu'un flux anormal est détecté, mais il ne peut pas indiquer la criticité de l'éventuelle
attaque. Les IDS basés sur des anomalies ont été introduits plus tard que les IDS basés sur des
signatures et n'ont pas encore atteint leur pleine maturité. Par conséquent, l'utilisation d'un tel IDS peut
être délicate, car les alarmes déclenchées peuvent contenir un grand nombre de fausses alertes [13]

1.4.2. Architecture des IDS et principe de fonctionnement :

Le système de détection d'intrusion se compose de plusieurs outils, chacun ayant sa propre tâche, dans
le but global de détecter les intrus dans la première phase, puis d'informer l'opérateur ou le personnel
informatique de la possibilité d'intrusion dans le réseau. Un modèle général de structure d'un système
de détection d'intrusion a été proposé par l'IDWG, qui englobe et normalise la structure d'un système
de détection d'intrusion. La Figure 1-8 détaille les différents composants de ce système. Les IDS
peuvent ne pas avoir complètement séparé tous ces composants, comme le montre la figure (Figure 1-
8). Certains IDS combinent ces composants en un seul module, tandis que d'autres ont plusieurs
instances de ces modules [14]

13
CHAPITRE 1 : Les systèmes IDS et les attaques DoS

Figure 1-8 : Un modèle fonctionnel du Système de détection d’intrusion proposé par l’IDWG [14]

L'Administrateur : la personne responsable de la création de la politique de sécurité de l’organisation


qui déploie et configure les différents composants d'IDS. il prend en charge la déclaration prédéfinie
des activités autorisées sur le réseau ou sur des hôtes spécifiques pour répondre aux besoins d'un
système d'information.

Les sources de données : varient, incluant divers types de données issues de différentes origines telles
que le réseau, le système, l'application et les alertes. Le système IDS n'impose aucune restriction quant
aux sources de données utilisées, faisant appel à des capteurs appropriés pour examiner les
informations provenant de ces sources et repérer les activités non autorisées ou indésirables

5 IDWG (Intrusion Detection Working Group)

14
CHAPITRE 1 : Les systèmes IDS et les attaques DoS

Le capteur et l'analyseur : constituent le composant clé du système. Tout d'abord, le capteur accède
aux données brutes, collecte toutes les informations sur l'activité en cours, puis les transmet à
l'analyseur sous forme d'événements (séquence d'activités). L'administrateur de sécurité analyse
ensuite ces événements pour repérer des activités ou des événements non autorisés ou indésirables qui
pourraient susciter son intérêt. Dans la plupart des IDS existants, le capteur et l'analyseur font partie du
même ensemble.

Le gestionnaire : représente également un composant clé, offrant aux opérateurs la possibilité de


gérer divers éléments du système à partir de là. Les fonctions du gestionnaire comprennent
généralement, mais sans s'y limiter, la configuration du capteur, la configuration de l'analyseur, la
gestion des notifications d'événements, l'intégration des données et la gestion des rapports.

La réponse : englobe les mesures prises en réaction à un incident, pouvant être initiées
automatiquement par les entités du schéma IDS ou par un intervenant humain. Une réponse courante
consiste à envoyer une notification à l'opérateur. D'autres réponses incluent, mais ne se limitent pas à,
l'activité de journalisation, la consignation des données brutes provenant des sources de données
caractérisant les événements, les périodes d'arrêt du réseau ou de l'utilisateur, les sessions
d'application, ainsi que la modification des contrôles d'accès au réseau ou au système [14]

1.4.3. Emplacement de l’IDS


1.4.3.1. Les NIDS (Systèmes de détection d'intrusion basés sur le réseau) :
Un NIDS est divisé en trois parties principales : la collecte, les signatures et les alertes. Il écoute donc
tout le trafic réseau, puis analyse les flux de transit dans le réseau et génère des alertes lorsque des
paquets apparaissent dangereux (voir Figure 1-9)

15
CHAPITRE 1 : Les systèmes IDS et les attaques DoS

Figure 1-9 : les composants d’un NIDS [15]

La principale fonction du NIDS est d'analyser et d'interpréter les paquets circulant dans le réseau. Les
réseaux NIDS sont déployés à l'aide de capteurs stratégiquement positionnés sur le réseau, générant
des alertes lorsqu'une attaque est détectée. Ces alertes sont transmises à une console de sécurité pour
analyse et éventuelle prise de mesures. Les capteurs du réseau opèrent en mode furtif, les rendant
invisibles aux autres machines. À cette fin, la carte réseau est configurée en mode "promiscuous", où
elle lit tout le trafic de données sans être configurée avec une adresse IP [15].

1.4.3.2. Les HIDS (Host-Base Intrusion Détection System):

Les HIDS résident sur un hôte spécifique et analysent exclusivement les informations relatives à cet
hôte. Ces systèmes de détection d'intrusion basés sur l'hôte fonctionnent comme des démons ou des
services standard sur le serveur ou le système hôte. De plus, l'impact sur le dispositif correspondant
peut être immédiatement observé, notamment en cas d'attaque réussie par l'utilisateur. Les systèmes de
détection d'intrusion utilisent deux types de sources pour fournir des informations sur l'activité de la
machine : les journaux du système d'exploitation et les pistes d'audit. Les pistes d'audit sont plus
précises et détaillées, fournissant des informations plus approfondies, tandis que les journaux, bien que
contenant des informations de base, sont plus compacts (voir Figure 3.2) [15].

1.4.3.3. Les IDSs hybrides


Les IDS hybrides combinent efficacement les fonctionnalités des NIDS et des HIDS. Pratiquement, ils
représentent une fusion de NIDS et de HIDS, permettant ainsi, au moyen d'un seul outil, de surveiller à

16

CHAPITRE 1 : Les systèmes IDS et les attaques DoS


la fois les réseaux et les terminaux. Des sondes stratégiquement positionnées agissent comme des
NIDS et/ou HIDS en fonction de leurs emplacements. Ces sondes remontent ensuite toutes les alertes à
une machine centrale qui centralise, agrège et lie les informations provenant de multiples sources. Ces
systèmes reposent sur une architecture distribuée où chaque composant standardise son format d'envoi
d'alertes [16].

Dans ce tableau récapitulatif, mettant en avant les avantages, désavantages de chacun de ces IDS. Ils
discutent également dans ce tableau de la responsabilité du déploiement et de mise à jour de ces
systèmes.

Table 1-1 : Résume des diffèrent placements des IDS

17
CHAPITRE 1 : Les systèmes IDS et les attaques DoS

1.4.4. Méthodes de détection :

Le module central du système de détection d'intrusion réside dans le module de détection des activités
malveillantes. Les premières versions de ces systèmes reposent sur l'expertise des professionnels de la
sécurité pour repérer les attaques, en développant diverses méthodes de détection afin de construire un
système hautement précis et efficace. Les approches de détection d'intrusion sont généralement
classées en deux catégories principales : la détection d'anomalies et la détection de signature.
Cependant, selon Liao et al. (2013 [17]), il n'y a pas de différence significative entre ces deux classes
en termes de propriétés de détection.
Les approches statistiques se concentrent principalement sur l'analyse statistique des caractéristiques
telles que l'affiliation prédéterminée, la moyenne, la variété utopique, et les probabilités afin de
détecter les intrusions. En revanche, le marquage basé sur des modèles vise à modéliser les techniques
de classification des attaques connues. Les techniques basées sur des schémas mensuels sont souvent
appliquées pour simuler et décomposer les attaques connues, s'inspirant de concepts biologiques tels
que le système immunitaire, les algorithmes génétiques, et la logique en essaim.
Des travaux récents cherchent à fusionner ces différentes approches de marquage pour former une
méthode plus élaborée, bénéficiant ainsi de la concision et d'une efficacité accrue [17].

1.4.5. Les mesures de notation IDS :

Procédures qui nous permettent d'évaluer l'efficacité globale des systèmes de détection d'intrusion
comme suit :

Précision : IDS est précis dans la détection des attaques sans faux positifs. L'inexactitude survient
lorsqu'une action légitime dans l'environnement est déclarée anormale ou indicative.

Puissance de traitement : mesurée par la vitesse à laquelle les événements sont traités. Si le
système IDS est plus efficace, la détection en temps réel sera possible. Complétude : c'est la capacité
d'IDS à détecter toutes les attaques.

Tolérance aux pannes : la plupart des systèmes de détection d'attaques fonctionnent sur des
systèmes d'exploitation ou des appareils connus pour être vulnérables aux attaques. Par conséquent,
IDS doit résister à ces attaques, en particulier les attaques par déni de service.

18
CHAPITRE 1 : Les systèmes IDS et les attaques DoS

Vitesse : Les IDS doivent démontrer une rapidité accrue lors de l'analyse et de l'exécution afin de
réduire le temps de réponse, empêchant ainsi tout attaquant de manipuler la source de l'analyse ou
de perturber le fonctionnement du système [18].

En général, un taux élevé de détection est crucial pour un système IDS basé sur l'apprentissage
automatique, tout comme une précision de détection élevée avec un faible taux de fausses alarmes
[19].

Les critères essentiels pour mesurer la précision de la détection et la classification des attaques
incluent :

 True Positive (TP) : le nombre d'attaques correctement détectées.

 True Negative (TN) : le nombre de non-attaques correctement détectées.

 False Positive (FP) : le nombre de fausses détections d'attaques.

 False Negative (FN) : le nombre d'attaques manquées.

Divers types d'erreurs peuvent découler du détecteur, affectant ses performances de différentes
manières. L'idéal est que l'alarme se déclenche uniquement lorsque les politiques de sécurité sont
violées. D'un côté négatif, l'absence d'alarme signifie que tout se déroule normalement. Un faux
positif se produit lorsqu'une alarme retentit sans raison valable, tandis qu'un faux négatif se produit
lorsque l'alarme ne sonne pas malgré un événement inhabituel. À première vue, on pourrait penser
qu'un faux positif est moins préoccupant qu'un faux négatif.

La sécurité des réseaux est devenue une préoccupation majeure en raison des nombreuses
tentatives d'attaques visant à atteindre divers objectifs, notamment économiques. Diverses
méthodes de protection des réseaux ont été avancées, telles que les systèmes de détection
d'intrusion, la cryptographie, les pare-feu, etc. Parmi ces outils de sécurité, la détection d'intrusion
est généralement considérée comme l'une des approches les plus prometteuses pour contrer les
cyberattaques nouvelles, dynamiques et complexes.

Dans ce chapitre, nous présentons une attaque par déni de service, ses types génériques, ainsi que
certains des systèmes bien établis de déni de service et de détection d'intrusion, avec leur modèle
général. Nous examinons ensuite trois types de systèmes de détection d'intrusion : les systèmes
basés sur l'hôte (HIDS), les systèmes basés sur le réseau (NIDS) et les systèmes de détection
d'intrusion hybrides. Une discussion sur les techniques de détection d'intrusion précède
l'introduction des méthodes de détection des bots.

Dans le chapitre suivant, nous aborderons l'apprentissage automatique, l'apprentissage en


profondeur et d'autres activités connexes

19
CHAPITRE 2 : Etat de l’art sur l’apprentissage
profond pour la cyber sécurité

20
CHAPITRE 2 : Etat de l’art sur l’apprentissage profond pour la cyber sécurité

L'intelligence artificielle (IA) se concentre sur la conception, la mise en œuvre, et le développement de


systèmes informatiques capables d'accomplir des tâches complexes, souvent difficiles à exécuter pour
les êtres humains. C'est devenu une dimension cruciale de la recherche scientifique au cours de ce
siècle, exerçant une influence significative dans de nombreux domaines. Dans ce chapitre, nous
aborderons l'apprentissage automatique ainsi que ses différentes catégories, suivi d'une exploration de
l'apprentissage profond et de ses divers types.
Par ailleurs, ce chapitre présentera de nombreuses contributions en lien avec notre domaine d'étude,
spécifiquement axées sur la détection des attaques par déni de service dans les systèmes de détection
d'intrusion.

2.1. Généralités sur l’apprentissage automatique

2.1.1. Définition
L'apprentissage automatique est un sous-domaine de l'intelligence artificielle. Ce qui est lié à l'étude
des algorithmes des appareils électroniques avec un processeur qui permettent à ces systèmes
d'apprendre et d'améliorer leur capacité automatiquement à partir de chaque expérience sans ou avec
intervention humaine. Selon l'approche d'apprentissage, le type de données entrées et sorties, et le type
de problème résolu, les algorithmes d'apprentissage automatique ont été divisés en plusieurs types :
apprentissage supervisé, non supervisé, semi-supervisé et apprentissage renforcé.
2.1.2. Approches de l'apprentissage automatique
2.1.2.1. L'apprentissage supervisé
Nous employons ce mode d'apprentissage lorsque les données se présentent sous l'une des deux
configurations : variables d'entrée et valeurs cibles de sortie. L'algorithme s'engage alors dans
l'apprentissage de la fonction de mappage entre les variables d'entrée et les valeurs cibles de sortie.
Deux variantes de ce modèle sont à distinguer : la classification, dans laquelle la variable de sortie est
discrète, et la régression, où la variable de sortie est continue.

2.1.2.2. Apprentissage non supervisé

L'apprentissage non supervisé est employé lorsqu'il n'y a pas de variable de sortie associée aux
données, qui sont uniquement utilisées en tant qu'entrée. Ce type d'algorithme cherche à comprendre
les caractéristiques des données en modélisant les schémas sous-jacents de ces dernières.
21

CHAPITRE 2 : Etat de l’art sur l’apprentissage profond pour la cyber sécurité


2.1.2.3. Apprentissage semi-supervisé
L'apprentissage semi-supervisé représente une approche intermédiaire entre les méthodes
d'apprentissage supervisé et non supervisé. Cet algorithme s'entraîne en utilisant à la fois des données
non étiquetées (en petite quantité) et des données étiquetées (en petite quantité). Initialement,
l'algorithme d'apprentissage non supervisé regroupe les données non étiquetées similaires, puis il
assigne des étiquettes à ces données non étiquetées en se basant sur les données déjà étiquetées.

2.2. L'apprentissage profond pour la cyber sécurité


Avec une profusion de données provenant de l'infrastructure réseau, des réseaux, des systèmes
d'exploitation, ou des systèmes d'information, diverses méthodes et technologies sont utilisés pour
relever les défis du cyber sécurité. Parmi elles, on trouve l'apprentissage automatique, l'exploration de
données, les statistiques, ainsi que d'autres compétences interdisciplinaires [20]. L'apprentissage en
profondeur peut être appliqué dans le domaine de l'apprentissage automatique pour des tâches telles
que la détection de défauts basée sur des signatures ou la détection d'anomalies.
Ces méthodes de classification et de prédiction sont utiles pour identifier des modèles et des
comportements anormaux liés à diverses attaques réseau, permettant ainsi au réseau de réagir en temps
réel. Elles offrent la capacité de détecter les attaques au fur et à mesure de leur occurrence, tout en
anticipant les attaques potentielles futures [21]. Par ailleurs, la collecte de données et le trafic réseau
ont donné lieu au défi du Big Data, et les experts en sécurité recherchent constamment des
performances accrues des systèmes IDS, avec un taux de détection élevé et un taux de faux positifs
minimal. Les approches d'apprentissage en profondeur se révèlent particulièrement adaptées à la
gestion de vastes volumes de données. Elles ont été introduites dans la détection d'anomalies réseau
afin de différencier les comportements normaux des comportements anormaux, facilitant ainsi la
détection d'activités malveillantes ou suspectes [17]

2.3. Quelques méthodes d’apprentissage profond Les réseaux neuronaux profonds :


Sont un ensemble de neurones organisés en une séquence de couches interconnectés. Ce qui les
différencie, c‘est l‘architecture du réseau la manière dont les neurones sont organisés dans le réseau et
la manière dont ils se fonctionnent. Parmi de nombreuses implémentions de modèles d’apprentissage
profond :

2. 3.1. Réseaux de neurones artificiels (ANN)


Les réseaux de neurones artificiels (ANN) sont une catégorie de réseaux de neurones (NN) inspirés
par les réseaux de neurones biologiques. Un ANN se compose d'un ensemble de neurones ou de
nœuds
22

CHAPITRE 2 : Etat de l’art sur l’apprentissage profond pour la cyber sécurité


interconnectés, où les connexions entre eux sont pondérées. Chaque neurone utilise une fonction
d'activation non linéaire pour transformer la somme de ses entrées pondérées en une sortie [20].
Dans un réseau de neurones direct, les données d'entrée se propagent à travers le réseau, chaque
couche cachée recevant une entrée de la sortie de la couche précédente. Cela génère la sortie finale en
fonction des paramètres de poids, de la sélection de la fonction d'activation, et des données d'entrée.
Les paramètres de pondération du réseau sont ajustés à l'aide de l'optimisation de la descente de
gradient (GDO) pour minimiser la fonction de perte [22].
La fonction d'activation joue un rôle essentiel, transformant la combinaison linéaire des signaux
d'entrée en une valeur de sortie. Parmi les fonctions d'activation les plus couramment utilisées, on
trouve la sigmoïde, ReLU (Rectified Linear Unit), Tanh et LeakyReLU [23].

Table 2-1 : Les fonctions d'activation les plus courantes [24]

2.3.2. Réseaux de neurones convolutifs (CNN)


Le réseau de neurones convolutifs (CNN) est un type de réseau de neurones à anticipation, il

7 CNN: Convolution al neural networks (Ang)


23

CHAPITRE 2 : Etat de l’art sur l’apprentissage profond pour la cyber sécurité

Comprend des couches de convolution et des opérations de mise en commun. Il est capable d'extraire
des fonctionnalités locales et globales 56.
Comme le montre la figure 3.5, un réseau neuronal convolutif comporte trois couches : la couche
convolutive, la couche de regroupement (couche de sous-échantillonnage) et la couche entièrement
connectée.

Figure 2-1 : L’architecture d’un réseau neuronal convolutive [25]


2.3.3. Réseaux de neurones récurrents (RNN8)
Le réseau neuronal récurrent (RNN) est un modèle d'apprentissage séquentiel courant. RNN apprend
les caractéristiques des données de série à l'aide d'une mémoire des entrées précédentes stockées dans
l'état interne du réseau neuronal. Comme le montre la figure 4, un cycle dirigé est utilisé pour établir
les connexions entre les neurones [25]

Figure 2-2 : L’architecture d’un modèle RNN [25]

8 RNN: Recurrent neural networks (Ang)


24
CHAPITRE 2 : Etat de l’art sur l’apprentissage profond pour la cyber sécurité
2.4. Travaux connexes sur la détection des attaques DoS basés Deep et Machine learning
Dans des recherches antérieures en apprentissage profond, les résultats ont indiqué une nette
supériorité par rapport aux méthodes d'apprentissage automatique traditionnelles, telles que les
machines à vecteurs de support (SVM) et les réseaux de neurones artificiels (ANN), dans le domaine
de la détection des intrusions.
Hamouda et al [26] ont exploité le jeu de données CICDDoS2019 pour développer trois modèles
d'apprentissage profond discriminants axés sur la détection d'agressions par déni de service distribué
(DDoS). Ils ont mis en œuvre une technique de sous-échantillonnage aléatoire pour créer trois sous-
ensembles de données distincts, chacun destiné à une classification spécifique. Pour la classification,
ils ont utilisé trois modèles d'apprentissage profond en apprentissage supervisé : un réseau de neurones
profond (DNN), un réseau de neurones convolutif (CNN) et un réseau de neurones récurrent (RNN).
Ces modèles ont été appliqués à la classification multi-classes (normal/attaque) et à la classification
binaire (normal/attaque), englobant différents types d'attaques. Les taux de précision pour les
différentes classes d'attaques ont été rapportés (classe 7 : 80%, classe 2 : 99%, classe 13 : 60%). Une
évaluation approfondie des performances en apprentissage automatique, comprenant la précision, le
rappel et le score F1, a été réalisée. Cependant, un inconvénient notable réside dans le fait que les
données de test ont été renommées manuellement à l'aide de l'éditeur "Notepad++".

Sharafaldin et al [4], l’apport principal de cet article réside dans l'utilisation de l'ensemble de données
CICDDoS2019. L'étude explore divers types et familles d'attaques DDoS afin de présenter une
nouvelle taxonomie DDoS spécifiquement pour la couche applicative. Les auteurs ont également
scruté les ensembles de données DDoS les plus répandus, identifiant les faiblesses et limitations les
plus fréquentes. En réaction à ces lacunes, ils ont conçu un nouvel ensemble de données,
CICDDoS2019, comprenant 11 types d'attaques DDoS, destiné à l'évaluation des algorithmes et des
systèmes IDS/IPS. Cette collection intègre également les éléments cruciaux pour la détection de
diverses attaques DDoS.
Par ailleurs, l'article offre une analyse détaillée pour chaque type d'attaque, basée sur les 12
diagrammes RadViz mettant en lumière les facteurs les plus pertinents pour chaque catégorie de trafic
réseau. Pour évaluer les performances, différents algorithmes d'apprentissage automatique tels que la
forêt aléatoire, le Naive Bayes, et la régression logistique ont été appliqués, atteignant une précision de
69% (f1). Les résultats sont synthétisés dans la Table 2-2.

25

CHAPITRE 2 : Etat de l’art sur l’apprentissage profond pour la cybersécurité


Table 2-2 : Les résultats de Sharafaldin et al [4]

Farage et al [27] les auteurs présentent trois modèles IDS (Système de Détection d'Intrusion) basés
sur l'apprentissage profond, à savoir un modèle IDS exploitant un réseau neuronal convolutif, un
modèle IDS basé sur un réseau neuronal profond, et un modèle IDS basé sur un réseau neuronal
récurrent. Ces modèles sont évalués en utilisant deux ensembles de données réelles : CIC-DDoS2019
et TON_IoT. Les performances de chaque modèle sont analysées dans le contexte de deux types de
classifications, à savoir binaire et multi-classe. Les résultats indiquent que, en termes de mesures de
performance cruciales, les approches d'apprentissage en profondeur surpassent de manière
significative les tactiques d'apprentissage automatique conventionnelles. De plus, le modèle IDS basé
sur le réseau neuronal convolutif (CNN) se distingue en surpassant les approches IDS d'apprentissage
en profondeur de pointe. Ces évaluations ont été réalisées en utilisant les ensembles de données CIC-
DDoS2019 et TON_IoT. Le modèle IDS basé sur CNN affiche une précision de détection du trafic
binaire de 99,95 % ainsi qu'une précision de détection du trafic multi-classe de 95 %.

Figure 2-3 : Organigramme de la méthodologie utilise dans article [27]


26

CHAPITRE 2 : Etat de l’art sur l’apprentissage profond pour le cyber sécurité


HosseiniS et al [5], Dans cet article, il propose un cadre hybride basé sur une approche de flux de
données pour détecter Attaque DDoS avec apprentissage incrémental. Nous utilisons une technique
qui divise la charge de calcul entre côté client et proxy en fonction de leurs ressources pour organiser
la tâche à grande vitesse. Le côté client contient trois étapes, le premier est la collecte de données du
système client, la seconde est la fonctionnalité extraction basée sur la sélection de caractéristiques vers
l'avant pour chaque algorithme, et le test de divergence. En conséquence, si la divergence est
supérieure à un seuil, l'attaque est détectée sinon les données sont traitées du côté proxy. Ils sont
utilisés le Bayes naïf, la forêt aléatoire, l'arbre de décision, le perceptron multicouche (MLP) et les k
plus proches voisins (K-NN) du côté proxy pour obtenir de meilleurs résultats. Différentes attaques
ont leur comportement spécifique, et parce que des différentes fonctionnalités sélectionnées pour
chaque algorithme, les performances appropriées pour détecter les attaques et une plus grande capacité
à distinguer de nouveaux types d'attaques est obtenue. Les résultats montrent que la forêt aléatoire
produit meilleurs résultats parmi les autres algorithmes mentionnés.

Table 2-3 : Travaux antérieurs connexes pour la détection d’intrusion basé sur le deep learning

27

CHAPITRE 2 : Etat de l’art sur l’apprentissage profond pour la cyber sécurité


Le domaine de l'apprentissage automatique est très vaste, en particulier l'apprentissage profond.
L'apprentissage profond a renouvelé les algorithmes chaque semaine. Par conséquent, l'application
d'outils d'apprentissage profond est très importante à notre époque. C'est la base de l'apprentissage
automatique. C'est un bon et important focus dans le domaine du cyber sécurité, notamment pour les
chercheurs. Dans notre domaine, les méthodes d'apprentissage automatique sont utilisées pour
Analyser le système et découvrir un trafic inhabituel en apprenant au système à découvrir des
événements, au moyen de modèles mathématiques extraits d'algorithmes d'apprentissage automatique,
et dans cette section, nous avons expliqué l'apprentissage automatique dans la cyber sécurité en de
nombreuses études (de 2000 à 2022) en utilisant différentes bases de données, réelles ou factices, à des
fins d'apprentissage automatique . Afin de déterminer la démarche scolaire nécessaire et la meilleure à
suivre dans la seconde partie.

28
CHAPITRE 3 : Contribution, résultat et discussion
29

CHAPITRE 3 : Contribution, résultat et discussion

Les systèmes de détection d'intrusion pour contrer les cyberattaques ont été au cœur de nombreuses
recherches axées sur l'apprentissage en profondeur. Cette approche a été appliquée à divers ensembles
de données dans le domaine du cyber sécurité, soulignant que l'efficacité d'un système de détection
d'intrusion s'accroît avec la réalité des données utilisées. Un ensemble de données du monde réel,
spécifiquement le CICDDoS2019 de l'Institut canadien du cyber sécurité (CIC), se distingue par sa
composition d'attaques par déni de service distribué (DDoS).
Dans le but d'adresser la détection des attaques DDoS, nous avons proposé un modèle basé sur le
réseau neuronal convolutif (CNN) en apprentissage profond. L'objectif est d'identifier de manière
efficace ces diverses attaques au sein des dispositifs de détection d'intrusion, avec l'intention
d'améliorer le taux de détection. Dans ce contexte, il est crucial que la vitesse de détection des attaques
soit élevée, tandis que le taux de fausses alarmes demeure faible. Ces critères sont examinés à la
lumière de différentes métriques d'évaluation spécifiques aux algorithmes d'apprentissage profond

3.1. Environnement de développement


3.1.1. Matériel utilisé
La machine sur laquelle a été développé notre système a la configuration suivante :
Table 3-1 : Caractéristiques de matériel

3.1.2. Environnement logiciel


Spyder : Est Créé et il est développé par «Pierre Raybaut» en 2008, c’est est un environnement
scientifique puissant écrit en Python, et il est conçu par et pour les scientifiques, les ingénieurs, et les
analystes de données (Spyder Web site Contributors, 2018).
30

CHAPITRE 3 : Contribution, résultat et discussion


Google Colab : Colaboratory ou "Colab" en abrégé, est une initiative de recherche de Google qui a été
développée pour aider à la diffusion de l'enseignement et de la recherche sur l'apprentissage
automatique. Il s'agit d'un environnement de bloc-notes Jupyter qui s'exécute entièrement dans le
cloud et ne nécessite aucune configuration.
Google fournit une utilisation gratuite du GPU et c'est une fonctionnalité qui attire les développeurs.
Offre également des bibliothèques python courantes telles que NumPy, Matplotlib, TensorFlow et
Keras pour aider les développeurs à écrire, modifier et exécuter du code python. Les développeurs
peuvent utiliser ces bibliothèques pour analyser et visualiser des données [36].
3.1.3. Langages de programmation et bibliothèque
Nous avons utilisé le langage python v 3.7, et la bibliothèque pandas NumPy pour le traitement de
donnes et keras pour appliquer le model
Python : langage de programmation open source le plus utilisé par le développeur.
Ce langage a pris les devants dans la gestion des infrastructures, l’analyse des
données ou le développement de logiciels.

Scikit-mutliflow : (également connu sous le nom de skmultiflow) bibliothèque dans


python pour l’apprentissage automatique gratuite et open source pour les données
multi-sorties/multi-étiquettes et de flux écrites en Python.

Pandas : bibliothèque dans Python permettant la manipulation de donnée et l'analyse des données. En
particulier, il propose des structures de données et des opérations pour manipuler des tableaux de
chiffres et des séries temporelles.

Matplotlib : bibliothèque destinée à tracer et visualiser des données sous formes des
graphiques programmés en python.

31

CHAPITRE 3 : Contribution, résultat et discussion

3.2. Données utilisées pour l’expérimentation


3.2.1. Les Data sets d’évaluation des attaques DoS basé sur Deep Learning

Le choix de l'ensemble de données dans les publications de cette étude approfondie en cyber sécurité
revêt une importance cruciale pour la validation de toutes les approches en apprentissage en
profondeur proposées. Cependant, l’accès à certains de ces ensembles de données peut être limité en
raison de préoccupations liées à la confidentialité. Un exemple d’ensemble de données conçu
spécifiquement pour la détection de cyberattaques est mentionné dans la référence [37] :
Table 3-2 : Collecte de données publies sur la cyber sécurité

3.2.2. Le data set CICDDoS2019

Les données utilisées dans ce travail de thèse proviennent du jeu de données CICDDoS2019[41]. Ce
jeu de données se compose exclusivement d’attaques DDoS et de trafic inoffensif. Il présente des
données de flux réseau réelles incluant divers types d’attaques DdoS, parmi les plus récentes et les

9 PCAP : paquet capture


32

CHAPITRE 3 : Contribution, résultat et discussion


plus connues. Ces données adoptent un format plus condensé, fournissant essentiellement des
informations descriptives sur les connexions réseau. Chaque donnée, représentant un flux réseau,
regroupe l’ensemble des paquets ayant certaines caractéristiques dans une fenêtre temporelle
spécifique, et ne contient pas de charge utile. Le jeu de données comprend deux versions des données :
les données brutes PCAP 9, et des données CSV. Les auteurs ont utilisé l’analyseur de trafic
CICFlowMeter-V3 pour extraire fichiers PCAP, Les résultats ont été enregistrés dans des fichiers CSV
classés structurés (type d’attaque) par l’Université du Nouveau-Brunswick [41].
L'ensemble de données comprend deux jours, le premier jour (03- 11-2019) où l'ensemble de données
contenait 7 attaques DDOS différentes et à jour, l'ensemble de données complet contenait 19.750.116
instances, Parmi eux 55,678 trafic légitimes, tous les détails dans la
Pourcentage de data set CICDDoS2019 dans la ( Figure 3-2 , Table 3-4)On note que l'attaque
WebDDos est complètement nulle, donc dans notre travail, on prendra toutes les attaques qui ont un
pourcentage inférieur à 0.001

33
CHAPITRE 3 : Contribution, résultat discussion
Table 3-4 : Pourcentage de chaque type d'attaque dans le data set

34

CHAPITRE 3 : Contribution, résultat et discussion

La Table 3-5 comporte 7 fichiers CSV et relate les événements de la deuxième journée (01-12-2023),
où le
jeu
de

données incluait 12 attaques DDoS distinctes. Dans son ensemble, le jeu de données complet se
compose de 50, 062,112 instances, dont 56,863 correspondent à du trafic légitime, comme détaillé
dans la Table 3-3. Cette dernière contient 11 fichiers CSV. L'ensemble de données global englobe
également 86 caractéristiques, comme illustré dans la Figure 3-4, qui expose les relations entre chaque
colonne. À la suite du prétraitement, le jeu de données est divisé en quatre sous-ensembles distincts.
35
CHAPITRE 3 : Contribution, résultat et discussion

Figure 3-1: l'ensemble de donnée par pourcentage (jour 01-12-2023 )

Pourcentage de dataset CICDDoS2019 dans la ( Figure 3-2 , Table 3-4)On note que l'attaque
WebDDos est complètement nulle, donc dans notre travail, on prendra toutes les attaques qui ont un
pourcentage inférieur à 0.001

36
CHAPITRE 3 :Contribution ,résultat et discussion

Figure 3-2 : pourcentage des attaques dans le dataset CICDDoS2019

Table 3-4 : Pourcentage de chaque type d'attaque dans le dataset

37
CHAPITRE 3 : Contribution, résultat et discussion

Table 3-5 : l’ensemble de donnée (Jour 03-11 -2023)

38
CHAPITRE 3 : Contribution, résultat et discussion

Ce jeu de données se divise en deux catégories principales : le trafic légitime et les attaques. Dans la
classe des attaques, deux types d'attaques DDoS distinctes sont documentés. Le premier concerne les
attaques DDoS basées sur la réflexion, englobant MSSQL, SSDP, NTP, TFTP, DNS, LDAP, NetBIOS
et SNMP. Ces attaques impliquent que de véritables attaquants peuvent dissimuler leur identité
derrière des clients légitimes, les utilisant ainsi dans l'attaque. Cette méthode rend plus complexe la
distinction entre les utilisateurs légitimes et les attaquants uniquement par la source, car ces attaques
exploitent des protocoles tels que TCP (MSSQL et SSDP), UDP (NTP et TFTP), ou une combinaison
des deux protocoles (DNS, LDAP, NETBIOS et SNMP).
Le deuxième type d'attaques concerne celles basées sur l'exploitation, comprenant SYN flood, UDP
flood et l'UDP-Lag. Ces attaques falsifient l'adresse IP source, envoyant ainsi un grand nombre de
paquets au serveur victime, entraînant l'épuisement des ressources de cette dernière. La Figure 3-3
fournit une explication graphique des deux types d'attaques : basée sur l'exploitation et basée sur la
réflexion.

Figure 3-3 : les attaques par réflexion et les attaques par l’exploitation [41]

SYN : SYN flood a pour objectif d'épuiser toutes les ressources d'un serveur, entraînant ainsi son
indisponibilité. L'attaquant lance de manière continue des demandes de connexion (SYN) vers le
serveur ciblé sans répondre à l'ACK (accusé de réception) renvoyé par le serveur. Cette exploitation de
TCP maintient une connexion semi-ouverte pendant un laps de temps, rendant tous les ports
indisponibles [42].
SSDP: Simple Service Discovery Protocol (SSDP). Il s'agit d'un type d'attaques DDoS par réflexion.
L'attaque SSDP DDoS envoie un flux de trafic amplifié au serveur de la victime. Il exploite les
protocoles réseau Univers al Plug and Play (UPnP). Cette attaque peut submerger l'infrastructure de la
cible et mettre ses ressources Web hors ligne [43], [44].

39
CHAPITRE 3 : Contribution, résultat et discussion

NTP, ou Network Time Protocol, est un protocole utilisé pour synchroniser les horloges via Internet.
L'amplification NTP exploite les serveurs NTP pour submerger la cible avec du trafic UDP.
L'attaquant envoie généralement des requêtes aux serveurs NTP en usurpant l'adresse IP appartenant
aux victimes [45].
L'attaque DNS, ou attaque par déni de service distribué utilisant le protocole DNS (Domain Name
System), exploite les serveurs de noms de domaine, épuisant ainsi la bande passante des victimes.
Cette attaque peut submerger les victimes et les rendre inaccessibles, et elle peut être facilement lancée
par des bots [46].
NetBIOS, qui signifie Network Basic Input/Output System, est une attaque basée sur UDP. Elle
permet aux attaquants d'inspecter les informations de mémoire de l'ordinateur de la victime sur le
réseau [47].
MSSQL, ou Microsoft SQL, implique que les attaquants se font passer pour Microsoft SQL Server et
envoient des réponses aux victimes. Cette attaque abuse du protocole de résolution Microsoft SQL
Server tout en usurpant l'adresse IP du serveur MS SQL [48].
L'attaque TFTP, basée sur le protocole Trivial File Transfer Protocol (TFTP), est un type d'attaque
DDoS par amplification. Le facteur d'amplification peut atteindre jusqu'à 60. Un serveur TFTP est
normalement utilisé pour stocker des images d'appareils et des fichiers de configuration. TFTP, en tant
que protocole sans état et sans méthodes d'authentification, est plus facile à lancer et plus difficile à
détecter [49].
SNMP, ou Simple Network Management Protocol, est un protocole de gestion de réseau utilisé pour
configurer et collecter des informations à partir de périphériques réseau. Lors d'une attaque par
réflexion SNMP, les attaquants envoient un grand nombre de requêtes, exploitant ainsi les serveurs
SNMP pour générer un trafic amplifié [50].
SNMP à l'aide d'une adresse IP usurpée appartenant à la victime. Après cela, les serveursSNMP
répondront à l'adresse IP de la victime [50] .En ce qui concerne l'UDP flood, exploitant le protocole
User Datagram Protocol (UDP), l'attaquant envoie une multitude de paquets UDP au port du serveur
cible avec une adresse IP usurpée. Si aucun programme n'est en cours d'exécution sur ce port, le
serveur émettra un paquet ICMP en retour. Cependant, l'adresse IP source est inaccessible, et le
serveur cible ne recevra jamais de réponse. Cette tactique épuise les ports du serveur victime [51].
Quant à l'attaque UDP_lag, elle perturbe la connexion entre le client et le serveur, principalement
utilisée dans les jeux en ligne. Cette attaque ralentit la connexion UDP, ce qui peut être problématique,
surtout lorsque le serveur nécessite des délais courts [4].
LDAP, ou Lightweight Directory Access Protocol, est un type d'attaque DDoS par amplification où le
facteur d'amplification peut atteindre jusqu'à 55[61]. Étant largement utilisé dans les réseaux
d'entreprise, LDAP est fréquemment exploité pour attaquer ces réseaux [52].

40

CHAPITRE 3 : Contribution, résultat et discussion


• Les types des colonnes dans le dataset CICDDoS2019 :
Nous leur expliquerons des mots spéciaux
FWD (For Word) : direction vers l'avant
BWD (back Word) : direction sens inverse
STD (standard deviation) : déviation normative
IAT (Time between tow package) : Temps entre le paquet de remorquage
Bulk avg : Moyenne d’information collectée
Idle : temps de flux inactive
Les flags (psh, urg ....) : cette un protocole (pour activer cette protocole ou non)
Toutes les colonnes d’un type Object il va changer la type âpre le traitement
Objet: Flow ID--Source ip--Destination ip--Timestamp--SimillarHTTP—Label
Float64:
Total Length of Fwd Packet -- total Length of Bwd Packet -- Fwd Packet Length Min – Fwd Packet
Length Max -- Fwd Packet Length Mean -- Fwd Packet Length Std -- Bwd Packet Length Min -- Bwd
Packet Length Max -- Bwd Packet Length Mean -- Bwd Packet Length Std -- Flow Bytes/s -- Flow
Packets/s -- Flow IAT Mean -- Flow IAT Max -- Flow IAT Min -- Fwd IAT Max -- Fwd IAT Mean --
Fwd IAT Total -- Fwd IAT Std -- Bwd IAT Min -- Bwd IAT Max -- Bwd IAT Mean -- FWD
Packets/s -- Bwd Packets/s -- Packet Length Mean -- Packet Length Std -- Packet Length Max --
Packet Length Variance -- Idle Mean -- Idle Max -- Fwd IAT Min -- Average Packet Size -- down/Up
Ratio – Active Mean -- Active Min -- Idle Std -- Active Max -- Active Std -- Idle Min
Int64:
Source Port--Destination port--Bwd Segment Size Avg--Fwd Bytes/Bulk Avg--Fwd Packet/Bulk
Avg--Fwd Bulk Rate Avg--Bwd Bytes/Bulk Avg--Bwd Packet/Bulk Avg--Bwd Bulk Rate Avg—
Subflow Fwd Bytes--Subflow Bwd Packets--Subflow Bwd Bytes--Fwd Init Win bytes--Bwd Init Win
bytes-- Fwd Act Data Pkts--Fwd Seg Size Min--PSH Flag Count--ACK Flag Count--Inbound--ECE
Flag Count-
41

CHAPITRE 3: Contribution, résultat et discussion


-Fwd Segment Size Avg--RST Flag Count--Protocol--Flow duration--Fwd URG Flags--Bwd URG
Flags--Fwd Header Length--Bwd Header Length--FIN Flag Count--SYN Flag Count--Bwd PSH
Flags- -Fwd PSH flags--Bwd IAT Total--Bwd IAT Std--CWR Flag Count--total Fwd Packet--Flow
IAT Std-- total Bwd packets--URG Flag Count

Figure 3-4 : Matrice de confusion par les colonnes

3.2.3. Prétraitements et normalisation des données


3.2.3.1. Uniformisation des étiquettes
Comme mentionné dans les tableaux, les données sont extraites de manière aléatoire de l'ensemble de
données CICDDoS2019[41] réel. Afin de maintenir la transparence de l'expérience et de préserver
l'intégrité de l'ensemble de données, la sélection s'est faite en fonction du jour pour la première
expérience, tandis que dans la deuxième expérience, les données ont été mélangées pour maximiser le
nombre d'attaques DDoS. Pour accroître le réalisme, le pourcentage de présence de chaque type
d'attaque a été pris en compte
42

CHAPITRE 3 : Contribution, résultat et discussion


et appliqué de manière équitable. Par le biais de ce processus de sélection, trois groupes de données
ont été extraits. Le premier sous-ensemble, présenté dans la Table 3-6, a remplacé tous les types
d'attaques existants par "Attaque" et "Bénin" (trafic légitime). Le deuxième sous-ensemble, illustré
Dans la Table 3-7, a été extrait du fichier daté du (03-11-2019), avec tous les détails disponibles dans
la Table 3-5. Le troisième sous-ensemble, présenté dans la Table 3-8, a été extrait du fichier daté du
(01-12-2019), avec les informations complètes de la Table 3-3.

Un quatrième ensemble de données a été constitué en regroupant toutes les informations des deux
jours, ce qui a permis l'extraction d'un ensemble de données englobant toutes les attaques disponibles
dans CICDDoS2019. Ensuite, le pourcentage de chaque type de cyberattaque a été calculé, et 2% du
total a été extrait. Les données extraites se positionnent comme suit : [insérer les détails du
positionnement des données].
Table 3-6 : Sous-ensembles 1 (2 classes)

Table 3-7 : Sous-ensembles 2 (8 classes)

Table 3-8 : Sous-ensembles 3 (13 classes)

43

CHAPITRE 3 : Contribution, résultat et discussion


• Pour cette expérience qui s'appelait l'expérimentation 4, nous avons combiné les deux jours ensemble
pour détecter autant d'attaques que possible dans cet ensemble de données CICDDoS2019, et avons
également modifié les étiquettes de classe de données comme suit :

Table 3-9 : Modifier des étiquettes par classe

44

CHAPITRE 3 : Contribution, résultat et discussion


Table 3-10 : Sous-ensembles 4 (14 classes)
3.2.3.2. Prétraitement de données
Pour construire un modèle précis et obtenir des résultats optimaux, des analyses exploratoires
approfondies sur l'ensemble de données et ses caractéristiques sont cruciales. Avant d'appliquer
l'ensemble de données au réseau neuronal profond, nous avons effectué les étapes de traitement
suivantes :
1. Une enquête a été menée sur les données pour éliminer toutes les lignes en double et
indésirables, y compris celles contenant des valeurs "NAN" (non numériques) ou "INF"
(infini). Ces valeurs ont été supprimées, car leur absence de données n'aurait pas contribué au
processus d'apprentissage automatique. Étant donné la volumétrie importante de l'ensemble de
données, cette procédure vise à optimiser son utilisation dans le processus d'apprentissage.
2. Dans une deuxième étape, des statistiques ont été réalisées pour chaque colonne afin de
résumer la dispersion et la distribution de l'ensemble de données. Une attention particulière a
été portée à la présence de colonnes vides, dont la valeur est toujours 0 ou 1, dans toutes les

45

CHAPITRE 3 : Contribution, résultat et discussion


attaques. Ces caractéristiques, telles que 'Fwd URG Flags', 'Bwd URG Flags', 'FIN Flag Count',
'PSH Flag Count', 'ECE Flag Count', 'Bwd PSH Flags', 'Fwd Avg Bytes/Bulk', 'Fwd Avg
Packets/Bulk', 'Fwd Avg Bulk Rate', 'Bwd Avg Bytes/Bulk', 'Bwd Avg Packets/Bulk', et 'Bwd
Avg Bulk Rate', ont été éliminées car elles présentaient des valeurs fixées à 0 ou 1 dans toutes les
attaques, comme illustré dans la Figure 3-5. Ces colonnes ne fournissaient aucune information
discriminatoire permettant de distinguer les différentes classes d'attaques.

Figure 3-5 : exemple pour colonne supprimé (stabilise a 0)


3. Dans la troisième étape, d'autres colonnes catégorielles ont été supprimées de " ’Flow ID ", "
Source IP ", " Destination IP ", " Timestamp ", "Inbound" et ces propriétés sont liées aux
informations de contact et ne représentent pas des caractéristiques importantes des attaques.

4. Lors de la dernière étape, nous avons traité toutes les lignes dans tous les fichiers il a été
conclu qu'il y a des lignes impaires au taux de 1/100000 dans lignes nous l'avons. Supprimé et
avec cela, nous avons terminé notre travail en termes de prétraitement de donnes et nous
passerons à la normalisation des données
3.2.3.3. Normalisation des données
La normalisation des données est généralement requise lorsque les chercheurs appliquent des
techniques d'apprentissage en profondeur à des données qui ont des échelles différentes sur les
attributs, Nous avons recherché une comparaison des performances du modèle avec ou sans la
normalisation des traits effectuée par Wang et al [53], Les modèles discriminatoires gagnent en
efficacité
Dans cette travaille, les imitateurs sont StandardScaler et MinMaxScaler .
La fonction de mappage StandardScaler est illustrée dans. Equation 3-1

46

CHAPITRE 3 : Contribution, résultat et discussion

Equation 3-1 : StandardScaler


La fonction de mappage MinMaxScaler est illustrée dans. Equation 3-2

Equation 3-2 : MinMaxScaler


Puisque j`ai des nombres négatifs dans l'ensemble de donnée alors l’équation de StandardScaler
ressaie toujours de mettre à l'échelle toutes les données dans une distribution normale avec une
moyenne de zéro et un écart type d’un. Cela ferait tomber 50% des données dans la plage négative.
Dans ce cas, MinMaxScaler fait un meilleur. [53]

3.2.4. L’Architecture de modèle et Model proposé


J'ai implémenté la méthode du réseau neuronal profond CNN, suivie de modifications et
d'améliorations par l'exploration de plusieurs combinaisons de paramètres. Voici quelques-unes des
caractéristiques adoptées dans ce travail :
1. Les couches d'entrée ont des dimensions correspondant au nombre de neurones, équivalent au
nombre d'entités (features) dans le vecteur d'entrée.
2. La fonction d'activation utilisée était Relue. Bien que d'autres fonctions comme tanh et
sigmoid aient été expérimentées, ReLU a systématiquement produit les meilleurs résultats.
3. Les couches de sortie ont les mêmes dimensions que le nombre de classes, et la fonction
d'activation "Soft max" a été choisie pour la classification multicouche. Cette fonction attribue
des probabilités à chaque classe, la somme des probabilités étant égale à 1. Elle a été utilisée
dans la dernière étape pour obtenir la probabilité maximale et associer la catégorie
correspondante à l'affinité attendue.
4. La technologie dropout a été intégrée pour lutter contre le surapprentissage (Overfitting).
Cette approche consiste à désactiver une fraction de neurones, exprimée en pourcentage, pour
favoriser la généralisation du modèle.
5. Deux fonctions de perte ont été utilisées : "catégoriale-cross-entropie" pour la classification
multi-classes et "binary-cross-entropy" pour la classification binaire (normale/attaque).
6. L'optimiseur "Adam" a été choisi avec un taux d'apprentissage (Learning Rate) de 0.001. Cette
47

CHAPITRE 3 : Contribution, résultat et discussion


technique guide la mise à jour des poids du réseau neuronal pour minimiser les pertes,
accélérant ainsi la convergence du modèle et améliorant les prédictions avec moins d'erreurs
7. La technique d'optimisation "Adam" a été employée pour ajuster les poids d'un réseau de
neurones, réduisant les pertes et favorisant une convergence rapide, permettant ainsi au
modèle de réaliser des prédictions plus précises avec une moindre marge d'erreur.
Figure 3-6 : le modèle Cnn utilisé pour 13-Class classification

Les CNN 1D ont initialement été explorés en utilisant des couches de convolution 1D dans le
contexte du traitement du langage naturel [54]. Dans notre étude, les événements de trafic réseau
sont représentés sous forme de données de séries chronologiques 1D. Les caractéristiques des flux
sont collectées sur des périodes similaires, mais les millions de connexions bénignes et les
attaques DDoS malveillantes présentent des comportements distincts. En conséquence, nous avons
opté pour l'utilisation de CNN 1D afin d'extraire les caractéristiques de discrimination spatiale.
48

CHAPITRE 3 : Contribution, résultat et discussion


Pour déterminer les paramètres appropriés et élaborer une topologie de réseau optimale, nous
avons initié le processus avec un CNN de taille moyenne, en expérimentant différents nombres de
Couches convolutive et en variant le nombre de filtres (16, 32, 64, 256 et 1024). Les longueurs
des filtres ont également été diversifiées avec des valeurs de 5, 3 et 2 pour les couches de
convolution.
La Figure 3-6 présente l'évaluation de la précision des modèles CNN en fonction du nombre de
couches convolutive sélectionnées par expérience. En général, l'utilisation de plusieurs couches
convolutives est associée à une précision accrue. Cependant, au-delà de deux ou trois couches,
l'amélioration de la précision devient relativement stable, nécessitant un temps considérable pour
l'apprentissage. Dans nos futurs travaux, nous envisageons d'améliorer l'environnement
d'exécution.
L'architecture du CNN utilisée dans cette étude est illustrée dans la Figure 3-6a. Elle se compose
de trois couches de convolution 1D pour initier le modèle, car la profondeur (Input = 69) de cette
étude est relativement faible par rapport à d'autres projets d'apprentissage en profondeur. Une
couche de Maxpooling 1D suit chaque couche de convolution 1D, et le modèle se termine par
quatre couches entièrement connectées. Le CNN débute avec une convolution 1D, exigeant une
entrée tridimensionnelle [batch_shape, Step, features]. Dans notre modèle, l'input-Shape est
(None, 1, 69), permettant au modèle d'accepter n'importe quel batch_shape avec des séquences de
longueur 1 et un vecteur d'entrée de 69 colonnes.
Les trois couches de convolution présentent des nombres de filtres variés de tailles différentes,
utilisant le padding "same" pour maintenir la même taille des cartes de caractéristiques d'entrée.
L'opération de convolution 1D avec plusieurs filtres génère une carte de caractéristiques appelée
"Features map". Chaque couche de convolution 1D et de Maxpooling 1D applique la fonction
d'activation ReLU. Une couche de Dropout est incorporée pour prévenir le sur apprentissage
(Overfitting). Enfin, la dernière couche utilise la fonction Soft max pour produire la distribution de
probabilité sur chaque classe. L'optimisation du réseau est réalisée à l'aide de l'optimiseur "Adam".

49
CHAPITRE 3 : Contribution, résultat et discussion

Figure 3-7 : Schéma conceptuel de notre méthode d’implémentation DL

3.3. Résultats et Discussion


J'ai mis en place un modèle CNN d'apprentissage profond et l'ai entraîné et testé sur quatre sous-
ensembles distincts du jeu de données CICDDoS2019. Plusieurs expérimentations ont été réalisées
pour déterminer les hyper paramètres optimaux pour chaque modèle. Ces paramètres, cruciaux pour la
structure du réseau (nombre de neurones, nombre de couches, fonction d'activation, etc.), ainsi que
pour le lot d'échantillons (batch size), le nombre d'itérations, etc., ont un impact significatif sur les
performances du modèle pendant l'apprentissage.
Une fois que nous avons obtenu un modèle performant avec un taux d'erreur minimal et une exactitude
maximale, nous avons procédé à des tests sur un sous-ensemble de test distinct. Les résultats obtenus
sont présentés dans les figures ci-dessus (référence à la figure 4.5).

3.3.1. Les mesures d’évaluation du modèle


Pour évaluer notre modèle, nous avons utilisé la matrice de confusion :
3.3.1.1. La matrice de confusion
Une matrice de confusion est un outil tabulaire utilisé pour évaluer la performance d'un algorithme de
classification. Elle offre une visualisation concise et récapitulative des performances de l'algorithme.
Chaque colonne de la matrice correspond aux instances d'une classe réelle, tandis que chaque ligne
50
CHAPITRE 3 : Contribution, résultat et discussion
Représente les instances d'une classe prédite, comme illustré dans la Figure 3-8 [55].

Figure 3-8 : Matrice de confusion

➢ True positive (TP) : Un résultat de test qui indique correctement la présence d'une condition ou
d'une caractéristique.

➢ False positive (FP) : Un résultat de test qui indique à faux qu'une condition ou un attribut
particulier est présent.

➢ True négative (TN) : Un résultat de test qui indique correctement l'absence d'une

condition ou d'une caractéristique.

➢ False négative (FN) : Un résultat de test qui indique à faux qu'une condition ou un

attribut particulier est absent.

3.3.1.2. Mesures de performance de la classification


Les métriques de performance d'un algorithme de classification comprennent l'accuracy, la précisions,
le Recall et le F1 score, qui sont calculés à partir des valeurs TP, TN, FP et FN mentionnées
précédemment [55] :
 Accuracy (ACC) : représente la proportion du nombre total de prédictions correctes, calculée
comme suit :

 Précision (ou Positive Prédictive Value - PPV) : indique la proportion de valeurs positives
52

CHAPITRE 3 : Contribution, résultat et discussion

correctement identifiées par rapport au total des instances positives prédites :

 Recall (aussi appelé Sensibilité ou True Positive Rate - TPR) : représente la proportion de
valeurs positives par rapport au total des cas positifs réels :

 F1 Score : moyenne harmonique de la précision et du rappel, calculée comme suit :

Les modèles de base utilisés pour la comparaison étaient 4 algorithmes de machine learning courants,
testés sur les ensembles d'entraînement et de test du jeu de données CICDDoS_2019. Ces modèles
servaient de référence de base pour l'étude comparative, débutant par la sélection des caractéristiques
les plus importantes à l'aide de de la bibliothèque SKLearn, après ils ont choisi 4 algorithmes ML les
plus communs : ID3 (Décision Tree), Random forest, Naive Bayes, et Logistic Regression. Les
mesures d’évaluation ainsi que les résultats obtenus sont illustrées dans le tableau Table 3-16

3.3.2. Les modèles de base utilisés pour la comparaison


Les chercheurs ont évalué quatre algorithmes courants d'apprentissage automatique (ID3, Random
Forest, Naive Bayes et Logistic Regression) ainsi que trois modèles d'apprentissage en profondeur
(CNN, RNN, DNN) sur le jeu de données CICDDoS2019, qui comprend du trafic réel. Cet ensemble
de données a été utilisé comme référence pour la comparaison des performances. Les évaluations
échelonnées extraites par les chercheurs sont présentées dans le Tableau 3-11 :

53
CHAPITRE 3 : Contribution, résultat et discussion
Table 3-11 : Comparaison des résultats du machine learning et du Deep learning

Les précisions de la détection des attaques DDoS model propose de CNN pour les 4 expérimentations
ont été illustrées dans le Table 3-16.
3.3.3. Résultat

• Dans la première expérimentation (classification binaire), nous avons travaillé avec le sous-
ensemble de données extrait de l'ensemble CICDDoS2019, comme présenté dans le Tableau 3-6. Les
modèles ont été évalués directement sur l'ensemble de test. Le modèle CNN a été entraîné sur 50
itérations, et l'observation des précisions de formation et de validation montre une augmentation
constante, atteignant finalement une valeur proche de 1. Notablement, la perte diminue de manière
significative au cours de l'entraînement et de l'évaluation, convergeant vers une valeur minimale.
valeur où le minimum tend vers 0. Cela signifie que ces modèles apprennent mieux et font de
meilleures prédictions après chaque période d'amélioration (Figure 3-9)

Figure 3-9 : L’exactitude et la perte de la classification binaire


l est clair que nos méthodes DL surpassent largement toutes les autres méthodes d'apprentissage
automatique, avec une grande précision et un bon taux de rappel. Parmi nos méthodes, CNN a obtenu
les meilleurs résultats avec une précision de 99.97%, grâce à sa capacité à reconnaître les schémas
discriminatoires pour chaque catégorie, le Table 3-12 montre le rapport de classification des attaques
La matrice de confusion a également été extraite pour montrer les résultats plus Figure 3-10.
54

CHAPITRE 3 : Contribution, résultat et discussion


Table 3-12 : Le rapport de classification binaire
Figure 3-10 : Matrice de confusion (2 - classes)
• La deuxième expérimentation (8-classes classifications) :
L'expérimentation a été effectuée sur le sous-ensemble de données présenté dans le tableau Table 3-6.
Les modèles ont été directement évalués sur l'ensemble de test, et l'entraînement du modèle a été

55

CHAPITRE 3 : Contribution, résultat et discussion


effectué sur 50 itérations. Ces itérations représentent des périodes d'amélioration où les modèles
apprennent de manière plus efficace et effectuent des prédictions plus précises à chaque étape (Figure
3-11). Les résultats optimaux ont été obtenus avec une précision de 92%, comme illustré dans le
tableau 4.9, qui présente le rapport de classification des attaques.

Figure 3-11 : L’exactitude et la perte (8 classes classifications)

Table 3-13 : Le rapport de classification (7 classes classifications)

56

CHAPITRE 3 : Contribution, résultat et discussion


• La troisième expérimentation (13-classes classifications) : a été réalisée sur le sous- ensemble de
données dans le tableau Table 3-8 . Les modèles sont évalués directement sur l'ensemble de test. Le
modèle est formé sur 40 itérations. Cela signifie que ces modèles apprennent mieux et font de
meilleures prédictions après chaque période d'amélioration (Figure 3-12), les meilleurs résultats avec
une précision 78 %, grâce à sa capacité à reconnaître les schémas discriminatoires pour chaque
catégorie, le Figure 3-13 montre le rapport de classification des attaques,

Figure 3-12: L’exactitude et la perte (13 classes classifications)

Table 3-14 : Le rapport de classification (13 classes classifications)

57

CHAPITRE 3 : Contribution, résultat et discussion


Figure 3-13 : Matrice de confusion (13 classifications)
Dans la matrice de confusion illustrée dans la Figure 3-15, nous pouvons conclure que les attaques
DrDoS_LDAP et UDP_lag ont engendré des résultats doublés, probablement en raison de la similarité
de leurs caractéristiques. Même les administrateurs réseau peuvent avoir du mal à les différencier en
raison de cette similarité.
La quatrième expérimentation, réalisée sur le sous-ensemble de données présenté dans le tableau
Table 3-10, les modèles ont été évalués directement sur l'ensemble de test après 50 itérations
d'entraînement. Ces itérations représentent des périodes d'amélioration où les modèles apprennent de
manière plus efficace, conduisant à des prédictions plus précises à chaque étape (Figure 3-14). Les
meilleurs résultats ont été obtenus avec une précision de 87%, démontrant la capacité du modèle à
reconnaître les schémas discriminatoires pour chaque catégorie. Le Tableau 3-15 présente le rapport
de classification des attaques, et une matrice de confusion a également été extraite pour illustrer les
résultats de manière plus détaillée.

58

CHAPITRE 3 : Contribution, résultat et discussion


Figure 3-14 : : L’exactitude et la perte (14 classes classifications)

Table 3-15 : Le rapport de classification (14 classes classifications)

59
CHAPITRE 3 : Contribution, résultat et discussion

Figure 3-15 : Matrice de confusion (14 classifications)

Tous ces résultats sont encourageants, bien qu'ils ne surpassent pas les performances exceptionnelles
obtenues dans certains travaux antérieurs. Il est important de noter que ces travaux préalables ont
généré des résultats impressionnants grâce à un équipement plus performant. Pour une évaluation
équitable, nous avons comparé nos résultats à un travail similaire réalisé dans le même environnement
de travail, à savoir Google Colab, qui offre une capacité de mémoire de 12 Go.
La baisse des performances constatée peut être attribuée à la présence de trois types d'attaques
partageant des caractéristiques similaires. Même les administrateurs réseau éprouvent des difficultés à
les distinguer en raison de leur similitude. Par exemple, il est complexe de différencier l'attaque
DRDoS SSDP de l'attaque DRDOS SNMP en raison de leurs caractéristiques proches. De même, la
distinction entre Portmap et DRDOP UDP représente un défi. La manipulation des caractéristiques des
attaques se révèle difficile, limitant ainsi les améliorations potentielles des résultats. Malgré ces défis,
les résultats obtenus demeurent plutôt satisfaisants.
60

CHAPITRE 3 : Contribution, résultat et discussion


Conclusion
Nous avons implémenté un modèle d'apprentissage en profondeur CNN utilisant l'ensemble de
données CICDDoS2019 pour détecter une attaque DDoS.

Table 3-16 : Les résultats des méthodes proposées

Le traitement et la manipulation des données ont constitué un défi majeur pour nous, et nous avons
consacré un temps considérable à les résoudre. Une limitation importante était liée à la faiblesse des
dispositifs disponibles, notamment en termes de RAM, GPU et puissance de traitement, qui ne
satisfaisaient pas pleinement nos besoins. Nous avons entrepris la création de quatre ensembles de
données distincts en prélevant des échantillons de manière aléatoire dans le but d'obtenir des résultats
plus réalistes et non biaisés.
La première classification était une classification binaire, tandis que les trois suivantes représentaient
une classification multi-classe. Une nouvelle approche a été proposée en considérant tous les types
d'attaques comme un pourcentage de l'ensemble d'informations. Par exemple, si le nombre d'attaques
DDos_TFTP typique est de 20 millions dans l'ensemble de données, nous le réduisons à 5%, soit un
total de 1 million d'attaques. De nombreuses expériences ont été menées pour optimiser les résultats
d'apprentissage, démontrant que l'apprentissage en profondeur surpassait les méthodes d'apprentissage
automatique classiques et certaines approches antérieures basées sur l'apprentissage en profondeur
utilisant le même ensemble d'informations.
Les résultats obtenus étaient très satisfaisants, avec une précision de détection élevée pour divers
61
types d'attaques, démontrée au cours de multiples expérimentations sur l'ensemble de données. Ce
modèle peut être considéré comme une solution prometteuse pour les dispositifs de détection
d'intrusion en cyber sécurité, notamment dans le domaine du trafic réseau.
62

Conclusion générale

Le cyber sécurité est un groupe d'entreprises, en particulier dans la sécurisation des


éléments vulnérables à travers (ICT). Les systèmes de détection d'intrusion font partie
intégrante du cyber sécurité, la détection d'intrusion doit être disponible dans tous les
segments du réseau pour réduire les attaques par déni de service. Les logiciels antivirus ou les
pares-feux au sein du réseau sont insuffisants et inefficaces contre ces attaques. Nous avons
mené cette étude pour intégrer l'apprentissage en profondeur et son développement pour aider
l'intrusion le détecteur fonctionne mieux dans la détection d'intrusion à l'aide de
l'apprentissage en profondeur.
J’ai donc commencé par choisir le meilleur ensemble de données modernes avec des
informations sur les flux réels nommé CICDDoS2019 pour détecter les cyberattaques et le
type d’attaque, avec la variété de ces attaques (attaque par déni de service), il est difficile pour
le système de détection d'intrusion de les distinguer des utilisateurs légitimes sur les grands
réseaux Internet. Après cela, j`ai mené cette étude afin d'aider les administrateurs réseau à
explorer ces attaques
Ensuite, J`ai choisi d'implémenter un modèle d'apprentissage en profondeur, un réseau de
neurones convolutifs (CNN), et (CNN) a été choisi pour avoir les meilleurs résultats dans les
travaux qui me concerne.
Les résultats obtenus sont raisonnablement satisfaisants en le comparant avec des travaux
connexes car il s'agit d'un trafic réel, et nous avons donc amélioré d'un bon pourcentage le
temps d'exploration et le taux d'erreur dans la découverte, je peux donc l'utiliser comme
système de détection d'avertissement en temps réel.

Perspective

Dans nos travaux futurs, je travaillerai sur les fichiers pcap du jeu de données pour augmenter
le nombre d'attaques afin de peser le nombre d'attaques par déni de service d'apprentissage
profond, en utilisant des programmes de détection de trafic réseau.

63

BIBLIOGRAPHIES

[1] G. N. Nayak and S. G. Samaddar, “Different flavours of Man-In-The-Middle


attack, consequences and feasible solutions,” Proceedings - 2010 3rd IEEE
International Conference on Computer Science and Information Technology,
ICCSIT 2010, vol. 5, pp. 491–495, 2010, doi: 10.1109/ICCSIT.2010.5563900.
[2] V. D. Gligor and S. H. Shattuck, “On Deadlock Detection in Distributed
Systems,” IEEE Transactions on Software Engineering, vol. SE-6, no. 5, pp.
435–440, 1980, doi: 10.1109/TSE.1980.230491.

[3] B. Zhang, T. Zhang, and Z. Yu, “DDoS detection and prevention based on
artificial intelligence techniques,” 2017 3rd IEEE International Conference on
Computer and Communications, ICCC 2017, vol. 2018-January, pp. 1276–1280,
Mar. 2018, doi: 10.1109/COMPCOMM.2017.8322748.

[4] I. Sharafaldin, A. H. Lash Kari, S. Hakak, and A. A. Ghorbani, “Developing


realistic distributed denial of service (DDoS) attack dataset and taxonomy,”
Proceedings - International Carnahan Conference on Security Technology, vol.
2019-October, Oct. 2019, doi: 10.1109/CCST.2019.8888419.

[5] S. Hosseini and M. Azizi, “The hybrid technique for DDoS detection with
supervised learning algorithms,” Computer Networks, vol. 158, pp. 35–45, Jul.
2019, doi: 10.1016/J.COMNET.2019.04.027.
[6] R. R. Nuiaa, S. Manickam, and A. H. Alsaeedi, “Distributed reflection denial
of service attack: A critical review,” International Journal of Electrical and
Computer Engineering (IJECE), vol. 11, no. 6, pp. 5327– 5341, Dec. 2021, doi:
10.11591/IJECE.V11I6.PP5327-5341.
64
BIBLIOGRAPHIES

[7] D. Roy and P. Nourry, “Sécurité du réseau fixe d’un opérateur : focus sur les
dénis de service”.

[8] G. R. Zargar and P. Kabiri, “Identification of effective network features to


detect smurf attacks,” SCOReD2009 - Proceedings of 2009 IEEE Student
Conference on Research and Development, pp. 49–52, 2009, doi:
10.1109/SCORED.2009.5443345.
[9] D. H. Kim, P. T. Dinh, S. Noh, J. Yi, and M. Park, “An Effective Defense
Against SYN Flooding Attack in SDN,” ICTC 2019 - 10th International
Conference on ICT Convergence: ICT Convergence Leading the Autonomous
Future, pp. 369–371, Oct. 2019, doi: 10.1109/ICTC46691.2019.8939937.

[10] Z. Y. Shen, M. W. Su, Y. Z. Cai, and M. H. Tasi, “Mitigating SYN


Flooding and UDP Flooding in P4-
based SDN,” 2021 22nd Asia-Pacific Network Operations and Management
Symposium, APNOMS 2021,
pp. 374–377, Sep. 2021, doi: 10.23919/APNOMS52696.2021.9562660.
[11] A. Praseed and P. S. Thilagam, “HTTP request pattern based signatures for
early application layer DDoS
detection: A firewall agnostic approach,” Journal of Information Security and
Applications, vol. 65, p.
103090, Mar. 2022, doi: 10.1016/J.JISA.2021.103090.
[12] J. W. Kim, “Integrating Artificial immune Algorithms for Intrusion
Detection”.
[13] “Mise en place d’une sonde snort Monitoring network Projets du M3
REALISATION : Slimane Tanji
65

BIBLIOGRAPHIES
Snort”.
[14] “RFC 4766 - Intrusion Detection Message Exchange Requirements.”
https://datatracker.ietf.org/doc/rfc4766/ (accessed May 31, 2022).

[15] Ghenima BOURKACHE, “Un IDS réparti basé sur une société d’agents
intelligents.”Accessed:May31,2022.[Online].Available:http://dlibrary.univboum
erdes.dz:8080/bitstream/123456789/912/1/Bourkache%2C%20Ghenima
%20magister.pdf
[16] Lehmann Guillaum, “ cours de sécurité informatique 2003-04-13.”
Accessed:May31,2022.[Online].Available:https://di.univblida.dz/jspui/
bitstream/123456789/7211/1/Benhassine%20Oualid%20et%20Boutebali
%20Imadeddine.pdf

[17] H.-J. Liao, C.-H. R. Lin, Y.-C. Lin, and K.-Y. Tung, “Intrusion detection
system: A comprehensive review,” Journal of Network and Computer
Applications, vol. 36, pp. 16–24, 2012, doi: 10.1016/j.jnca.2012.09.004.

[18] H. Debar, M. Dacier, and A. Wespi, “Revised taxonomy for intrusion-


detection systems,” Annales des Telecommunications/Annals of
Telecommunications, vol. 55, no. 7, pp. 361–378, Jul. 2000, doi:
10.1007/BF02994844.

66

BIBLIOGRAPHIES

[19] N. Sultana, N. Chilamkurti, W. Peng, and R. Alhadad, “Survey on SDN


based network intrusion detection system using machine learning approaches,”
Peer-to-Peer Networking and Applications, vol. 12, no. 2, pp. 493–501, Mar.
2019, doi: 10.1007/S12083-017-0630-0.

[20] S. Dua and X. Du, Data Mining and Machine Learning in Cybersecurity.
Accessed: Jun. 11, 2022. [Online]. Available: https://www.routledge.com/Data-
Mining-and-Machine-Learning-in-Cybersecurity/Dua-Du/p/book/
9781439839423
[21] R. Sommer and V. Paxson, “Outside the closed world: On using machine
learning for network intrusion detection,” Proceedings - IEEE Symposium on
Security and Privacy, pp. 305–316, 2010, doi: 10.1109/SP.2010.25.

[22] J. M. Johnson and T. M. Khoshgoftaar, “Survey on deep learning with class


imbalance,” Journal of BigData, vol. 6, no. 1, pp. 1–54, Dec. 2019, doi:
10.1186/S40537-019-0192-5/TABLES/18.

[23] Aboubakry Moussa SOW, “COMME EXIGENCE PARTIELLE DE LA


MAÎTRISE ENMATHÉMATIQUES ET INFORMATIQUE APPLIQUÉE,”
2020. Accessed: Jun. 07, 2022. [Online]. Available: https://depot-
e.uqtr.ca/id/eprint/9600/1/eprint9600.pdf

[24] A. H. Lashkari, G. D. Gil, M. S. I. Mamun, and A. A. Ghorbani,


“Characterization of tor traffic using time
68

BIBLIOGRAPHIES

based features,” ICISSP 2017 - Proceedings of the 3rd International Conference


on Information Systems Security and Privacy, vol. 2017-January, pp. 253–262,
2017, doi: 10.5220/0006105602530262.

[25] Q. Zhong, Y. Sun, and Z. Qiu, “Deep Recurrent Neural Network with
Sharing Weights for Solving High-Dimensional PDEs,” Proceedings of 2021
IEEE International Conference on Data Science and Computer Application,
ICDSCA 2021, pp. 6–9, 2021, doi: 10.1109/ICDSCA53499.2021.9650325.

[26] “Université 8 mai 1945 - GUELMA: Un système de détection d’intrusion


pour la
cybersécurité.”https://dspace.univ-guelma.dz/jspui/handle/123456789/10125
(accessed May 23, 2022).

[27] M. A. Ferrag, L. Shu, H. Djallel, and K. K. R. Choo, “Deep Learning-


Based Intrusion Detection for Distributed Denial of Service Attack in
Agriculture 4.0,” Electronics 2021, Vol. 10, Page 1257, vol. 10, no. 11, p. 1257,
May 2021, doi: 10.3390/ELECTRONICS10111257.

[28] “DETECTION OF DDOS ATTACKS BASED ON DENSE NEURAL


NETWORKS, AUTOENCODERS AND PEARSON CORRELATION
COEFFICIENT.” https://dalspace.library.dal.ca/handle/10222/78536 (accessed
May 23, 2022).
[29] M. Mittal, K. Kumar, and S. Behal, “Deep learning approaches for
detecting DDoS attacks: a systematic review,” Soft Computing, p. 1, 2022, doi:
10.1007/S00500-021-06608-1.

69

BIBLIOGRAPHIES

[30] A. E. Cil, K. Yildiz, and A. Buldu, “Detection of DDoS attacks with feed
forward based deep neural network model,” Expert Systems With Applications,
vol. 169, p. 114520, 2021, doi: 10.1016/j.eswa.2020.114520.

[31] M. Tavallaee, E. Bagheri, W. Lu, and A. A. Ghorbani, “A detailed analysis


of the KDD CUP 99 data set,” IEEE Symposium on Computational Intelligence
for Security and Defense Applications, CISDA 2009, Dec. 2009, doi:
10.1109/CISDA.2009.5356528.

[32] Z. K. Maseer, R. Yusof, N. Bahaman, S. A. Mostafa, and C. F. M. Foozy,


“Benchmarking of Machine Learning for Anomaly Based Intrusion Detection
Systems in the CICIDS2017 Dataset,” IEEE Access, vol. 9, pp. 22351–22370,
2021, doi: 10.1109/ACCESS.2021.3056614.

[33] W. L. Al-Yaseen, Z. A. Othman, and M. Z. A. Nazri, “Multi-level hybrid


support vector machine and extreme learning machine based on modified K-
means for intrusion detection system,” Expert Systems with Applications, vol.
67, pp. 296–303, Jan. 2017, doi: 10.1016/J.ESWA.2016.09.041.

[34] F. Lau, S. H. Rubin, M. H. Smith, and L. Trajković, “Distributed denial of


service attacks,” Proceedings of the IEEE International Conference on Systems,
Man and Cybernetics, vol. 3, pp. 2275–2280, 2000, doi:
10.1109/ICSMC.2000.886455.

70

BIBLIOGRAPHIES

[35] M. Almiani, A. AbuGhazleh, Y. Jararweh, and A. Razaque, “DDoS


detection in 5G-enabled IoT networksusing deep Kalman backpropagation
neural network,” International Journal of Machine Learning and Cybernetics,
vol. 12, no. 11, pp. 3337–3349, Apr. 2021, doi:
10.1007/S13042-021-01323-7/TABLES/4.

[36] S. Ray, K. Alshouiliy, and D. P. Agrawal, “Dimensionality reduction for


human activity recognition using google colab,” Information (Switzerland), vol.
12, no. 1, pp. 1–23, Jan. 2021, doi: 10.3390/INFO12010006.
[37] “Deep Learning for Cyber Security Applications: A Comprehensive
Survey.”
https://www.researchgate.net/publication/
355282522_Deep_Learning_for_Cyber_Security_Applications_A_Comprehensi
ve_Survey (accessed Jun. 07, 2022).

[38] “KDD Cup 1999 Data.”


http://kdd.ics.uci.edu/databases/kddcup99/kddcup99.html (accessed Jun. 07,
2022).

[39] “Datasets | Research | Canadian Institute for Cybersecurity | UNB.”


https://www.unb.ca/cic/datasets/index.html (accessed Jun. 07, 2022).
[40] “MAWILab - Documentation.”
http://www.fukuda-lab.org/mawilab/documentation.html (accessed Jun.07,
2022).
[41] “DDoS 2019 | Datasets | Research | Canadian Institute for Cybersecurity |
UNB.”
71

BIBLIOGRAPHIES
https://www.unb.ca/cic/datasets/ddos-2019.html (accessed Jun. 07, 2022).

[42] “Resisting SYN flood DoS attacks with a SYN cache.”


https://www.usenix.org/legacy/event/bsdcon02/full_papers/lemon/lemon_html/
(accessed Jun. 09, 2022).

[43] “What is an SSDP DDoS attack?”


https://ddos-guard.net/en/terminology/attack_type/ssdp-ddos-attack (accessed
Jun. 09, 2022).
[44] “Attackers Using New MS SQL Reflection Techniques.”
https://myakamai.force.com/customers/s/article/Attackers-Using-New-MS-SQL-
Reflection-Techniques?language=en_US (accessed Jun. 09, 2022).

[45] L. Rudman and B. Irwin, “Characterization and analysis of NTP


amplification based DDoS attacks,” 2015 Information Security for South Africa
- Proceedings of the ISSA 2015 Conference, Nov. 2015, doi:
10.1109/ISSA.2015.7335069.
[46] M. Anagnostopoulos, G. Kambourakis, P. Kopanos, G. Louloudakis, and S.
Gritzalis, “DNS amplification attack revisited,” Computers & Security, vol. 39,
no. PART B, pp. 475–485, Nov. 2013, doi: 10.1016/J.COSE.2013.10.001.
[47] “UDP-Based Amplification Attacks | CISA.”
https://www.cisa.gov/uscert/ncas/alerts/TA14-017A(accessed Jun. 09, 2022).
[48] “DETECTION OF DDOS ATTACKS BASED ON DENSE NEURAL
NETWORKS, AUTOENCODERS AND PEARSON CORRELATION
COEFFICIENT.” https://dalspace.library.dal.ca/handle/10222/78536
72

BIBLIOGRAPHIES

(accessed Jun. 09, 2022).

[49] B. Sieklik, R. MacFarlane, and W. J. Buchanan, “Evaluation of TFTP


DDoS amplification attack,” Computers & Security, vol. 57, pp. 67–92, Mar.
2016, doi: 10.1016/J.COSE.2015.09.006.

[50] J. Yu, H. Lee, M.-S. Kim, and D. Park, “Traffic flooding attack detection
with SNMP MIB using SVM,” Computer Communications, vol. 31, no. 17, pp.
4212–4219, Nov. 2008, doi: 10.1016/J.COMCOM.2008.09.018.
[51] A. Singh and D. Juneja, “Agent Based Preventive Measure for UDP Flood
Attack in DDoS Attacks,” Aarti Singh et. al. / International Journal of
Engineering Science and Technology, vol. 2, no. 8, pp. 3405–3411, 2010,
Accessed: Jun. 09, 2022. [Online]. Available:
https://www.researchgate.net/publication/50315626
[52] “ANALISIS KEAMANAN JARINGAN SINGLE SIGN ON (SSO)
DENGAN LIGHTWEIGHT DIRECTORY ACCESS PROTOCOL (LDAP)
MENGGUNAKAN METODE MITMA | Amarudin | SEMNASTEKNOMEDIA
ONLINE.”
https://ojs.amikom.ac.id/index.php/semnasteknomedia/article/view/469
(accessed Jun. 09, 2022).
[53] W. Wang, X. Zhang, S. Gombault, and S. J. Knapskog, “Attribute
normalization in network intrusion detection,” I-SPAN 2009 - The 10th
International Symposium on Pervasive Systems, Algorithms, and Networks, pp.
448–453, 2009, doi: 10.1109/I-SPAN.2009.49.

73

BIBLIOGRAPHIES

[54] Y. Kim, “Convolutional Neural Networks for Sentence Classification,”


EMNLP 2014 - 2014 Conference on Empirical Methods in Natural Language
Processing, Proceedings of the Conference, pp. 1746–1751, Aug. 2014, doi:
10.48550/arxiv.1408.5882.

[55] D. K. Sharma, M. Chatterjee, G. Kaur, and S. Vavilala, “Deep learning


applications for disease diagnosis,”Deep Learning for Medical Applications
with Unique Data, pp. 31–51, Jan. 2022, doi: 10.1016/B978-0- 12-824145-
5.00005-8.
74

Vous aimerez peut-être aussi