La directive NIS2 impose aux PME françaises des exigences strictes en matière de détection des menaces, de gestion des incidents et de reporting. Pour y répondre sans dépendre de solutions propriétaires ou soumises au Cloud Act, la combinaison de Wazuh (XDR/SIEM open source) et de Suricata (IDS/IPS) offre une alternative souveraine et économique. Cet article détaille comment cette stack open source couvre les obligations NIS2, avec des exemples concrets de configuration et d’intégration.
#1. Exigences NIS2 couvertes par Wazuh et Suricata
#1.1 Détection des menaces et réponse aux incidents
NIS2 impose une détection en temps réel des cyberattaques et une réponse rapide (notification ≤ 72 h). Wazuh et Suricata combinent leurs forces pour répondre à ces exigences :
- Suricata analyse le trafic réseau en temps réel via des règles IDS/IPS (ex : règles Emerging Threats). Il détecte les attaques comme les scans réseau, les exploits ou les malwares.
- Wazuh corrèle ces alertes avec les logs des endpoints (FIM, détection de malwares) et fournit une vue unifiée dans son interface SIEM.
Exemple : Une attaque par force brute sur un serveur SSH est détectée par Suricata (règle
ET SCAN Potential SSH Scan). Wazuh enrichit l’alerte avec les logs d’authentification (/var/log/auth.log) et déclenche une réponse automatique (blocage IP viaactive-response).
#1.2 Gestion des vulnérabilités et conformité
NIS2 exige une évaluation régulière des risques et des mesures correctives. Wazuh intègre :
- Vulnerability Detection : Scan des CVE connues (via bases comme NVD) sur les endpoints.
- Security Configuration Assessment (SCA) : Vérification des configurations contre des benchmarks (CIS, DISA STIG).
Configuration Wazuh :
<vulnerability-detection> <enabled>yes</enabled> <interval>1h</interval> <feed> <url>https://nvd.nist.gov/feeds/json/cve/1.1/nvdcve-1.1-recent.json.gz</url> </feed> </vulnerability-detection>
#1.3 Reporting et traçabilité
NIS2 impose des rapports d’incident sous 24 h (alerte précoce) et 1 mois (rapport final). Wazuh facilite cette conformité via :
- Tableaux de bord Kibana : Visualisation des incidents avec timelines et preuves.
- Intégration avec TheHive : Gestion des cas d’incident et génération de rapports exportables.
wazuh-reporting pour générer des PDF conformes aux templates NIS2.
#2. Architecture technique et déploiement
#2.1 Topologie recommandée pour les PME
graph TD
A[Suricata] -->|Alertes réseau| B[Wazuh Server]
C[Endpoints] -->|Logs agents| B
B --> D[OpenSearch/Kibana]
B --> E[TheHive]
B --> F[ANSSI MonEspaceNIS2]
- Suricata : Déployé en mode IDS (écoute passive) ou IPS (blocage actif) sur les points d’entrée réseau.
- Wazuh Server : Centralise les logs et corrèle les alertes.
- OpenSearch : Stockage et visualisation (alternative souveraine à Elasticsearch).
#2.2 Configuration de l’intégration Suricata-Wazuh
- Suricata génère des alertes au format JSON dans
/var/log/suricata/eve.json. - Wazuh les ingère via un custom log :
<localtime> <log_format>json</log_format> <location>/var/log/suricata/eve.json</location> </localtime> - Règle de corrélation dans Wazuh pour prioriser les alertes critiques :
<rule id="100001" level="12"> <if_sid>500000</if_sid> <!-- ID Suricata pour attaque critique --> <description>NIS2: Attaque réseau critique détectée</description> <mitre> <id>T1190</id> <!-- Technique MITRE ATT&CK --> </mitre> </rule>
#3. Réponse aux exigences spécifiques NIS2
#3.1 Notification sous 24 h / 72 h
- Automatisation : Wazuh peut déclencher des notifications via :
- PagerDuty (pour les alertes urgentes).
- Telegram (intégration documentée dans [2]).
- Email (module
wazuh-mail).
Exemple de règle Wazuh pour alerte précoce :
<rule id="100002" level="15"> <if_sid>100001</if_sid> <options>no_full_log</options> <description>NIS2: Alerte précoce - Attaque en cours</description> <group>nis2_early_warning</group> </rule>
#3.2 Gestion des tiers (supply chain)
NIS2 étend les obligations aux fournisseurs. Wazuh permet :
- Monitoring des accès tiers : Détection des connexions VPN ou RDP anormales.
- SCA pour les configurations cloud : Vérification des buckets S3 ou des VMs Azure/Google Cloud.
#4. Coûts et souveraineté : pourquoi choisir Wazuh + Suricata
#4.1 Comparatif économique
| Solution | Coût (PME 50-250 employés) | Souveraineté | Open Source |
|---|---|---|---|
| Vanta/Drata | 10-30 K€/an | ❌ (Cloud Act) | ❌ |
| Wazuh + Suricata | 0 € (licence) + 2-5 K€ (intégration) | ✅ (hébergement FR) | ✅ |
#4.2 Positionnement M-KIS
- Diagnostic NIS2 : 2 500 € HT pour évaluer l’écart de conformité.
- SOC managé open source : À partir de 1 500 €/mois (incluant Wazuh, Suricata, et support 24/7).
suricata-update) et des modules Wazuh restent essentielles.
#5. Limites et recommandations
#5.1 Points de vigilance
- Faux positifs : Suricata peut générer des alertes bruyantes. Utilisez des règles personnalisées (ex :
threshold: type threshold, track by_src, count 5, seconds 60). - Performance : Pour > 1 000 endpoints, un scaling horizontal de Wazuh (cluster) est recommandé.
#5.2 Bonnes pratiques
- Sauvegardes : Utilisez Restic (open source) pour sauvegarder les logs Wazuh/OpenSearch.
- Chiffrement : Activez TLS pour les communications entre agents et serveur Wazuh.
#Conclusion
La stack Wazuh + Suricata couvre les exigences techniques de NIS2 (détection, réponse, reporting) tout en garantissant souveraineté et maîtrise des coûts. Pour les PME françaises, cette solution open source évite les dépendances aux outils américains et s’intègre dans une démarche RECyF (à confirmer avec l’ANSSI). Les modules de corrélation, de vulnerability management et d’automatisation des alertes en font un choix pertinent pour les entités essentielles et importantes.
Ressources :
Cet article vous parle ?
On accompagne PME, ESN et éditeurs SaaS dans leur conformité ISO 27001 / NIS2 — Lead Auditor certifié, tarifs publics, 100 % open source.