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


Quando eu visito https://1.1.1.1, qualquer navegador da web que eu usar considerará a URL como segura.

Isto é o que o Google Chrome mostra:

Google Chrome 65.0.3325.181 address bar showing https://1.1.1.1

Normalmente, quando tento visitar um site HTTPS por meio de seu endereço IP, recebo um aviso de segurança como este:

Google Chrome 65.0.3325.181 address bar showing https://192.168.0.2

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

Certificate Viewer: *.cloudflare-dns.com

Artigo da Base de Conhecimento da 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 de toda a indústria, não um específico para GoDaddy.

(ênfase meu)

E também:

Como um resultado, Em vigor a partir de 1º de outubro de 2016, Autoridades de certificação (ACs) deve revogar certificados SSL que usam nomes de intranet ou Endereços IP.

(ênfase meu)

E:

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

(ênfase meu)

É bem depois da data de revogação obrigatória 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 pensem que https://1.1.1.1 é um site HTTPS confiável?


127


origem


Vale ressaltar que há uma enorme diferença entre 192.168.0.2 e 1.1.1.1. 1 192.168.0.2 não existe fora da sua intranet. Se você criou seu próprio certificado autoassinado 192.168.0.2 seria confiável, e você poderia usar a mesma abordagem para a SAN, em um domínio como fake.domain. Vale ressaltar que 1.1.1.1 não é um endereço IP reservado, então parece que qualquer CA teria emitido o certificado. - Ramhound
blog.cloudflare.com/announcing-1111 "Estamos empolgados hoje em dar mais um passo em direção a essa missão com o lançamento do 1.1.1.1 - o serviço de DNS mais rápido para a privacidade e o primeiro consumidor". - DoritoStyle
Eu acho que você marcou a frase errada. Provavelmente, eles significam que 'devem revogar certificados SSL que usam intranet (nomes ou endereços IP)' não '' devem revogar certificados SSL que usam (nomes de intranet) ou endereços IP '. - Maciej Piechotka
@MaciejPiechotka está correto, isso significa "deve revogar certificados SSL que usam nomes de intranet ou endereços IP de intranet" - Ben
BTW ... não há tal coisa como uma revogação obrigatória. Literalmente, nenhuma organização na Terra tem esse tipo de poder. O mais próximo que você chega é um monte de ACs concordando em fazer uma coisa. - cHao


Respostas:


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

(intranet names) or (IP addresses)

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

intranet (names or IP addresses)

isto é, certificados de proibição para o faixas de IP privadas 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, simplesmente não é geralmente recomendado para a maioria das pessoas, especialmente aquelas que não possuem um IP estático.


Esta declaração é um conselho, não uma afirmação de que você não pode proteger 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 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 de o 1.1.1.1 endereço IP em si, e não está planejando fazer nada diferente com ele no futuro previsível, por isso faz sentido para eles para colocar seu IP em seu certificado. 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.


90



Isso responde exatamente porque eu estava confuso. Eu enviei uma sugestão para GoDaddy para melhorar a redação de o artigo. Espero que eles consertem isso para esclarecer "(nome do servidor interno) ou (endereço IP reservado)" conforme documentado no fórum do CAB. - Deltik
Pedanticamente, Cloudflare não "próprio" o endereço 1.1.1.1. Isto é propriedade da APNIC Labs, que deu permissão Cloudflare para operar um resolvedor DNS lá em troca da assistência da Cloudflare em estudar o grande volume de pacotes de lixo que são erroneamente endereçados àquele IP. - Kevin
Pedanticamente, @Kevin, o APNIC também não possui. Este artigo menciona a questão da propriedade e usa a frase "alocado para". A IANA, parte da ICANN, alocou o intervalo de endereços ao APNIC que alocou esses endereços à Cloudflare. Endereços IPv4 são simplesmente uma maneira sofisticada de escrever um número de 0-4294967296 (se você fizer ping 16843009 em muitos sistemas operacionais, então você encontrará uma resposta de 1.1.1.1) e os EUA não reconhecerão possuir um número (daí porque o nome "Pentium" foi feito) - TOOGAM
A coisa da Intel era um caso de marca registrada, não de propriedade ... - StarWeaver
@TOOGAM: Quero dizer que, no sistema whois, que eu especificamente vinculei, 1.1.1.1 é alocado para o APNIC Labs. Se você vai escolher lêndeas sobre alocação versus propriedade, não torça o significado de "alocado". - Kevin


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: https://cabforum.org/internal-names/

A CA para https://1.1.1.1 estava DigiCert, que, na redação desta resposta, permite a compra de certificados de sites para endereços IP públicos.

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

Se você for um administrador de servidor usando nomes internos, precisará reconfigurar esses servidores para usar um nome público ou alternar para um certificado emitido por uma autoridade de certificação 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 são público e verificável (não importa se esses serviços são publicamente acessíveis).

(ênfase meu)

Cloudflare simplesmente tem um certificado para o seu endereço IP 1.1.1.1 daquela CA confiável

Analisando o certificado para https://1.1.1.1 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":

Certificate Viewer: Details: *.cloudflare-dns.com

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


98



O link do seu artigo não parece estar funcionando. Melhor para citar as informações relevantes. - Ramhound
Eu acho que não se equivocou tanto quanto enganosa. Deve ser o suporte como 'deve revogar certificados SSL que usam intranet (nomes ou endereços IP)' não '' deve revogar certificados SSL que usam (nomes de intranet) ou endereços IP '. - Maciej Piechotka
Bem faz diga "nomes de intranet ou endereços IP". Nomes de intranet ou endereços IP de intranet. Não é errado, é apenas o OP apenas o lê seletivamente. - Lightness Races in Orbit


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, eu acho que você teria colocado apenas nomes DNS aqui, mas o Cloudflare também colocou seus endereços IP.

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


43



Não vejo como isso responde à pergunta. Postar o conteúdo de um certificado não explica por que tal certificado pode ser entregue. - Dmitry Grigoryev
@DmitryGrigoryev: Mas isso prova que tal certificado estava entregue, que foi um grande ponto de confusão na pergunta (o OP não conseguiu encontrar 1.1.1.1 listado no certificado) - Lightness Races in Orbit
Essa resposta, de fato, responde à pergunta do autor. Enquanto o autor entrou em mais detalhes no que diz respeito à sua confusão, isso identifica o fato, o certificado em questão é realmente válido. Como o autor da pergunta nunca nos forneceu o que o GoDaddy realmente disse, é difícil responder à pergunta com qualquer outra coisa. - Ramhound
@DmitryGrigoryev - Se a pergunta for "Por que meu navegador acha que 1.1.1.1 é seguro? "(o título desta página) ou" Como é possível que todos os principais navegadores pensem que 1.1.1.1 é um site HTTPS confiável? "(a única questão real dentro do corpo), então" porque 1.1.1.1 está listado como uma SAN no certificado "responde claramente a essa pergunta. - Dave Sherohman
@DmitryGrigoryev "não explica por que tal certificado pode ser entregue"então a questão não está clara, pois ela nem contém as informações completas do certificado e não é claramente uma questão técnica sobre a implementação do TLS em navegadores ou uma questão de política sobre a CA, mas uma combinação de ambas - curiousguy