Me acabo de dar cuenta de que los ataques SSL de hombre en el medio son mucho más comunes de lo que pensaba, especialmente en entornos corporativos. Me he enterado y he visto varias empresas que tienen un servidor proxy SSL transparente. Todos los clientes están configurados para confiar en el certificado de este proxy. Básicamente, esto significa que, en teoría, el empleador puede interceptar incluso el tráfico cifrado SSL sin que surja ninguna advertencia en el navegador. Como se mencionó anteriormente, los clientes vienen con el certificado de confianza. Esto solo se puede revelar validando manualmente el certificado que se está utilizando.
Para mí, parece que el empleador utiliza su posición superior para espiar el tráfico SSL del empleado. Para mí, esto hace que todo el concepto de SSL no sea confiable. Yo mismo probé con éxito una configuración similar usando mitmproxy y pude leer la comunicación entre el cliente y mi servidor de banca electrónica. Esta es información que no debe ser revelada a nadie.
Por lo tanto, mi pregunta es bastante simple: ¿cómo puedo validar la cadena de confianza en el lado del servidor? Quiero asegurarme de que el cliente use el certificado de mi servidor y solo una cadena de confianza. Me pregunto si esto se puede lograr con la configuración SSL de Apache. Esto sería conveniente ya que podría aplicarse fácilmente a muchas aplicaciones. Si esto no es posible, ¿alguien sabe de alguna manera de hacer esto en PHP? ¿O tienes alguna otra sugerencia?