Pourquoi mon navigateur pense-t-il que https://1.1.1.1 est sécurisé?

133

Lorsque je visite https://1.1.1.1 , tout navigateur Web que j'utilise considère que l'URL est sécurisée.

Voici ce que Google Chrome montre:

Barre d'adresse Google Chrome 65.0.3325.181 indiquant https://1.1.1.1

Normalement, lorsque j'essaie de visiter un site HTTPS via son adresse IP, je reçois un avertissement de sécurité comme celui-ci:

Barre d'adresse de Google Chrome 65.0.3325.181 indiquant https://192.168.0.2

À ma connaissance, le certificat de site doit correspondre au domaine, mais la Visionneuse de certificat de Google Chrome n’affiche pas 1.1.1.1:

Visionneuse de certificat: * .cloudflare-dns.com

Article de la base de connaissances de GoDaddy "Puis-je demander un certificat pour un nom intranet ou une adresse IP?" dit:

Non, nous n'acceptons plus les demandes de certificat pour les noms intranet ou les adresses IP. Il s’agit d’un standard de l’industrie , et non spécifique à GoDaddy.

(c'est moi qui souligne )

Et aussi:

Par conséquent, à compter du 1er octobre 2016 , les autorités de certification (AC) doivent révoquer les certificats SSL qui utilisent des noms intranet ou des adresses IP .

(c'est moi qui souligne )

Et:

Au lieu de sécuriser les adresses IP et les noms intranet, vous devez reconfigurer les serveurs pour qu'ils utilisent des noms de domaine entièrement qualifiés (FQDN), tels que www.coolexample.com .

(c'est moi qui souligne )

C'est bien après la date de révocation obligatoire du 1er octobre 2016, mais le certificat a 1.1.1.1été émis pour le 29 mars 2018 (voir la capture d'écran ci-dessus).


Comment est-il possible que tous les principaux navigateurs pensent que https://1.1.1.1 est un site Web HTTPS de confiance?

Deltik
la source
10
Il est intéressant de noter qu'il existe une énorme différence entre 192.168.0.2 et 1.1.1.1. Un 192.168.0.2n'existe pas en dehors de votre intranet. Si vous créez votre propre certificat auto-signé, 192.168.0.2il sera approuvé et vous pourrez utiliser la même approche pour le SAN, sur un domaine tel que fake.domain. Il est intéressant de noter que ce 1.1.1.1n’est pas une adresse IP réservée. Il semble donc que toute autorité de certification aurait délivré le certificat.
Ramhound
12
blog.cloudflare.com/announcing-1111 "Nous sommes ravis aujourd'hui de faire un pas de plus vers cette mission avec le lancement de 1.1.1.1 - le service DNS de consommateur le plus rapide et le plus
11
Je pense que vous avez mal placé la phrase. Ils voulaient probablement dire «doivent révoquer les certificats SSL utilisant un intranet (noms ou adresses IP)» et non pas «doivent révoquer les certificats SSL utilisant des noms (intranet) ou des adresses IP».
Maciej Piechotka
1
@MaciejPiechotka est correct, cela signifie "doit révoquer les certificats SSL qui utilisent des noms intranet ou des adresses IP intranet"
Ben
2
BTW ... il n'y a pas une telle chose comme une révocation obligatoire. Littéralement, aucune organisation sur Terre n’a ce genre de pouvoir. Le plus proche que vous obtenez est un groupe de CA acceptant de faire une chose.
cHao

Réponses:

95

L'anglais est ambigu . Vous l'avez analysé comme ceci:

(intranet names) or (IP addresses)

c'est-à-dire interdire complètement l'utilisation des adresses IP numériques. La signification qui correspond à ce que vous voyez est la suivante:

intranet (names or IP addresses)

C'est-à-dire des certificats d'interdiction pour les plages d'adresses IP privées telles que 10.0.0.0/8, 172.16.0.0/12 et 192.168.0.0/16, ainsi que pour les noms privés qui ne sont pas visibles sur le DNS public.

Les certificats pour les adresses IP routables publiquement sont toujours autorisés, mais ils ne sont généralement pas recommandés pour la plupart des utilisateurs, en particulier ceux qui ne possèdent pas également une adresse IP statique.


Cette déclaration est un conseil et non une affirmation que vous ne pouvez pas sécuriser une adresse IP (publique).

Au lieu de sécuriser les adresses IP et les noms intranet, vous devez reconfigurer les serveurs pour qu'ils utilisent des noms de domaine complets (FQDN), tels que www.coolexample.com.

Quelqu'un chez GoDaddy a peut-être mal interprété le libellé, mais il était plus probable qu'il souhaitait garder ses conseils simples et qu'il recommandât d'utiliser des noms DNS publics dans les certificats.

La plupart des gens n'utilisent pas une adresse IP statique stable pour leur service. La fourniture de services DNS est le seul cas où il est vraiment nécessaire d’avoir une adresse IP bien connue stable au lieu d’un simple nom. Pour quiconque, inscrire votre adresse IP actuelle dans votre certificat SSL limiterait vos options futures, car vous ne pouviez pas laisser quelqu'un d'autre utiliser cette adresse IP. Ils pourraient se faire passer pour votre site.

Cloudflare.com a le contrôle de l’adresse IP 1.1.1.1 elle-même, et n’envisage pas de faire autre chose avec cette adresse dans un avenir proche. Il est donc logique qu’ils inscrivent leur adresse IP dans leur cert. Surtout en tant que fournisseur DNS , il est plus probable que les clients HTTPS consultent leur URL par numéro que pour tout autre site.

Peter Cordes
la source
5
Cela répond exactement pourquoi j'ai été confus. J'ai envoyé une suggestion à GoDaddy pour améliorer le libellé de l'article . J'espère qu'ils vont régler le problème pour clarifier "(nom du serveur interne) ou (adresse IP réservée)" comme indiqué sur le forum de l'ACR .
Deltik
14
Pédantiquement, Cloudflare ne "possède" pas l’adresse 1.1.1.1. Il appartient à APNIC Labs , qui a donné l’autorisation à Cloudflare d’exploiter un résolveur DNS en échange de l’aide de Cloudflare pour l’étude du volume important de paquets de déchets adressés par erreur à cette adresse IP .
Kevin
12
Pédantiquement, @Kevin, APNIC ne le possède pas non plus. Cet article mentionne la question de la propriété et utilise l'expression "affecté à". IANA, qui fait partie de l'ICANN, a attribué la plage d'adresses à APNIC qui a attribué de telles adresses à Cloudflare. Les adresses IPv4 sont simplement une manière élégante d’écrire un nombre compris entre 0 et 429 4967 296 (si vous envoyez une requête ping à 16843009 dans de nombreux systèmes d’exploitation, vous obtiendrez une réponse à partir de la version 1.1.1.1) et les États-Unis ne reconnaîtront pas la possession d’un numéro (par conséquent, pourquoi le nom "Pentium" a été fait)
TOOGAM
5
La chose Intel était un cas de marque déposée, pas de propriété…
StarWeaver
3
@TOOGAM: Je veux dire que, dans le système whois, que j'ai spécifiquement lié, le 1.1.1.1 est attribué à APNIC Labs. Si vous envisagez de choisir entre attributions et propriété, ne tordez pas le sens de «affectées».
Kevin
102

La documentation de GoDaddy est erronée. Il n’est pas vrai que les autorités de certification (AC) doivent révoquer les certificats pour toutes les adresses IP… uniquement les adresses IP réservées .

Source: https://cabforum.org/nternal-names/

DigiCert était l’ autorité de certification de https://1.1.1.1 qui, à la date de rédaction de cette réponse, autorise l’achat de certificats de site pour les adresses IP publiques.

DigiCert a publié un article à ce sujet intitulé Délivrance de certificats SSL après 2015 : Nom du serveur interne :

Si vous êtes un administrateur de serveur utilisant des noms internes, vous devez reconfigurer ces serveurs pour utiliser un nom public ou passer à un certificat émis par une autorité de certification interne avant la date limite de 2015. Toutes les connexions internes nécessitant un certificat de confiance publique doivent être effectuées à l'aide de noms publics et vérifiables (peu importe si ces services sont accessibles au public).

(c'est moi qui souligne )

Cloudflare a simplement obtenu un certificat pour son adresse IP 1.1.1.1de cette autorité de certification approuvée.

L'analyse du certificat pour https://1.1.1.1 révèle que le certificat utilise des noms alternatifs de sujet (SAN) pour englober certaines adresses IP et noms de domaine ordinaires:

deltik@node51 [~]$ openssl s_client -showcerts -connect 1.1.1.1:443 < /dev/null 2>&1 | openssl x509 -noout -text | grep -A1 'Subject Alternative Name:'
            X509v3 Subject Alternative Name: 
                DNS:*.cloudflare-dns.com, IP Address:1.1.1.1, IP Address:1.0.0.1, DNS:cloudflare-dns.com, IP Address:2606:4700:4700:0:0:0:0:1111, IP Address:2606:4700:4700:0:0:0:0:1001

Ces informations figurent également dans l'afficheur de certificats Google Chrome sous l'onglet "Détails":

Certificat Viewer: Détails: * .cloudflare-dns.com

Ce certificat est valide pour tous les domaines répertoriés (y compris le caractère générique *) et les adresses IP.

Deltik
la source
Votre lien d'article ne semble pas fonctionner. Le mieux est de citer les informations pertinentes.
Ramhound
11
Je pense que ce n'est pas autant une erreur que trompeuse. Il doit s'agir d'un crochet comme 'doit révoquer les certificats SSL utilisant un intranet (noms ou adresses IP)' non '' doit révoquer les certificats SSL utilisant des noms (intranet) ou des adresses IP '.
Maciej Piechotka
3
Eh bien, il ne dit « noms intranet ou adresses IP ». Noms intranet ou adresses IP intranet. Ce n'est pas faux, c'est simplement que le PO le lit de manière sélective.
Courses de légèreté en orbite
45

On dirait que le nom du sujet du certificat inclut l'adresse IP:

Not Critical
DNS Name: *.cloudflare-dns.com
IP Address: 1.1.1.1
IP Address: 1.0.0.1
DNS Name: cloudflare-dns.com
IP Address: 2606:4700:4700::1111
IP Address: 2606:4700:4700::1001

Traditionnellement, je suppose que vous n’auriez mis que des noms DNS ici, mais Cloudflare a également indiqué ses adresses IP.

https://1.0.0.1/ est également considéré comme sécurisé par les navigateurs.

Michael Frank
la source
1
Je ne vois pas comment cela répond à la question. La publication du contenu d'un certificat n'explique pas pourquoi un tel certificat pourrait être délivré.
Dmitry Grigoryev
18
@DmitryGrigoryev: Mais cela prouve qu'un tel certificat a été délivré, ce qui était un point de confusion majeur dans la question (le PO n'a pas pu trouver le 1.1.1.1 indiqué dans le certificat)
Courses de légèreté en orbite
3
Cette réponse répond bien à la question de l'auteur. Bien que l'auteur soit entré dans les détails en ce qui concerne leur confusion, ceci identifie le fait, le certificat en question est en effet valide. Depuis l'auteur de la question, ne nous a jamais fourni ce que GoDaddy a réellement dit, difficile de répondre à la question autrement.
Ramhound le
4
@DmitryGrigoryev - Si la question est "Pourquoi mon navigateur pense-t-il que la version 1.1.1.1 est sécurisée?" (le titre de cette page) ou "Comment est-il possible que tous les principaux navigateurs pensent que la 1.1.1.1 est un site Web HTTPS de confiance?" (la seule question réelle dans le corps), puis "car 1.1.1.1 est répertorié en tant que SAN dans le certificat" répond clairement à cette question.
Dave Sherohman
@DmitryGrigoryev " n'explique pas pourquoi un tel certificat pourrait être délivré ", alors la question n'est pas claire, car il ne contient même pas les informations complètes du certificat et ne constitue pas clairement une question technique sur la mise en oeuvre de TLS dans les navigateurs ou une question de politique à propos de CA, mais un mélange des deux
curiousguy