Rejoignez Keyfactor à la RSA Conference™ 2024 | du 6 au 9 mai | En savoir plus

  • Accueil
  • Blog
  • PKI
  • Qu'est-ce qu'une liste de révocation de certificats (CRL) par rapport à l'OCSP ?

Qu'est-ce qu'une liste de révocation de certificats (CRL) par rapport à l'OCSP ?

PKI

La révocation des certificats est une fonction importante, mais souvent négligée, de la gestion du cycle de vie des certificats. Dans ce blog, nous allons explorer les fonctions clés de la révocation des certificats, y compris les listes de révocation des certificats (CRL), le protocole d'état des certificats en ligne (OCSP) et l'agrafage OCSP.

Les certificats numériques sont utilisés pour créer la confiance dans les transactions en ligne. Le double rôle des certificats - chiffrer les communications et authentifier l'identité du propriétaire du certificat - constitue la base de l'infrastructure à clé publique (PKI).

Chaque certificat a également une période de validité limitée qui, à partir du1er septembre 2020, sera de 13 mois. Toutefois, au cours de cette période de validité, le propriétaire du certificat et/ou l'autorité de certification (AC) qui a émis le certificat peut déclarer qu'il n'est plus digne de confiance. Dans ces cas malheureux, les certificats non fiables doivent être révoqués et les utilisateurs doivent en être informés. Pour ce faire, le certificat non fiable TLS/SSL est ajouté à une liste de révocation de certificats (CRL).

Avertissement du navigateur concernant le certificat révoqué de SSL

Voici un exemple d'avertissement concernant un certificat révoqué SSL/TLS dans Google Chrome(Image Source)

Qu'est-ce qu'une liste de révocation de certificats (CRL) ?

La révocation des certificats est un élément essentiel du cycle de vie des certificats. Il existe de nombreuses définitions de ce qu'est une CRL, mais si nous la décomposons simplement, une CRL contient une liste de certificats révoqués - essentiellement, tous les certificats qui ont été révoqués par l'autorité de certification ou le propriétaire et qui ne devraient plus être fiables.

Le Conseil de sécurité des AC définit une LCR comme "un fichier signé numériquement contenant une liste de certificats qui ont été révoqués et qui n'ont pas encore expiré". La signature numérique des fichiers de LCR par les AC émettrices est importante pour prouver l'authenticité du fichier et empêcher toute falsification.

Le RFC 5280 décrit une CRL comme "une structure de données horodatée et signée qu'une autorité de certification (CA) ou un émetteur de CRL émet périodiquement pour communiquer l'état de révocation des certificats numériques concernés".

En fonction des politiques internes de l'autorité de certification, les LCR sont publiées à intervalles réguliers, c'est-à-dire toutes les heures, tous les jours ou toutes les semaines. Le statut d'un certificat dans la CRL peut être soit "révoqué", lorsqu'il a été irréversiblement révoqué, soit "en attente", lorsqu'il est temporairement invalide.

Le format d'une CRL est défini dans la norme X.509 et dans la RFC 5280. Chaque entrée d'une liste de révocation de certificats comprend l'identité du certificat révoqué et la date de révocation. Les informations facultatives comprennent une limite de temps, si la révocation s'applique à une période spécifique, et la raison de la révocation.

Comment les navigateurs et les applications web vérifient-ils les LCR ?

Les certificats contiennent une ou plusieurs URL à partir desquelles le navigateur ou l'application peut récupérer la réponse de la CRL. Lorsqu'un navigateur établit une connexion TLS avec un site, le certificat numérique du serveur est validé et vérifié pour détecter d'éventuelles anomalies ou problèmes.

Au cours de ce processus de validation, le navigateur web vérifie si le certificat figure dans la LCR émise par l'autorité de certification correspondante. En fonction de l'état du certificat du serveur, le navigateur crée une connexion sécurisée ou avertit l'utilisateur que le certificat a été révoqué et qu'il est risqué de poursuivre une session non chiffrée.

La vérification des LCR est une étape essentielle d'une transaction basée sur le site PKI, car elle permet de vérifier l'identité du propriétaire du site et de déterminer si le certificat associé est digne de confiance.

Processus de révocation des certificats à l'aide d'une CRL

Voici une illustration du processus de vérification de la révocation d'un certificat à l'aide d'une CRL

Qu'est-ce qu'un point de distribution de LCR (CDP) ?

Lorsqu'une application ou un navigateur vérifie l'état de révocation d'un certificat, il récupère la LCR actuelle à partir d'un point de distribution de LCR (CDP) spécifié. Un CDP est l'emplacement d'un serveur d'annuaire LDAP ou d'un serveur web où une autorité de certification publie des LCR.

Une fois la CRL récupérée, elle est généralement mise en cache jusqu'à l'expiration de la CRL elle-même. La CDP doit être accessible à tout moment pour que les appareils ou les applications puissent récupérer la nouvelle CRL en cas de besoin. Dans le cas contraire, il n'est pas possible de déterminer l'état du certificat en question et les vérifications de l'état de révocation du certificat échouent.

Pourquoi les LCR sont-elles importantes ?

Les certificats numériques sont révoqués pour de nombreuses raisons et il existe de nombreux exemples récents de révocations massives de certificats. Les raisons de la révocation d'un certificat sont les suivantes :

  • L'autorité de certification découvre qu'elle a délivré un certificat de manière incorrecte et injustifiée.
  • Un certificat est considéré ou découvert comme frauduleux.
  • La clé privée d'un certificat a été compromise
  • L'autorité de certification émettrice a été compromise
  • Le propriétaire du site web cesse ses activités et ne possède plus le nom de domaine ou le serveur défini dans le certificat.
  • Au cours de l'authentification et de la validation du site web, le demandeur fait une fausse déclaration concernant certaines informations utilisées dans le processus, ou le propriétaire du site web a violé les termes de son accord avec l'autorité de certification.

 

Quelle que soit la raison pour laquelle un certificat est révoqué, les LCR sont importantes pour protéger les utilisateurs contre les attaques de type "man-in-the-middle" ou la communication avec un site frauduleux qui se fait passer pour un site légitime. Sans les LCR, les utilisateurs seraient confrontés à de nombreux risques en matière de sécurité et de protection de la vie privée :

  • Violation d'informations personnelles ou sensibles. Un pirate effectuant une attaque de type "man-in-the-middle" peut être en mesure d'intercepter les informations personnelles et sensibles que l'utilisateur saisit sur un serveur web. Ces informations peuvent être des numéros de sécurité sociale, des informations sur des comptes bancaires, des numéros de cartes de crédit, des données médicales, etc.
  • Vol d'identité et usurpation d'identité. Un acteur malveillant peut être en mesure de capturer les informations d'identification que l'utilisateur insère pour s'authentifier sur un serveur web. Le vol et la compromission d'informations d'identification sont l'une des principales raisons des attaques par usurpation d'identité ou des campagnes de compromission du courrier électronique d'entreprise (BEC). En outre, les criminels peuvent utiliser ces informations d'identification pour détourner le compte de l'utilisateur.
  • Perte financière. Lorsque les informations bancaires, les cartes de crédit et les données d'identification ont été volées, le cybercriminel n'est plus qu'à un pas de voler l'argent de l'utilisateur.
  • Installation de logiciels malveillants. L'accès à un site web non sécurisé est un moyen pour les criminels d'installer des logiciels malveillants sur l'ordinateur de la victime. Ces logiciels malveillants sont ensuite utilisés pour voler des informations personnelles, exécuter des enregistreurs de frappe ou détourner l'ordinateur pour l'intégrer à une attaque DDoS plus importante. L'installation d'un logiciel malveillant peut également être motivée par des raisons financières en utilisant une variante de ransomware et en chiffrant toutes les données de l'ordinateur de l'utilisateur.

Considérations relatives à l'utilisation des LCR

Malgré l'importance de maintenir une LCR à jour, le processus n'est pas sans faille. Même si chaque autorité de certification émet une LCR distincte, le fichier peut devenir assez volumineux, ce qui le rend inefficace pour une utilisation dans des appareils à mémoire limitée, comme les smartphones ou les appareils IoT .

Lorsqu'une autorité de certification reçoit une demande de LCR de la part d'un navigateur, elle renvoie le fichier complet contenant les certificats révoqués de cette autorité de certification. Le navigateur doit alors analyser la liste pour déterminer si le certificat demandé a été révoqué ou non. En fonction de la taille du fichier, ce processus peut entraîner des temps de latence et des performances médiocres pour les utilisateurs du web.

Un autre problème est que si le client ne dispose pas d'une copie "suffisamment récente" de la CRL, il doit en chercher une lors de la connexion initiale au site, ce qui peut allonger la durée de la connexion.

En réalité, le maintien des LCR n'est pas adapté à la publication et à la diffusion d'informations critiques en temps quasi réel. Étant donné que les navigateurs mettent les LCR en cache pour éviter les frais de calcul, il peut se produire une fenêtre temporelle pendant laquelle un certificat révoqué peut être accepté, ce qui crée des risques pour la vie privée et la sécurité des utilisateurs.

OCSP et agrafage OCSP

Le protocole OCSP (Online Certificate Status Protocol) est une autre méthode utilisée pour transmettre aux utilisateurs des informations sur les certificats révoqués. Au lieu de télécharger la dernière CRL et de l'analyser pour vérifier si le certificat demandé figure sur la liste, le navigateur demande l'état d'un certificat particulier au serveur de révocation de l'autorité de certification émettrice.

À l'aide du numéro de série du certificat, le service OCSP vérifie l'état du certificat, puis l'autorité de certification envoie une réponse signée numériquement contenant l'état du certificat. Une réponse OCSP contient l'une des trois valeurs suivantes : "bon", "révoqué" ou "inconnu" : "bon", "révoqué" ou "inconnu". Les réponses OCSP sont plus petites que les fichiers CRL et conviennent aux appareils dont la mémoire est limitée.

Processus de révocation des certificats à l'aide de l'OCSP

Voici une illustration du processus de vérification de la révocation d'un certificat à l'aide de l'OCSP

L'agrafage OCSP est une amélioration du protocole OCSP standard et est défini dans la RFC 6066. L'activation de l'agrafage OCSP évite au navigateur d'envoyer des demandes OCSP directement à l'autorité de certification. Au lieu de cela, le serveur web met en cache la réponse OSCP de l'autorité de certification et lorsqu'une poignée de main TLS est initiée par le client, le serveur web "agrafe" la réponse OSCP au certificat qu'il envoie au navigateur.

Processus de révocation des certificats à l'aide de l'agrafage OCSP

Voici une illustration du processus de vérification de la révocation d'un certificat à l'aide de l'agrafage OCSP

L'agrafage OCSP présente plusieurs avantages, notamment

  • Amélioration des performances, car le navigateur reçoit l'état du certificat du serveur lorsqu'il en a besoin, ce qui évite de devoir communiquer avec l'autorité de certification émettrice.
  • Amélioration de la sécurité, en minimisant les cas de faux positifs et en réduisant le nombre de vecteurs d'attaque.
  • Amélioration de la protection de la vie privée des utilisateurs, puisque les autorités de certification ne reçoivent des demandes que de la part des sites web et non des utilisateurs.

Pourquoi la surveillance des CRL et OCSP est essentielle

Si une autorité de certification est hors service, vous ne pourrez pas émettre de nouveaux certificats, mais si votre CRL est expirée ou inaccessible, tous vos certificats deviendront immédiatement inutilisables. Comme nous l'avons vu, la plupart des applications doivent vérifier la validité des certificats auprès d'un serveur CRL ou OCSP. Si elles ne peuvent pas atteindre le serveur CDP ou OCSP, ou si la CRL elle-même est expirée, les utilisateurs ne pourront pas accéder à leur application.

La surveillance continue et en temps réel de la révocation, assurée par des outils d'automatisation du cycle de vie des certificats tels que Keyfactor Command , permet de s'assurer que cela ne se produit pas (voir la vidéo ci-dessous).

Il s'agit de gérer efficacement le cycle de vie des certificats

La révocation effective et efficace des certificats erronés, compromis ou non fiables renforce la sécurité et la confidentialité de millions de transactions en ligne chaque jour. Les entreprises doivent automatiser et centraliser la gestion de leurs certificats numériques afin d'éviter des pannes ou des attaques coûteuses dues à la révocation ou à l'expiration des certificats.

Keyfactor Command vous permet de gérer le cycle de vie des clés et des certificats numériques au sein de votre entreprise et de bénéficier d'une visibilité depuis la découverte et la surveillance des certificats jusqu'à leur émission, leur renouvellement et leur révocation. Regardez nos démonstrations à la demande pour en savoir plus sur notre plateforme d'automatisation de bout en bout du cycle de vie des certificats et de PKI .