Sonde IDS durcie
Pierre Chiìier Arnaud Fontaine
{pierre.chifflier,arnaud.fontaine}@ssi.gouv.fr
25 novembre 2014
Supervision de sécurité
Caractéristiques d’un réseau de supervision de sécurité
◮ Collecte d’informations depuis tous les éléments
◮ Basé sur des Intrusion Detection System
◮ Nombreux décodeurs protocolaires
◮ Centralisation et analyse
ANSSI Sonde IDS durcie 2/33
IDS : Où détecter?
Automate Automate
ServeurSCADA
ClientSCADA Historian
Passerellevers Intranet
capteuractionneur capteuractionneur
S1
S2
S3
S4 S5
S6
SIEMSCADA sondes
ANSSI Sonde IDS durcie 3/33
IDS : vu de l’attaquant
Automate Automate
ServeurSCADA
ClientSCADA Historian
Passerellevers Intranet
capteuractionneur capteuractionneur
SIEMSCADA sondes
ANSSI Sonde IDS durcie 4/33
Supervision de sécurité
IDS pour l’attaquant
◮ Éléments identiques
◮ Connectés à tous les éléments importants
◮ Nombreux décodeurs protocolaires
◮ Écrits pour la performance
◮ Exposés au traíc réseau
⇒ Cible de choix !
ANSSI Sonde IDS durcie 5/33
Architecture système sécurisée
◮ Architecture générique
◮ Protection de la sonde
◮ Protection du réseau de supervision
◮ Cloisonnement des rôles
◮ Limitation et suppression de privilèges
ANSSI Sonde IDS durcie 6/33
Déínition des rôles
1 IDS
2 Administrateur de l’IDS
3 Audit
4 Administrateur système
5 Système
ANSSI Sonde IDS durcie 7/33
Sonde : état initial
sonde
Réseausurveillé
Réseau desupervision
socle
IDS
eth0
ANSSI Sonde IDS durcie 9/33
Cloisonnement réseau
◮ Séparation des réseaux◮ Supervision◮ Réseau surveillé◮ Administration
◮ Utilisation d’un ou plusieurs canaux IPsec
ANSSI Sonde IDS durcie 10/33
Sonde : état initial
sonde
Réseausurveillé
Réseau desupervision
socle
IDS
eth0
ANSSI Sonde IDS durcie 11/33
Étape 1 : séparation des réseaux
eth1eth0
(ipsec)
sonde
Réseausurveillé
Réseau desupervision
socle
IDS
ANSSI Sonde IDS durcie 11/33
Protections Système
Durcissement du socle et du noyau
◮ Réduction des droits administrateur
◮ Suppression des fonctions inutiles
◮ Rendre immuable la sonde
◮ Empêche/complique l’exécution de code
◮ . . .
◮ Note : complique lamise à jour
ANSSI Sonde IDS durcie 12/33
Protections Système
Patch grsec/PaX
◮ Espace d’adressage aléatoire
◮ Pages mémoire en lecture seule
◮ W ⊕ X◮ Restrictions
◮ visibilité◮ interdiction du debug◮ . . .
◮ Points demontage en lecture seule (irréversible)
ANSSI Sonde IDS durcie 13/33
Étape 1 : séparation des réseaux
eth1eth0
(ipsec)
sonde
Réseausurveillé
Réseau desupervision
socle
IDS
ANSSI Sonde IDS durcie 14/33
Étape 2 : durcissement du socle
eth1eth0
(ipsec)
socle durci
sonde
Réseausurveillé
Réseau desupervision IDS
ANSSI Sonde IDS durcie 14/33
Cloisonnement
Principes
◮ Isolation des IDS entre eux
◮ Isolation des IDS et du socle
◮ Suppression de l’accès au matériel
ANSSI Sonde IDS durcie 15/33
Cloisonnement
Mise enœuvre
◮ Utilisation des LinuX Containers (LXC)
◮ Réduction des privilèges
◮ Duplication des ÷ux réseau par un bridge
ANSSI Sonde IDS durcie 16/33
Conteneurs
IDS
◮ Système en lecture seule
◮ Coníguration ígée
◮ Extension du principe W ⊕ X aux íchiers
ANSSI Sonde IDS durcie 17/33
Étape 2 : durcissement du socle
eth1eth0
(ipsec)
socle durci
sonde
Réseausurveillé
Réseau desupervision IDS
ANSSI Sonde IDS durcie 18/33
Étape 3 : cloisonnement des IDS
IDS1
in1
IDS2
in2
IDS3
in3
eth1eth0
(ipsec)
socle durci
sonde
Réseausurveillé
Réseau desupervision
ANSSI Sonde IDS durcie 18/33
Journalisation
◮ Émission des alertes par les IDS
◮ Interdiction des modiícations par l’IDS
◮ Rôle administrateur IDS : pas d’accès aux journaux
◮ Intégrité des journaux
◮ Centralisation des alertes, envoi vers le réseau de supervision
ANSSI Sonde IDS durcie 19/33
Isolation des données
/ (root)
conteneurs
IDS1
logs-ids1
sock
Logs
logs-ids1
sock
usr binds
logs-ids1
sock
dataRO
RW
◮ Utilisation de la virtualisation◮ Partage de la racine◮ Répertoires spéciíques par
conteneurs
◮ Diodes logicielles◮ socket Unix◮ tube nommé (FIFO)◮ point de (re-)montage
ANSSI Sonde IDS durcie 20/33
Étape 3 : cloisonnement des IDS
IDS1
in1
IDS2
in2
IDS3
in3
eth1eth0
(ipsec)
socle durci
sonde
Réseausurveillé
Réseau desupervision
ANSSI Sonde IDS durcie 21/33
Étape 4 : cloisonnement des journaux
collect
send
IDS1
in1
IDS2
in2
IDS3
in3
eth1eth0
(ipsec)
m
socle durci
sonde
Réseausurveillé
Réseau desupervision
ANSSI Sonde IDS durcie 21/33
Isolation Réseau
TAP physique
◮ Diode
◮ Coût additionnel
◮ Interface unique
TAP logique
◮ Diode, si le socle est intègre
◮ Pas de coût (e)
◮ Duplication possible
ANSSI Sonde IDS durcie 22/33
Étape 4 : cloisonnement des journaux
collect
send
IDS1
in1
IDS2
in2
IDS3
in3
eth1eth0
(ipsec)
m
socle durci
sonde
Réseausurveillé
Réseau desupervision
ANSSI Sonde IDS durcie 23/33
Sonde durcie
collect
send
IDS1
in1
IDS2
in2
IDS3
in3
eth1eth0
(ipsec)
m
socle durci
sonde
Réseausurveillé
Réseau desupervision
TAP
ANSSI Sonde IDS durcie 23/33
Mises à jour
◮ Zone de coníance (sansinteractions)
◮ Verrouillage du système
◮ Modiícations du socle interdites
BIOS
bootloader
OS - early
Update ?
OS - normal
Apply
Conteneurs
Runtime
RW
RO
lock
ANSSI Sonde IDS durcie 24/33
Le cas des systèmes industriels
◮ Fortes contraintes◮ Protocoles peu analysés◮ Très sensibles à la latence◮ Nombreux points de collecte◮ Contraintes physiques (espace) et mécaniques
◮ Équipements traditionnels inadaptés
◮ Faible traíc réseau
ANSSI Sonde IDS durcie 25/33
IDS pour systèmes industriels
Challenge
◮ Construire une sonde basée sur l’architecture proposée
◮ Utiliser un matériel peu encombrant
◮ Réduire le coût
◮ Conserver des performances acceptables
ANSSI Sonde IDS durcie 26/33
Preuve de concept
Base commune◮ Boîtier Mirabox
◮ SoC ARM (Armada 370), mono-cœur à 1,2 GHz◮ 1 Go de RAM, 2 interfaces Gbit
◮ Debian unstable
◮ Noyau Linux 3.16.3◮ Suricata 2.0
Sonde durcie
◮ Patch grsecurity du noyau, toutes protections activées
◮ TAP logique (bridge + interface réseau virtuelle)
◮ 1 LXC contenant l’IDS
◮ 1 LXC pour collecter les alertes
ANSSI Sonde IDS durcie 27/33
Protocole expérimental
Coníguration de l’IDS◮ Règles Modbus
◮ Génération d’une alerte par transaction Modbus
◮ Alertes fastlog
◮ tube nommé (FIFO) dans le cas de la sonde durcie
Mesure des performances◮ 200 000 paquets de traíc réel d’un système industriel
◮ 100 000 transactions Modbus
◮ Rejeu de la capture à diéérents débits
ANSSI Sonde IDS durcie 28/33
Résultats (sonde témoin)
50000
100000
150000
200000
250000
20000 40000 60000 80000 100000Débit (paquets/sec.)
Paquets traitésPaquets perdus
Alertes
ANSSI Sonde IDS durcie 29/33
Résultats (sonde durcie)
50000
100000
150000
200000
250000
20000 40000 60000 80000 100000Débit (paquets/sec.)
Paquets traitésPaquets perdus
Alertes
ANSSI Sonde IDS durcie 30/33
Résultats
50000
100000
150000
200000
250000
0 10000 20000 30000 40000 50000
Paq
uetstraités
Débit (paquets/sec.)
Sonde témoinSonde durcie
ANSSI Sonde IDS durcie 31/33
Analyse des résultats
Sonde témoin vs sonde durcie◮ Débit maximum sans perte
◮ sonde témoin : 32 500 paquets/sec.◮ sonde durcie : 21 500 paquets/sec.
◮ Impact global du durcissement : environ 33 %
Impact relatif de chaquemesure
◮ TAP logique : environ 60%
◮ Diode de collecte (FIFO) : environ 15%
◮ grsecurity/PaX : environ 13 %
◮ Virtualisation LXC : environ 12 %
ANSSI Sonde IDS durcie 32/33
Conclusion
◮ Architecture « de référence »◮ Défense en profondeur◮ Protections à l’état de l’art◮ Réutilisation encouragée
◮ Preuve de concept fonctionnelle
◮ Performances acceptables◮ Contexte défavorable◮ Borne supérieure sur l’impact du durcissement
◮ Points d’amélioration◮ Intégrité du démarrage◮ Tester avec d’autres IDS
◮ Quid de la qualité des IDS ?
ANSSI Sonde IDS durcie 33/33
Top Related