Toutes les organisations, entreprises, administrations ayant opéré leur transformation digitale effectuent des transactions sur Internet. Que ce soit par l’intermédiaire d’un intranet, d’un extranet, d’un e-shop pour le commerce électronique, d’un site Web demandant des informations via un formulaire ou par un simple service de messagerie.

Désormais, les visiteurs et utilisateurs de ces portails Web interagissent avec ces derniers par l’intermédiaire d’un navigateur web pour s’informer, communiquer, ou faire des achats.

Toutefois, Internet possède son lot de failles de sécurité, notamment en matière de confidentialité  des échanges. Il est donc essentiel pour l’image d’une entreprise et pour sa crédibilité que ces problèmes soient traités en amont afin de supprimer les risques d’interception de données sensibles par des individus malveillants.

Les internautes sont de plus en plus sensibilisés aux affaires de vol de données privées et ils n’enverront des informations sur Internet que s’ils sont sûrs que leurs données personnelles (mot de passe, numéro de carte de crédit, données financières, dossier médical, email, formulaire de demande de renseignement,…) sont sécurisées.

En installant un certificat TLS sur un serveur Web ou un serveur de messagerie électronique, les données confidentielles transitent en toute sécurité. Il garantit aux utilisateurs que leurs échanges sont chiffrés et donc sécurisés.

La confiance est un élément essentiel dans le domaine des échanges et des transactions en ligne. C’est pourquoi les signes visibles de la sécurisation d’un site Web font partie des éléments pris en compte par les internautes soucieux de protéger leurs informations en ligne.

Ce guide permet de faire le point sur :

  • Les enjeux de la sécurité sur Internet
  • Les notions de cryptographie et d’Autorité de Certification
  • La technologie des certificats TLS

 

Le protocole TLS et les certificats numériques

En 1995, la société Netscape a développé le protocole SSL (Secure Socket Layer) qui s’est imposé comme le mode de sécurisation privilégié des transmissions de données sur Internet. L’IETF, en a poursuivi le développement en le rebaptisant Transport Layer Security (TLS). On parle aussi de SSL/TLS pour désigner indifféremment SSL ou TLS. Intégré aux principaux navigateurs et serveurs Web, ce protocole utilise des techniques de cryptage qui s’appuient sur un système dit “asymétrique” à clé publique et clé privée.

L’établissement d’une connexion TLS nécessite l’installation d’un fichier appelé “certificat numérique” sur le serveur Web. Ce certificat, répondant à la norme X.509, utilise les clés publiques et privées pour le cryptage, et identifie le serveur de manière unique et définitive. Les certificats numériques s’apparentent à une forme de carte d’identité électronique qui permet au client (le navigateur) d’authentifier le serveur avant l’établissement d’une communication cryptée.

 

Les risques encourus par un site Internet non sécurisé

La confiance et la sécurité des échanges sont les conditions nécessaires et essentielles pour le développement du commerce électronique et des transactions sur Internet.

Lors des transactions menées dans le monde physique, la sécurité est basée sur des éléments tangibles. Les clients acceptent les risques liés à l’utilisation de leurs cartes de crédit dans les magasins. Ils peuvent voir et toucher la marchandise et se faire une opinion sur le vendeur.

Sur Internet, sans toutes ces données physiques, il est beaucoup plus difficile d’évaluer si un magasin est sérieux. De plus, au cours des dernières années, d’importants risques de sécurité ont été mis au jour et il ne se passe pas une semaine sans qu’une fraude virtuelle ou un vol de données ne soit annoncé dans les médias.

En prenant conscience des risques relatifs aux transactions en ligne et conserver la confiance des utilisateurs, les entreprises doivent acquérir des solutions de sécurité perfomantes permettant de se protéger contre plusieurs types d’attaques :

  • Phishing : Le faible coût de développement d’un site Web et la facilité avec laquelle on peut copier des pages existantes favorisent l’émergence de sites pirates (technique du phishing). Ainsi des personnes malveillantes arrivent à obtenir illégalement des numéros de cartes de crédit mais aussi des mots de passe en créant des sites vitrines à l’apparence professionnelle qui imitent de véritables enseignes.
  • Divulgation non autorisée : Lorsque des informations de transaction sont transmises «en clair», les pirates peuvent les intercepter pour obtenir des informations confidentielles sur des utilisateurs et des clients.
  • Action non autorisée : Un hacker, un fraudeur peut modifier votre site Internet afin de refuser aux clients l’accès à ses services, ou simplement l’empêcher de fonctionner.
  • Modification des données : Le contenu d’une transaction peut être intercepté et altéré en cours d’acheminement. Les noms d’utilisateurs, les numéros de cartes de crédit et m

 

L’ensemble des études montrent que la cybercriminalité augmente fortement et notamment en France comme le montre le graphique ci-dessous tiré de l’enquête “Global Economic Crime Survey 2016” menée par la société PwC.

 

La cybercriminalité, véritable fléau qui touche désormais deux entreprises sur trois en France, est potentiellement synonyme de pertes financières pour les entreprises, de risques pour les utilisateurs de leurs services et est globalement nuisible à la e-réputation d’une marque.

L’étude “Net Losses: Estimating the Global Cost of Cybercrime” réalisée en 2014 par McAfee évalue à plus de 400 milliards de dollars le coût de la cybercriminalité mondiale.

Pour en savoir plus les risques de la cybercriminalité et ses conséquences vous pouvez vous reporter à notre livre blanc : “Pourquoi est-il essentiel d’utiliser un certificat SSL”.

 

  1. Reconnaître et consulter les informations d’un site Web sécurisé par un certificat SSL

On reconnaît facilement un site Web utilisant un certificat SSL grâce à la présence d’un petit symbole dans la barre de statut des navigateurs web (cadenas ou clé) et/ou par le préfixe « https:// » en tête des URL affichées dans la barre d’adresse de ces navigateurs.

La totalité des navigateurs du marché supporte le protocole SSL. L’affichage de la sécurisation par SSL varie cependant légèrement entre les différents navigateurs.

Pour consulter le détail des informations du certificat SSL, il suffit de cliquer sur l’icône du cadenas. Une fenêtre s’ouvre et vous donne les informations relatives au propriétaire du certificat et du site Web qui l’utilise.

Pour visualiser les informations du certificat SSL, il suffit de cliquer sur le lien indiquant le domaine sécurisé (*.ssl-europa.com sur notre exemple ci-dessous) puis de consulter les trois onglets “Général”, “Détails” et «Chemin d’accès de certification».

1- L’onglet «Général» donne les informations relatives au certificat, à savoir : son utilisation (authentification d’un serveur), le nom du site pour lequel il a été généré, l’Autorité de Certification qui l’a délivré et la période de validité. Si une des informations n’est pas valide (par exemple : autorité non reconnue, adresse du site ne correspondant pas, date de validité dépassée), vous serez averti par le navigateur via un message d’alerte et la session ne sera pas ouverte automatiquement.

2- L’onglet «Détails» permet de visualiser le contenu des différents champs du certificat :

  • Nom du domaine à certifier
  • Coordonnées de l’entreprise à qui appartient le certificat SSL
  • Clé publique du certificat (permettant le chiffrement)
  • Date de validité et d’expiration du certificat SSL
  • Nom de l’Autorité de Certification qui émet le certificat SSL
  • Signature de l’Autorité de Certification

3- L’onglet, «Chemin d’accès de certification» donne accès au chemin de certification. A noter que le navigateur précise que le certificat est valide. Cela signifie qu’en plus des informations obtenues via l’onglet général, le navigateur a vérifié, grâce à la clé publique de l’Autorité de Certification, que la signature du certificat est valide.

 

  1. Notions d’Autorité de Certification

En cryptographie, une Autorité de Certification (AC), ou (CA) pour Certificate Authority en anglais, est un tiers de confiance permettant de valider l’identité des correspondants. Une Autorité de Certification délivre des certificats décrivant des identités numériques et met à disposition des moyens techniques pour vérifier la validité de ces derniers.

 

Les rôles d’une Autorité de Certification

Les services des Autorités de Certification sont notamment utilisés dans le cadre de la sécurisation des communications numériques via le protocole SSL/TLS qui est utilisé pour sécuriser les communications web (HTTPS).

Lors de la délivrance du certificat, l’Autorité de Certification signe numériquement tous les certificats émis. Chaque navigateur contient une liste des Autorités de Certification dites “de confiance”. Lorsque la connexion SSL est établie, le navigateur vérifie que le certificat du serveur a été émis par une Autorité de Certification digne de confiance. Si cette autorité n’est pas digne de confiance, un message d’alerte s’affiche.

Les obligations d’une Autorité de Certification s’organisent autour de deux fonctions distinctes :

  • Fonction d’organisation : traitement des demandes de certificats, contrôle des informations, validation ou rejet des demandes, révocation des certificats.
  • Fonction technique : manipulation d’équipements cryptographiques, environnement sécurisé de bout en bout, maintien d’une capacité de production adaptée aux besoins de fonctionnement de l’Autorité de Certification.

Pour offrir son service de certificats SSL, l’Autorité de Certification peut s’appuyer d’une part sur une Autorité d’Enregistrement (AE), qui traite les aspects organisationnels, et, d’autre part, sur une unité de production (l’opérateur de services de certification), qui crée les certificats.

Une relation de confiance hiérarchique peut lier des AC successives. Une Autorité est à la base de toutes ces AC, on l’appelle Autorité de Certification Racine (Root CA en anglais). Elle est prise comme référence par la communauté d’utilisateurs des certificats émis par ces AC. La réputation de l’Autorité est directement liée au degré de confiance qui est accordée au certificat.

 

Comment reconnaître une Autorité de Certification (AC) de confiance ?

Les Autorités de Certification dites de confiance, sont des entités qui mettent en place des procédures de production de certificats SSL respectant des règles internationales du CAB Forum (https://cabforum.org/). Elles ont pour obligation de se soumettre à des audits annuels et doivent présenter leur certification aux éditeurs de confiance. Ci-dessous, la liste des AC racines de confiance.

La liste des Autorités de Certifications reconnues est accessible depuis n’importe quel navigateur internet. Dès lors que l’Autorité de certification fait partie de cette liste, elle est considérée comme étant de confiance.

Ainsi, l’inconvénient majeur d’utiliser des certificats non délivrés par une Autorité mondialement reconnue (certificat auto-signé par exemple) est que l’internaute qui souhaite se connecter à un serveur web (non sécurisé avec un certificat dit « de confiance ») verra son navigateur afficher une fenêtre d’alerte avec un message lui indiquant qu’il n’est pas en mesure de vérifier ledit certificat car il ne connaît pas la clé publique de l’autorité.

Exemple dans le cas d’un certificat signé par une Autorité de Certification non reconnue

 

  1. Comment le certificat SSL sécurise les connexions et les transactions “Client/Serveur Web”

 

Notions cryptographiques

La cryptographie a pour but premier de protéger l’intégrité d’un message en chiffrant son contenu pour le rendre uniquement lisible par son destinataire et incompréhensible aux autres. On distingue deux types de méthodes : celle employant des algorithmes à clés symétriques (clé secrète) et celle utilisant les algorithmes dits de clés asymétriques (ou clés publiques).

Le protocole de sécurisation SSL/TLS utilise un algorithme asymétrique. Il fonctionne à l’aide de deux clés, l’une publique (que l’on peut diffuser à volonté) et l’autre privée (que l’on garde pour soi). Ces deux clés sont liées par une fonction mathématique que l’on appelle algorithme de chiffrement. Celui-ci utilise la clé publique (donc connue) d’une personne pour envoyer un message chiffré (donc confidentiel). Seule la personne disposant de la clé privée correspondante est alors en mesure de déchiffrer le message ainsi transmis.

 

Émission d’un certificat SSL

Le certificat SSL est un « document numérique » permettant d’authentifier une clé publique c’est-à-dire de prouver qu’elle appartient bien à une personne ou à une entité connue.

Un certificat associe donc une clé publique à une identité. Cette identité peut être celle :

  • D’une personne physique (on parle de certificat individuel) permettant par exemple à son titulaire de sécuriser son e-mail.
  • D’une machine (comme un serveur web). On parle alors de « certificat serveur ». Il est utilisé par la machine titulaire afin de prouver son identité aux clients qui souhaitent établir une connexion sécurisée avec elle.

Ainsi, un certificat numérique SSL fonctionne sur le même principe qu’une pièce d’identité classique. Les informations qu’il contient sont certifiées par l’Autorité de Certification (AC) qui signe le certificat avec sa clé privée de telle sorte que quiconque disposant de la clé publique de cette AC est en mesure de vérifier l’authenticité de chaque certificat délivré.

Les navigateurs Web modernes intègrent nativement une liste de certificats provenant de différentes Autorités de Certification choisies selon des règles internes définies par les développeurs du navigateur. Notons que depuis 2014, pour assurer l’inviolabilité des informations chiffrées, la taille minimum de la clé privée de signature doit être de 2048 bits.

Lorsqu’une personne physique ou morale souhaite mettre en place un serveur web utilisant une communication HTTPS sécurisée par SSL/TLS, elle génère une clé publique, une clé privée puis envoie à l’une de ces Autorité de Certification une demande de signature de certificat (en anglais CSR : Certificate Signing Request) contenant sa clé publique ainsi que des informations sur son identité (coordonnées postales, téléphoniques, email…).

Après vérification de l’identité du demandeur du certificat par une Autorité d’Enregistrement (AE), l’Autorité de Certification signe le CSR grâce à sa propre clé privée qui devient alors un certificat puis le transmet en retour à la personne qui en a fait la demande.

Le certificat ainsi retourné sous forme de fichier informatique est intégré dans le serveur web du demandeur. Lorsqu’un utilisateur se connecte à ce serveur web, celui-ci lui transmet à son tour le certificat fourni précédemment par l’Autorité de Certification.

 

Le protocole HTTPS

Le navigateur du client authentifie le certificat du serveur grâce au certificat de l’Autorité de Certification (intégré nativement dans le navigateur) qui l’a signé précédemment. L’identité du serveur est ainsi confirmée à l’utilisateur par l’Autorité de Certification.

Le navigateur fait ensuite une demande de vérification OCSP en contactant l’Autorité de Certification afin de savoir si le certificat du serveur n’a pas été révoqué (invalidé). Il s’agit d’une transaction de validation.

Sur le plan technique, cette infrastructure de gestion des clés permet ainsi de s’assurer que :

  • Les données transmises entre le serveur web et le poste du client n’ont pas été modifiées durant le transfert : intégrité par « hachage » des données.
  • Les données proviennent bien d’un serveur web connu et qu’il ne s’agit pas d’une réplique frauduleuse.
  • Les données ne peuvent pas être lisibles par un tiers car elles sont chiffrées.

Un certificat SSL se compose donc d’une clé publique et d’une clé privée. La clé publique est utilisée pour le chiffrement des informations et la clé privée est utilisée pour les déchiffrer. Lorsqu’un navigateur se connecte à un domaine sécurisé, une connexion SSL authentifie le serveur et le client (navigateur), puis définit une méthode de cryptage et une clé unique de session. Ils peuvent alors entamer une session sécurisée qui garantit la confidentialité et l’intégrité du message.

Le fonctionnement du protocole SSL peut se décliner selon deux modes distincts – étant entendu que le certificat peut se trouver sur le serveur et/ou sur le poste client :

  • Dans le premier cas, on authentifie le serveur
  • Dans le second cas, on authentifie le client/navigateur c’est-à-dire l’internaute destinataire

Techniquement, serveur et client utilisent le même format de certificats (x509) mais ils diffèrent par l’information qu’ils contiennent. Ainsi, un certificat côté navigateur sert à identifier un utilisateur et contient donc des informations sur cet utilisateur. Côté serveur, le certificat a pour but d’authentifier le serveur, mais aussi l’organisme auquel il appartient s’il s’agit d’un certificat OV ou EV. Le schéma ci-dessous illustre le procédé qui garantit la protection des communications entre serveur et client.

 

 

En résumé, lors d’une connexion SSL avec un certificat :

Authentification

  • Le serveur envoie au navigateur son certificat
  • Le navigateur reçoit ce certificat
  • Le navigateur remonte le chemin de confiance du certificat (il vérifie que le certificat reçu a bien été signé par une Autorité de Certification)

Chiffrement

  • Le certificat envoyé par le serveur vers le navigateur contient la clé publique du serveur. La clé privée du serveur reste cachée sur le serveur
  • Le navigateur génère de son côté une clé de session
  • Cette clé de session est envoyée par le navigateur vers le serveur sous forme chiffrée par le navigateur, en utilisant la clé publique (le certificat) du serveur.
  • Une fois reçue par le serveur, elle est ensuite déchiffrée à l’aide de la clé privée du serveur
  • Toutes les données sont alors chiffrées par cette clé de session par les deux parties

 

  1. Les champs d’application des certificats SSL

En utilisant un certificat SSL, vos transactions sur Internet sont sûres. Vos clients ont confiance en votre système de protection et savent avec certitude où ils envoient les données. En retour, vous êtes assurés que votre entreprise reçoit des données fiables.

Une connexion sécurisée augmente l’indice de confiance de l’utilisateur, ce qui, en retour, améliore la fréquentation et l’utilisation de vos sites, surtout en ce qui concerne des actes d’achat. Lorsque vous installez un certificat SSL, les clients potentiels savent qu’ils se trouvent sur un site sécurisé. De plus, le référencement de votre site Web par le moteur de recherche Google est améliorée.

Le protocole SSL peut être utilisé de diverses façons et à des fins différentes :

  • Communications «de navigateur à serveur»: la plupart du temps le SSL sert à sécuriser les communications entre un serveur Web et un navigateur, notamment dans le cadre de transmissions d’informations sensibles (achats en ligne, dossiers médicaux ou transactions bancaires). La technologie SSL permet de confirmer à l’utilisateur l’identité du destinataire de ses informations personnelles, tout en assurant que seule cette entité autorisée y aura accès.
  • Communications « de serveur à serveur »: le protocole SSL peut également être utilisé pour sécuriser les communications entre deux serveurs, telles que les transactions entre deux entreprises. Dans ce scénario, les deux serveurs possèdent généralement un certificat qui leur permet de s’authentifier mutuellement et de sécuriser leurs communications bilatérales.
  • Respect des obligations réglementaires : de nombreuses réglementations juridiques et sectorielles exigent des niveaux d’authentification et de confidentialité que les certificats SSL permettent d’obtenir. Le standard PCI DSS (Payment Card Industry Data Security Standard) exige, par exemple, l’utilisation de technologies d’authentification et de cryptage pour tout paiement en ligne.

De plus en plus d’applications du marché supportent les certificats SSL. Vous pouvez alors les utiliser pour :

  • Sécuriser votre Intranet et votre Extranet: grâce au certificat SSL vous pouvez protéger les échanges d’informations sensibles de votre entreprise vers des applications et en assurer la confidentialité.
  • Sécuriser votre serveur de messagerie : l’adoption des technologies à base de certificats dans les protocoles de messagerie courants permet de les sécuriser en utilisant les certificats serveurs pour assurer leur authentification et le chiffrement pour la connexion des utilisateurs sur un serveur distant.
  • Sécuriser vos serveurs d’applications : de plus en plus d’applications (Oracle, SAP, BEA,…) supportent les certificats SSL et permettent la sécurisation des échanges.

Concernant le Cloud, auparavant chaque certificat SSL devait avoir une adresse IP et cela rendait compliquée la sécurisation des sites internet. Maintenant avec la technologie SNI (Server Name Indication) chaque site Web peut avoir son propre certificat SSL car le nom d’hôte du serveur est désormais inclus dans la procédure de handshake SSL.

 

  1. Comment obtenir un certificat SSL pour sécuriser son site Internet ou son serveur Web ?

Nous l’avons vu, une session SSL ne peut pas être ouverte si le serveur Web ne dispose pas d’un certificat permettant au navigateur (client) de vérifier l’identité du serveur. La vérification de cette identité est faite sur l’adresse DNS du serveur (et non sur l’identité du titulaire de certificat comme pour les certificats de personnes physiques). Le processus de délivrance des certificats SSL est donc légèrement différent de celui d’un certificat client ou de messagerie.

Le demandeur de certificat doit générer tout d’abord une paire de clés publiques avec un algorithme de chiffrement (de type RSA), puis il renseigne un formulaire concernant l’organisation (l’entreprise) titulaire du certificat : contact technique, ville, département, etc. C’est à partir de ces informations qu’est créée ce qu’on appelle une RSC (pour Requête de Signature de Certificat) ou plus généralement une CSR (Certificate Signing Request) en anglais. La CSR doit être générée avec une clé de 2048 bits.

La génération de cette CSR est dépendante du serveur web que vous utilisez. Avant de la générer, vous devez bien vous assurer que les champs du Distinguished Name (DN) dans le formulaire sont correctement renseignés.

Le DN est un fichier chiffré qui contient :

  • La clé publique de votre organisation
  • Le nom de votre organisation
  • Sa localité
  • Le nom de domaine enregistré

En générant une CSR, le serveur web créera deux fichiers :

  • Une clé privée (à conserver soigneusement et à ne pas divulguer)
  • Une requête de signature de certificat (CSR)

Lors de la saisie de votre formulaire en ligne, vous devrez rentrer un mot de passe qui servira à chiffrer la clé privée du serveur. La CSR est signée à l’aide de la clé privée du serveur pour laquelle elle a été générée. Cela permet ainsi à l’Autorité de Certification d’être sûre que le demandeur est bien en possession de la clé privée en question.

La CSR contient ainsi toutes les informations saisies par le demandeur ainsi que la clé publique du serveur. C’est à partir de ces informations que le certificat est signé et délivré par une Autorité de Certification (AC) après sa vérification. Il ne reste alors plus qu’à installer le certificat ainsi obtenu sur le serveur Web pour permettre l’utilisation du protocole SSL lors des transactions entre le site Web et les navigateurs des utilisateurs.

Voici un exemple de CSR :

—–BEGIN CERTIFICATE REQUEST—–

MIIBpTCCAQ4CAQAwZTELMAkGA1UEBhMCRlIxEjAQBgNVBAoTCUtFWU5FQ1RJUzEX

MBUGA1UECxMOMDAwMiA0NzgyMTczMTgxDTALBgNVBAsTBFRFU1QxGjAYBgNVBAMT

EXd3dy5rZXluZWN0aXMubmV0MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC3

1XuFvLFtJMgzfpQfk5E4x2oTgAz74KKuBQ9GX2jzIKfJA5RRZ/j7jeXJJZgFT0+e

z8+89qgRxTwUH4yuJV3usegp+dtq0eHAXjClSgqwCPpEKMmQ3aAABM45lCKxQbMZ

k0ARyFHCKnhhFbHi3VMwye2tqjDwNS5kXktCYrQodwIDAQABoAAwDQYJKoZIhvcN

KdveiQ/lYtNn+/xJAavBYQ2O6CO8E85MmxzBVoQl2E5U+wot1cbDERI

—–END CERTIFICATE REQUEST—–

 

La génération de la CSR constitue donc l’étape préalable à toute demande en ligne d’un certificat SSL.

Une fois générée, cette CSR doit être copiée dans le champ du formulaire de demande de certificats en ligne. Le serveur vérifie la bonne syntaxe du contenu puis demande la saisie des informations administratives relatives au titulaire du certificat.

Une fois l’ensemble des champs correctement renseignés, la demande de certificat est envoyée au service clients de l’Autorité de Certification qui procède à un certain nombre de vérifications administratives et téléphoniques avant de la valider et de déclencher sa fabrication. Ces vérifications dépendent du type de certificat : vérification du domaine Internet dans le cas d’un certificat SSL “Domain Validated” (DV SSL), à laquelle s’ajoutent les vérifications concernant l’organisation (l’entreprise) pour les certificats SSL “Organization Validated” (OV SSL) et “Extended Validation” (EV SSL).

Si l’étape de vérification se passe correctement, l’Autorité de Certification génère alors le certificat SSL puis le signe avec sa clé privée. Le certificat peut alors être récupéré par le demandeur sur une URL spécifique qui lui aura été communiquée.

Il faut ensuite établir le chemin de certification jusqu’au certificat sur le serveur web. Il est alors nécessaire de télécharger :

  • Le certificat de l’Autorité de Certification Racine : reconnu par tous comme autorité du niveau le plus élevé et figurant de manière native dans les navigateurs
  • Le certificat de l’Autorité de Certification SSL : celui signé par l’AC délivrant des certificats SSL.

www.ssl-europa.com/solutions/certificats-ssl

p.rehri

p.rehri

Commander un certificat

User
Certificat électronique de personne physique
Corporate
Certificat électronique pour serveur
(authentification, chiffrement, cachet)