Veja o certificado SSL de uma página que redireciona imediatamente para outra

25

Pesquisei bastante no Google, mas parece que meu google-fu me falha - desculpe-me se esta é uma pergunta trivial e já respondida, não consegui encontrar nada sobre isso

Estou tentando diagnosticar uma incompatibilidade de nome de host de certificado SSL. Quando visito o URL em questão, ele me redireciona para outra página que possui o certificado SSL correto. No entanto, alguns clientes estão relatando que estão recebendo um erro de incompatibilidade de nome de host do certificado SSL. Minha única suposição é que a página de redirecionamento tem o certificado errado e alguns clientes estão deixando de lado porque resolve com uma nova página que possui o certificado correto.

(O como e por que o problema não é realmente a questão)

A questão:

Do lado de fora para dentro (também conhecido como cliente no mundo) - como ver o certificado entregue por uma página que redireciona automaticamente para outra página?

Robert Petz
fonte
Outro recurso útil é o Teste do servidor SSL do SSL Labs da Qualy.
TRiG 18/01

Respostas:

35

Use o openssl s_client canalizado para o openssl x509 :

$ openssl s_client -connect foo.example.com:443 < /dev/null | openssl x509 -text

(Adicione -servername foo.example.comao comando s_client se o servidor usar SNI .)

O redirecionamento do stdin de / dev / null para a primeira chamada do openssl impedirá que ele espere pela entrada.

EEAA
fonte
2
Você também pode canalizar a saída para openssl x509 -textver realmente o que está em cert do servidor, e redirecionar a entrada do primeiro opensslcomando de /dev/nullmodo que o comando não pendurar: openssl s_client -connect ... < /dev/null | openssl x509 -text. Procure o campo "Nome alternativo do assunto X509v3".
Andrew Henle
@AndrewHenle Ótima adição. Sinta-se livre para editar isso na minha resposta, se desejar.
EEAA
Funcionou como um encanto - eu passei apenas um tempo limitado com o openSSL, mas sempre que preciso fazer algo relacionado ao ssl, tudo se resume a ele haha ​​... Obrigado pela dica!
22615 Robert Petz
6
Se o servidor usa SNI, você deve adicionar -servername foo.example.comàs s_clientopções.
23415 Bruno
Não vejo a cadeia de confiança na saída. Se eu quiser ver se um site é confiável pela VeriSign ou LetsEncrypt ou ChineseGov ou DO_NOT_TRUST_FiddlerRoot, o que devo procurar?
Carl Walsh
7

No Firefox 57, se você abrir as Ferramentas do desenvolvedor e acessar a guia Rede:

  1. Verifique se Persist Logsestá marcado
  2. Visite o URL de seu interesse
  3. Clique na linha superior (ou seja, a que corresponde à solicitação do servidor em que você está interessado, o que resultou na resposta de redirecionamento)
  4. Clique na Securityguia (até a metade, ainda dentro Network)

Isso permitirá visualizar informações do certificado, como o nome comum do emissor, detalhes do emissor, período de validade e impressões digitais.

Isso funcionou para mim em um site que respondeu com um redirecionamento 301 para outro site HTTPS. (Infelizmente, a resposta aceita acabou de me fornecer o certificado para a página de destino final.)

mpavey
fonte
Obrigado por um método Browser nativo. Você tentou a -servernameopção com openssl? Isso pode dar um resultado diferente, mesmo que seja o mesmo nome.
Mwfearnley
@mwfearnley Não! Com openssl, eu apenas copiei e colei a resposta e desisti depois que não funcionou :) Obrigado pela sugestão.
Mpavey # 16/18
1

Como alternativa aos programas separados mencionados em outras respostas, você também pode desativar o redirecionamento automático no seu navegador.

A opção para fazer isso varia de acordo com o navegador. Aqui estão os métodos para Firefox e Chrome:

jpa
fonte
Não tem certeza de quem rebaixou isso?
Robert Petz
Sim, é exatamente isso que eu queria, uma solução completamente no navegador.
27416
1
Isso não funcionou para mim no Chrome. Eu posso ver o 302 no rastreamento de rede, mas não vejo como inspecionar o certificado a partir dos rastreamentos de rede. Se eu clicar na guia Segurança, o Chrome exibirá o certificado da página atual (o destino de redirecionamento).
Carl Walsh
O voto negativo é provavelmente porque as respostas "somente link" tendem a apodrecer ao longo dos anos à medida que os produtos mudam. Talvez essa resposta tenha funcionado antes do Chrome apresentar a guia Segurança?
Carl Walsh
1
@jpa O link que você forneceu para o Chrome parece explicar como preservar o log da rede após o redirecionamento, e não como impedir que o Chrome siga o redirecionamento.
precisa saber é o seguinte