¿La validación del certificado se hace completamente local?

16

¿Estoy en lo cierto al llegar a la conclusión de que la validación de un certificado por parte de un cliente que desea comunicarse con un servidor que ofrece dicho certificado se realiza de manera completamente local? Al igual que en, ¿se supone que el cliente tiene toda la información (por ejemplo, la clave pública de CA, utilizada para firmar el certificado de servidores) ya disponible localmente?

Las excepciones son, creo, que comparan la información de la dirección ip / dns ofrecida a través del certificado con la dirección de los servidores del mundo real y el nombre de dominio.

Una respuesta en otra pregunta ( Modelo de Fideicomiso de Certificado SSL ) de hecho lo declara explícitamente "De hecho, esa es toda la idea de los certificados: permitir la validación sin conexión". ¿Es eso cierto?

    
pregunta JdeHaan 30.10.2016 - 09:43
fuente

2 respuestas

21

Es casi cierto. :) Pero no del todo.

Un certificado puede ser revocado en caso de un compromiso. La única forma de descubrir si un certificado se revoca en un momento dado es básicamente contactando con la CA que lo emitió. Cualquier información firmada en el certificado en sí (apta para la validación fuera de línea) será válida para un certificado revocado.

Hay dos protocolos para verificar la revocación, CRL y OCSP. Una CRL es solo una lista de certificados revocados publicados por la CA, y OCSP es una especie de servicio web, pero la idea es la misma, cualquier cliente que realice una validación de certificados debe echar un vistazo y verificar si se revoca el certificado.

De hecho, una falla bastante común en las implementaciones de validación de certificados es que no verifican la revocación.

    
respondido por el Gabor Lengyel 30.10.2016 - 10:11
fuente
19

La mayor parte de la validación se realiza utilizando información disponible localmente. Pero en algunos casos se necesita acceso a Internet y si este acceso no es posible, la validación puede fallar o la validación tomará mucho tiempo (es decir, los tiempos de espera para obtener recursos en línea):

  • Para obtener información actualizada sobre el estado de revocación de los clientes certificatemost hará una solicitud de OCSP (al menos para certificados EV) a menos que la respuesta de OCSP ya se haya enviado dentro del protocolo de enlace TLS ( Grapado OCSP). Tenga en cuenta que esto no se hará para cada solicitud, es decir, la información se almacenará en caché durante algún tiempo. Es posible que un cliente similar se conecte de vez en cuando para actualizar cualquier lista de CRL que usan (pero la mayoría ya no usa CRL de forma predeterminada).
  • La validación de la cadena de confianza puede fallar porque falta un certificado intermedio. Algunos clientes (¿navegador de escritorio Chrome?) Intentan solucionar estas configuraciones de servidor dañadas e intentan descargar el certificado intermedio faltante de Internet.
  • La validación de la cadena de confianza puede fallar porque la CA raíz es desconocida. En este caso, es posible que algunos sistemas operativos (Windows) le pregunten a un servidor de confianza en línea si carecen de esta CA raíz faltante y luego descargarán la CA raíz desconocida y confiarán automáticamente en esta y en las futuras conexiones. Consulte Actualizaciones automáticas del certificado raíz de CA en Windows .
  • Además, puede haber comprobaciones para detectar los certificados que se emiten debido a un compromiso de una CA o debido a errores y que se utilizan en el hombre en los ataques medios. Dichas comprobaciones podrían realizarse contra un servidor de transparencia de certificados o contra Convergence notarios.
respondido por el Steffen Ullrich 30.10.2016 - 10:13
fuente

Lea otras preguntas en las etiquetas