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

128

Quando visito o link , qualquer navegador da Web que eu usar considerará o URL seguro.

Isso é o que o Google Chrome mostra:

Normalmente,quandotentovisitarumsiteHTTPSpormeiodeseuendereçoIP,receboumavisodesegurançacomoeste:

Peloqueentendi,ocertificadodositeprecisacorresponderaodomínio,masoVisualizadordecertificadodoGoogleChromenãomostra1.1.1.1:

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

No - we no longer accept certificate requests for either intranet names or IP addresses. This is an industry-wide standard, not one specific to GoDaddy.

( ênfase meu)

E também:

As a result, effective October 1, 2016, Certification Authorities (CAs) must revoke SSL certificates that use intranet names or IP addresses.

( ênfase meu)

E:

Instead of securing IP addresses and intranet names, you should reconfigure servers to use Fully Qualified Domain Names (FQDNs), such as www.coolexample.com.

( ênfase meu)

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

Como é possível que todos os principais navegadores achem que o link é um site HTTPS confiável?

    
por Deltik 12.04.2018 / 06:05

3 respostas

92

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

(intranet names) or (IP addresses)

i.e. banir totalmente o uso de endereços IP numéricos. O significado que corresponde ao que você está vendo é:

intranet (names or IP addresses)

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

Certificados para endereços IP publicamente roteáveis ainda são permitidos, geralmente não recomendados para a maioria das pessoas, especialmente aqueles 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 pode garantir um endereço IP (público).

Instead of securing IP addresses and intranet names, you should reconfigure servers to use Fully Qualified Domain Names (FQDNs), such as www.coolexample.com

Talvez alguém da GoDaddy estivesse interpretando mal a redação, mas é mais provável que eles quisessem manter seus conselhos simples e queriam recomendar o uso de nomes DNS públicos em certificados.

A maioria das pessoas não usa um IP estático estável para seu serviço. Fornecer serviços de 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 no seu certificado SSL restringiria suas opções futuras, porque você não poderia deixar outra pessoa começar a usar esse IP. Eles podem se passar por seu site.

Cloudflare.com tem controle do endereço IP 1.1.1.1, e não está planejando fazer nada diferente com ele no futuro previsível, então faz sentido para eles colocarem seu IP no seu cert. Especialmente como um provedor de DNS , é mais provável que os clientes HTTPS visitem seu URL por número do que por qualquer outro site.

    
por 13.04.2018 / 01:17
99

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

Fonte: link

A CA do link era DigiCert , que a partir da redação desta resposta, permite a compra de certificados de sites para endereços IP públicos.

O DigiCert tem um artigo sobre isso chamado SSL do nome do servidor interno Emissão de certificado após 2015 :

If you are a server admin using internal names, you need to either reconfigure those servers to use a public name, or switch to a certificate issued by an internal CA before the 2015 cutoff date. All internal connections that require a publicly-trusted certificate must be done through names that are public and verifiable (it does not matter if those services are publicly accessible).

( ênfase meu)

A Cloudflare simplesmente recebeu um certificado do endereço IP 1.1.1.1 dessa CA confiável.

A análise do certificado do link revela 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":

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

    
por 12.04.2018 / 06:41
43

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ê teria colocado apenas nomes DNS aqui, mas o Cloudflare também colocou os endereços IP deles

O

link também é considerado seguro pelos navegadores.

    
por 12.04.2018 / 06:22