Qu’est-ce qu’un système de détection des intrusions ?
Un système de détection des intrusions (IDS) est une technologie de sécurité réseau conçue à l’origine pour détecter l’exploitation de vulnérabilités propres à certaines applications ou ordinateurs.
Un IDS est un dispositif configuré en mode écoute seule. Sa mission consiste à surveiller le trafic et à en communiquer les résultats à un administrateur. Il est incapable de prendre automatiquement les mesures nécessaires pour empêcher un exploit détecté de prendre le contrôle du système.
Les attaquants sont capables d’exploiter rapidement les vulnérabilités dès qu’ils s’infiltrent sur le réseau. C’est pourquoi les IDS ne sont pas adaptés à la prévention. Une gestion efficace des informations et des événements de sécurité (SIEM) exige de combiner des systèmes de détection à des systèmes de prévention des intrusions (IPS).
Systèmes de détection des intrusions vs systèmes de prévention des intrusions
Le tableau suivant résume les différences entre les IDS et les IPS.
Système de prévention des intrusions | Système de détection des intrusions | |
---|---|---|
Emplacement dans l’infrastructure du réseau | Partie intégrante de la ligne de communication directe (inline) | Externe à la ligne de communication directe (hors bande) |
Type de système | Actif (surveillance et défense automatique) et/ou passif | Passif (surveillance et notification) |
Mécanismes de détection | 1. Détection statistique basée sur les anomalies 2. Détection basée sur les signatures : - Signatures d’exploits - Signatures de vulnérabilités |
1. Détection basée sur les signatures : - Signatures d’exploits |
Schéma illustrant la différence entre IPS et IDS
Mode de fonctionnement de l’IDS
Schéma illustrant le fonctionnement d’un système de détection des intrusions
Le rôle d’un IDS se limite à détecter les menaces potentielles. En outre, il opère hors bande sur l’infrastructure réseau, c’est-à-dire hors du chemin de communication en temps réel entre l’expéditeur et le destinataire de l’information.
Les IDS s’appuient généralement sur un port TAP ou SPAN pour analyser une copie du trafic inline, et ainsi n’avoir aucun impact sur les performances inline du réseau.
Lorsque les systèmes IDS ont été développés, les analyses requises pour détecter une intrusion n’étaient pas assez rapides pour être effectuées inline. Il leur était impossible d’opérer au même rythme que les composants situés sur le chemin de communication direct de l’infrastructure réseau.
Les systèmes de détection des intrusions permettent de détecter les activités suspectes afin de repérer les hackers avant qu’ils ne causent des dommages sur le réseau. Les deux types d’IDS les plus courants sont soit basé sur l’hôte, soit basés sur le réseau. Les uns sont installés sur les ordinateurs clients, tandis que les autres sont basés sur le réseau, comme leur nom l’indique.
Un IDS recherche les écarts par rapport aux activités normales et aux signatures d’attaque connues. Toute activité anormale est remontée pour analyse au niveau des couches protocole et application. Empoisonnements DNS, malformation de paquets d’informations, scans de type « arbre de Noël »… un IDS peut détecter des événements très divers.
Côté format, il peut être déployé sous forme d’équipement de sécurité réseau ou d’application logicielle. Des IDS en mode cloud sont également disponibles pour protéger les données et systèmes des environnements cloud.
Types de systèmes de détection des intrusions
Il existe cinq types d’IDS : basés sur le réseau, basés sur l’hôte, basés sur un protocole, basés sur un protocole d’application, et hybrides.
Comme nous l’évoquons plus haut, les deux formats les plus courants sont les suivants :
- Système de détection des intrusions basé sur le réseau (NIDS)
Comme son nom l’indique, un NIDS intervient sur le réseau. Il est déployé en différents points stratégiques de l’infrastructure, notamment les sous-réseaux les plus vulnérables. Le NIDS surveille tout le trafic circulant vers et depuis les équipements du réseau, et base son analyse sur le contenu des paquets et des métadonnées. - Système de détection des intrusions basé sur l’hôte (HIDS)
Un HIDS ne surveille que la machine sur laquelle il est installé. Autrement dit, il est déployé sur un terminal spécifique qu’il protège contre les menaces internes et externes. Ce type d’IDS analyse le trafic, enregistre les activités malveillantes et en informe les équipes responsables.
Les trois autres types d’IDS sont décrits comme suit :
- Système de détection des intrusions basé sur un protocole (PIDS)
Un PIDS est généralement installé sur un serveur web. Il surveille et analyse le protocole utilisé entre un utilisateur/appareil et le serveur. Un PIDS est normalement installé sur la partie frontale d’un serveur et surveille le comportement et l’état du protocole. - Système de détection des intrusions basé sur un protocole d’application (APIDS)
Un APIDS est un système ou un agent généralement installé sur un serveur. Il suit et interprète la correspondance sur des protocoles spécifiques aux applications. Par exemple, il surveille le protocole SQL du middleware lors des transactions avec le serveur web. - Système hybride de détection des intrusions
Un IDS hybride combine deux ou plusieurs approches de détection des intrusions. Les données du système ou de l’agent hôte sont combinées aux informations réseau pour une vue complète du système. En ce sens, il s’agit du système de détection des intrusions le plus puissant. Prelude est un exemple d’IDS hybride.
Il existe également un sous-groupe de méthodes de détection des intrusions, les deux variantes les plus courantes étant :
- La méthode basée sur les signatures
Un IDS basé sur les signatures surveille le trafic réseau entrant, à la recherche de schémas et de séquences spécifiques correspondant à des signatures d’attaques connues. Bien qu’il remplisse parfaitement cette mission, ce type d’IDS est incapable de détecter des attaques non encore identifiées, et donc dépourvues de signature. - La méthode basée sur les anomalies
Un IDS basé sur les anomalies est une technologie relativement récente, conçue pour détecter les attaques inconnues et pour lesquelles une signature n’existe pas encore. Ce type de détection utilise le machine learning (ML) pour analyser de vastes quantités de données et de trafic réseau.
Un IDS basé sur les anomalies crée un modèle défini d’activités jugées normales, puis l’utilise comme référence pour identifier les comportements qui s’en écartent. Seul bémol, il est sujet aux faux positifs. Par exemple, si une machine présente un comportement rare mais légitime, elle est identifiée comme une anomalie, ce qui génère une fausse alerte.
IDS vs pare-feu
Les IDS et les pare-feu nouvelle génération sont les uns comme les autres des solutions de sécurité du réseau. Ce qui différencie un IDS d’un pare-feu, c’est son domaine d’action.
Un système de détection des intrusions effectue une surveillance passive, décrit les activités suspectes et les signale comme telles. Un IDS surveille les paquets réseau en mouvement, permettant ainsi à l’équipe de réponse à incident d’évaluer la menace et d’agir si nécessaire. En clair, l’IDS détecte et signale, mais ne protège pas le réseau et les terminaux.
Par contraste, un pare-feu recherche activement les menaces sur le réseau pour éviter qu’elles ne se transforment en incidents. De fait, les pare-feu ont la capacité de filtrer et de bloquer le trafic. Ils s’appuient sur divers facteurs (ports, adresses de destination, source) pour autoriser le trafic en fonction de règles préconfigurées.
Les pare-feu rejettent le trafic qui ne respecte pas ces règles. En revanche, en cas d’attaque interne au réseau, ils ne génèrent aucune alerte.
Schéma illustrant les rôles respectifs d’un système de détection des intrusions et d’un pare-feu
Techniques de contournement des IDS
Les attaquants utilisent de nombreuses techniques visant à passer sous les radars des IDS. Ces méthodes constituent un vrai problème dans la mesure où elles visent à contourner les méthodes de détection existantes des IDS :
- Fragmentation
La fragmentation consiste à diviser un paquet en paquets de plus petite taille. Les attaquants peuvent ainsi opérer incognito, car les sous-paquets ne correspondent à aucune signature d’attaque connue.
Les paquets fragmentés sont ensuite reconstruits par le nœud destinataire au niveau de la couche IP, puis transmis vers la couche applicative. Les attaques par fragmentation génèrent des paquets malveillants en remplaçant les données des paquets fragmentés par de nouvelles données. - Inondation
Cette méthode de contournement a pour objectif de submerger le détecteur de menaces dans le but de provoquer la défaillance du mécanisme de contrôle. Lorsqu’un détecteur n’opère plus, tout le trafic est autorisé.
L’un des modes d’inondation les plus courants consiste à usurper les protocoles UDP (User Datagram Protocol) et ICMP (Internet Control Message Protocol) légitimes. La vague de trafic sert ensuite à camoufler les activités malveillantes des attaquants, car un IDS aura beaucoup de mal à détecter les paquets malveillants au sein d’un volume ingérable de trafic. - Obfuscation
L’obfuscation permet de rendre un message difficile à comprendre, et ainsi à mieux masquer une attaque. Le terme obfuscation fait référence au fait de modifier le code du programme de sorte qu’il reste fonctionnellement indiscernable d’un code légitime.
L’objectif ici est de réduire sa détectabilité aux processus de rétro-ingénierie ou d’analyses statiques en l’obscurcissant et en le rendant illisible. Ainsi, l’obfuscation d’un malware permet à ce dernier d’échapper aux IDS. - Chiffrement
Le chiffrement offre de multiples avantages en termes de sécurité, à commencer par la confidentialité et l’intégrité des données. Hélas, les développeurs de malwares ont su s’approprier ces attributs pour dissimuler les attaques et échapper aux systèmes de détection.
Par exemple, une attaque utilisant un protocole de chiffrement ne peut pas être lue par un IDS. Lorsque l’IDS ne parvient pas analyser le trafic chiffré au regard de la base de données de signature, la tâche des détecteurs d’attaques s’en trouve grandement compliquée.
L’importance des systèmes de détection des intrusions
Entre la sophistication des cyberattaques et la prolifération des attaques zero day, les technologies de protection du réseau doivent s’adapter pour assurer la sécurité des entreprises.
Pour ces dernières, l’objectif est d’assurer une communication fiable et sécurisée de l’information. D’où l’importance d’un IDS pour l’écosystème de sécurité. Il agit comme un rempart là où d’autres technologies ont échoué avant lui. Ses missions :
- Identification des incidents de sécurité
- Analyse des quantités et types d’attaques
- Identification des bugs ou des problèmes de configuration des appareils
- Mise en conformité réglementaire (grâce à une meilleure visibilité du réseau et à la documentation des journaux IDS)
- Amélioration des réponses (par une inspection des données dans les paquets réseau, plutôt que par un recensement manuel des systèmes)
Malgré leur utilité, les IDS n’atteignent leur pleine mesure que lorsqu’ils sont associés à des IPS. Les systèmes de prévention des intrusions (IPS) ajoutent en effet la possibilité de bloquer les menaces. C’est pourquoi cette combinaison s’impose comme l’option de déploiement dominante pour les technologies IDS/IPS.
Pourtant, il existe encore une meilleure option ; celle qui consiste à combiner plusieurs technologies de prévention des menaces pour former une solution complète. Une de ces combinaisons s’articule autour de trois éléments :
- Protection contre les vulnérabilités
- Prévention des malwares
- Prévention des spywares
La combinaison de ces technologies assure une protection contre les menaces avancées. Le service analyse tout le trafic (y compris les ports, les protocoles et le trafic chiffré) à la recherche de menaces. De même, les solutions de prévention des menaces avancées traquent la présence de menaces à tous les stades du cycle d’attaque, pas uniquement à leur point d’entrée sur le réseau. Il en résulte une défense multi-niveau, autour d’une approche Zero Trust avec prévention à tous les points du réseau.