| Exigence | Ce que tu dois maîtriser | Ce qu'on va construire |
|---|---|---|
| Mathematics | Discrete Math | 📚 + exercices |
| Mathematics | Linear Algebra | 📚 + exercices |
| Mathematics | Probability/Statistics | 📚 + projet |
| Theory | Complexity | 📚 + exercices |
| Theory | Computability | 📚 |
| Programming | Python/C | 💻 projets |
| Programming | OOP | 💻 |
| Algorithms | Algorithms | 💻 |
| Data Structures | DS | 💻 |
| Systems | Architecture | 💻 Linux/C |
| Systems | OS | 💻 |
| Networking | TCP/IP/Sockets | 💻 |
| Security | Network Security | 🔐 |
| Research | Scientific method | 🔬 |
| Evidence | GitHub/projects | 📁 |
| Research evidence | FYP/thesis | 🎓 |
| References | Professors | 👨🏫 |
| English | C1 | 🇬🇧 |
| GRE | General Test | 📝 |
Lightweight Network Security Monitoring and Intrusion Detection System for Linux Networks
Nom de travail :
NEXUS-NIDS
Ou un nom plus académique plus tard.
L'idée :
NETWORK
│
▼
┌──────────────┐
│ Packet / Flow│
│ Collection │
└──────┬───────┘
│
▼
┌─────────────────┐
│ Traffic Analysis│
└────────┬────────┘
│
┌────────┴─────────┐
│ │
▼ ▼
Signature-based Anomaly-based
Detection Detection
│ │
└────────┬─────────┘
▼
Alert Engine
│
▼
Dashboard/API
│
▼
Security Report
VERSION 0
Programming Fundamentals
on construis simplement :
PCAP Analyzer
Il lit un fichier .pcap et extrait :
source IP destination IP protocol source port destination port packet size TCP flags
On vas apprendre :
Python → files → data structures → parsing → networking
VERSION 1 Traffic Statistics Engine
Tu ajoutes :
Top source IP Top destination IP Top ports Protocol distribution Packet rate Connection count
Et tu produis quelque chose comme :
Total packets: 48,392
TCP: 82.4% UDP: 14.1% ICMP: 3.5%
Top destination ports:
443 12,431 80 4,231 53 3,821 22 1,034
Tu viens de pratiquer :
Algorithms + Data Structures + Networking + Statistics.
VERSION 2 Rule-Based Detection
Tu implémentes des règles simples :
Port scanning Brute-force pattern Unusual ICMP activity Repeated connection attempts Suspicious TCP flags Abnormal port activity
Exemple :
192.168.1.23 │ ├── port 21 ├── port 22 ├── port 23 ├── port 25 ├── port 53 ├── port 80 ├── port 110 └── port 443
→ Possible port scan
Et là tu touches réellement à :
Network Security.
VERSION 3 Linux Sensor
Tu ne te contentes plus d'analyser des fichiers PCAP.
Tu fais tourner ton programme sur Linux.
Linux machine │ ▼ Network interface │ ▼ Packet capture │ ▼ NEXUS-NIDS │ ▼ Detection engine │ ▼ Alerts
Et là tu vas apprendre :
Linux processes permissions services sockets system calls networking logging Bash C/Python.
C'est exactement le pont entre Linux Programming + Operating Systems + Networking + Security.
VERSION 4 Detection Engine
Ensuite seulement tu commences à réfléchir à la détection d'anomalies.
Par exemple :
Quelle quantité de trafic est normale pour cette machine ?
Puis :
Qu'est-ce qui s'écarte significativement du comportement habituel ?
Tu peux commencer avec des méthodes statistiques simples :
mean median standard deviation z-score moving average thresholding.
Pas besoin d'IA.
Je répète : pas besoin d'IA.
Une bonne méthode statistique comprise profondément vaut beaucoup plus pour ton apprentissage qu'un modèle ML importé depuis une bibliothèque que tu ne comprends pas.
VERSION 5 Evaluation
Et là ton projet commence à devenir un vrai travail académique.
Tu construis un dataset.
Tu définis :
Normal traffic Port scan Brute force DoS-like traffic DNS anomalies
Puis tu mesures :
True Positive False Positive True Negative False Negative
Precision Recall F1-score Detection rate False positive rate
Et tu peux poser une vraie question scientifique :
How effective is a lightweight statistical network anomaly detector for identifying abnormal traffic in resource-constrained Linux environments?