Por que meu navegador pensa que https://1.1.1.1 é seguro?

Por que meu navegador pensa que https://1.1.1.1 é seguro?

Quando eu visitohttps://1.1.1.1, qualquer navegador que eu uso considera o URL seguro.

Isto é o que o Google Chrome mostra:

Barra de endereço do Google Chrome 65.0.3325.181 mostrando https://1.1.1.1

Normalmente, quando tento visitar um site HTTPS através do seu endereço IP, recebo um aviso de segurança como este:

Barra de endereço do Google Chrome 65.0.3325.181 mostrando https://192.168.0.2

Pelo que entendi, o certificado do site precisa corresponder ao domínio, mas o Visualizador de certificados do Google Chrome não mostra 1.1.1.1:

Visualizador de certificado: *.cloudflare-dns.com

Artigo da base de conhecimento do GoDaddy "Posso solicitar um certificado para um nome de intranet ou endereço IP?"diz:

Não - não aceitamos mais solicitações de certificados para nomes de intranet ou endereços IP.Este é um padrão para toda a indústria, não específico para GoDaddy.

(ênfasemeu)

E também:

Como resultado,em vigor a partir de 1º de outubro de 2016, Autoridades de Certificação (CAs)deve revogar certificados SSL que usamnomes de intranet ouEndereços IP.

(ênfasemeu)

E:

Em vez de proteger endereços IPe nomes de intranet, você deve reconfigurar os servidores para usar nomes de domínio totalmente qualificados (FQDNs), comowww.coolexample.com.

(ênfasemeu)

Já passou da data de revogação obrigatória 01 de outubro de 2016, mas o certificado 1.1.1.1foi emitido em 29 de março de 2018 (mostrado na imagem acima).


Como é possível que todos os principais navegadores pensem issohttps://1.1.1.1é um site HTTPS confiável?

Responder1

Inglês é ambíguo. Você estava analisando assim:

(intranet names) or (IP addresses)

ou seja, proibir totalmente o uso de endereços IP numéricos. O significado que corresponde ao que você está vendo é:

intranet (names or IP addresses)

ou seja, proibir certificados para ointervalos de IP privadoscomo 10.0.0.0/8, 172.16.0.0/12 e 192.168.0.0/16, bem como para nomes privados que não são visíveis no DNS público.

Certificados para endereços IP roteáveis ​​publicamente ainda são permitidos,geralmente não é recomendado para a maioria das pessoas, especialmente aquelas que também não possuem um IP estático.


Esta declaração é um conselho, não uma afirmação de que vocênão podeproteger um endereço IP (público).

Em vez de proteger endereços IP e nomes de intranet, você deve reconfigurar os servidores para usar nomes de domínio totalmente qualificados (FQDNs), como www.coolexample.com

Talvez alguém da GoDaddy tenha interpretado mal o texto, mas é mais provável que eles quisessem manter seus conselhos simples e recomendassem o uso de nomes DNS públicos em certificados.

A maioria das pessoas não usa um IP estático estável para seus serviços. Fornecer serviços DNS é o único caso em que é realmente necessário ter um IP estável e conhecido em vez de apenas um nome. Para qualquer outra pessoa, colocar seu IP atual em seu certificado SSL restringiria suas opções futuras, porque você não poderia permitir que outra pessoa começasse a usar esse IP. Eles poderiam se passar por seu site.

Cloudflare.comtem controle deo próprio endereço IP 1.1.1.1 e não planeja fazer nada diferente com ele no futuro próximo, então faz sentidopara elespara colocar seu IP em seu certificado. Especialmentecomo provedor de DNS, é mais provável que os clientes HTTPS visitem seu URL por número do que qualquer outro site.

Responder2

A documentação do GoDaddy está errada. Não é verdade que as Autoridades de Certificação (CAs) devam revogar certificados para todos os endereços IP…apenas endereços IP reservados.

Fonte:https://cabforum.org/internal-names/

A AC parahttps://1.1.1.1eraDigiCert, que no momento da redação desta resposta permite a compra de certificados de site para endereços IP públicos.

DigiCert tem um artigo sobre isso chamadoEmissão de certificado SSL de nome de servidor interno após 2015:

Se você for um administrador de servidor que usa nomes internos, precisará reconfigurar esses servidores para usar um nome público ou mudar para um certificado emitido por uma CA interna antes da data limite de 2015. Todas as conexões internas que exigem um certificado publicamente confiável devem ser feitas através de nomes que sejampúblico e verificável(não importa se esses serviços são acessíveis ao público).

(ênfasemeu)

A Cloudflare simplesmente obteve um certificado para seu endereço IP 1.1.1.1dessa CA confiável.

Analisando o certificado parahttps://1.1.1.1revela que o certificado faz uso de nomes alternativos de assunto (SANs) para abranger alguns endereços IP e nomes de domínio comuns:

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

Essas informações também estão no Visualizador de certificados do Google Chrome, na guia "Detalhes":

Visualizador de certificado: Detalhes: *.cloudflare-dns.com

Este certificado é válido para todos os domínios listados (incluindo o curinga *) e endereços IP.

Responder3

Parece que o nome alternativo do assunto do certificado inclui o endereço 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

Tradicionalmente, acho que você colocaria apenas nomes DNS aqui, mas a Cloudflare também colocou seus endereços IP.

https://1.0.0.1/também é considerado seguro pelos navegadores.

informação relacionada