Plan du site  
pixel
pixel

Articles - Étudiants SUPINFO

SSL Decryption sur des Palo Alto Networks NGFW

Par Brice MIRAM-MARTHE-ROSE Publié le 25/04/2020 à 06:42:16 Noter cet article:
(0 votes)
En attente de relecture par le comité de lecture

Objectif du projet

L’objectif de cet article est de mettre en place la fonctionnalité permettant au firewall palo alto de décrypter le trafic sécurisé par SSL. Cette fonctionnalité est très importante car elle est requise pour le bon fonctionnement des fonctions avancées du firewall tel que URL Filtering , Wildfire et d’autres.

URL Filtering: Une fois configurée, cette fonction permettra à notre firewall de d’interdire de surveiller certaines URL ou groupes d’URL. Cependant, dans sa configuration de base le palo alto ne sera capable de filtrer que le trafic http et non https.

Afin que le firewall puisse filtrer le contenu des paquets SSL ( SSL Inspection ) et repérer les malwares , grayware , spam , virus et autre menaces , il est impératif de configurer SSL Decryption.

Fonctionnement

Qu'est ce qu'un certificat SSL ?

Un certificat SSL est ce qui permet à un site web de passer de HTTP à HTTPS, qui est plus sécurisé.

Ce certificat est stocké sur le serveur d'hébergement du site. Il contient la clé public et l’identité du site web à travers plusieurs informations. Les périphériques qui tentent de communiquer avec le serveur d'origine référencent ce fichier pour obtenir la clé publique et vérifier l'identité du serveur. La clé privée est gardée secrète et sécurisée.

Le certificat SSL contient les informations suivantes:

  • Le nom de domaine pour lequel le certificat a été émis,

  • À quelle personne, organisation ou appareil il a été délivré ?

  • Quelle autorité de certification l'a délivré ?

  • La signature numérique de l'autorité de certification,

  • Les sous-domaines associés,

  • La date d'émission du certificat,

  • La date d'expiration du certificat,

  • La clé publique (la clé privée est gardée secrète).

Comment un site obtient un certificat SSL ?

Pour qu'un certificat SSL soit valide, les domaines doivent l'obtenir auprès d'une autorité de certification (CA). Une autorité de certification est une organisation externe, un tiers de confiance, qui génère et délivre des certificats SSL. L'AC signera également numériquement le certificat avec sa propre clé privée, permettant aux appareils clients de le vérifier. La plupart des autorités de certification, mais pas toutes, factureront des frais pour l'émission d'un certificat SSL.

Une fois le certificat émis, il doit être installé et activé sur le serveur d'origine du site Web. Les services d'hébergement Web peuvent généralement gérer cela pour les opérateurs de sites Web. Une fois activé sur le serveur d'origine, le site Web pourra charger via HTTPS tout le trafic à la fois vers et depuis le site Web.

Ainsi , le trafic qui sera crypté et sécurisé.

Qu’est-ce que SSL Handshake ?

Le SSL Handshake est une série de datagrammes ou messages échangés par un client et un serveur. Une prise de contact SSL implique plusieurs étapes, car le client et le serveur échangent les informations nécessaires pour terminer la prise de contact et rendre la conversation possible.

Les clés et les certificats

Les clés sont des chaînes de nombres générées à l'aide d'une opération mathématique impliquant des nombres aléatoires et de grands nombres premiers. Les clés transforment les chaînes, telles que les mots de passe et les secrets partagés, du texte brut non chiffré en texte chiffré et du texte chiffré en texte clair non chiffré. Les clés peuvent être symétriques (la même clé est utilisée pour chiffrer et déchiffrer) ou asymétriques (une clé mathématique est utilisée pour le chiffrement et une autre pour le déchiffrement).

Les certificats X.509 établissent la confiance entre un client et un serveur pour établir une connexion SSL. Un client tentant d'authentifier un serveur (ou un serveur authentifiant un client) connaît la structure du certificat X.509 et sait donc comment extraire des informations d'identification sur le serveur à partir des champs du certificat, tels que :

  • le FQDN ou l'adresse IP (appelé un nom commun ou CN dans le certificat)

  • le nom de l'organisation, du service ou de l'utilisateur auquel le certificat a été délivré.

Une autorité de certification (CA) doit émettre tous les certificats. Après avoir vérifié un client ou un serveur, l'autorité de certification émet le certificat et le signe avec une clé privée.

Lorsque vous appliquez une stratégie de déchiffrement au trafic, une session entre le client et le serveur est établie uniquement si le pare-feu approuve l'autorité de certification qui a signé le certificat du serveur. Pour établir la confiance, le pare-feu doit avoir le certificat d'autorité de certification racine du serveur dans sa liste de certificats de confiance (CTL) et utiliser la clé publique contenue dans ce certificat d'autorité de certification racine pour vérifier la signature.

Le pare-feu présente ensuite une copie du certificat du serveur signé par le certificate forward trust pour que le client s'authentifie. Vous pouvez également configurer le pare-feu pour utiliser une autorité de certification d'entreprise en tant que certificat de confiance de transfert pour le proxy de transfert SSL. Si le pare-feu n'a pas le certificat d'autorité de certification racine du serveur dans son CTL, le pare-feu présentera au client une copie du certificat du serveur signé par le certificate forward untrust.

Le certificate forward untrust garantit que les clients reçoivent un avertissement de certificat lorsqu'ils tentent d'accéder à des sites hébergés par un serveur avec des certificats non approuvés.

Récapitulatif en image :

Autorité de certification

Configuration de l’autorité de certification privé qui nous permettra de valider le certificat du firewall afin d’effectuer le décryptage.

NB : Partons du principe pour cet article que vous avez déjà un DNS et un Active Directory fonctionnel et que vos FQDN fonctionnent parfaitement.

Commencez par ajouter le rôle Service de Certificats Active Directory ( AD CS ).

Puis sélectionner les services de rôle suivant :

  • Autorité de Certification

  • Inscription de l’autorité de certification via le Web

Option : Service d’inscription de périphérique réseau ( vous pouvez dors et déjà l’installer pour vos autres équipements , même si ça nous sera pas utile pour le palo alto )

Faites Suivant puis de nouveau Suivant , installer le rôle puis cliquer sur Configurer les services de certificats Active Directory sur le serveur de destination.

Vous devez tout d'abord configurer les deux premiers rôles.

Nous allons ici sélectionner Autorité de certification d’entreprise , puis suivant.

Maintenant sélectionner : Autorité de certification racine.

Nous allons maintenant créer la clé privée

Puis ensuite , ajouter le composant Certificats pour cela faites touche Windows +R et tapez mmc afin d’ouvrir la console de management windows , faites ensuite fichier puis ajouter un composant . Une fois la liste affichée, sélectionner Certificats et faites ajouter > OK .

Faites un clic droit sur certificats et faites Toutes les tâches > Demander un nouveau certificat

Sélectionner Stratégie d’inscription à l’AD et faites suivant

Sélectionner ensuite Contrôleur de domaine dans la liste des types de certificats à demander

Configuration du firewall

Nous allons maintenant générer le certificat sur le Palo Alto, me concernant j’ai mis les informations suivantes.

Vous obtenez le résultat suivant avec le statut du certificat en pending

Télécharger le certificat du Palo Alto. Ouvrez-le puis copier le contenu.Nous effectuerons une demande de certificat sur notre autorité de certification.

Rendez vous sur l’autorité de certification et ouvrez votre navigateur à l’adresse http://FQDNduserveur/certsrv/

Nous allons effectuez votre demande de certificat en utilisant le certificat précédemment généré sur notre firewall

Nous allons maintenant sélectionner la seconde option.

Nous allons ici coller notre demande de certificat généré via notre firewall.

Selectionner Autorité de certification secondaire

Télécharger le certificat généré en base64

Importer le certificat téléchargé précédemment.

NB: veuillez faire attention à utiliser exactement le même nom que le certificat généré sur le firewall.

Le certificat est maintenant valide .

Nous allons maintenant télécharger le certificat de l’autorité de certification ( 3eme lien ).

Le renommer en Root puis faites un clic droit sur celui-ci, afin de générer un second certificat pour notre firewall .Faites copier dans un fichier et sélectionnervx.509 encodé en base64 et donnez-lui le nom de RootCA

Nous allons maintenant importer le certificat RootCA ( certificat de notre autorité de certification généré par notre serveur ) sur notre firewall.

Vous obtenez le résultat suivant :

Nous allons maintenant générer un certificat pour la partie de notre firewall qui est exposé à internet. Nous le nommerons Internet

Revenons à notre certificat interne DecrytLAN , et sélectionnons Forward Trust Certificate

NB: si vous utilisez une autorité de certification auto-signée, exportez le certificat d'autorité de certification publique à partir du pare-feu.

Installez ce certificat en tant qu'autorité de certification racine de confiance sur le navigateur de chaque machine , afin d'éviter les messages d'erreurs de certificat non approuvé dans votre navigateur.

Les administrateurs réseau utilisent généralement une GPO pour pousser ce certificat vers chaque poste de travail.

Forward Trust Certificate: ce certificat sera présenté à l’utilisateur si le certificat de l'application ou le site web visiter est de confiance.

Forward Untrust Certificate: ce certificat auto-signé par le firewall lui-même sera présenté à l’utilisateur si le site visité n’a pas de certificat valide

NB: ne définissez jamais les deux cases à cocher "Forward Trust Certificate" et "Forward Untrust Certificate" dans le même certificat, et ne disposez pas du ""Forward Trust Certificate" déployé sous une chaîne de certificats de confiance. Si vous procédez ainsi, le pare-feu présentera aux périphériques clients un certificat CA auquel ils font confiance, même lorsqu'ils se connectent à des sites Web ou à des applications présentant des certificats non valides au pare-feu.

Règles de decryptage SSL

Nous allons créer nos règles de décryptage SSL. Faites attention à l’ordre .

Placé la règle d'interdiction permettant de ne pas décrypter certains paquets en premier.

Comme d’habitude si vous voyez des paquets , c’est que notre règle fonctionne .

Rendez-vous maintenant sur n'importe quel site et regarder le certificat utilisé.

Nous voyons en détail que le firewall identifie à l’utilisateur interne de l’entreprise qu’il est le serveur du site visité.

Il est possible de personnaliser le profil de décryptage en fonction de vos politiques de sécurité. Pour cela rendez-vous dans Objects > Decryption > Decryption profile

Nous pouvons par exemple pour les sites dont le trafic est decrypté :

  • bloquer les sessions avec un certificat obsolète,

  • bloquer les sessions dont les autorités de certifications émettrices n’ont pas pu être vérifiées par le firewall.

Plusieurs options sont alors possibles.

Conclusion

Notre article est terminé et vous pouvez dès à présent faire les actions suivantes :

  • décrypter le trafic HTTPS,

  • mieux exploiter URL Filtering , Autofocus , Wildfire et autre,

  • ajouter une couche de sécurité,

  • mieux protéger vos utilisateurs.

A propos de SUPINFO | Contacts & adresses | Enseigner à SUPINFO | Presse | Conditions d'utilisation & Copyright | Respect de la vie privée | Investir
Logo de la société Cisco, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société IBM, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Sun-Oracle, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Apple, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Sybase, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Novell, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Intel, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Accenture, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société SAP, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Prometric, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Toeic, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo du IT Academy Program par Microsoft, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management

SUPINFO International University
Ecole d'Informatique - IT School
École Supérieure d'Informatique de Paris, leader en France
La Grande Ecole de l'informatique, du numérique et du management
Fondée en 1965, reconnue par l'État. Titre Bac+5 certifié au niveau I.
SUPINFO International University is globally operated by EDUCINVEST Belgium - Avenue Louise, 534 - 1050 Brussels