PFE DDoSAttacksDetection
PFE DDoSAttacksDetection
Par
Aya Mannai
Président : Dr.
Rapporteur : Dr.
GLSI3
Année Universitaire : 2024-2025
Dédicaces
Je dédie ce travail avec hommage à mes chers parents Jamel Mannai et Latifa Mannai pour
les sacrifices qu’ils ont consentis pour mon instruction et mon bien être et pour leurs
encouragements constants et leur soutien moral indéfectible qui ont été une source
d’inspiration et de force tout au long de ce projet.
À mon frère, Hamza Mannai, je lui dédie mon travail ainsi que mon adoration et mon
admiration. Merci pour votre présence.Je vous souhaite une vie pleine de joie de bonheur et
de réussite .
À mes professeurs , depuis les premiers pas de mon enfance jusqu’à aujourd’hui , qui ont
guidé mon apprentissage avec passion et bienveillance , une reconnaissance particulière à
M.Karim Touati , Mme. Saloua Mannai , M.Tarek Ghezail et M. Abdelwaheb Arfaoui dont
l’enseignement et les encouragements ont profondément marqué mon parcours .
À tous mes amis, qui me sont chers , à tous ceux que j’aime et qui m’aiment ; qu’ils trouvent
ici l’expression de mes sentiments les plus dévoués et mes vœux les plus sincères.
À ceux avec qui nos chemins se sont croisés et qui ont su me soutenir et m’aider sans rien
demander en retour, merci.
Remerciements
Table des matières
I Principes Fondamentaux 4
1
Introduction
Ces dernières années, l’Internet des Objets IoT est devenu l’une des technologies les plus
prometteuses du 21ème siècle. Actuellement nous pouvons connecter des objets du quotidien
à internet par l’intermédiaire de terminaux intégrés. Plusieurs communications sont devenues
possibles en toute transparence entre les personnes, les processus et les objets. Grâce à des mix
informatiques viables et peu coûteux, comme le Cloud, la notion du Big-Data, des plateformes
analytiques, les technologies mobiles, etc. Les objets physiques peuvent interagir, partager et
collecter des flux de données .Ces systèmes et réseaux de communication modernes génèrent
une quantité massive et hétérogène de données de trafic . D’où , la cybersécurité est devenue
un enjeu crucial. Si cette interconnexion généralisée simplifie la gestion des données et permet
une automatisation optimale des processus, elle accroît également la vulnérabilité des systèmes
face à des cybermenaces variées. Parmi celles-ci, les attaques par Déni de Service Distribué
(DDoS) se distinguent par leur caractère particulièrement dévastateur. En effet, elles ciblent la
disponibilité des services en les inondant de trafic malveillant, provoquant ainsi leur interrup-
tion. Leur dangerosité réside notamment dans leur capacité à compromettre des infrastructures
essentielles, avec des conséquences potentiellement graves pour les entreprises et les institu-
tions.
Les systèmes traditionnels de détection d’attaques DDoS, bien qu’efficaces contre les me-
naces connues, montrent aujourd’hui leurs limites. Fonctionnant sur le principe de signatures
préenregistrées, ces méthodes deviennent moins efficaces face aux attaques modernes, de plus
en plus sophistiquées et évolutives. L’intelligence artificielle, et particulièrement le Deep Lear-
ning, apporte une réponse innovante à ce défi. Grâce à sa capacité d’analyse automatique et
d’apprentissage continu, cette technologie peut identifier des schémas d’attaque complexes et
détecter des anomalies en temps réel, même pour des menaces jamais rencontrées auparavant.
Parmi les solutions les plus performantes, le modèle hybride CNN-LSTM combine deux ap-
proches complémentaires . D’un côté, Les réseaux de neurones convolutifs (CNN) pour l’ana-
lyse fine des caractéristiques réseau . De l’autre, la mémoire à long court terme (LSTM) pour
le traitement des séquences temporelles.Cette combinaison permet une détection plus précise
et plus fiable des attaques DDoS, en tenant compte à la fois des motifs instantanés et des évo-
lutions dans le temps.
Problématique
Si la cybersécurité a progressé„ les attaques DDoS restent un problème majeur qui ne cesse
d’évoluer. Le vrai défi ? Nos systèmes de protection actuels sont souvent trop rigides pour suivre
le rythme des nouvelles techniques d’attaque. Face à cette situation, le Deep Learning semble
offrir des solutions intéressantes. Mais la question qui nous intéresse est comment utiliser cette
technologie pour mieux protéger nos réseaux IoT ?
C’est actuellemnt l’objet de notre étude. Nous voulons tester une nouvelle approche qui est
la combinaison CNN-LSTM . L’idée est de voir si cette solution peut analyser efficacement le
2
trafic réseau et repérer les attaques potentielles avec une précision jamais atteinte auparavant.
Contribution
Ce projet vise à approfondir les recherches existantes en testant concrètement les capacités
d’un modèle hybride CNN-LSTM face aux attaques DDoS dans différents environnements IoT.
Notre objectif principal est d’évaluer précisément comment ce modèle performe avec diverses
configurations et sous différentes conditions d’attaque. À travers des expérimentations rigou-
reuses sur plusieurs jeux de données reconnus (CICDDoS’2019, CIC-IOT-2023, etc.), nous
cherchons à identifier les limites et avantages de cette approche, tout en proposant des pistes
d’amélioration pour de futures recherches. De plus, ce travail permettra d’établir une compré-
hension approfondie :
L’ambition finale est d’apporter une contribution tangible à la protection des réseaux IoT contre
les cybermenaces évolutives.
Organisation du rapport
Notre travail est constitué de trois chapitres, nous entamons le premier chapitre , intitulé
"Cybersécurité des environnements IoT", présentera le contexte des attaques dans les systèmes
IoT, les technologies concernées et les solutions existantes. Le deuxième chapitre, "Deep Lear-
ning pour la prédiction des DDoS", détaillera les algorithmes de Machine Learning et Deep
Learning utilisés, avec un focus particulier sur note modèle hybride CNN-LSTM, ainsi qu’une
analyse des jeux de données disponibles. Enfin, le troisième chapitre, "Implémentation", décrira
notre environnement de travail, le processus complet de développement du modèle (traitement
des données, sélection des caractéristiques, entraînement) et présentera les résultats obtenus
à travers différentes métriques de performance, ainsi qu’une comparaison avec d’autres ap-
proches.
3
Première partie
Principes Fondamentaux
4
Chapitre 1
5
1.1 Introduction
Les objets connectés ont envahi notre quotidien - des maisons intelligentes aux usines auto-
matisées en passant par les réseaux urbains. Mais cette révolution technologique s’accompagne
d’un risque croissant : ces dispositifs IoT sont souvent la cible d’attaques informatiques sophis-
tiquées. Les DDoS en particulier représentent une menace sérieuse, capable de paralyser des
services essentiels en quelques minutes. Face à ce défi, les chercheurs se tournent vers le Deep
Learning, une technologie qui montre des résultats encourageants pour repérer ces attaques en
analysant les anomalies dans le trafic réseau.Dans ce contexte, il est essentiel de comprendre
les spécificités des environnements IoT et leurs failles de sécurités, les typologies d’attaques
(Probing, R2L, U2R, DoS/DDoS) et leurs impacts et les limites des solutions traditionnelles de
cybersécurité toutes en proposant des nouvelles approches
6
F IGURE 1.1 – Internet des objets.
• Couche de détection :
La couche de détection ou sensing layer en anglais est la couche la plus basse de
l’architecture. Les éléments de cette couche constituent les périphériques finaux de
l’architecture. Il s’agit des objets dit "connectés et intelligents" et des capteurs. Leur
rôle est de collecter des données de leur environnement au moyen de divers cap-
teurs et de remonter via la couche réseau les données collectées à la couche service.
Ces objets peuvent également agir sur leur environnement au moyen d’actionneurs.
Chaque objet est globalement identifiable de manière unique. Suivant les applica-
tions, on distingue plusieurs types de capteurs : des accéléromètres, des gyroscopes,
des capteurs de température, des capteurs de qualité des eaux, des capteurs du
rythme cardiaque, des capteurs photo-électriques, des capteurs électro-chimiques,
des capteurs à infrarouge, etc.
• Couche réseau :
La couche réseau ou network layer en anglais, située au-dessus de la couche de
7
détection, gère toutes les activités réseau d’une infrastructure IOT, c’est-à-dire la
connectivité, le routage, l’interconnexion, l’acheminement de paquet, la qualité de
service, la gestion de l’adressage et l’adaptation de protocole, etc. Elle héberge
des passerelles (gateway) qui font office de passerelle vers Internet pour des objets
contraints, en assurant l’adaptation de protocole et le routage des données. Elle est
également responsable du transport des données provenant de la couche de détec-
tion vers les services et applications, consommateurs de ces données.
• Couche service :
La couche service ou service layer, située au-dessus de la couche réseau, fournit et
gère les services requis par les utilisateurs et les applications de l’architecture. A
cet effet, elle héberge les services de stockage, de traitement et d’analyse d’infor-
mations des données remontées par la couche de détection. Elle est également res-
ponsable de la mise en œuvre des logiques métiers des applications. Cela nécessite
l’extraction des informations nécessaires à partir de l’énorme quantité de données
collectées par les objets. Les services que l’on retrouve à ce niveau sont généra-
lement les services d’analyse des données Big Data, les services d’apprentissage
automatique et les services d’interfaces de programmation d’application (API : Ap-
plication Programing Interface). Nous avons également, au niveau de cette couche,
le service de support opérationnel, de configuration et de mise à jour des disposi-
tifs (les objets), de reporting et de facturation. C’est également au niveau de cette
couche que sont hébergés le service de gestion de la qualité de service et la plu-
part des opérations de sécurité (bien que la sécurité soit transversale à toutes les
couches) tels que le contrôle d’accès, la gestion de l’identification et la gestion des
processus métiers.
• Couche application :
La couche application ou application layer est la couche la plus haute de l’architec-
ture. Elle exploite les fonctionnalités offertes par la couche service. Elle comprend
également les méthodes d’interaction du système avec les utilisateurs finaux. Ainsi,
on y retrouve diverses applications basées sur les objets connectés. Parmi elles, nous
avons les maisons intelligentes, la e santé, l’industrie 4.0, le smart grid, etc.
8
F IGURE 1.3 – Quelques domaines d’applications de l’IoT.
• Domotique :
C’est un ensemble de technologies qui permettent à la maison d’être intelligente, de
penser par elle-même, et de contrôler divers équipements depuis la même interface (té-
léphone, panneau) grâce à l’Internet des objets, qui a facilité et créé la communication
entre les appareils électroménagers et les a contrôlés. à distance, et dans ce sens et la
propagation de l’Internet des objets nous arrivons aux villes .
• Agriculture :
Dans ce domaine, des réseaux de capteurs interconnectés l’Internet des objets peut être
utilisé pour surveiller l’environnement des cultures . Ce qui conduit à de bons résultats et
à l’amélioration de l’eau d’irrigation et de l’utilisation des intrants et de la planification
des travaux agricoles grâce à eux, ces réseaux peuvent être utilisés pour lutter contre les
dégâts et les catastrophes et améliorer la qualité de l’environnement en général .
• Villes intelligentes (Smart City) :
Le terme villes intelligentes est utilisé pour désigner l’écosystème cyber . Grâce à des
services avancés, il est en effet peut optimiser l’utilisation de l’infrastructure physique
de la ville (réseau routes, réseaux électriques, etc.), améliorant ainsi la qualité de vie des
personnes citoyen.
• Santé :
En santé, l’IoT surveillera les signes fournir des cliniques aux patients en créant des
réseaux personnels et des capteurs médicaux surveiller les constantes biologiques telles
que la température corporelle, Tension artérielle et activité respiratoire . Afin de faciliter
la surveillance et d’apporter des solutions, notamment aux personnes à mobilité réduite,
dans le domaine de la santé, leurs activités dans leur milieu de vie sont surveillées grâce
à des capteurs portables (accéléromètres, gyroscopes, etc.) ou fixes.
• Environment :
Dans ce domaine, un rôle clé est joué par capacité à détecter et autogérer les phénomènes
naturels, vent, Hauteurs des rivières, etc. De plus, une intégration transparente de ces
9
données hétérogènes .
• Sécurité de la surveillance :
La sécurité de la surveillance est Devenir un bâtiment d’entreprise, un centre commercial,
usine, parking et autres lieux publics. Tout en protégeant la vie privée utilisateur . Afin
d’obtenir et d’acquérir une grande capacité de sécurité et facilement Il existe plusieurs
capteurs utilisés pour la surveillance par exemple il y a des capteurs ambiants qui peuvent
être utilisés pour surveiller la présence des produits chimiques dangereux, des captures
de surveillance du comportement des personnes pour détecter la présence des personnes
qui agissent de manières suspectes.
• Industrie :
Dans le domaine de l’industrie l’IOT permettra un suivi complet des produits, En en-
cadrant de la chaîne de production à la chaîne logistique de distribution conditions de
fourniture, lutte contre la contrefaçon, la fraude et la criminalité économie transfronta-
lière.
10
du broker à plusieurs topics et ils seront ainsi notifiés de tous les messages reçus par le
broker pour les topics pertinents.
• CoAP :
Constrained Application Protocol est un protocole de communication élaboré par le
groupe CoRE (« Constrained Resource Environments ») de l’IETF (« Internet Enginee-
ring Task Force ») pour étendre l’architecture web aux applications M2M . Il est basé sur
UDP pour minimiser la surcharge réseau et consomme peu d’énergie. Ce protocole a été
développé pour assurer la fiabilité des communications dans des environnements à faible
bande passante entre des capteurs ou des actionneurs. CoAP peut être vu comme un sous
ensemble de HTTP (« HyperText Transfer Protocol »). Il suit le modèle client/serveur
où les clients utilisent les méthodes GET, PUT, POST et DELETE pour accéder aux res-
sources des serveurs. Il fonctionne de manière asynchrone et les messages échangés sur
le réseau sont soit acquittés par le récepteur, soit envoyés sans garantie de réception. Pour
sécuriser les transferts de données sur UDP, le protocole CoAP utilise DTLS (« Datagram
Transport Layer Security ») pour offrir les mêmes garanties que TLS pour le protocole
TCP. Il est à noter que DTLS adresse aussi les problèmes de perte et de réordonnance-
ment des paquets.
• ZigBee :
Zigbee est un protocole réseau sans fil spécialement conçu pour les dispositifs limités en
ressources. Zigbee se base sur la norme IEEE 802.15.4 et fournit des services de sécurité
qui comprennent l’établissement et l’échange de clés, la protection et l’authentification
des dispositifs. Il permet également d’utiliser l’algorithme AES avec des clés de 128
bits pour garantir l’intégrité et l’authentification des messages. ZigBee a été largement
déployé dans différents domaines comme les IIoT (« Industrial IoT ») et l’agriculture.
Mais Zigbee peut aussi permettre aux objets intelligents de collaborer afin d’améliorer
la vie quotidienne. Par exemple, dans le domaine médical, Continua Health Alliance
5 utilise le profil standard ZigBee Health Care pour collecter les données à partir de
différentes positions (les résidences privées, les centres de loisirs, les maisons de retraite,
les hôpitaux, etc.) en raison de son interopérabilité, de sa faible consommation d’énergie
mais aussi de sa fiabilité et de sa sécurité.
• Bluetooth Low Energy BLE : Bluetooth Low Energy est un protocole de communication
sans fil développé par le Bluetooth SIG ("Special Interest Group") comme évolution éner-
gétiquement efficace du Bluetooth classique. Spécialement conçu pour les appareils à très
faible consommation, BLE repose sur la norme IEEE 802.15.1 et opère dans la bande de
fréquence 2.4 GHz. Il a pour but de fournir les mêmes fonctionnalités que le Bluetooth
classique avec un coût et une consommation d’énergie réduits. Il est ainsi implémenté
dans les objets à faible ressource énergétique, et de fait est utilisé pour de multiples ap-
plications dans différents domaines tels que la santé. Dans la version 4.1, BLE a introduit
l’utilisation de l’algorithme de chiffrement AES (« Advanced Encryption Standard »)
avec compteur (CTR, « CounTeR mode ») en mode CBC-MAC (AES-CCM) pour la
11
première fois dans une spécification Bluetooth, afin de fournir à la fois l’authentification
et la confidentialité des données transmises.
• LoRaWan :
LoRaWan (« Long Range Wide-area network ») est un protocole de communication par
radio à bas débit et à longue portée. LoRaWan permet à des dispositifs intelligents à
faibles ressources de communiquer entre eux en utilisant la technologie LoRa, voire
d’être connectés à Internet via des passerelles. L’architecture de base d’un réseau Lo-
RaWan repose sur une topologie en étoile, dans laquelle les passerelles transmettent les
messages entre les dispositifs et un serveur central souvent connecté à Internet .
Les passerelles sont connectées au serveur du réseau via des connexions standard IP, tan-
dis que les dispositifs sont reliés à une ou plusieurs passerelles via les fréquences radio
LoRa et une communication directe (« one hop »). Les communications sur ce réseau
sont généralement bidirectionnelles, sachant que la communication à partir des disposi-
tifs vers le serveur du réseau constitue généralement l’essentiel du trafic. Les dispositifs
communiquent avec les passerelles en utilisant les différents canaux de fréquences et les
débits de données disponibles. Pour maximiser la durée de vie des batteries des dispo-
sitifs et la capacité globale du réseau, l’infrastructure réseau LoRa utilise un schéma de
débit de données adaptatif, ADR (« Adaptive Data Rate »).
Dans le domaine de la santé, les dispositifs utilisant LoRaWAN peuvent être utilisés
pour surveiller la pression artérielle et le taux de glucose des patients à l’hôpital ou à leur
domicile, pour surveiller les personnes âgées à domicile afin de détecter des chutes ou
des pertes de connaissance .
12
• Google Cloud IoT :
La solution Google Cloud IoT permet de connecter de manière sécurisée les disposi-
tifs IoT à la plateforme cloud de Google. Elle s’appuie notamment sur Cloud IoT Core,
qui permet l’ingestion des données, lesquelles peuvent ensuite être traitées à l’aide de
services comme Pub/Sub, Dataflow ou encore BigQuery pour l’analyse en temps réel.
Google Cloud propose également l’intégration directe avec TensorFlow et AutoML, per-
mettant de déployer des modèles d’intelligence artificielle pour effectuer de la prédiction
ou de la détection d’anomalies. Elle supporte les protocoles MQTT et HTTP sur une
infrastructure hautement scalable et sécurisée.
• Microsoft Azure IoT Hub :
Azure IoT Hub sert de plateforme centralisée pour l’orchestration des périphériques IoT
dans l’environnement Azure. Elle permet des échanges protégés entre les objets et le
cloud via des protocoles tels que MQTT, AMQP et HTTPS. Azure IoT Hub propose éga-
lement des fonctionnalités puissantes comme le provisioning automatique des appareils
(DPS), la surveillance à distance, les jumeaux numériques (Digital Twins) et l’intégra-
tion parfaite avec l’ensemble des services Azure d’analyse de données, de stockage cloud,
ainsi que les plateformes d’IA et de machine learning de la plateforme Azure. Elle prend
en charge des architectures hybrides combinant edge computing et cloud, via Azure IoT
Edge.
• IBM Watson IoT :
IBM Watson IoT Platform se distingue par sa capacité à combiner les flux IoT avec les
fonctionnalités avancées d’intelligence artificielle de la suite Watson.Elle intègre des mo-
dules d’analyse prédictive, maintenance préventive et visualisation temps réel. Grace à
la puissance cognitive de Watson IBM, les entreprises peuvent automatiser la détection
d’anomalies, générer des alertes intelligentes et améliorer la prise de décision. La pla-
teforme assure également la sécurité des dispositifs et des données, avec des options de
chiffrement, d’authentification, et de gestion des accès.
13
industrielle, ou les systèmes de détection de panne. Les nœuds edge peuvent exécuter des
modèles d’intelligence artificielle allégés (TinyML) ou réaliser un premier traitement des
données avant leur transmission vers le cloud.
• Cloud Computing :
Le cloud computing repose sur l’exploitation d’infrastructures virtualisées hébergées
dans des data centers géographiquement distribués, permettant le stockage massif, le trai-
tement distribué et l’analyse avancée des données issues des réseaux IoT. Cette approche
offre des ressources quasi illimitées de calcul et de stockage, permettant l’exécution de
modèles complexes de machine learning ou de traitement de flux massifs. Cependant, elle
implique une dépendance à une connexion réseau fiable, ce qui peut poser problème dans
les environnements à connectivité instable. Elle est idéale pour l’analyse de tendances à
long terme, le stockage massif, et les tableaux de bord analytiques.
• Fog Computing :
Le fog computing constitue une couche intermédiaire entre le cloud et l’edge. Introduit
par Cisco, ce paradigme vise à rapprocher certaines fonctions de traitement du cloud
vers des passerelles locales ou des serveurs en périphérie du réseau. Il permet de tirer
profit des avantages des deux approches précédentes : traitement local pour les tâches
critiques et agrégation ou archivage dans le cloud pour les traitements globaux. Le fog
est utilisé dans des contextes où un équilibre est nécessaire entre traitement en temps réel
et vue d’ensemble, comme dans les villes intelligentes, les réseaux électriques intelligents
(smart grids), ou les systèmes de transport intelligents.
• Scan de ports sur des caméras de surveillance connectées pour identifier les services
mal configurés ou vulnérables.
14
• Exploration d’un réseau domotique pour cartographier les appareils intelligents (ex :
détecteurs de mouvement, thermostats, assistants vocaux).
2. Techniques courantes :
• utilisation d’outils comme Nmap pour détecter les ports ouverts sur les dispositifs IoT.
• Port scanning : utilisation d’outils comme Nmap pour détecter les ports ouverts sur
les dispositifs
• Network mapping : usage de commandes telles que traceroute pour cartographier
l’architecture réseau.
• Fingerprinting : identification précise des systèmes d’exploitation et des versions de
logiciels en service.
3. Impact :
2. Techniques courantes :
15
3. Impact :
2. Techniques courantes :
16
3. Impact :
17
Avec le temps, l’attaque DoS a évolué vers une attaque par déni de service distribué
(DDoS) où l’attaquant compromet d’autres machines vulnérables sur l’Internet pour co-
ordonner l’attaque à un moment donné sur la machine victime, multipliant ainsi l’effet
du déni de service .
• Définition :
Le déni de service distribué DDoS est une attaque coordonnée à grande échelle
contre la isponibilité des services d’un système victime ou des ressources d’un ré-
seau, lancé indirectement par l’intermédiaire de nombreux ordinateurs compromis
appelés «zombies» sur l’internet. En utilisant la technologie client/serveur, l’atta-
quant est en mesure de multiplier l’efficacité de l’attaque, de manière significative,
en utilisant les ressources de nombreux zombies accomplis à leur insu, qui servent
de plateformes d’attaque (voir la figure 1.5). Les zombies effectuent l’attaque pro-
prement dite en augmentant considérablement le trafic vers une machine victime.
En conséquence, la machine victime perd toutes ses ressources de calcul et de com-
munication .
18
- CPU : Les attaques basées sur la couche d’application visent les serveurs web.
Elles rendent le service indisponible pour les utilisateurs légitimes en épuisant
la puissance de traitement de l’unité centrale ou du serveur, et le serveur tombe
en panne.
• Déni de service par amplification /réflexion :
- DDoS par amplification :
Les attaques par amplification génèrent un volume important de paquets qui
sont utilisés pour submerger le site web cible sans alerter l’intermédiaire. Cela
se produit lorsqu’un service vulnérable répond par une réponse volumineuse
quand l’attaquant envoie sa requête, souvent appelée paquet de déclenchement.
À l’aide d’outils facilement disponibles, l’attaquant peut envoyer plusieurs mil-
liers de requêtes aux services vulnérables, provoquant ainsi des réponses consi-
dérablement plus volumineuses que la requête initiale et amplifiant de manière
significative la taille et la bande passante délivrées à la cible. L’amplification
peut se traduire par l’envoi de plusieurs paquets de réponse pour un seul paquet,
ou par des paquets plus volumineux que l’original. L’une ou l’autre méthode
entraîne une amplification .
- DDoS par réflexion :
Une autre méthode appliquée par les attaquants DDoS est la méthode de ré-
flexion, qui consiste à utiliser des serveurs non compromis pour acheminer le
trafic vers la victime et l’aider à consommer sa bande passante. Cette méthode
permet à l’attaquant d’envoyer indirectement du trafic à la victime et de ne pas
être détecté (voir la figure 1.6). Dans cette méthode, tous les paquets d’attaque
envoyés par l’attaquant, contiennent l’adresse IP de la victime dans le champ
de l’adresse source des paquets IP. Lorsque le serveur reçoit ces demandes de
service, il envoie sa réponse au nœud victime, et non au nœud source réel du
paquet .
19
• Architecture des attaques DDoS :
Comme le montre la figure 1.7, une attaque DDoS se compose de quatre éléments :
- L’attaquant.
- Les maîtres de contrôle (ou gestionnaires).
- Les agents (ou zombies)
- La victime
L’attaquant commence par analyser des millions de machines sur l’internet pour
trouver des machines vulnérables dont la sécurité peut être facilement exploitée.
Ces machines sont appelées "maîtres" ou "handlers", car elles sont directement sous
le contrôle de l’attaquant. Le processus de recrutement des "handlers" est entière-
ment automatisé et s’effectue par un balayage continu des machines distantes à
la recherche d’éventuelles failles de sécurité. L’attaquant installe des codes mal-
veillants dans ces machines infectées qui deviennent alors capables de déployer
d’autres machines infectées . Les machines déployées par les gestionnaires sont di-
rectement sous leur contrôle et sont connues sous le nom d’esclaves ou de zombies.
L’attaquant contrôle indirectement ces machines par l’intermédiaire des gestion-
naires. Sur le signal de l’attaquant, ces handlers et zombies sont utilisés pour lancer
une attaque coordonnée sur la machine cible. Cette attaque rend la machine cible
incapable de communiquer ou d’utiliser ses ressources. L’attaquant utilise souvent
l’usurpation d’adresse IP dans les gestionnaires et les zombies pour masquer l’iden-
tité de ces machines. Cela permet à l’attaquant d’utiliser les mêmes machines pour
créer une attaque DDoS .
20
par un paquet SYN-ACK, puis le client envoie un paquet ACK au serveur avant
qu’une connexion ne soit établie comme le montre la figure 1.8.
Dans une attaque par inondation SYN, l’attaquant envoie plusieurs demandes
SYN à chaque port du serveur ciblé, en utilisant souvent des adresses IP usur-
pées. Le serveur, qui n’est pas au courant de l’attaque, reçoit de multiples de-
mandes, apparemment légitimes, pour établir la communication. Il répond à
chacune d’entre elles par un paquet SYN-ACK provenant de chaque port ou-
vert. Avant que la connexion ne se termine, un autre paquet SYN arrive. Cela
laisse un nombre de plus en plus important de connexions semi-ouvertes .Ce
flot de paquets TCP SYN consomme la bande passante du serveur et rend les
ressources du réseau indisponibles pour l’utilisateur légitime [20]. Enfin, le ser-
veur peut même présenter des dysfonctionnements ou se bloquer (voir la figure
1.9).
- Réflexion DNS :
Le DNS (serveur de noms de domaine) est un élément essentiel des infrastruc-
tures de réseau et est responsable de la traduction des noms de domaine en
21
adresses IP. Les attaques DNS DDoS, en particulier celles basées sur la ré-
flexion, constituent une menace importante pour le service de noms de domaine
et la sécurité du réseau. La figure 1.10 illustre le fonctionnement des attaques
par réflexion DNS. Lors d’une attaque par réflexion DNS, l’attaquant envoie
un grand nombre de requêtes DNS aux serveurs DNS avec l’adresse IP source
des paquets de requêtes usurpée en tant que celle de la victime. Ces requêtes
DNS demandent des réponses à forte charge, telles que "Donnez-moi tous vos
enregistrements DNS" ou "Donnez-moi les adresses IP de plusieurs noms de
domaine". Ces réponses submergent la victime et épuisent ses ressources .
- Inondation UDP :
Ce type d’attaque DDoS utilise le protocole UDP qui est un protocole de réseau
sans connexion et sans session. Il n’est pas lié à une poignée de main à trois
comme le TCP et il fonctionne avec un sur débit réduit, de sorte qu’il peut être
purgé avec des ressources mineures. Dans ce cas, l’attaquant inonde les ports
arbitraires de l’hôte ciblé de paquets IP contenant le datagramme UDP. Les
hôtes récepteurs examinent les applications avec ces datagrammes, lorsqu’au-
cune application corrélée n’est à l’écoute, ils répondent par un paquet ICMP
de destination inaccessible. Certaines attaques par inondation UDP peuvent
prendre la forme d’attaques par amplification DNS. L’UDP amplifié et non
amplifié peut émaner de groupes de botnets de différentes tailles (voir la figure
1.11). Il existe un certain nombre de logiciels accessibles dans le commerce
qui permettent d’effectuer une attaque par inondation UDP (par exemple, UDP
Unicorn) .
22
F IGURE 1.11 – Inondation UDP.
- Inondation ICMP :
Attaque par inondation ICMP (appelé aussi attaque par inondation Ping : Le
protocole ICMP (Internet Control Message Protocol) est un autre protocole
sans connexion utilisé pour les opérations IP, les diagnostics et les erreurs [13].
L’inondation ICMP échappe aux erreurs de configuration des appareils de ré-
seau. L’attaquant envoie au serveur un très grand nombre de paquets ICMP
avec une fausse adresse de retour, de sorte que le serveur n’a pas le temps de
répondre à d’autres serveurs (voir la figure 1.12). Il n’échange pas les données
entre les systèmes. La largeur de bande du réseau est réduite, ce qui fait que les
paquets légitimes sont rejetés par les serveurs. Dans ce cas, l’attaquant lance
un programme contrôleur (cheval de Troie) sur l’ordinateur maître, qui entraîne
ensuite l’ordinateur esclave à propager l’attaque sur la victime .
- Attaque HTTP :
Cette attaque nécessite une meilleure compréhension de l’activité de la victime.
L’utilisation de l’attaque HTTP ne nécessite pas un trafic énorme pour affecter
la victime, et elle est difficile à identifier, car le trafic de l’attaque est similaire
au trafic normal (voir la figure 1.13).
23
F IGURE 1.13 – Attaque HTTP.
• Après avoir présenté le principe général des attaques DDoS, il est essentiel de
comprendre pourquoi ces attaques représentent une menace particulièrement
sérieuse dans le contexte des environnements IoT.
En effet,Avec le nombre croissant d’appareils IoT, la possibilité de devenir victime
d’une attaque DDoS augmente. Ces attaques fonctionnent sur la base d’infections
de logiciels malveillants qui sont transmises sur le réseau en compromettant diffé-
rents appareils IoT. L’intensité d’une telle attaque dépend directement du nombre
d’appareils IoT infectés que l’attaquant aura utilisés pour déclencher l’attaque. Au
sein de la communauté des hackers, ces appareils IoT compromis sont connus sous
le nom de « bots ». La conversion d’un appareil IoT normal en un bot s’effectue par
l’installation d’un logiciel malveillant (programmes malveillants) sur l’appareil vic-
time, en envahissant son système de sécurité sans que l’utilisateur s’en aperçoive.
En outre, le serveur qui contrôle ces bots est appelé "Master Bot Controller".
Le mode de communication utilisé par les Master bots pour contrôler leurs ma-
chines infectées peut être basé sur l’IRC (Internet Relay Chat), sur le Peer-To Peer
et sur le HTTP. Les botnets basés sur IRC ont une architecture client-serveur avec
des canaux de communication par défaut, tandis que les botnets basés sur HTTP
utilisent le protocole HTTP qui fonctionne au niveau des bits des données com-
muniquées, ce qui les rend plus difficiles à suivre et à détecter. De plus, avec la
répétition d’une telle infection, des millions de bots sont créés sous le Master Bot
et forment un réseau connu sous le nom de "Botnet" .
Plusieurs études approfondies ont été menées pour caractériser les botnets IoT. La
plupart de ces études se concentrent sur Mirai ou Bashlite, car la majorité des logi-
ciels malveillants IoT s’en inspire fortement et présente un comportement similaire.
Le botnet Mirai est constitué de quatre types de composants : les bots, le serveur de
commande et de contrôle (CC), le chargeur et le serveur de rapports.
- Un bot est un appareil compromis qui attend de recevoir des commandes du bot-
master (l’attaquant contrôlant le botnet), afin de rechercher des appareils vul-
nérables ou de lancer des attaques DDoS contre des cibles désignées.
24
F IGURE 1.14 – Stratégie du Botnet.
25
d’attaque via le CC aux bots désignés, en précisant le serveur ciblé et le type
d’attaque à effectuer. Mirai peut lancer divers types d’attaques, notamment
UDP flood, SYN flood, Scan flood, ACK flood ou GRE IP flood. À la réception
de la commande d’attaque, les robots sélectionnés commenceront à lancer l’at-
taque spécifiée contre la cible désignée. Mirai a été principalement impliqué
dans des attaques DDoS à grande échelle, comme celle qui a eu lieu en octobre
2016 contre les serveurs de Dyn, un grand fournisseur DNS, et a détruit de
grandes parties d’Internet .
Mirai a infecté plus de 600000 appareils dans le monde. Les pays les plus touchés
étaient le Brésil, le Vietnam, la Chine et la Colombie. Depuis Mirai, les malwares
IoT ont considérablement évolué et deviennent de plus en plus sophistiqués. Ci-
dessous, nous énumérons quelques autres botnets IoT notables qui fonctionnent de
manière différente que Mirai :
Wirex récemment, plusieurs réseaux de diffusion de contenu (CDN) et fournis-
seurs de contenu ont été ciblés pour devenir les victimes d’une attaque DDoS qui
a été exécutée à l’aide d’un botnet appelé Dubbed Wirex. Celui-ci se compose de
milliers d’appareils Android exécutant des applications qui semblent légitimes mais
qui sont en réalité des logiciels malveillants. Akamai, Cloudflare, Google, Oracle
et d’autres organisations ont coopéré pour combattre ce botnet. Google a déjà sup-
primé centaines applications parmi les logiciels malveillants provenant d’un certain
nombre d’appareils et qui se trouvaient sur le Play Store .
Reaper étant donné que Mirai n’a pu exploiter que des appareils avec des
informations d’identi- fication par défaut, juste pour augmenter l’accessibilité, Rea-
per Botnet est capable d’exploiter d’autres vulnérabilités présentes dans l’IoT dis-
positifs . Plusieurs routeurs bien connus de Cisco Linksys, Netgear, D-link et les
caméras de surveillance connectées à internet ont été victimes de ce botnet.
Torii il s’agit là d’un autre malware qui a récemment été repéré par Dr. Bont-
chev sur son honeypot via des nœuds de sortie « Tor » (d’où le nom « Torii ») .
Il cible la plupart des ordinateurs modernes, des smartphones et des tablettes avec
des architectures telles que x86 (64 bits), x86, ARM, MIPS, etc. Il cherche égale-
ment, d’abord, un port telnet pour percer les informations d’identification faibles,
mais il est beaucoup plus sophistiqué que les autres IoT malware en raison de sa
capacité à télécharger les charges utiles pour infecter d’autres ordinateurs ayant des
architectures communes.
Hajime de manière similaire à Mirai, il infecte les appareils dont le port Telnet
est ouvert. Mais au lieu de s’appuyer sur une architecture centralisée, il est construit
sur un réseau P2P. Les bots agissent à la fois comme un serveur de commandes et
comme un client qui reçoit des commandes. Contrairement aux botnets centralisés,
les botnets P2P sont plus résilients car ils évitent tout point de défaillance unique. Il
utilise le protocole DHT de BitTorrent pour la découverte des pairs, et le protocole
26
uTorrent Transport (uTP) pour l’échange de données. Les messages sont chiffrés et
signés à l’aide d’un schéma cryptographique RC4. Hajime n’a jamais été impliqué
dans une attaque jusqu’à présent .
HideNSeek (2018) c’est un malware IoT qui utilise un protocole P2P pour
les communications, et qui s’appuie à la fois sur l’exploitation des vulnérabilités
IoT connues et sur le forçage brutal des identifiants pour infecter les appareils.
Les nouvelles versions de HideNSeek atteignent la persistance (ils sont capables de
survivre à un redémarrage de l’appareil).
BrickerBot cible les appareils IoT basés sur Linux/BusyBox, et réalise des
attaques par déni de service permanent (PDoS) contre eux. Il n’essaie pas de té-
lécharger un binaire pour infecter un appareil, il exécute plutôt un ensemble de
commandes pour rendre l’appareil inutilisable. Il se sert de diverses méthodes telles
que la modification du firmware d’un appareil, l’effacement de tous les fichiers de
sa mémoire ou la reconfiguration de ses paramètres réseau.
En raison de leur nature vulnérable, les appareils IoT sont des cibles privilégiées
pour les développeurs de botnets. Les botnets IoT évoluent rapidement et deviennent
de plus en plus sophistiqués. Ils sont principalement utilisés pour effectuer des at-
taques DDoS à grande échelle. Or, avec de plus en plus d’appareils intelligents
capables de se connecter à Internet, d’autres types de menaces émergent, comme
les attaques MadIoT contre les réseaux électriques. Un certain nombre de solutions
a été proposé pour sécuriser les écosystèmes IoT, solutions qui sont décrites dans la
section suivante.
27
— Honeypots IoT : Le déploiement de honeypots dédiés aux objets connectés permet de
piéger les attaquants et de détecter leur présence. Ces systèmes factices simulent des
cibles vulnérables pour attirer les intrusions et ainsi alerter les administrateurs de sécurité.
28
1.5.4 Contre-mesures contre les attaques DDos :
Plusieurs stratégies de défense ont été développées pour protéger les infrastructures réseau.
Ces mécanismes s’articulent autour de quatre approches principales :
— Filtrage de trafic anormal : Les solutions pare-feu nouvelle génération et les systèmes
anti-DDoS spécialisés analysent en temps réel les paquets réseau pour identifier et blo-
quer les flux malveillants. Ces dispositifs s’appuient souvent sur des signatures d’attaques
connues et des algorithmes de détection d’anomalies.
— Limitation du taux de connexion (Rate Limiting) : Cette technique simple mais ef-
ficace consiste à restreindre le nombre de requêtes autorisées par seconde depuis une
même source. Elle permet de contenir les attaques par inondation tout en maintenant la
disponibilité du service pour les utilisateurs légitimes.
— Redondance et scalabilité réseau : L’architecture des systèmes critiques intègre désor-
mais :
-Des serveurs miroirs pour assurer la continuité de service
-Des solutions d’équilibrage de charge répartissant intelligemment le trafic
-Une élasticité cloud permettant d’absorber les pics de charge anormaux
— Centres de nettoyage (Scrubbing Centers) : : Lors d’une attaque massive, le trafic est
redirigé vers des plateformes spécialisées qui filtrent les paquets malveillants avant de
réinjecter le trafic légitime vers l’infrastructure cible.
29
réseaux neuronaux convolutifs (CNN) et les réseaux de neurones récurrents de type Long Short-
Term Memory (LSTM).
1.6.1 Motivation :
Les méthodes traditionnelles de détection d’attaques reposent principalement sur des si-
gnatures ou des règles prédéfinies, limitant leur capacité à identifier des attaques inconnues
ou sophistiquées. L’approche basée sur le Deep Learning, et plus précisément sur l’architec-
ture CNN-LSTM, permet de surmonter ces limitations grâce à une extraction automatique des
caractéristiques pertinentes et à une modélisation efficace des séquences temporelles du trafic
réseau.
30
1.6.4 Objectif visé :
L’objectif de notre approche est de concevoir un système de détection intelligent, capable
d’analyser en temps réel le trafic réseau IoT, d’identifier les attaques DDoS avec un haut niveau
de précision, et de s’adapter à l’évolution constante des menaces cybernétiques.
31
Chapitre 2
32
2.1 Introduction
Les attaques DDoS posent un vrai problème de sécurité, surtout avec le développement mas-
sif des objets connectés. Les solutions classiques ne suffisent plus à détecter ce genre d’attaques
qui deviennent de plus en plus difficiles à repérer. C’est pour ça que de nouvelles approches
sont apparues, comme le Deep Learning, qui peut aider à identifier les anomalies dans le trafic
réseau avant qu’il ne soit trop tard.
Dans ce chapitre, on va d’abord voir les différents types d’algorithmes qu’on utilise dans
le domaine de l’apprentissage automatique, puis ceux qu’on retrouve dans l’apprentissage pro-
fond. Ensuite, on s’intéressera plus précisément à trois modèles qui sont souvent utilisés pour
détecter les attaques DDoS : CNN, LSTM et une version hybride qui combine les deux. On
terminera en présentant quelques jeux de données connus dans ce domaine, qui sont essentiels
pour tester et entraîner ces modèles.
33
« Étant donné une tâche T et une mesure de performance P, on dit qu’un programme in-
formatique apprend à partir d’une expérience E si les résultats obtenus sur T, mesurés par P,
s’améliorent avec l’expérience E». Tom Mitchell, 1997 (voir la figure 2.2) .
Pour donner à une machine la capacité d’apprendre, on utilise des méthodes d’apprentis-
sage. Parmi ces méthodes, il existe trois catégories majeures :
34
sibles pour ce problème. L’algorithme peut prédire directement la catégorie ou produire
une distribution de probabilités à chacune des catégories. La classe avec probabilité la
plus haute est la classe sélectionnée . Par exemple, on peut prédire si un massage spam
ou pas en fonction du nombre de lien, du nombre de fautes d’orthographe, etc.).
On peut distinguer deux types de classification : la classification binaire, qui consiste à
séparer les données en deux classes distinctes, et la classification multi classe, qui permet
de classifier les données en plusieurs classes (voir la figure 2.4).
• Régression :
Dans ce type, on utilise des variables continues c’est-à-dire des variables qui peuvent
prendre une infinité de valeurs (voir la figure 2.5). L’algorithme fournit une valeur numé-
rique en sortie au lieu de prédire une étiquette. Il est aussi possible de prédire plusieurs
valeurs numériques en sortie . Le but de la régression est d’estimer une valeur de sortie
à partir des valeurs d’un ensemble des observations. Par exemple, on peut prédire le prix
d’un appartement en fonction de sa surface, sa localisation, sa qualité, ...)
35
2.2.3 Apprentissage non supervisé :
Ce type d’apprentissage doit être utilisé lorsque la catégorie de données acquises n’est pas
connue à l’avance c’est-à-dire il n’y’a pas de résultat prédéterminé (on fournit à la machine un
ensemble de données qui ne sont pas été étiqueté) . L’objectif est de regrouper avec succès les
observations disponibles dans leurs propres classes par lui- même pour des catégories d’objets
basées sur des mesures de similarité entre les objets (voir la figure 2.6).
36
F IGURE 2.7 – Apprentissage par renforcement.
37
L’apprentissage du DNN c’est l’optimisation des paramètres de poids et le paramètre de
biais entre deux couches voisines, Il évalue la justesse du modèle et permet de mieux l’adapter
aux données d’apprentissage ses besoins. Lorsque le modèle arrive à une précision maximale
avec des paramètres optimaux, il sera généralisé pour les données réelles. La quantité et la
qualité des données d’entraînement déterminent le degré d’apprentissage et donc la précision
des modèles obtenus.
38
Ce type de réseau applique une collection de filtres pour extraire automatiquement
les caractéristiques de l’image, créant finalement une structure hiérarchique de ca-
ractéristiques (apprentissage des représentations). Les poids des filtres sont appris
directement à partir des données d’entraînement. Normalement, un CNN intègre de
nombreuses couches convolutives créant une structure profonde. Un CNN effec-
tue automatiquement l’ingénierie des fonctionnalités, évitant ainsi l’étape longue et
fastidieuse consistant à effectuer manuellement l’ingénierie des fonctionnalités.
- Réseaux neuronaux récurrents (RNN) :
RNN a été initialement appliqué au traitement du langage naturel, mais comme
CNN, il est actuellement incorporé à d’autres domaines. La principale applica-
tion de RNN concerne les données séquentielles avec dépendances temporelles.
Un RNN est capable de traiter de nouvelles données basées sur des données pré-
cédentes. Un problème important de RNN a été sa difficulté à être formé avec des
données dépendant du temps à long terme (séries chronologiques longues). Afin de
résoudre ce problème, une série de variantes RNN ont été créées.
39
à l’aide d’une série de RBM, souvent d’auto-encodeurs, avec une couche supplé-
mentaire formant un réseau bayésien. L’utilisation de RBM signifie la présence
d’aucune connexion intra-couche. De plus, les performances d’un DBN dépendent
en grande partie de l’initialisation des nœuds. Par conséquent, les couches utilisent
un apprentissage préalable non supervisé à l’aide de la procédure d’empilement
de RBM, qui intègre une divergence contraste (CD). Un réseau de croyance (BN)
est un graphe acyclique dirigé constitué de couches d’unités binaires stochastiques,
chaque couche connectée ayant une pondération. Ces unités binaires stochastiques
ont l’état 0 ou 1 et la probabilité d’être activé (devenant 1) est déterminée par un
biais et une entrée pondérée provenant d’autres unités.
• Deep learning hybrides :
une combinaison hybride de ces modèles mentionnés ci-dessus. Les réseaux profonds
non supervisés pourraient fournir une excellente initialisation sur la base pour laquelle la
discrimination (l’apprentissage supervisé) pourrait être examinée.
40
Convolution Layers :
L’objectif de la convolution est d’extraire les caractéristiques de haut niveau. Il est consti-
tué d’un ensemble de filtres (ou noyaux) apprenants, chacun représente une certaine fonc-
tionnalité indépendante avec le volume d’entrée. Ces filtres sont constitué d’une couche
de poids de connexion, ils ont un petit champ de réception (la taille du noyau), mais lors
de la passe en avant (feed forward), chaque filtre est convolé sur la largeur et la hauteur
du volume d’entrée, calculant le produit des points entre les entrées et les valeurs du filtre
produisant une nouvelle carte de caractéristiques qui représente mieux l’information. En
conséquence, le réseau apprend les filtres qui s’activent lorsqu’il détecte un type de ca-
ractéristique importante et spécifique à une certaine position spatiale dans l’entrée. La
figure 2.10 présente une opération de convolution 1D avec une entré de dimension 1.
Une couche convolutionnelle partage le même noyau de convolution, ce qui réduit consi-
dérablement le nombre de paramètres nécessaires pour l’opération de convolution. Une
fonction d’activation non linéaire sera appliqué immédiatement après chaque couche
convolutionnelle. Les CNN profonds avec la fonction d’activation “Rectified Linear Units
ReLU”
f (x) = max(0, x)
, renvoie x pour toutes les valeurs de x > 0 et renvoie 0 pour toutes les valeurs de x <= 0.
s’entraînent plusieurs fois plus vite que leurs équivalents avec unités “Tanh Units” .
Pooling Layers :
Après la transformation ReLU, l’opération de mise en commun (Pooling) regroupe l’ac-
tivation des neurones d’une couche en un seul neurone de la couche suivante. La couche
de pooling fonctionne indépendamment sur chaque entité d’entrée, elle permet de réduire
progressivement la taille des représentations afin de réduire le nombre de paramètres ou
de poids, ce qui diminue le coût de calcul dans le réseau, tout en préservant les informa-
tions les plus critiques. Elle permet aussi de contrôler le sur-apprentissage.
Il peut utiliser deux méthodes de mise en commun différentes :
• La mise en commun maximale (Max-Pooling) : utilise la valeur maximale de chaque
groupe de neurones de la couche précédente.
41
• La mise en commun moyenne (Average-Pooling) : utilise la valeur moyenne de chaque
groupe de neurones de la couche précédente .
Le Pooling est une forme de sous-échantillonnage non linéaire fonctionne de manière
similaire à la convolution. le noyau de pooling se convolé sur le volume d’entrée et le
diviser en un ensemble de région qui ne se chevauchent pas, et chaque sous-région produit
une seule valeur en sortie qui est la valeur maximale pour Max-Pooling ou la valeur
moyenne pour Average-Pooling la figure 2.11 décrit lopération de Max-Pooling avec un
entré 1D . la couche de Pooling n’a aucun paramètre pouvant être appris. De ce fait, ces
couches ne sont généralement pas incluses dans le nombre total de couches de réseaux
de convolution.
42
raisonne en s’appuyant sur les connaissances qu’il a acquises et qui qu’il a mémorisé
précédemment.
Les réseaux RNNs sont des réseaux de type Feed-Forward ayant un état interne (ou mé-
moire) qui prennent en compte tout ou partie des données vues précédemment (déjà four-
nies au réseau), en plus de la donnée vue actuellement pour adapter leur décision. L’idée
clé de base de ces réseaux est le déploiement d’un calcul récurrent grâce aux boucles
dans l’architecture du réseau. La sortie de réseau est une combinaison de son état in-
terne (mémoire d’entrées) et le dernier l’entrée, au même temps, l’état interne change
pour intégrer cette nouvelle donnée saisie. cela permet aux informations de persister en
mémoire, comme le montre la figure 2.12.
En raison de ces propriétés, les réseaux récurrents sont adaptés aux cas où la présence
d’une forme n’est pas la seule information discriminante mais également un ordre d’ap-
parition par exemple. ils sont de bons candidats pour les tâches qui traitent des don-
nées séquentielles, telles que les données textuelles ou des données avec des caractéris-
tiques temporelles. La description mathématique du processus de transfert de mémoire
est comme suit :
ht = δ (Uxt +V ht−1 + bh )
Ot = δ (W ht + by )
ou :
— ht :est l’état caché au temps t.
— xt : est l’entrée au même temps t.
— U, V , W : sont les matrice de pondération, Input-to-Hidden, Hidden-to-Hidden et
Hidden-to-Output respectivement (connue comme des matrice de transition).
— bh : est la valeur du biais de l’état caché.
— by : est la valeur du biais de sortie.
— Ot : est la valeur de sortie au temps t.
— δ : est une fonction de non-linéarité appelées fonctions d’activation. (soit une fonc-
tion sigmoïde logistique ou tanh) qui est un outil standard de changement d’échelle
pour condenser des valeurs très grandes ou très petites dans un espace logistique,
ainsi que pour rendre les gradients exploitables pour la rétro-propagation.
Un bloc de réseau neuronal, examine une entrée xt et génère une valeur ot . Une boucle
de rétroaction se produit à chaque pas de temps, chaque état caché ht contient des traces
43
non seulement de l’état masqué précédent, mais également de tous ceux qui ont précédé
ht−1 aussi longtemps que la mémoire peut persister.
Unités de mémoire à court terme (LSTM) :
Le réseau RNN a un long pas de temps car il prend en compte l’état sauvegardé précédent
lors de la mise à jour du poids, les gradients lorsque l’entraînement devient de plus en plus
petit et après quelques étapes, les erreurs n’ont pas pu être propagées à la fin du réseau. il
n’y aura pas de différence significative dans le résultat, donc il ne peut pas faire de mise
à jour des poids. Ce problème du RNN est appelé gradients de disparition (Vanishing
Gradients). Pour surmonter ce problème, une architecture à mémoire longue et courte
durée (LSTM) a été proposée au milieu des années 90 par les chercheurs allemands
Sepp Hochreiter et Juergen Schmidhuber pour les réseaux neuronaux récurrents et aussi
des étapes supplémentaires appelées Gated Recurrent Units (GRU). Ces étapes sont été
utilisées pour améliorer les performances et la précision des RNNs.
L’idée clé de la méthode LSTM est l’état de la cellule. Elle a la capacité de supprimer
ou d’ajouter des informations à l’état de la cellule. Cette technique est réglée par des
structures appelées portes (Gates). Ces derniers pourraient être une fonction sigmoïde où
une valeur de 1 signifie que toutes les informations passent et une valeur de 0 signifie le
contraire.
Les architectures LSTM et GRU se fonctionnent de la même manière. Cependant le GRU
utilise moins de paramètres d’entraînement et donc moins de mémoires et s’entraînent
plus rapidement que les LSTM. Alors que le LSTM est plus précis sur les ensembles de
données utilisant une séquence plus longue.
Les cellules LSTM sont les plus efficaces pour retenir les informations utiles lors de la
rétro-propagation du gradient. Ce qui a leur permet de corriger les différences entre les
prédictions sortantes et les catégories de référence en calculant le gradient de l’erreur
pour chaque neurone, en allant de la dernière couche vers la première. La figure 2.13
illustre les quatre couches interactives (sigmoïde et tanh), les trois portes et les opérations
Pointwise qui traitent le vecteur x à l’intérieur d’une cellule LSTM à un temps t.
44
2.4.3 La solution hybride CNN-LSTM :
Les réseaux hybrides CNN-LSTM combinent les avantages des réseaux convolutionnels
(CNN), qui sont performants pour extraire des caractéristiques spatiales, avec ceux des réseaux
à mémoire longue courte durée (LSTM), spécialisés dans la modélisation des dépendances
temporelles. Cette architecture est particulièrement efficace pour traiter des données séquen-
tielles contenant des motifs locaux significatifs, comme le trafic réseau dans le contexte de la
cybersécurité.
Dans cette architecture, les couches CNN sont utilisées pour effectuer une extraction au-
tomatique des caractéristiques locales à partir de l’entrée, en réduisant la dimensionnalité des
données et en retenant uniquement les motifs pertinents. Les couches LSTM, situées en aval,
prennent ensuite ces caractéristiques pour modéliser les relations temporelles ou séquentielles
dans les données extraites.
Ce modèle hybride est bien adapté aux applications de détection d’attaques réseau comme
les attaques DDoS, où les modèles doivent à la fois reconnaître des schémas complexes à court
terme (via les CNN) et capturer des dépendances à long terme dans le trafic (via les LSTM). En
pratique, ce type d’architecture permet d’améliorer la précision de détection, tout en réduisant
le taux de fausses alertes.
Avantages :
- Meilleure extraction de caractéristiques grâce aux CNN.
- Capacité de mémorisation des dépendances temporelles via les LSTM.
- Robuste aux variations de séquences de données.
- Adapté aux données multivariées complexes, comme celles issues de capteurs IoT ou des flux
de réseau.
Schéma général de l’architecture :
- Données d’entrée séquentielles (flux réseau, séries temporelles, etc.).
- Couches convolutionnelles pour l’extraction locale des caractéristiques.
- Couches LSTM pour modéliser les relations temporelles.
- Couches entièrement connectées pour la classification finale (souvent avec activation Soft-
max ou Sigmoïde).
La figure 2.14 présente une vue schématique de cette architecture combinée CNN-LSTM.
45
2.5 État de l’art des ensembles de données existants pour la
prédiction des attaques DDOS
Pour détecter efficacement les attaques DDoS, nos modèles d’apprentissage profond ont un
besoin crucial : des données d’entraînement de qualité. C’est un peu comme apprendre à re-
connaître des visages - plus les photos sont nettes et variées, meilleure sera la reconnaissance.
Dans notre domaine, cela signifie utiliser des données qui reflètent fidèlement la complexité
des vrais réseaux informatiques. C’est cette exigence qui a poussé la communauté scientifique
à développer plusieurs jeux de données publics soigneusement conçus. Ces ensembles repro-
duisent différentes situations d’attaque, mélangent divers protocoles, et varient les contextes
pour couvrir un large éventail de scénarios. Voyons maintenant les jeux de données qui font
référence dans les dernières publications.
2.5.1 CICDDoS2019
Dans leur quête pour améliorer la recherche sur les attaques DDoS, les experts du Canadian
Institute for Cybersecurity (CIC) ont mis au point le jeu de données CICDDoS2019. Contrai-
rement aux anciens ensembles comme KDD ou NSL-KDD qui présentaient des faiblesses évi-
dentes, cette nouvelle base se distingue par sa richesse et son authenticité. Elle reproduit fidèle-
ment des scénarios d’attaque complexes et variés, bien plus proches de ce qu’on observe dans
la réalité des réseaux actuels.
Caractéristiques :
— Comprend 7 types d’attaques DDoS : HTTP Flood, UDP Flood, TCP SYN Flood, ICMP
Flood, ARP Spoofing, Multivector Attack, etc.
— Les attaques ont été générées avec des outils bien connus tels que LOIC, HOIC et Hping3.
— Données collectées via Wireshark sur un réseau simulé dans un environnement d’entre-
prise.
— Contient plus de 80 caractéristiques (features) extraites via CICFlowMeter.
— Données en format .csv, prêtes pour l’apprentissage automatique.
Avantages :
Limites :
46
— Certaines classes sont déséquilibrées (beaucoup plus de trafic normal ou de certaines
attaques que d’autres).
2.5.2 DDoS-SDN
Le jeu de données DDoS-SDN a été créé pour répondre aux besoins spécifiques liés aux
environnements Software Defined Networking (SDN), qui sont de plus en plus utilisés dans les
infrastructures réseau modernes, notamment dans le cloud.
Caractéristiques :
Avantages :
Limites :
2.5.3 CIC-IoT2023
Le jeu de données CIC-IoT2023 est l’un des plus récents et a été spécialement conçu pour
les environnements IoT (Internet of Things). Il répond à la demande croissante d’ensembles de
données réalistes prenant en compte les vulnérabilités spécifiques des objets connectés.
Caractéristiques :
— Capture de trafic IoT à partir de dispositifs réels (caméras, capteurs, hubs domotiques...).
— Scénarios d’attaques : DDoS, brute force, reconnaissance, infiltration, etc.
— Génération de trafic normal via des interactions réelles entre utilisateurs et objets.
— Données étiquetées, contenant des centaines de milliers de connexions réseau.
47
Avantages :
Limites :
TABLE 2.1 – Collecte de données utilisées pour la détection des attaques DDoS.
48
Deuxième partie
49
Chapitre 3
50
3.1 Matériel et logiciels utilisés pour la mise en œuvre
51