30
avril
2022
Restaurer le protocole HTTPS et les certificats auto-signés
12:43

Restaurer le protocole HTTPS et les certificats auto-signés

30 avril 2022 12:43

De plus en plus souvent, lors de la navigation sur des sites Web, Internet a commencé à remarquer des erreurs de protocole HTTPS. Aussi, des collègues de travail ont commencé à venir se plaindre de l'inaccessibilité des chantiers. Dans cet article je propose comment améliorer cette situation liée à l'utilisation du HTTPS.

Introduction

Les messages d'erreur indiquant que HTTPS n'est pas disponible ou ne fonctionne pas correctement peuvent varier. Principales raisons :

Raison numéro 1. Seule la version HTTP du site est disponible (port 80), mais le mode "HTTPS Only" est activé dans le navigateur (port 443)
Sur certains sites Internet, seul le protocole HTTP est disponible (port 80 - http ou WWW classique). Au cours des 10 dernières années, c'est une option extrêmement inhabituelle pour Internet, car... les webmasters essaient d'activer le protocole HTTPS (port 443 - SSL) le plus rapidement possible. Raisons : les opérateurs de téléphonie mobile peuvent ajouter de la publicité au trafic HTTP ouvert ; Le trafic HTTP transmis peut être visualisé par les attaquants (y compris les cookies utilisés pour se connecter sans mot de passe). Cependant, cette option peut être trouvée dans les réseaux locaux pour se connecter à un routeur et à un café Internet, où pour l'authentification, vous devez vous rendre sur le site via le protocole HTTP (puisque la ressource Web ne dispose pas de certificat de sécurité SSL).

Pour les utilisateurs curieux : comment vérifier que la version https du site existe ?

La méthode la plus évidente consiste à saisir https:// dans la barre d'adresse au lieu de http://

Vous pouvez également vérifier l'ouverture du port 443 ou demander à l'aide de CURL. Le résultat est visible à l'écran :

nmap test.ru -p 443
curl -I -v --connect-timeout 3 https://test.ru

Mais la présence du port 443 ouvert ne signifie pas qu’il s’agit nécessairement d’un site Internet ; d'autres services peuvent être exécutés sur le port 443.

Les messages concernant l'absence d'une version HTTPS du site ou l'impossibilité de l'ouvrir peuvent être désactivés en paramétrant votre navigateur "Confidentialité" - "Ne pas activer le mode HTTPS uniquement""Dans ce cas, lorsque vous saisissez explicitement une adresse HTTP du formulaire http://192.168.1.1 ou http://neverssl.com la connexion se fera via le protocole HTTP (non sécurisé !). De plus, si le site redirige vers HTTPS, si son webmaster a configuré la redirection de HTTP vers HTTPS. Soit un site protégé s'ouvrira, et sinon, le « cadenas » dans la barre d'adresse restera ouvert, signe d'un manque de cryptage du trafic.

HTTPS unique

Cette méthode est justifiée pour les ordinateurs personnels, mais ne convient pas aux ordinateurs de bureau, dont les utilisateurs travaillent avec des systèmes d'information basés sur Internet, des sites Web bancaires et des bases de données.

Il n'est pas possible de forcer votre navigateur à ouvrir des sites Web en utilisant HTTP au lieu de HTTPS - sécurité réduite.

Raison numéro 2. Le site Web, dans le cadre d'une « substitution d'importation » ou à la suite de sanctions, est passé à la cryptographie nationale (certificat SSL RSA russe) - mais le certificat racine CA délivré par le ministère des Communications et des Médias de la Fédération de Russie n'est pas installé dans le navigateur en mars-mai 2022, les sites russes ont commencé la transition vers des centres russes nationaux pour la délivrance de certificats de sécurité (CA) SSL/TLS. En particulier, les sites Web reçoivent de nouveaux certificats SSL générés par pas de Certificats racines américains, et de certificat racine de l'autorité de certification russe « Russian Trusted Root CA »- Ministère de la Communication, de la Communication et du Développement numérique - (site officiel https://digital.gov.ru/). L'utilisation du nouveau CA peut être vue sur l'exemple du site Web du Comité des relations immobilières de Saint-Pétersbourg commim.spb.ru - chaîne, capture d'écran du 25/05/2022 :

  1. Certificat d'autorité de certification racine "Autorité de certification racine de confiance russe"
  2. Certificat CA intermédiaire « Sous-autorité de certification russe de confiance »(délivré par le CA n°1)
  3. Certificat SSL du site *.commim.spb.ru (délivré par l'AC n°2)

    digne de confiance

Une telle chaîne de confiance a soulevé des questions dans le navigateur Google Chrome « importé » en raison du certificat racine inconnu « Russian Trusted Root CA » - et le site ne s'est pas ouvert via le protocole HTTPS, ce qui a rendu impossible le travail avec site Internet de la Commission des Relations Immobilières un de mes collègues de travail.
!Une solution simple consiste pour les utilisateurs à installer des navigateurs"Yandex"ou"Spoutnik", dans lequel le nouveau certificat SSL est « cousu » Autorité de certification racine de confiance russe.

!!!La décision appartient au webmaster- ajouter au site des certificats SSL délivrés par des autorités de certification étrangères - notamment pour les utilisateurs des navigateurs étrangers Google Chrome et Mozilla Firefox.Certificats gratuits Let's Encrypt. La société Let's Encrypt délivre des certificats pour les domaines .RU et .РФ sans prêter attention aux sanctions. Et c'est ce qui s'est produit le 28 avril 2022 - le site https://commim.spb.ru est devenu accessible via les certificats "Let's Encrypt". Certificats SSL payants :GlobalSign AlphaSSL et Décongeler SSL123- pour les domaines .blog, .info, etc.

Depuis le 1er mai 2022, le site Web utilise le certificat CA racine ISRG X1 (« Let's Encrypt ») :
isrg-racine

Le certificat racine ISRG est « compris et accepté » par Chrome. Où ISRG - Groupe de recherche sur la sécurité Internet. Le certificat est toujours étranger.
Mais le certificat SSL sera sans doute bientôt remplacé par un certificat russe !

!!!!Une solution pour les utilisateurs avancés consiste à installer un certificat SSL du ministère des Communications de la Fédération de Russie dans le navigateur Chrome ou Firefox. c’est à cela que est dédié cet article. 😀

Raison numéro 3. Le site Internet est protégé par un certificat auto-signé (où «soi-signé») certificat auto-signé ou "sou-signé"- au format CRT (X.509) généré par le webmaster du site sans la participation d'une autorité de certification tierce). Nous ne pouvons pas nous passer d'installer un certificat auto-signé/soi-signé dans le navigateur si nous voulons utiliser protéger les connexions https:// avec un tel site web.

Raison numéro 4. Toutes les autres raisons sont liées à des erreurs lors de l'utilisation du certificat : 4a) La période de validité du certificat SSL a expiré ou n'a pas encore expiré. 4b) Le certificat SSL du site a été révoqué (CRL). 4c) Certificat SSL émis pour un autre domaine. Ce problème vient du webmaster du site et non de l’utilisateur. Contournement côté client - désactivation également du mode HTTPS uniquement ou ajout du domaine du site Web aux exceptions - le bouton permettant d'exclure le site du contrôle de sécurité est disponible dans le message d'erreur initial - cliquez sur le bouton "Avancé"- "Accepter le risque et continuer" - dans ce cas la connexion sera établie via HTTP, sans utiliser le cryptage SSL, l'adresse du site sera en exceptions du navigateur Web et et commencera à s'ouvrir dans le futur, mais sans cryptage.
jaune


I. Installation du certificat SSL racine du Ministère de la Communication et du Développement numérique ROOTCA_SSL_RSA2022.CER

Résoudre le problème Code d'erreur : SEC_ERROR_UNKNOWN_ISSUER dans Firefox,
Dépannage de l'erreur NET :: ERR_CERT_AUTHORITY_INVALID dans Chrome

  • rendez-vous sur le site des Services de l'Etat dans la rubrique délivrance des certificats SSL pour les personnes morales :https://gosuslugi.ru/tls
    gosuslugi1

  • faites défiler la page jusqu'au bout et téléchargez le fichier du certificat ZIP de la page Services de l'Etat (bouton - en fin de page, bouton "Télécharger le certificat")
    gosuslugi

Nous enregistrons le fichier ZIP avec le certificat SSL des « Services gouvernementaux » dans le dossier « Téléchargements ».

  • créer un dossier temporaire sur le PC ~/Téléchargements/importation

mkdir ~/Téléchargements/importation
cd ~/Téléchargements/importation

  • extraire le fichier CRT de l'archive du dossier "Téléchargements" vers le dossier ~/Téléchargements/importation
    extrait_zip1
    extrait_zip

Ensuite, le plus important est d’importer le certificat CA.

Fenêtres :Dans Explorer importer le certificat racine ROOTCA_SSL_RSA2022.CER double clic.

  • Importer - Sélectionnez où - vers « Autorités de certification racine de confiance »- ... - C'est fait.

    importer01
    importer02
    importer03
    importer04
    importer05
    importer06
    importer07
    importer08

    -Linux :

Sous Linux, FireFox et Chrome utilisent leur propre sécurité et ignorent les paramètres du PC. Hypothèse selon laquelle les certificats doivent être copiés dans un dossier /usr/share/ca-certificates et exécuter la commande sudo update-ca-certificates, a déclaré dans un précédent article en pratique, cela n'a pas abouti au résultat souhaité, contrairement à l'installation de certificats de navigateur Web dans le magasin.

Vous devez installer le certificat SSL de l'autorité de certification racine de la Fédération de Russie dans le navigateur

Vous devez d'abord télécharger certificat racine du ministère des Télécommunications et des Communications de masse 2022, également connu sous le nom de « Russian Trusted Root CA »- le fichier rootca_ssl_rsa2022.cer,
puis changez le format de fichier de CER à PEM.

Pour convertir un certificat SSL du format CER en un certificat au format PEM, utilisez la commande dans le terminal :

openssl x509 -outform pem -in rootca_ssl_rsa2022.cer -out rootca_ssl_rsa2022.pem

!Ajouts à partir du 01/11/2023:

  1. Certains sites utilisent un certificat intermédiaire Russian Trusted Sub CA. Ensuite, vous devez installer les deux certificats - root et intermédiaire.
  2. Ces certificats Autorité de certification racine de confiance russe et Sous-autorité de certification russe de confiance disponible sur le site gu-st.ru via des liens directs :
    https://gu-st.ru/content/Other/doc/russian_trusted_root_ca.cer
    https://gu-st.ru/content/Other/doc/russian_trusted_sub_ca.cer.
    (Le domaine gu-st.ru - auxiliaire du site Web des services de l'État appartient au ministère du Développement numérique, des Communications et des Communications de masse de Russie).

Certificat racine "Autorité de certification racine de confiance russe" peut également être téléchargé à partir de la page site Internet du système de gestion électronique des documents du Trésor russe "Roskazna" roskazna.gov.ru.

Pour l'automatisation, les commandes de téléchargement de certificats peuvent être compilées dans un fichier shell Linux :
#!/bin/sh
wget https://gu-st.ru/content/Other/doc/russian_trusted_root_ca.cer
wget https://gu-st.ru/content/Other/doc/russian_trusted_sub_ca.cer
openssl x509 -outform pem -in russian_trusted_root_ca.cer -out russian_trusted_root_ca.pem
openssl x509 -outform pem -in russian_trusted_sub_ca.cer -out russian_trusted_sub_ca.pem

I.1. Ajout d'un certificat de l'autorité de certification racine russe au navigateur Mozilla FireFox

Besoin d'ajouter des certificats CA

- Paramètres
- Confidentialité et protection
- Certificats d'importation
- Afficher les certificats
- Autorités de certification
- Importer

Sélectionnez le fichier « importer » dans le dossier « Téléchargements » "rootca_ssl_rsa2022.pem"
SSL-RCA

Cochez la case "Confiance pour les sites"
importer1

D'accord

À ce stade, la configuration de FireFox est terminée, le site avec le certificat russe via https:// s'ouvre !


I.2. Ajout d'un certificat de l'autorité de certification racine russe au navigateur Google Chrome

Dans Chrome (Chromium) :
- Paramètres
- Confidentialité et sécurité
- Sécurité
- Mettre en place des certificats
- Autorités de certification
- Importer

Sélectionnez le fichier de certificat CA du Ministère des Télécommunications et des Communications de masse et confirmez l'importation :
SSL-RCA

À ce stade, la configuration de Chrome est terminée, le site s'ouvre via https:// !


II. Installation de certificats SSL auto-signés

Certains sites, en réponse aux sanctions contre des entreprises russes ou pour d'autres raisons, ont émis des certificats SSL auto-signés (qui sont créés par les auteurs du site eux-mêmes - sans lien avec une autorité de certification externe). Dans ce cas, une procédure particulière est nécessaire pour les activer dans le navigateur, ce qui vous permettra d'utiliser une connexion HTTPS avec leur aide.

Mozilla Firefox répond aux certificats SSL auto-signés avec une erreur MOZILLA_PKIX_ERROR_SELF_SIGNED_CER, ce qui signifie que le certificat est trop faible et n'est pas fiable. À première vue, cette erreur dans le navigateur FireFox coûte un clic de souris en appuyant sur le bouton "Acceptez le risque et continuez". Cependant, l'ajout d'un site aux exceptions ne résout pas le problème - la connexion au site n'est pas sécurisée, elle fonctionne sans crypter les requêtes/réponses du serveur. Qu'est-ce qui peut contribuer à la fuite de données confidentielles. Cela signifie que vous devez activer le cryptage HTTPS à l'aide d'un certificat auto-signé (voir ci-dessous pour la solution au problème).

II.1 Ajouter un certificat auto-signé à Mozilla Firefox (instructions pas à pas)

étape 1
étape0
étape 10
étape 11
étape 12
étape 15
étape 16
étape 17
étape 18
étape 19

II.2 Ajout d'un certificat auto-signé à Chrome (instructions étape par étape)

https1
https2
https3
https4
https5
https6
https7
https8
https9
https10
https11
https12

Nouveau problème : Certificats bloqués en raison de la protection HSTS (Google Chrome uniquement)

Problème - HSTS- implémentation d'un module complémentaire via HTTPS dans le navigateur Chrome - sous-système HSTS/PKP), ce qui rend impossible l'ouverture de sites utilisant le protocole HTTP. Un site Web compatible HSTS nécessite que le navigateur s'y connecte uniquement via HTTPS avec un certificat préalablement connu. Une telle connexion refuse de fonctionner si le certificat du site Web change soudainement (lors d'une tentative depuis MitM). HSTS étant conçu pour protéger contre les attaques sur le protocole HTTPS, il est impossible de désactiver la vérification externe. La seule chose qui aide est d'effacer la base de données HSTS locale dans le navigateur Chrome (voir ci-dessous). Dans FireFox, si la protection HSTS est déclenchée, vous devez donner la commande « oublier » le site Web.

Description du problème

Un utilisateur fonctionnant sous Windows 7 et Google Chrome s'est plaint de ne pas pouvoir se connecter au site Web commim.spb.ru. Après avoir essayé de vous connecter à FireFox, un message apparaît :

"Avertissement : risque possible pour la sécurité
Firefox a détecté une éventuelle menace de sécurité et n'a pas ouvert commim.spb.ru. Si vous visitez ce site, des voleurs peuvent tenter de voler vos informations, telles que vos mots de passe, vos adresses e-mail ou les détails de votre carte de crédit.
Comment pouvez-vous résoudre ce problème ?
Très probablement, ce problème est lié au site Web lui-même et vous ne pouvez rien y faire. "

Le navigateur Google Chrome n'a pas pu ouvrir ce site https://commim.spb.ru/, avec à peu près le même message d'erreur

Le lien « Aller sur le site (Dangereux) » n'était pas visible pour l'utilisateur sur l'écran en raison de l'activation du système HSTS - il lui était interdit de se connecter via le protocole HTTP. Apparemment, le site avait un certificat différent et le navigateur a perçu le remplacement radical du certificat comme "attaque par chute"- une variante de l'attaque MitM avec utilisation temporaire de HTTP suivie de l'inclusion d'un cryptage léger HTTPS « man-in-the-middle ». Par conséquent, le navigateur Web exigeait HTTPS avec un certificat « fort » et ne donnait pas à l’utilisateur la possibilité d’accéder à un site non sécurisé utilisant le protocole HTTP ou avec un autre certificat SSL.

Résoudre le problème avec HSTS : effacer les informations d'un site Web du stockage HSTS du navigateur Chrome

1) Saisissez dans la barre d'adresse :

chrome://net-internals

et appuyez sur Entrée

2) Sur le côté gauche de la fenêtre, cliquez sur l'élément de menu

"Politique de sécurité du domaine"

3) Sur le côté droit de la fenêtre Allez dans la rubrique « Requête », vérifiez que le site est dans la liste (cliquez sur le bouton Requête)
requête

4) Si le domaine est dans la liste HSTS, les informations suivantes seront affichées :
réponse

5) Pour supprimer les informations de domaine de la base de données HSTS (qui sont nécessaires pour appliquer de nouveaux certificats SSL) - accédez à "Supprimer les politiques de sécurité du domaine"

6) Saisissez l'adresse du site Web sans le préfixe https://
supprimer-hsts

7) Appuyez sur le bouton "Supprimer"

8) Vérifier la suppression avec une deuxième requête (Query)
introuvable

Le résultat est « Introuvable », ce qui signifie que les paramètres du site HSTS ont été supprimés de Chrome.



Publications connexes