1 votos

¿Puede un cliente confiar en un certificado de una CA en su mismo nivel? (o más abajo)

En una PKI, donde todos los clientes reciben sus certificados a partir del 2º nivel de la entidad emisora del certificado, si un nuevo CA aparece con un legítimo certificado de la cadena, pero en la jerarquía, los clientes van en el mismo nivel de la CA de confianza de los niños? Estos serían los certificados con un desconocido CA (la tercera), pero con los familiares de los certificados de la root y de la CA subordinada (2º nivel) en la cadena?

Sé que hay algo así como un cross-domain CAs o algo parecido, pero esta técnica sería el mismo dominio, subdominio, en todo caso. Válido o no, no hay ninguna razón por qué un 3er o nivel 10 CA no emisión de certificados para el nivel superior, es la que hay??

Hice un pequeño boceto explicarlo mejor: enter image description here

Gracias!

2voto

Zoredache Puntos 84524

Un cliente puede confiar en un profundo certificado, pero es totalmente automático.

Con la mayoría de los TLS servidores que tienen una manera de proporcionar un paquete de certificados intermedios además el certificado utilizado para dicho extremo.

Así que el Letsencrypt root es la confianza de la mayoría de los navegadores y clientes

Pero los certificados de Letsencrypt provienen de una profunda CA que normalmente no de confianza directamente. El servidor debe incluir el intermedio.

Así que cuando el cliente obtiene conecta obtendrá los intermedios, y el certificado para el recurso que se está conectando. Se tratará de la cadena de confianza de la root, a través de los intermediarios hacia el cert.

Así que veamos el caso de https://serverfault.com/. Mi sistema sólo confía en la parte superior 'DigiCert' CA, no se confía 'DigiCert Alta Garantía EV CA Raíz'. Pero puedo usar https://serverfault.com/ debido a que el servidor devuelve los intermedios.

stackexchange cert

Si desea que el fuego de la CLI se puede ver el certs con openssl

echo '' | openssl s_client -showcerts -connect serverfault.com:443
CONNECTED(00000003)
depth=2 C = US, O = DigiCert Inc, OU = www.digicert.com, CN = DigiCert High Assurance EV Root CA
verify return:1
depth=1 C = US, O = DigiCert Inc, OU = www.digicert.com, CN = DigiCert SHA2 High Assurance Server CA
verify return:1
depth=0 C = US, ST = NY, L = New York, O = "Stack Exchange, Inc.", CN = *.stackexchange.com
verify return:1
---
Certificate chain
0 s:/C=US/ST=NY/L=New York/O=Stack Exchange, Inc./CN=*.stackexchange.com
  i:/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert SHA2 High Assurance Server CA
-----BEGIN CERTIFICATE-----
MIIIP... # the intermediate
-----END CERTIFICATE-----
1 s:/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert SHA2 High Assurance Server CA
  i:/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert High Assurance EV Root CA
-----BEGIN CERTIFICATE-----
MIIEs... # cert for stackexchange
-----END CERTIFICATE-----
---
Server certificate
subject=/C=US/ST=NY/L=New York/O=Stack Exchange, Inc./CN=*.stackexchange.com
issuer=/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert SHA2 High Assurance Server CA
---
No client certificate CA names sent
Peer signing digest: SHA512
Server Temp Key: X25519, 253 bits
---
SSL handshake has read 3945 bytes and written 269 bytes
Verification: OK
---
New, TLSv1.2, Cipher is ECDHE-RSA-AES128-GCM-SHA256
...

Así pues, un cliente no lo hace automáticamente confianza más profunda CAs, pero es fácil de configurar cosas así de certificados de confianza.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: