Verificación de revocación del certificado OpenSSL en el programa del cliente usando el grapado OCSP 2

2

Más o menos esta es una solicitud de información adicional para la pregunta: enlace

Quiero saber cómo OpenSSL realmente maneja la respuesta de grapado de OCSP. Las preguntas son:

  1. ¿El OpenSSL verifica la firma, la clave del emisor / los hashes de nombre de la respuesta?

  2. ¿La respuesta incluye respuestas de OCSP para toda la cadena de certificados? Si es así, ¿hay alguna manera de saber que una de las validaciones ha fallado?

  3. Para resumir, ¿puedo simplemente basarme en el campo 'Estado del certificado: bueno' de la respuesta? :)

Mi preocupación es que el pirata informático puede crear un servidor https con un certificado revocado (robado), pero durante el protocolo de enlace proporciona una respuesta OCSP grapada válida para un sitio web aleatorio que fue certificado por el mismo emisor de CA. ¿Podría el OpenSSL manejar tal situación?

La respuesta de muestra de OCSP se puede encontrar aquí enlace

    
pregunta Evgeny Yashin 13.04.2016 - 06:25
fuente

1 respuesta

2
  

cómo OpenSSL realmente maneja la respuesta de grapado OCSP

OpensSL no hace nada por su cuenta en esta área. Debe lidiar explícitamente con el grapado OCSP en su código, tanto para indicar que admite el grapado como para validar e interpretar la respuesta.

  

¿El OpenSSL verifica la firma, la clave del emisor / los hashes de nombre de la respuesta?

Si se utilizan las funciones adecuadas, puede hacerlo. La validación de una respuesta de OCSP es similar a validar un certificado o una CRL, es decir, validar la cadena de confianza. Aparte de eso, debe verificar que la respuesta de OCSP sea en realidad para el certificado correcto.

  

¿La respuesta incluye respuestas de OCSP para toda la cadena de certificados? Si es así, ¿hay alguna forma de saber que una de las validaciones ha fallado?

Esto depende de lo que envíe el servidor y de lo que solicite el cliente (es decir, respuesta única o múltiple de OCSP). Y como tiene que implementar todos los detalles, también tiene la información de qué parte de la validación falló.

  

Para resumir, ¿puedo simplemente confiar en el campo "Estado de certificación: bueno" de la respuesta? :)

No, no puede simplemente confiar en ninguna respuesta OCSP enviada por el servidor.
Tienes que hacer toda la validación de la respuesta OCSP por ti mismo. Aparte de las partes ya mencionadas, esto implica también verificar si la respuesta es obsoleta (demasiado antigua). Y, por supuesto, el certificado podría haber sido revocado en los últimos minutos, pero la respuesta sigue siendo válida, es decir, OCSP no proporciona información en tiempo real sobre el estado de un certificado.

Tenga en cuenta que solo las herramientas o bibliotecas muy basadas en OpenSSL implementan el grapado de OCSP y / o OCSP, e incluso si lo hacen, por lo general no están habilitados de forma predeterminada. Esto no es muy diferente con otras implementaciones TLS.

    
respondido por el Steffen Ullrich 13.04.2016 - 06:54
fuente

Lea otras preguntas en las etiquetas