Dans cette troisième partie de notre série, nous discuterons des trois différents types de certificats TLS / SSL, des trois formes de validation et de la manière de les générer.
Dans les parties 1 et 2 de cette série, nous avons définis le protocole, sa terminologie et ses bases. Dans ce troisième volet, nous décrirons les certificats TLS / SSL et leur utilisation.
Comme nous l’avons déjà vu, une connexion sécurisée peut être utilisée pour crypter des données et protéger nos données contre l’exposition à des tiers.
Pour que le chiffrement ait lieu, le serveur doit utiliser un certificat TLS / SSL. Un certificat TLS / SSL lie essentiellement une identité à une paire de clés qui sont ensuite utilisées par le serveur pour crypter et signer les données.
Autorité de certification (CA)
Une autorité de certification est une entité qui émet des certificats TLS / SSL ou numériques. Ces autorités ont leur propre certificat pour lequel elles utilisent leur clé privée pour signer le certificat TLS / SSL ou numérique délivré. Ce certificat est connu sous le nom de certificat racine.
Le certificat racine de l’autorité de certification, et donc la clé publique, est installé et approuvé par défaut dans les navigateurs tels que Chrome, Firefox et Edge. Ceci est nécessaire pour valider que le certificat d’un site Web visité a été signé par la clé privée de l’AC. Parmi les autorités CA les plus connues, on a Comodo, GlobalSign, DigiCert, GeoTrust, Thawte et Symantec.
Types de certificats TLS / SSL
Les certificats TLS / SSL sont disponibles dans différents types, regroupés par niveau de validation ou configuration de domaine.
Single-Domain (Domaine unique)
Ce type de certificat est utilisé pour sécuriser uniquement un nom d’hôte (ou un nom de domaine complet (FQDN) de nom de domaine complet) ou un sous-domaine. Par exemple, vous pouvez obtenir un certificat pour www.example.com ou my.example.com. Dans tous les cas, mail.example.com ne sera pas sécurisé. Ni aucun autre sous-domaine. Le certificat ne sera valide que pour le nom d’hôte que vous spécifiez lors de l’enregistrement.
Wildcard (générique)
Ce type de certificat est utilisé pour sécuriser un domaine entier avec tous ses sous-domaines. Par exemple, * .example.com est utilisé dans l’enregistrement, ce qui signifie que tous les fichiers mail.example.com, secret.example.com, admin.example.com seront sécurisés (ainsi que tout autre sous-domaine). Gardez à l’esprit que chaque domaine peut être pointé vers un serveur différent. Le même certificat peut être utilisé sur plusieurs serveurs tant que le domaine est le même.
Multi-domaine
Ce type de certificat est utilisé pour sécuriser plusieurs noms de domaine différents.
Validation de certificat TLS / SSL
Validation de domaine
Il validera seulement que la personne qui demande un certificat est le propriétaire du nom de domaine (ou a au moins une sorte d’accès pour le faire). Ce type de validation ne prend généralement que quelques minutes, mais peut prendre jusqu’à quelques heures.
Validation de l’organisation
L’autorité de certification (CA) non seulement valide la propriété du domaine mais aussi l’identité du propriétaire. Cela signifie qu’un propriétaire peut être invité à fournir des documents d’identification personnels qui prouvent son identité. La validation peut prendre plusieurs jours avant que le certificat soit délivré.
Validation étendue (EV)
C’est le plus haut niveau de validation et il inclut la validation de la propriété du domaine, l’identité du propriétaire, ainsi que la preuve d’enregistrement légal d’une entreprise.
Génération de certificat
Pour qu’une autorité de certification émette un certificat, elle doit d’abord avoir la RSC de notre serveur, qui signifie Demande de signature de certificat (Certificat Signing Request). Nous créons d’abord une clé privée qui sera utilisée pour décrypter notre certificat, puis nous générons un CSR.
Lors de la création du CSR, il nous sera demandé de spécifier le nom de domaine ainsi que des détails sur notre organisation tels que le nom, le pays et le courrier électronique. L’exemple suivant montre un CSR:
Le CSR est ensuite soumis à l’autorité de certification afin de créer notre certificat. Lorsque le certificat est prêt, il sera envoyé à notre email au format * .crt et il devra ensuite être installé sur le serveur.
Navigation sécurisée
Identifier si un site Web a un certificat valide et que vous êtes sur une connexion sécurisée est très facile. Tout ce que vous avez à faire est de regarder l’état de la barre d’URL en haut à gauche de notre écran (il est similaire dans tous les principaux navigateurs).
Le verrou vert avec le protocole https: // indique que la connexion au serveur Web est cryptée et sécurisée.
Navigation non sécurisée
Identifier un site Web non sécurisé est tout aussi facile. Il n’y a pas de verrou vert et il n’y a aucune mention de HTTPS.
Toutefois, l’identification d’un site Web non sécurisé utilisant le protocole HTTPS peut être difficile si vous êtes un utilisateur non expérimenté. La raison en est que même si le site Web utilise un certificat SSL / TLS et que HTTPS est utilisé, certaines parties du contenu sont transmises via HTTP.
Dans ce cas, en fonction du navigateur, nous verrons l’un des éléments suivants:
C’est ce que nous appelons le contenu mixte. Les vulnérabilités de contenu mixte vont à l’encontre de l’objectif d’une connexion sécurisée, d’autant plus que lorsque vous demandez des fichiers à partir d’un site Web auquel nous sommes connectés, le navigateur envoie automatiquement nos cookies d’authentification le long de la requête.
Par conséquent, si une ressource, telle qu’une image, est chargée à l’aide de HTTP, notre requête envoyée via HTTP n’est pas cryptée; ce qui signifie qu’un hacker reniflant le réseau pourra voir cette requête en clair. Cela compromet la sécurité d’une session « sécurisée », car un hacker peut désormais utiliser le cookie pour se connecter au site Web et usurper l’identité d’une victime.