Buraco SNI

Buraco SNI

Comprei um certificado válido:

Por exemplo, este site o valida: https://sslanalyzer.comodoca.com/?url=www.example.com

Mas quando eu testo com openSSL, assim:

openssl s_client -showcerts -connect https://www.exemplo.com:443

eu recebo

Verifique o código de retorno: 18 (certificado autoassinado)

Responder1

Buraco SNI

Você caiu em umBuraco SNI.

SNI éindicação do nome do servidor. Isso permite que você tenha vários nomes de host diferentes no mesmo IP compartilhado. E se você realmente não indicar um nome de servidor para um servidor habilitado para SNI, você receberá de volta o certificado padrão. (Esta é a parte do "buraco SNI".)

E o OpenSSL não fornecerá um nome de servidor para o servidor TLS, a menos que você solicite. Use o -servernameparâmetro para isso.

$ echo '' | openssl s_client -showcerts -connect www.unival-logistics.com:443  -servername www.unival-logistics.com 2>/dev/null | grep -Ei 'subject|issuer|return'
subject=/C=US/OU=Domain Control Validated/CN=www.unival-logistics.com
issuer=/C=BE/O=GlobalSign nv-sa/CN=GlobalSign Domain Validation CA - SHA256 - G2
    Verify return code: 20 (unable to get local issuer certificate)

Se você deixar isso de fora, obterá o certificado padrão para esse host. E aqui está um certificado autoassinado. (E também não acho que deveria estar lá. Não faz sentido entregar um certificado autoassinado.)

 $ echo '' | openssl s_client -showcerts -connect www.unival-logistics.com:443  2>/dev/null | grep -Ei 'subject|issuer|return'
 subject=/O=americanfuturegate.com/CN=*.americanfuturegate.com/[email protected]
 issuer=/O=americanfuturegate.com/CN=*.americanfuturegate.com/[email protected]
     Verify return code: 18 (self signed certificate)

Verifique essa instalação

Nota lateral: recomendo que você desative o SSL3. (Relatório do Laboratório SSLaqui.)

informação relacionada