Qu’est-ce que Perfect Forward Secrecy? Un guide pour 2020

La cybersécurité est un domaine en constante évolution, avec de nouvelles menaces, failles et exploits constamment découverts et traités. 


Cette bataille acharnée contre les cybercriminels représente un défi exceptionnel pour les experts en sécurité, car l’exploitation de demain peut compromettre le trafic d’aujourd’hui, un problème que le «parfait secret avancé» a été inventé pour éviter. Alors, qu’est-ce que le parfait secret ultime? Continuez à lire cet article pour le découvrir.

Qu’est-ce que Perfect Forward Secrecy (PFS)?

Alors, qu’est-ce que PFS? En bref, l’acronyme PFS signifie «perfect forward secret», qui est une fonctionnalité de sécurité relativement récente pour les sites Web. Il vise à empêcher que de futurs exploits et failles de sécurité ne compromettent la communication, les informations ou les données actuelles ou passées en isolant le chiffrement de chaque transaction..

Traditionnellement, les données chiffrées seraient protégées par une seule clé de chiffrement privée détenue par le serveur, qu’il pourrait utiliser pour déchiffrer toutes les communications historiques avec le serveur à l’aide d’une clé publique. Cela présente un risque de sécurité potentiel en fin de compte, car un attaquant peut passer des semaines, des mois ou des années à écouter le trafic crypté, à stocker les données et à attendre son temps.

Wireshark

Avec toutes ces données en main, il suffit à l’attaquant d’attendre tout futur exploit de sécurité potentiel qui lui permettrait de mettre la main sur la clé privée du serveur, qui peut ensuite être utilisée pour décrypter toutes les données sur lesquelles il a récolté. temps.

Comment Perfect Forward Secrecy résout le problème

Perfect forward secrecy résout ce problème en supprimant la dépendance à une seule clé privée de serveur. Plutôt que d’utiliser la même clé de chiffrement pour chaque transaction, une nouvelle clé de session unique est générée chaque fois qu’une nouvelle transaction de données se produit. 

En effet, cela signifie que même si un attaquant parvient à mettre la main sur une clé de session, celle-ci ne sera utile que pour déchiffrer la transaction la plus récente, plutôt que toutes les données qu’il a pu collecter dans le passé.

Au lieu de l’échange de clés RSA standard, ces clés de session sont générées à l’aide du cryptage Diffie-Hellman ou, mieux encore, du cryptage Diffie-Hellman à courbe elliptique. Les clés de chiffrement sont éphémères, ce qui signifie qu’elles ne sont stockées nulle part et ne peuvent pas être réutilisées pour une transaction ultérieure.

Diffie-Hellman

De même, la clé privée du serveur sera complètement inutile pour l’attaquant car elle ne peut pas être utilisée pour décrypter le trafic entre le serveur et les clients.

Bien que cette méthode d’attaque puisse nécessiter plus de patience et de ressources qu’un simple cybercriminel n’a accès, la même chose ne peut pas être dite pour les organisations de renseignement. 

Des entités comme la National Security Agency ont facilement la capacité d’écouter de nombreuses connexions cryptées, allant même jusqu’à exploiter les câbles sous-marins géants qui connectent les serveurs à travers les continents.

Cette énorme capacité de collecte de données – combinée à la patience institutionnelle d’une organisation comme la NSA – signifie qu’ils ont peu de mal à collecter et à stocker de grandes quantités de données cryptées.

Dans le cas où un futur exploit ou échappatoire se présenterait – leur permettant de mettre la main sur la clé privée requise – ils pourraient alors utiliser cette clé de chiffrement pour déchiffrer potentiellement des millions ou des milliards de transactions de données en un seul coup.

Pour une explication plus approfondie du cryptage, en général, assurez-vous de lire notre description du cryptage.

Comment PFS protège votre site Web

La façon la plus évidente de garantir la confidentialité parfaite de votre site Web est de vous offrir, ainsi qu’à vos utilisateurs, une sécurité supplémentaire en cas de violation de données. Au pire, un attaquant ne sera en mesure de déchiffrer qu’une seule transaction de données, et bien que cela puisse encore présenter un risque, les dommages sont grandement contenus.

De plus, les serveurs employant une parfaite confidentialité avancée présentent des cibles moins attrayantes pour les attaquants. Même s’il y a encore des informations stockées sur le serveur qui sont protégées par la clé privée d’origine, c’est tout ce que l’attaquant pourra mettre la main, limitant considérablement le gain de l’attaque.

Bien sûr, ce n’est pas une garantie contre une attaque, mais cela en rend une moins probable, car les attaquants pourraient opter pour des cibles plus gratifiantes à la place..

Google a été l’une des premières grandes sociétés de logiciels à mettre en œuvre une parfaite confidentialité sur ses serveurs. Pour cette raison, il est très probable que, à un moment donné dans le futur, Google utilisera sa position de moteur de recherche dominant pour encourager l’adoption de PFS en récompensant les sites qui l’emploient en les classant plus haut dans ses résultats de recherche, comme ce fut le cas avec HTTP vs HTTPS.

Perfect Forward Secrecy et Heartbleed

Il n’y a peut-être pas de meilleur exemple pour expliquer pourquoi un secret de transmission parfait est essentiel que le tristement célèbre exploit Heartbleed. Pour comprendre pourquoi, il est important de savoir d’abord ce qu’est Heartbleed et pourquoi cela a été si dommageable.

Heartbleed exploite un bogue introduit en 2012 dans OpenSSL – l’une des implémentations les plus populaires du protocole TLS (transport level security) – mais cela n’a été découvert que deux ans plus tard en 2014. 

Comprendre SSL / TLS

Vous n’avez pas besoin de savoir exactement comment TLS fonctionne, mais en bref, c’est un protocole de sécurité qui chiffre le trafic entre un client et un serveur à l’aide d’une clé de chiffrement privée, avec HTTPS étant l’exemple que vous connaissez probablement le mieux.. 

Bien que répondant à la question «comment fonctionne TLS?» sort du cadre de cet article, vous pouvez consulter notre article sur SSL vs TLS pour en savoir plus.

Prise de contact TLS

Le bogue profite de l’extension Heartbeat pour TLS, qui est conçue pour tester la communication TLS en envoyant une charge utile (généralement un peu de texte) ainsi qu’un nombre spécifiant la taille de la charge utile. Le serveur répond ensuite en renvoyant la charge utile à l’expéditeur d’origine.

Le problème était que le serveur ne vérifiait pas réellement le contenu de la charge utile, mais seulement le nombre spécifiant sa taille. Il utiliserait ce numéro pour récupérer une certaine quantité de données à partir du tampon de mémoire, qui était simplement destiné à être la charge utile d’origine envoyée au serveur.

Heartbleed

Cependant, parce que la charge utile elle-même n’a pas été vérifiée, cela a ouvert la possibilité d’envoyer une charge utile plus petite que celle spécifiée dans le nombre représentant sa taille. Le serveur n’a pas seulement renvoyé la charge utile d’origine, mais également des informations supplémentaires stockées dans la mémoire tampon afin d’atteindre la taille de message demandée..

Heartbleed in Action

Par exemple, le message Heartbeat malveillant peut demander au serveur de renvoyer le mot «test» mais spécifier que la longueur doit être de 500 caractères. Cela conduirait le serveur à renvoyer le mot demandé “test” mais aussi 496 caractères supplémentaires de la mémoire.

Bien que l’attaquant n’aurait aucun moyen de déterminer exactement quelles informations il récupérerait, il y a de fortes chances que ces caractères supplémentaires contiennent des informations sensibles, telles que la clé privée du serveur..

Ainsi, une fois que Heartbleed est arrivé sur la scène, tout cybercriminel qui avait passé un certain temps à écouter le trafic crypté avait soudainement une voie d’attaque parfaite pour acquérir la clé privée de tout serveur exposé au bogue.. 

En utilisant ces clés de chiffrement, ils pouvaient ensuite déchiffrer toutes les données qu’ils avaient précédemment collectées, ce qui a entraîné une énorme quantité d’informations compromises.

Comment activer Perfect Forward Secrecy sur votre serveur

L’activation de la fonction parfaite de secret avancé sur votre serveur est en fait un processus très simple qui ne nécessite pas beaucoup d’efforts de la part de l’administrateur système.. 

Le processus varie évidemment en fonction de l’architecture du serveur que vous utilisez, nous allons donc vous expliquer comment le faire avec Apache et Nginx, deux architectures populaires.

En général, ce que vous devez faire est de configurer votre serveur pour hiérarchiser les suites de chiffrement DHE et ECDHE, mais vous devez toujours conserver le support RSA en tant que sauvegarde. En effet, les anciens systèmes et navigateurs peuvent ne pas prendre en charge PFS, ce qui signifie qu’ils ne pourront pas charger votre site à moins de vous assurer que d’autres suites de chiffrement sont toujours disponibles.

Cipher-Suites

Pour des instructions plus spécifiques, nous avons compilé un guide étape par étape sur la façon d’activer le secret de transmission parfait sur les serveurs Apache et Nginx.

Comment configurer PFS sur Apache

  1. Localisez votre configuration SSL avec la commande: “grep -I -r” SSLEngine “/ etc / apache”
  2. Appliquez l’ordre de chiffrement en tapant: «SSLProtocol all -SSLv2 -SSLv3 SSLHonorCipherOrder on»
  3. Définissez l’ordre de chiffrement comme ceci: “ssl_ciphers” EECDH + AESGCM: EDH + AESGCM: AES256 + EECDH: AES256 + EDH “;”
  4. Enfin, redémarrez Apache avec la commande: “apachectl -k restart”

Comment configurer PFS sur Nginx

  1. Localisez votre configuration SSL en tapant: “grep -r ssl_protocol répertoire de base nginx” (remplacez “répertoire de base nginx” par le chemin approprié)
  2. Modifiez la configuration en entrant: «ssl_protocols TLSv1.2 TLSv1.1 TLSv1; ssl_prefer_server_ciphers on; “
  3. Définissez l’ordre de chiffrement en tapant la commande: “ssl_ciphers” EECDH + AESGSM: EDH + AESGCM: AES256 + EECDH: AES256 + EDH “;”
  4. Redémarrez Nginx avec la commande suivante: «sudo service nginx restart»

Dernières pensées

Voilà, tout ce que vous devez savoir sur le secret de transmission parfait. Bien que les consommateurs ne puissent pas faire grand-chose pour encourager leur utilisation, il est important de savoir que même les données chiffrées transitant par une connexion sécurisée sont potentiellement vulnérables à une future attaque..

Il incombe aux opérateurs de serveurs et aux administrateurs système de mettre en œuvre une parfaite confidentialité à terme, et le but de ce guide est d’encourager son adoption, ce qui conduirait à un Internet plus sécurisé pour les sites Web et les utilisateurs.. 

Pour les utilisateurs qui sont particulièrement préoccupés par le fait que leurs sites Web préférés utilisent ou non le transport PFS pour sécuriser leurs données, le test Qualys SSL Labs vous permet de vérifier exactement cela. Si beaucoup de vos sites Web préférés ne sont pas à la hauteur, la meilleure façon de vous protéger est de télécharger un réseau privé virtuel pour ajouter un niveau de cryptage supplémentaire à votre trafic..

Vous pouvez consulter notre liste des meilleurs fournisseurs VPN qui vous offriront cette couche supplémentaire de protection, ou si vous souhaitez passer directement à notre premier choix, consultez notre avis ExpressVPN.

Qu’avez-vous pensé de notre explication du parfait secret avancé? Cela a-t-il jeté un nouvel éclairage sur une phrase technique que vous avez peut-être vu apparaître plus fréquemment ces dernières années, ou êtes-vous toujours aussi confus que vous l’étiez lorsque vous avez commencé à lire? Faites-le nous savoir dans les commentaires ci-dessous. Comme toujours, merci d’avoir lu.

Kim Martin Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map