Projet 1 : Développement d’un SIEM Open
Source avec Machine Learning
1. Contexte & Problématique
Les entreprises font face à des menaces de plus en plus sophistiquées. Les solutions SIEM
traditionnelles collectent et analysent des logs, mais elles sont souvent limitées dans la détection
des attaques avancées. L’intégration du Machine Learning permettrait d’améliorer l’efficacité
de la détection en identifiant des comportements suspects automatiquement.
2. Objectifs
Développer un SIEM basé sur des solutions open source (ELK Stack, Wazuh,
Suricata).
Intégrer un module de Machine Learning pour analyser les logs et détecter les
anomalies.
Automatiser la corrélation des événements pour réduire les faux positifs.
Fournir un tableau de bord interactif pour visualiser les alertes et incidents.
3. Périmètre du Projet
Sources de données : Logs systèmes, logs de pare-feu, logs des IDS (Suricata/Snort),
logs Windows/Linux.
Traitement des logs : Filtrage, normalisation et stockage via ELK.
Module d’IA : Développement d’un modèle de Machine Learning pour la détection des
anomalies.
Tableau de bord : Visualisation des alertes via Kibana.
4. Technologies & Outils
Collecte des logs : Wazuh, Filebeat, Winlogbeat
Analyse & stockage : Elasticsearch, Logstash
Détection d’intrusions : Suricata, Snort
Machine Learning : Python, Scikit-learn, TensorFlow
Visualisation : Kibana
5. Contraintes & Risques
Volume de logs élevé → Optimisation des requêtes Elasticsearch.
Précision du modèle d’IA → Réduction des faux positifs/négatifs.
Sécurisation du SIEM → Protection contre les attaques internes et externes.
6. Livrables
✅ Un SIEM fonctionnel avec collecte et analyse des logs.
✅ Un module ML entraîné et intégré.
✅ Un tableau de bord interactif.
✅ Un rapport détaillé avec les résultats des tests et performances.
Les ressources :
1. Jeux de Données Publics (Dumps Réels et Synthétiques)
📌 Données de trafic et logs open-source
✅ CIC-IDS 2017 & CIC-IDS 2018
Dataset de l'Université du Nouveau-Brunswick (UNB) contenant des attaques DDoS, botnets,
exploits, etc.
📥 Télécharger ici
✅ UNSW-NB15
Trafic réseau capturé et labellisé (normal vs attaques).
📥 Télécharger ici
✅ MAWI Dataset
Capture réelle du trafic réseau sur une longue période.
📥 Télécharger ici
✅ CTU-13 Botnet Dataset
Capture de trafic réseau contenant des botnets malveillants.
📥 Télécharger ici
✅ DARPA & KDD Cup 1999
Données historiques d’intrusion utilisées pour l’entraînement de modèles ML.
📥 Télécharger ici
2. Génération de Données Simulées
Si tu veux simuler du trafic pour tester ton SIEM, voici quelques outils pratiques :
🔹 Outils de Simulation d’Attaques et de Trafic
✅ Metasploit + Kali Linux
Permet de générer des attaques (exploits, scans, brute force).
📥 Télécharger ici
✅ Tcpreplay
Permet de rejouer des captures PCAP sur un réseau réel.
📥 Télécharger ici
✅ Scapy (Python)
Permet de générer et manipuler des paquets réseau.
📥 Scapy Docs
✅ Iperf
Permet de simuler du trafic réseau pour tester les performances.
📥 Télécharger ici
✅ Hping3
Outil de test réseau pour générer des attaques DoS.
📥 Télécharger ici
3. Collecte de Logs et Trafic Réel sur une Machine de Test
Si tu veux capturer des logs réels sans risque, voici ce que tu peux faire :
🔹 Sur une machine personnelle ou un serveur test
📌 Activer la journalisation des événements Windows/Linux
Windows : Event Viewer → Sécurité → Exportation des logs.
Linux : /var/log/syslog et /var/log/auth.log.
📌 Capturer du trafic avec Wireshark ou Tcpdump
Wireshark : Capture → Start → Export en .pcap.
Tcpdump : sudo tcpdump -i eth0 -w capture.pcap.
📌 Simuler des attaques pour générer des logs
nmap : nmap -sS -A -p- cible_IP pour générer des logs de scan.
Hydra : hydra -l admin -P passwords.txt cible_IP ssh pour brute-force.
💡 Conclusion
👉 Si tu veux des données réelles, utilise CIC-IDS 2018 ou UNSW-NB15.
👉 Si tu veux simuler ton propre trafic, utilise Metasploit, Wireshark, Scapy.
👉 Si tu veux capturer des logs réels, active les logs système et collecte avec Wazuh + ELK.
📌 Tu veux que je t’aide à choisir la meilleure solution pour ton projet ? 😊
📌 Projet 2 : Détection des Attaques Zero-Day
avec Deep Learning
1. Contexte & Problématique
Les attaques Zero-Day sont des vulnérabilités non encore découvertes par les éditeurs de
logiciels et exploitées par les hackers. Les solutions classiques d’IDS ne détectent que les
menaces connues via des signatures, rendant inefficace la protection contre ces attaques.
L’utilisation du Deep Learning permettrait de détecter ces attaques en analysant les
comportements suspects du trafic réseau et des logs systèmes.
2. Objectifs
Concevoir un IDS basé sur Deep Learning pour détecter les attaques Zero-Day.
Collecter et analyser des données réseau et logs système pour entraîner un modèle de
détection.
Mettre en place un système d’alerte automatisé en cas de détection d’activité suspecte.
Évaluer les performances du modèle et l’optimiser pour réduire les faux positifs.
3. Périmètre du Projet
Sources de données : Captures de trafic réseau (PCAP), logs de pare-feu, logs système.
Prétraitement des données : Extraction des features réseau (protocoles, flux,
anomalies).
Modélisation : Entraînement de modèles Deep Learning pour la classification des
attaques.
Déploiement : Intégration avec un IDS (Snort, Suricata).
4. Technologies & Outils
Collecte des données : Wireshark, Tcpdump
Analyse et prétraitement : Pandas, Scikit-learn
Modélisation DL : TensorFlow/Keras (CNN, LSTM)
Détection d’intrusions : Suricata, Snort
Déploiement : Flask/REST API, Docker
5. Contraintes & Risques
Qualité des données d’entraînement → Risque de biais et mauvaise généralisation.
Performance du modèle → Temps de traitement en temps réel.
Sécurisation des logs → Protection contre les manipulations et injections malveillantes.
6. Livrables
✅ Un modèle Deep Learning entraîné et déployé.
✅ Une intégration avec un IDS pour l’analyse des alertes en temps réel.
✅ Un tableau de bord pour visualiser les attaques détectées.
✅ Un rapport d’analyse des performances et des limites du modèle.
Les ressources Pour le Projet 2 : Détection des Attaques Zero-Day avec Deep Learning, tu
as besoin d’un dataset de trafic réseau et de logs système qui contiennent des comportements
suspects et normaux pour entraîner ton modèle. Puisque les attaques Zero-Day sont inconnues,
il faut utiliser des techniques de détection d’anomalies basées sur le Machine Learning.
1. Jeux de Données Publics (PCAP et Logs pour
entraînement)
📌 Ces datasets contiennent des attaques connues et du trafic normal. Tu peux les utiliser pour
entraîner un modèle de détection des comportements suspects.
🔹 Datasets recommandés
✅ CIC-IDS 2017 & CIC-IDS 2018
Contient du trafic réseau et des logs avec des attaques : DDoS, Botnet, Brute Force, etc.
📥 Télécharger ici
✅ UNSW-NB15
Capture de trafic réseau avec des attaques modernes.
📥 Télécharger ici
✅ Bot-IoT
Spécialisé pour les attaques IoT et Zero-Day.
📥 Télécharger ici
✅ CSE-CIC-IDS 2018
Contient des attaques récentes et avancées pour entraîner un modèle d’IA.
📥 Télécharger ici
✅ KDDCup 1999
Ancien dataset, mais utile pour commencer.
📥 Télécharger ici
✅ MTA-KDD’19
Un des datasets les plus récents sur les attaques Zero-Day.
📥 Télécharger ici
2. Génération de Données Simulées
Si tu veux créer ton propre dataset de Zero-Day, tu peux simuler des attaques inconnues
pour entraîner ton modèle.
🔹 Outils de simulation et d’attaques
✅ Metasploit + Kali Linux
Permet de générer des exploits et attaques personnalisées.
📥 Télécharger ici
✅ Scapy (Python)
Permet de créer des paquets malveillants pour tester la détection.
📥 Documentation
✅ CVE Exploits + ExploitDB
Permet de tester des attaques Zero-Day connues en les adaptant.
📥 Base de données des exploits
✅ Wireshark + Tcpdump
Capture du trafic réseau pour entraîner un modèle de Deep Learning.
📥 Télécharger ici
✅ Hping3 + Slowloris
Génération d’attaques DDoS et reconnaissance de réseau.
📥 Hping3 Guide
✅ Malware Traffic Analysis
Contient du trafic infecté par des malwares.
📥 Télécharger ici
3. Techniques pour Détecter les Attaques Zero-Day
Les attaques Zero-Day étant inconnues, voici les meilleures approches Deep Learning pour les
détecter :
✅ Autoencoders (Apprentissage non supervisé)
Détecte les anomalies en comparant le trafic normal et suspect.
✅ Réseaux LSTM (Long Short-Term Memory)
Identifie des séquences anormales dans le trafic réseau.
✅ CNN + LSTM hybride
Utilise la vision des CNN et la mémoire des LSTM pour détecter les Zero-Day.
✅ Isolation Forest / One-Class SVM
Apprentissage non supervisé pour détecter des anomalies dans les logs.
4. Comment Tester ton Modèle ?
1️⃣ Collecte de Données : Soit avec un dataset public, soit en capturant du trafic réseau.
2️⃣ Prétraitement des Données : Extraction des features (IP, ports, durée, protocole).
3️⃣ Entraînement du Modèle : Utilisation de TensorFlow/Keras avec LSTM, CNN ou
Autoencoders.
4️⃣ Déploiement & Test : Utiliser Suricata/Snort pour comparer la détection IA vs IDS
traditionnel.
💡 Conclusion 👉 Si tu veux un dataset prêt à l’emploi, utilise CIC-IDS 2018 ou Bot-IoT.
👉 Si tu veux générer tes propres attaques, utilise Metasploit + Scapy.
👉 Si tu veux un modèle puissant, entraîne un Autoencoder ou LSTM.
📌 Tu veux que je t’aide à choisir un dataset ou une méthode spécifique ? 😊
Cahier des Charges
Projet : Système Hybride de Détection
d’Intrusions (HIDS/NIDS) avec Analyse
Comportementale et Signatures
1. Introduction
1.1 Contexte
La cybersécurité est un enjeu majeur pour les entreprises qui doivent se protéger contre diverses
attaques réseau. Les solutions classiques de détection d’intrusions (IDS) basées sur des
signatures sont efficaces pour détecter des menaces connues, mais elles montrent leurs limites
face aux attaques zero-day ou aux comportements malveillants non répertoriés. Ce projet vise à
développer un système hybride combinant l’approche traditionnelle (détection par signatures)
et une approche comportementale basée sur l’IA.
1.2 Objectifs
Déployer un IDS basé sur Snort/Suricata pour détecter les attaques connues.
Implémenter un modèle de détection d’anomalies basé sur l’IA pour repérer des
comportements suspects.
Assurer une visualisation et une gestion centralisée des alertes via ELK Stack (Elasticsearch,
Logstash, Kibana).
Valider le système en effectuant des tests sur des scénarios d’attaques réels.
2. Cahier des Charges Fonctionnel
2.1 Fonctionnalités Principales
Fonctionnalité Description
Déploiement d’un IDS Configuration de Snort ou Suricata pour détecter les menaces connues
Capture et analyse de
Utilisation de Wireshark/Zeek pour surveiller les flux réseau
trafic
Détection d’anomalies Implémentation d’un modèle ML (Isolation Forest, Autoencoder...) pour
IA identifier des comportements suspects
Visualisation des Intégration avec ELK Stack pour la gestion des logs et la création de
alertes dashboards
Tests et validation Simulation d’attaques (DoS, MITM, brute force) avec Kali Linux et Metasploit
2.2 Contraintes et Exigences
Environnement de développement : Linux, Docker, Python, Jupyter Notebook
Langages et outils : Python (Scikit-learn, TensorFlow), Snort/Suricata, Wireshark, ELK
Contraintes de performance : Détection en temps réel avec un taux de faux positifs minimal
Sécurité : Protection des logs et des modèles contre les attaques adversariales
3. Cahier des Charges Technique
3.1 Architecture du Système
Module 1 : IDS Classique (Snort/Suricata pour détection par signatures)
Module 2 : IA pour Détection Anomalies (ML supervisé/non supervisé sur logs réseau)
Module 3 : Visualisation et Alertes (Stockage des logs et alertes dans ELK)
Module 4 : Simulation et Tests (Exécution d’attaques sur un réseau de test)
3.2 Infrastructure et Déploiement
Composant Technologie
Capture de trafic Wireshark, Zeek
Détection par signatures Snort, Suricata
Analyse comportementale Scikit-learn, TensorFlow
Gestion des logs et alertes ELK Stack (Elasticsearch, Logstash, Kibana)
Environnement de test Kali Linux, Metasploit
Déploiement Docker, Kubernetes (optionnel)
4. Planification et Délais (4 à 5 mois)
Phase Tâches Durée
Phase 1 Étude des IDS et types d’attaques 3 semaines
Phase 2 Déploiement de Snort/Suricata et collecte de données 4 semaines
Phase 3 Implémentation de l’analyse comportementale (IA) 5 semaines
Phase 4 Tests et validation avec attaques simulées 4 semaines
Phase 5 Documentation et rédaction du rapport 2 semaines
5. Critères de Réussite
✅ Capacité à détecter au moins 80% des attaques connues avec l’IDS ✅ Détection efficace
des anomalies avec moins de 10% de faux positifs ✅ Intégration des alertes et logs dans un
dashboard ELK interactif ✅ Réussite des tests sur un scénario d’attaques en environnement
simulé
6. Conclusion
Ce projet permettra d'améliorer les capacités de détection d'intrusions réseau en alliant
cybersécurité classique et intelligence artificielle, tout en restant applicable en entreprise et
soutenable dans le cadre d’un stage de fin d’études.
📌 Ce document peut être enrichi avec plus de détails si nécessaire ! 😊