Adapter son réseau à une approche zero trust
Les entreprises migrent vers un environnement de sécurité plus agile et granulaire baptisé zero trust, mieux adapté au business du monde numérique d'aujourd'hui. Mais le réseau doit suivre.
Dans une architecture Zero Trust, l'accès des utilisateurs aux ressources du réseau doit être juste suffisant pour leur permettre d'accomplir leurs tâches professionnelles, et rien d'autre. Et le réseau peut aussi avoir un rôle à jouer. Autrement dit, une architecture Zero Trust impose de vérifier chaque utilisateur et chaque appareil qui tentent d'accéder au réseau et de leur appliquer un contrôle d'accès et une gestion des identités stricts de façon à permettre aux utilisateurs autorisés de n'accéder qu'aux ressources dont ils ont besoin pour faire leur travail. Il existe de nombreuses solutions pour mettre en place une sécurité Zero Trust. Mais voici un aperçu de celles qui s'inscrivent dans une problématique de réseau.
Le moindre privilège
L'un des grands principes du Zero Trust est celui du moindre privilège. Le moindre privilège consiste à accorder aux individus un accès juste suffisant aux ressources pour leur permettre d'effectuer leur travail et rien de plus. La segmentation du réseau est l'un des moyens d'y parvenir. La segmentation divise le réseau en sections accessibles ou non en fonction de l'authentification, de la confiance, du rôle de l'utilisateur et de la topologie. Une mise en oeuvre efficace de la segmentation permet d'isoler un hôte sur un segment et de réduire au minimum ses communications latérales ou est-ouest, limitant ainsi les dommages collatéraux en cas de compromission d'un hôte. Étant donné que les hôtes et les applications ne peuvent atteindre que les ressources limitées pour lesquelles ils disposent d'une autorisation d'accès, la segmentation empêche les attaquants de s'introduire dans le reste du réseau.
Les entités se voient accorder l'accès et sont autorisées à accéder aux ressources en fonction du contexte : Quel est l'individu qui tente d'accéder aux ressources ? Quel appareil utilise-t-il pour accéder au réseau ? Quelle est sa localisation ? Comment communique-t-il et pourquoi a-t-il besoin d'accéder au réseau ? Il existe d'autres méthodes pour mettre en oeuvre la segmentation, l'une des plus anciennes n'étant rien d'autre que la séparation physique. Cette dernière consiste à mettre en place des réseaux séparés physiquement, avec leurs propres serveurs, câbles et dispositifs de réseau dédiés, avec pour chaque réseau, des niveaux de sécurité différents. Même si cette méthode a fait ses preuves, la mise en place d'environnements totalement étanches peut coûter cher si l'on veut appliquer des niveaux de confiance et un rôle à chaque utilisateur.
Segmentation Layer-2
La segmentation au niveau de la couche liaison de données (2) ou Layer-2 offre une autre solution. Dans ce cas, les utilisateurs finaux et leurs appareils sont isolés par un filtrage de sécurité en ligne entre l'appareil et le commutateur d'accès. Mais l'installation d'un pare-feu entre chaque utilisateur et le commutateur peut s'avérer très coûteuse. Une alternative consiste à instaurer un contrôle d'accès au réseau basé sur les ports, lequel permet d'accorder l'accès et d'assigner chaque noeud à un réseau local virtuel (VLAN) de couche 3 (Layer-3) basé sur l'authentification ou un certificat suppliant. Ces méthodes sont couramment employées sur les réseaux d'accès câblés et sans fil via la norme 802.1x et le protocole d'authentification extensible. Cependant, les entreprises ne tirent pas toujours parti de toutes les fonctionnalités offertes par les suites des fournisseurs, qui permettent souvent de créer des configurations d'accès en fonction du rôle de l'utilisateur final, de gérer les identifiants d'authentification, le type de dispositif et d'effectuer un filtrage avancé du trafic, et de segmenter les utilisateurs en fonction de leur niveau de confiance. Autant de mesures qui permettraient de renforcer la sécurité.
Segmentation Layer-3
Une méthode courante pour créer des enclaves d'applications consiste à séparer les câbles d'accès et les ports en sous-réseaux de couche 3 - VLAN - et à effectuer un filtrage en ligne. Ce filtrage peut être effectué par un dispositif réseau comme un routeur, un pare-feu dynamique ou un serveur proxy qui a une certaine connaissance des identités et des rôles des utilisateurs. L'exemple typique est celui d'une architecture standard d'application web à trois niveaux où les serveurs web, les serveurs d'applications et les serveurs de bases de données se trouvent dans des sous-réseaux distincts. Une autre méthode dite de découpage du réseau reprend l'approche de mise en réseau SDN, où le réseau est logiquement séparé en tranches, comme dans les contextes de routage et de transfert virtuels. Une approche moderne consisterait à attribuer à chaque serveur son propre sous-réseau IPv4 ou préfixe IPv6/64 et à lui faire annoncer son sous-réseau aux routeurs du réseau, comme expliqué ici. Tout le trafic au sein de ce sous-réseau de serveurs s'effectue en local à l'intérieur de ce serveur, empêchant tout autre infiltration de se produire sur ce réseau virtuel à l'intérieur de cet hôte.
L'encapsulation du trafic dans des tunnels superposés courant au-dessus d'un réseau IP peut également permettre une segmentation de réseau. Il y a différentes manières d'y parvenir : un réseau LAN extensible virtuel, une virtualisation du réseau par encapsulation générique du routage, par encapsulation générique de la virtualisation du réseau, le Stateless Transport Tunneling (STT) et le délestage de segmentation TCP (TSO). Le balisage des paquets - le marquage des paquets avec des identificateurs internes - peut être utilisé pour instaurer une confiance entre les interfaces et bloquer ou non les paquets des appareils des utilisateurs finaux en fonction de leur identité et de leur autorisation. Il est possible de réaliser des marquages par protocole comme MPLS, 802.1ad Q-in-Q, 802.1AE MACsec et Cisco TrustSec. Une version moderne de cette méthode est le routage par segments, dans lequel un en-tête de routage spécial est utilisé dans un paquet IPv6 pour contrôler le chemin de communication sur les réseaux MPLS ou IPv6.
Recommandations du NIST
Le National Institute of Standards and Technology (NIST) a établi une liste des composantes logiques d'une architecture Zero Trust et il a fourni des définitions pour différents types de déploiement. Cette liste inclut la validation et l'authentification des utilisateurs sur la base de points de décision en matière de politiques et de points d'application en matière de politiques. Cette approche est similaire à la façon dont la Cloud Security Alliance a conçu à l'origine la notion de périmètre défini par logiciel (SDP). Selon cette méthode, un contrôleur SDP authentifie les utilisateurs, puis notifie une passerelle SDP pour permettre l'accès à une application spécifique en fonction du rôle et de l'autorisation de l'utilisateur. Le processus peut utiliser la méthode classique avec nom d'utilisateur et mot de passe, ou la nouvelle méthode d'authentification multi-facteurs (MFA) avec un mot de passe à usage unique, un jeton logiciel, un jeton matériel, une application mobile ou un message texte. Une autre méthode, appelée autorisation par paquet unique ou knocking de port, utilise le navigateur ou l'application du client pour envoyer un ensemble de paquets au contrôleur SDP qui identifie l'utilisateur et son appareil.
Il existe des méthodes très variées de micro-segmentation, d'isolation de l'hôte et de mise en réseau Zero Trust. Certaines sont mises en oeuvre dans les dispositifs de réseau, dans les serveurs eux-mêmes, dans les systèmes de contrôle des identités et des accès, ou dans des dispositifs intermédiaires ou middleboxes, comme les serveurs proxy et les pares-feux. De multiples méthodes Zero Trust peuvent être mises en oeuvre dans le système d'exploitation hôte, dans les réseaux virtuels de conteneurs de logiciels, dans l'hyperviseur ou dans une infrastructure de cloud virtuel avec SDP ou un fournisseur d'accès internet.
Une mise en oeuvre pluridisciplinaire
De nombreuses méthodes Zero Trust impliquent également la présence d'un agent logiciel sur le noeud de l'utilisateur final, ainsi que des certificats X.509, des TLS mutuels (mTLS), une authentification par paquet unique (SPA) et une MFA. Toutes ces méthodes ne peuvent pas être entièrement mises en oeuvre par le réseau, le serveur ou les administrateurs de la sécurité, par eux-mêmes. Mises en oeuvre de concert, en particulier grâce à la collaboration d'une équipe IT interdisciplinaire, toutes ces techniques permettent d'obtenir une architecture de réseau Zero Trust robuste.