Firewall (pare-feu)
Un pare-feu peut être défini comme un type spécial de dispositif de sécurité réseau ou un programme logiciel qui surveille et filtre le trafic réseau entrant et sortant en fonction d'un ensemble défini de règles de sécurité. Il agit comme une barrière entre les réseaux privés internes et les sources externes (comme l'Internet public).
L'objectif principal d'un pare-feu est d'autoriser le trafic non menaçant et d'empêcher le trafic de données malveillantes ou indésirables afin de protéger l'ordinateur des virus et des attaques. Un pare-feu est un outil de cybersécurité qui filtre le trafic réseau et aide les utilisateurs à empêcher les logiciels malveillants d'accéder à l'internet dans les ordinateurs infectés.
Outre les pare-feu logiciels et matériels, il existe des pares-feux basés sur le cloud. Ils sont communément appelés FaaS (firewall as a service). L'un des principaux avantages de l'utilisation de pare-feu basés sur le cloud est qu'ils peuvent être gérés de manière centralisée. Comme les pares-feux matériels, les pares-feux basés sur le cloud sont surtout connus pour assurer la sécurité du périmètre.
Mécanismes de sécurité du pare-feu
Le mécanisme de sécurité pare-feu est inséré entre le réseau local et Internet pour établir un lien contrôlé et ériger un mur ou un périmètre de sécurité extérieur. Le pare-feu peut être considéré comme une paire de mécanismes ; un qui existe pour bloquer le trafic et un autre qui existe pour autoriser le trafic. La fonction principale d'un pare-feu est de protéger un réseau d'entreprise contre les attaques basées sur Internet tout en permettant aux utilisateurs d'accéder à Internet depuis l'intérieur de l'entreprise en toute sécurité.
Un pare-feu fonctionne comme :
- Routeurs de filtrage de paquets
- Pare-feu d'inspection avec état
- Hôtes bastions
- Network address translators
- Passerelles au niveau du circuit
- Proxy au niveau de l'application
- Pare-feu proxy
En général, les divers mécanismes de sécurité des pares-feux s'adressent à des couches spécifiques du modèle de référence OSI, comme le montre la figure ci-dessous. Plusieurs mécanismes peuvent être combinés dans un système de pare-feu complet, mais les mécanismes doivent être choisis et coordonnés de manière à ne pas fonctionner les uns contre les autres.
Un pare-feu peut être basé sur l'hôte ou sur le réseau. Un pare-feu basé sur l'hôte est installé sur un ordinateur (hôte) ou déjà fourni par le système d'exploitation en tant que fonction logicielle logiciel, tel que le pare-feu du système Microsoft Windows ou le pare-feu des tables IP fourni avec la plupart des systèmes Linux. Les pares-feux de réseau sont des dispositifs qui ont été développés spécialement pour servir de pare-feu et qui sont placés dans le réseau, plutôt que sur un PC. Ces pare-feu hôtes, ou matériels, sont des éléments importants des réseaux d'entreprise, en particulier lorsqu'ils sont connectés à des réseaux externes ou lorsque des transmissions filaires sont associées à des technologies de réseau moins sûres.
Filtrage de paquets
Le pare-feu à filtrage de paquets est l'un des pares-feux les plus élémentaires. La première étape de la protection des utilisateurs internes contre les menaces du réseau externe consiste à mettre en œuvre ce type de pare-feu. La plupart des routeurs intègrent le filtrage des paquets, mais leur problème est qu'ils sont difficiles à configurer et ne fournissent pas de journaux détaillés des incidents. Ainsi, tout ce qui parvient au réseau interne passe par le pare-feu. De plus, tout trafic sortant passera également par le pare-feu avant de quitter complètement le réseau. En raison de ces fonctions, ce type de filtre pare-feu est également appelé routeur de filtrage. Chaque paquet a un en-tête qui fournit les informations sur le paquet, sa source et sa destination, etc. Le pare-feu de filtrage de paquets inspecte ces paquets pour les autoriser ou les refuser. Les informations peuvent être mémorisées ou non par le pare-feu. Chaque paquet est comparé à un ensemble de règles de filtrage et en fonction de toute correspondance, le paquet est soit autorisé, soit refusé, soit abandonné.
Les types d'informations utilisées par les filtres de paquets incluent :
- Adresse IP source du paquet. Ceci est nécessaire car l'usurpation d'adresse IP peut avoir modifié l'adresse IP source pour refléter l'origine d'un paquet provenant d'un autre endroit, plutôt que de remplacer la source originale.
- Adresse IP de destination. Les règles du pare-feu doivent vérifier l'adresse IP plutôt que les noms DNS. Cela permet d'éviter les abus des serveurs DNS.
- ID du protocole IP.
- Numéro de port TCP/UDP.
- Type de message ICMP.
- Drapeaux de fragmentation.
- Paramètres des options IP
Les filtres de paquets peuvent être mis en œuvre à l'aide de listes de contrôle d'accès (ACL), que l'on trouve couramment dans certains routeurs. Le filtre de paquets examine chaque paquet par rapport aux ACL pour trouver des correspondances. Si une correspondance est trouvée, le paquet est autorisé ou non à passer par l'interface. Si aucune correspondance n'est trouvée, le paquet est implicitement refusé.
Types de filtrage de paquets
Un pare-feu à filtrage de paquets ne laisse passer que les paquets qui sont autorisés conformément à votre politique de pare-feu. Chaque paquet qui passe est inspecté, puis le pare-feu décide de le laisser passer ou non. Le filtrage de paquets peut être divisé en deux parties :
- Filtrage des paquets sans état.
- Filtrage des paquets avec état.
Filtrage de paquets sans état
Si les informations sur les paquets qui passent ne sont pas mémorisées par le pare-feu, ce type de filtrage est appelé filtrage de paquets sans état. Ces types de pare-feu ne sont pas assez intelligents et peuvent être trompés très facilement par les pirates. Ceux-ci sont particulièrement dangereux pour les types de paquets de données UDP. La raison en est que les décisions d'autorisation/refus sont prises paquet par paquet et qu'elles ne sont pas liées aux paquets autorisés/refusés précédents.
Filtrage de paquets avec état
Si le pare-feu se souvient des informations sur les paquets précédemment transmis, ce type de filtrage est un filtrage de paquets avec état. Ceux-ci peuvent être appelés pares-feux intelligents. Ce filtrage de paquets est également appelé filtrage de paquets dynamique. Dans la méthode de filtrage de paquets avec état, le processus de filtrage de paquets va au-delà du filtrage de base de paquets. Il garde une trace de l'état des flux de connexion pour tous les paquets, dans les deux sens. Il garde également une trace de toutes les adresses IP actuellement connectées à tout moment.
Passerelles au niveau du circuit
De nombreux pare-feu intègrent désormais un support pour Socks (dont le nom dérive de Unix Sockets), un logiciel qui permet aux applications d'accéder à une variété de protocoles de communication. Socks peut donc gérer de nombreux types de trafic différents, en acheminant les paquets entre les clients et les serveurs compatibles du réseau non sécurisé et du réseau protégé. En fait, il forme un circuit entre un client et un serveur, comme le montre la figure ci-dessous, mais il agit également comme un proxy, en ne transmettant que les paquets jugés acceptables.
Filtre proxy
Les filtres proxy, également appelés serveurs proxy d'application, s'étendent au-delà de la portée des filtres de paquets en examinant les informations des couches de transport et d'application du modèle TCP/IP. Un serveur proxy se situe entre le client et la destination et sert d'intermédiaire entre les deux parties communicantes, comme dans la figure ci-dessous. Cela nécessite que le client établisse une session avec le proxy lui-même, qui à son tour crée une deuxième session entre lui et la destination. Considérons, par exemple, un ordinateur client qui demande des informations à un site Web distant. Le client crée une session avec le serveur proxy, qui peut alors authentifier l'utilisateur pour un accès valide à Internet avant de créer une deuxième session entre le site Web et lui-même. Au fur et à mesure que les informations reviennent du site Web, le serveur proxy examine les couches de transport et d'application pour une connexion valide au réseau interne.
Bien que les proxys puissent fournir certaines des mesures de protection les plus efficaces, ils peuvent introduire des problèmes de vitesse et de performances, en particulier lorsqu'un grand nombre de sessions sont négociées simultanément. Ils sont également construits sur des systèmes d'exploitation à usage général tels que Unix, Linux ou Microsoft Windows, ce qui peut les rendre vulnérables aux attaques liées au système d'exploitation.
Pare-feu proxy inverse
Un pare-feu proxy inverse fonctionne de la même manière que les pare-feu proxy, à l'exception du fait qu'ils sont utilisés pour protéger les serveurs et non les clients.
Les clients qui se connectent au serveur Web peuvent, sans le savoir, être envoyés vers le serveur proxy, qui traite les demandes au nom du client. Le serveur proxy peut également être en mesure d'équilibrer la charge des requêtes entre plusieurs serveurs, répartissant ainsi la charge de travail