Sécurité réseau - Pare-feu
Presque toutes les organisations de taille moyenne et grande ont une présence sur Internet et un réseau organisationnel y est connecté. Le partitionnement du réseau à la frontière entre l'Internet extérieur et le réseau interne est essentiel pour la sécurité du réseau. Parfois, le réseau interne (intranet) est appelé le côté «approuvé» et Internet externe le côté «non fiable».
Types de pare-feu
Le pare-feu est un périphérique réseau qui isole le réseau interne de l'organisation d'un réseau extérieur / Internet plus important. Il peut s'agir d'un matériel, d'un logiciel ou d'un système combiné qui empêche l'accès non autorisé vers ou depuis le réseau interne.
Tous les paquets de données entrant ou sortant du réseau interne passent par le pare-feu, qui examine chaque paquet et bloque ceux qui ne répondent pas aux critères de sécurité spécifiés.
Le déploiement d'un pare-feu à la limite du réseau revient à regrouper la sécurité en un seul point. Cela revient à verrouiller un appartement à l'entrée et pas nécessairement à chaque porte.
Le pare-feu est considéré comme un élément essentiel pour assurer la sécurité du réseau pour les raisons suivantes -
Il est peu probable que le réseau interne et les hôtes soient correctement sécurisés.
Internet est un endroit dangereux avec des criminels, des utilisateurs d'entreprises concurrentes, d'anciens employés mécontents, des espions de pays hostiles, des vandales, etc.
Pour empêcher un attaquant de lancer des attaques par déni de service sur une ressource réseau.
Pour empêcher toute modification / accès illégal aux données internes par un attaquant extérieur.
Le pare-feu est classé en trois types de base -
- Filtre de paquets (sans état et avec état)
- Passerelle au niveau de l'application
- Passerelle au niveau du circuit
Ces trois catégories, cependant, ne s'excluent pas mutuellement. Les pare-feu modernes ont un mélange de capacités qui peuvent les placer dans plus d'une des trois catégories.
Pare-feu de filtrage de paquets sans état et avec état
Dans ce type de déploiement de pare-feu, le réseau interne est connecté au réseau externe / Internet via un pare-feu de routeur. Le pare-feu inspecte et filtre les données paquet par paquet.
Packet-filtering firewalls autoriser ou bloquer les paquets principalement en fonction de critères tels que les adresses IP source et / ou de destination, le protocole, les numéros de port source et / ou de destination et divers autres paramètres dans l'en-tête IP.
La décision peut être basée sur des facteurs autres que les champs d'en-tête IP tels que le type de message ICMP, les bits TCP SYN et ACK, etc.
La règle de filtrage de paquets comporte deux parties -
Selection criteria - Il est utilisé comme condition et correspondance de modèle pour la prise de décision.
Action field- Cette partie spécifie l'action à entreprendre si un paquet IP répond aux critères de sélection. L'action peut être soit bloquer (refuser) ou autoriser (autoriser) le paquet à travers le pare-feu.
Le filtrage des paquets est généralement réalisé en configurant des listes de contrôle d'accès (ACL) sur des routeurs ou des commutateurs. ACL est une table de règles de filtrage de paquets.
Lorsque le trafic entre ou sort d'une interface, le pare-feu applique des ACL de haut en bas à chaque paquet entrant, trouve les critères correspondants et autorise ou refuse les paquets individuels.
Stateless firewallest une sorte d'outil rigide. Il regarde le paquet et l'autorise s'il répond aux critères même s'il ne fait pas partie d'une communication en cours établie.
Par conséquent, ces pare-feu sont remplacés par stateful firewallsdans les réseaux modernes. Ce type de pare-feu offre une méthode d'inspection plus approfondie par rapport aux seules méthodes d'inspection de paquets basées sur ACL des pare-feu sans état.
Le pare-feu avec état surveille la configuration de la connexion et le processus de suppression pour contrôler les connexions au niveau TCP / IP. Cela leur permet de suivre l'état des connexions et de déterminer quels hôtes ont des connexions ouvertes et autorisées à un moment donné.
Ils référencent la base de règles uniquement lorsqu'une nouvelle connexion est demandée. Les paquets appartenant aux connexions existantes sont comparés à la table d'état des connexions ouvertes du pare-feu et la décision d'autoriser ou de bloquer est prise. Ce processus fait gagner du temps et offre également une sécurité supplémentaire. Aucun paquet n'est autorisé à franchir le pare-feu à moins qu'il n'appartienne à une connexion déjà établie. Il peut expirer les connexions inactives au niveau du pare-feu, après quoi il n'admet plus de paquets pour cette connexion.
Passerelles d'application
Une passerelle au niveau de l'application agit comme un nœud de relais pour le trafic au niveau de l'application. Ils interceptent les paquets entrants et sortants, exécutent des proxys qui copient et transfèrent les informations à travers la passerelle et fonctionnent comme unproxy server, empêchant toute connexion directe entre un serveur ou un client approuvé et un hôte non approuvé.
Les proxys sont spécifiques à l'application. Ils peuvent filtrer les paquets au niveau de la couche application du modèle OSI.
Proxys spécifiques à l'application
Un proxy spécifique à une application accepte les paquets générés uniquement par l'application spécifiée pour laquelle ils sont conçus pour copier, transférer et filtrer. Par exemple, seul un proxy Telnet peut copier, transférer et filtrer le trafic Telnet.
Si un réseau repose uniquement sur une passerelle au niveau de l'application, les paquets entrants et sortants ne peuvent pas accéder aux services pour lesquels aucun proxy n'est configuré. Par exemple, si une passerelle exécute des proxys FTP et Telnet, seuls les paquets générés par ces services peuvent traverser le pare-feu. Tous les autres services sont bloqués.
Filtrage au niveau de l'application
Une passerelle proxy au niveau de l'application examine et filtre les paquets individuels, plutôt que de simplement les copier et de les transmettre aveuglément à travers la passerelle. Les proxies spécifiques à l'application vérifient chaque paquet qui passe par la passerelle, vérifiant le contenu du paquet à travers la couche application. Ces proxys peuvent filtrer des types particuliers de commandes ou d'informations dans les protocoles d'application.
Les passerelles d'application peuvent empêcher l'exécution d'actions spécifiques. Par exemple, la passerelle peut être configurée pour empêcher les utilisateurs d'exécuter la commande «FTP put». Cela peut empêcher la modification des informations stockées sur le serveur par un attaquant.
Transparent
Bien que les passerelles au niveau des applications puissent être transparentes, de nombreuses implémentations nécessitent une authentification des utilisateurs avant que les utilisateurs puissent accéder à un réseau non approuvé, un processus qui réduit la véritable transparence. L'authentification peut être différente si l'utilisateur provient du réseau interne ou d'Internet. Pour un réseau interne, une simple liste d'adresses IP peut être autorisée à se connecter à des applications externes. Mais du côté Internet, une authentification forte devrait être mise en œuvre.
Une passerelle d'application relaie en fait les segments TCP entre les deux connexions TCP dans les deux sens (Client ↔ Proxy ↔ Serveur).
Pour les paquets sortants, la passerelle peut remplacer l'adresse IP source par sa propre adresse IP. Le processus est appelé traduction d'adresses réseau (NAT). Il garantit que les adresses IP internes ne sont pas exposées à Internet.
Passerelle au niveau du circuit
La passerelle de niveau circuit est une solution intermédiaire entre le filtre de paquets et la passerelle d'application. Il s'exécute au niveau de la couche de transport et peut donc servir de proxy pour n'importe quelle application.
Semblable à une passerelle d'application, la passerelle au niveau du circuit n'autorise pas non plus une connexion TCP de bout en bout sur la passerelle. Il met en place deux connexions TCP et relaie les segments TCP d'un réseau à l'autre. Mais, il n'examine pas les données d'application comme la passerelle d'application. Par conséquent, il est parfois appelé «proxy de tuyau».
CHAUSSETTES
SOCKS (RFC 1928) fait référence à une passerelle au niveau du circuit. Il s'agit d'un mécanisme de proxy réseau qui permet aux hôtes d'un côté d'un serveur SOCKS d'obtenir un accès complet aux hôtes de l'autre côté sans nécessiter une accessibilité IP directe. Le client se connecte au serveur SOCKS au niveau du pare-feu. Ensuite, le client entre une négociation pour la méthode d'authentification à utiliser et s'authentifie avec la méthode choisie.
Le client envoie une demande de relais de connexion au serveur SOCKS, contenant l'adresse IP de destination et le port de transport souhaités. Le serveur accepte la demande après avoir vérifié que le client répond aux critères de filtrage de base. Ensuite, au nom du client, la passerelle ouvre une connexion à l'hôte non approuvé demandé, puis surveille étroitement l'établissement de liaison TCP qui suit.
Le serveur SOCKS informe le client, et en cas de succès, commence à relayer les données entre les deux connexions. Les passerelles au niveau du circuit sont utilisées lorsque l'organisation fait confiance aux utilisateurs internes et ne souhaite pas inspecter le contenu ou les données d'application envoyés sur Internet.
Déploiement de pare-feu avec DMZ
Un pare-feu est un mécanisme utilisé pour contrôler le trafic réseau «entrant» et «sortant» d'un réseau interne d'organisation. Dans la plupart des cas, ces systèmes ont deux interfaces réseau, une pour le réseau externe tel qu'Internet et l'autre pour le côté interne.
Le processus de pare-feu peut contrôler étroitement ce qui est autorisé à traverser d'un côté à l'autre. Une organisation qui souhaite fournir un accès externe à son serveur Web peut restreindre tout le trafic arrivant au pare-feu attendu pour le port 80 (le port http standard). Tout autre trafic tel que le trafic de messagerie, FTP, SNMP, etc., n'est pas autorisé à travers le pare-feu vers le réseau interne. Un exemple de pare-feu simple est illustré dans le diagramme suivant.
Dans le déploiement simple ci-dessus, bien que tous les autres accès de l'extérieur soient bloqués, il est possible pour un attaquant de contacter non seulement un serveur Web mais tout autre hôte sur le réseau interne qui a laissé le port 80 ouvert par accident ou autrement.
Par conséquent, le problème auquel la plupart des organisations sont confrontées est de savoir comment permettre un accès légitime aux services publics tels que le Web, le FTP et la messagerie électronique tout en maintenant une sécurité renforcée du réseau interne. L'approche typique consiste à déployer des pare-feu pour fournir une zone démilitarisée (DMZ) dans le réseau.
Dans cette configuration (illustrée dans le diagramme suivant), deux pare-feu sont déployés; un entre le réseau externe et la DMZ, et un autre entre la DMZ et le réseau interne. Tous les serveurs publics sont placés dans la DMZ.
Avec cette configuration, il est possible d'avoir des règles de pare-feu qui autorisent l'accès public aux serveurs publics, mais le pare-feu intérieur peut restreindre toutes les connexions entrantes. En ayant la DMZ, les serveurs publics bénéficient d'une protection adéquate au lieu de les placer directement sur un réseau externe.
Système de détection / prévention des intrusions
Les pare-feu de filtrage de paquets fonctionnent sur la base de règles impliquant uniquement les en-têtes TCP / UDP / IP. Ils n'essaient pas d'établir des contrôles de corrélation entre différentes sessions.
Le système de détection / prévention des intrusions (IDS / IPS) effectue une inspection approfondie des paquets (DPI) en examinant le contenu du paquet. Par exemple, la vérification des chaînes de caractères d'un paquet par rapport à la base de données de virus connus, attaque les chaînes.
Les passerelles d'application examinent le contenu des paquets, mais uniquement pour des applications spécifiques. Ils ne recherchent pas de données suspectes dans le paquet. IDS / IPS recherche les données suspectes contenues dans les paquets et essaie d'examiner la corrélation entre plusieurs paquets pour identifier les attaques telles que l'analyse des ports, le mappage du réseau et le déni de service, etc.
Différence entre IDS et IPS
IDS et IPS sont similaires dans la détection des anomalies dans le réseau. IDS est un outil de «visibilité» alors qu'IPS est considéré comme un outil de «contrôle».
Les systèmes de détection d'intrusion se situent sur le côté du réseau, surveillent le trafic à de nombreux points différents et offrent une visibilité sur l'état de sécurité du réseau. En cas de signalement d'anomalie par IDS, les actions correctives sont initiées par l'administrateur réseau ou un autre appareil sur le réseau.
Les systèmes de prévention des intrusions sont comme un pare-feu et ils sont en ligne entre deux réseaux et contrôlent le trafic qui les traverse. Il applique une politique spécifiée sur la détection d'anomalie dans le trafic réseau. Généralement, il supprime tous les paquets et bloque l'ensemble du trafic réseau en remarquant une anomalie jusqu'à ce qu'une anomalie soit résolue par l'administrateur.
Types d'IDS
Il existe deux types de base d'IDS.
Signature-based IDS
Il a besoin d'une base de données des attaques connues avec leurs signatures.
La signature est définie par les types et l'ordre des paquets caractérisant une attaque particulière.
La limitation de ce type d'IDS est que seules les attaques connues peuvent être détectées. Cet IDS peut également déclencher une fausse alarme. Une fausse alarme peut se produire lorsqu'un flux de paquets normal correspond à la signature d'une attaque.
Un exemple d'IDS public open source bien connu est l'IDS «Snort».
Anomaly-based IDS
Ce type d'IDS crée un modèle de trafic de fonctionnement normal du réseau.
En mode IDS, il examine les modèles de trafic qui sont statistiquement inhabituels. Par exemple, charge inhabituelle ICMP, croissance exponentielle des analyses de ports, etc.
La détection de tout schéma de trafic inhabituel génère l'alarme.
Le défi majeur rencontré dans ce type de déploiement IDS est la difficulté de faire la distinction entre le trafic normal et le trafic inhabituel.
Sommaire
Dans ce chapitre, nous avons discuté des différents mécanismes utilisés pour le contrôle d'accès au réseau. L'approche de la sécurité du réseau via le contrôle d'accès est techniquement différente de l'implémentation de contrôles de sécurité au niveau des différentes couches du réseau décrites dans les chapitres précédents de ce didacticiel. Cependant, bien que les approches de mise en œuvre soient différentes, elles sont complémentaires les unes des autres.
Le contrôle d'accès au réseau comprend deux composants principaux: l'authentification des utilisateurs et la protection des limites du réseau. RADIUS est un mécanisme populaire pour fournir une authentification centrale dans le réseau.
Le pare-feu offre une protection des limites du réseau en séparant un réseau interne de l'Internet public. Le pare-feu peut fonctionner à différentes couches du protocole réseau. IDS / IPS permet de surveiller les anomalies dans le trafic réseau pour détecter l'attaque et prendre des mesures préventives contre celle-ci.