16 enero 2009

¿cómo vas? ¿y tú certificado SSL qué tal?

SSLFail.com es una web que nace con el objetivo de evidenciar a todos a aquellos que utilizan servicios SSL y que disponen de un certificado erróneo por alguno de los múltiples motivos que se pueden dar.

Salvo curiosidades de algunas webs, tampoco parece ser demasiado interesante, pero usaremos una captura para explicar a que se deben estos errores.




La imagen superior muestra lo que es el fallo más típico. A la hora de generar un certificado SSL se solicita el "CommonName" o CN, que es el nombre DNS del sistema junto al domino al que pertenecen, también denominado FQDN. En el ejemplo, en el momento de la generación se introdujo "www.verisign.com", lo que es correcto siempre y cuando se acceda a esa URL únicamente mediante la dirección: http://www.verisign.com.

La captura, en cambio, evidencia que se accedió sin utilizar el subdominio "www", pero los servidores DNS resuelven ambas direcciones a la misma IP y por lo tanto el certificado SSL es el mismo.
[aramosf@sbd ]$ host www.verisign.com
www.verisign.com is an alias for www.verisign.net.
www.verisign.net has address 65.205.249.60
[aramosf@sbd ]$ host verisign.com
verisign.com has address 65.205.249.60
El navegador, al solicitar el certificado comprueba que el nombre introducido en la URL (verisign.com) y el CN (www.verisign.com) son distintos. Lo que genera el error: "ssl_error_bad_cert_domain" y que puede ser saltado añadiendo una excepción.

Este aviso en concreto y conociendo lo que hacemos, no es realmente grave y es muy habitual cuando se acceden a servicios mediante https eliminando las "www", ya que por usabilidad es práctica habitual que el dominio responda al mismo contenido que el web principal.

Los certificados pueden ser consultados manualmente con la aplicación "openssl":
[aramosf@sbd ~]$ openssl s_client -connect verisign.com:443
CONNECTED(00000003)
---
Certificate chain
0 s:/serialNumber=2497886/1.3.6.1.4.1.311.60.2.1.3=US/1.3.6.1.4.1.311.60.2.1.2=Delaware/C=US/postalCode=94043/ST=California/L=Mountain View/streetAddress=487
East Middlefield Road/O=VeriSign, Inc./OU=Production Security Services/OU=Terms of use at www.verisign.com/rpa (c)06/CN=www.verisign.com
i:/C=US/O=VeriSign, Inc./OU=VeriSign Trust Network/OU=Terms of use at https://www.verisign.com/rpa (c)06/CN=VeriSign Class 3 Extended Validation SSL SGC CA
1 s:/C=US/O=VeriSign, Inc./OU=VeriSign Trust Network/OU=Terms of use at https://www.verisign.com/rpa (c)06/CN=VeriSign Class 3 Extended Validation SSL SGC CA
i:/C=US/O=VeriSign, Inc./OU=VeriSign Trust Network/OU=(c) 2006 VeriSign, Inc. - For authorized use only/CN=VeriSign Class 3 Public Primary Certification Au
thority - G5
2 s:/C=US/O=VeriSign, Inc./OU=VeriSign Trust Network/OU=(c) 2006 VeriSign, Inc. - For authorized use only/CN=VeriSign Class 3 Public Primary Certification Au
thority - G5
i:/C=US/O=VeriSign, Inc./OU=Class 3 Public Primary Certification Authority
3 s:/C=US/O=VeriSign, Inc./OU=Class 3 Public Primary Certification Authority
i:/C=US/O=VeriSign, Inc./OU=Class 3 Public Primary Certification Authority
---
Server certificate
-----BEGIN CERTIFICATE-----
MIIGCDCCBPCgAwIBAgIQakrDGzEQ5utI8PxRo5oXHzANBgkqhkiG9w0BAQUFADCB
vjELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQL
[...]
También existen servicios online que nos muestra el certificado SSL de un host, como el que ofrece serversniff.net



Por último, una aplicación gráfica para entornos Windows con la que también se pueden hacer estas consultas. SSLDigger de Foundstone.




4 comments :

Alejandro Ramos dijo...

Gracias por el apunte Romansoft, exactamente se puede añadir una extensión al certificado "SubjectAltNames" con varios hosts más (no limitando tampoco a dos).

soytico.info La pagina de los ticos dijo...

a lo que apunta romansoft serviria solo para sitios o subdominios del mismo dominio o tambien serviria para dominios difrentes?

RoMaNSoFt dijo...

Muchos certificados SSL se emiten con nombres alternativos, permitiendo por ejemplo que funcione tanto pepito.com como www.pepito.com (compartiendo IP y certificado).

-r

soytico.info La pagina de los dijo...

a lo que apunta romansoft serviria solo para sitios o subdominios del mismo dominio o tambien serviria para dominios difrentes?