El cifrado con SSL consta de los siguientes pasos:
- Identifique el par utilizando un certificado.
- Cree e intercambie claves para la siguiente comunicación.
- Intercambie datos, cifrados con las claves intercambiadas previamente.
Por lo general, utiliza el cifrado porque cree que cualquiera puede escuchar la conexión. Un pequeño paso de esta escucha pasiva es la manipulación activa de la conexión que SSL también puede detectar. Pero para esto necesita identificar correctamente a su compañero, de lo contrario, cualquier persona en el medio podría decir que es el servidor correcto.
Con un certificado autofirmado, la identificación adecuada no es posible, ya que cualquiera podría crear dicho certificado con las mismas credenciales que usted. Esto significa que nadie debe confiar en un certificado autofirmado por sí mismo. Solo debe confiar en un certificado autofirmado si puede verificarlo de otra manera. Esta otra forma podría ser una configuración manual en el lado del servidor (por lo general no es el caso a menos que el remitente conozca al destinatario directamente) o la verificación del certificado a través de DANE , donde el propietario del dominio proporciona su certificado o huella digital dentro de un registro DNS confiable (necesita DNSSec ).
Lo que realmente hacen los servidores cuando detectan que un certificado que no es de confianza difiere: algunos aceptarán el certificado y escribirán verify=NO
en el encabezado del correo recibido, mientras que otros podrían rehusarse a conectarse con SSL porque consideran que la conexión es insegura y desciende. Texto o no conectar en absoluto. Depende de la configuración del servidor de envío.
Actualmente, probablemente la mayoría de los servidores de correo se conectarán con éxito a otros servidores, incluso si no pueden verificar su certificado. Pero, cada vez más están utilizando certificados "reales" (verificables). Si compara los informes de Facebook de mayo de 2014 a August 2014 puede ver el uso de certificados verificables pasar del 30% al 95% en solo 4 mes. Esto significa que el uso de certificados reales probablemente será requerido por más servidores en el futuro cercano.
Esto significa que usar un certificado firmado por una CA conocida es definitivamente mejor que usar un certificado autofirmado. Pero incluso eso podría no proporcionar la seguridad que está tratando de lograr. Cualquiera de la centésima parte de la CA en la que confía el sistema operativo puede emitir dicho certificado, por lo que un atacante podría intentar obtener un certificado para su dominio también. Pero esto es al menos mucho más difícil que simplemente crear otro certificado autofirmado, porque el atacante debe piratear la CA o controlar su dominio de correo de alguna manera para capturar los correos que la CA usa dentro del proceso de identificación.
Otro ataque de un hombre activo en el medio es reencaminar el correo atacando el DNS: para enrutar un correo desde el servidor de correo de envío al servidor responsable de su dominio, el servidor de envío debe: una búsqueda de DNS para el registro MX de su dominio, que contiene los nombres de sus servidores de correo. Un atacante activo cerca del servidor de envío podría atacar esta búsqueda de DNS y proporcionar un registro MX falso que apunte a sus propios servidores. TLS no ayudará más aquí. En su lugar, debe usar DNSSec para asegurar sus registros DNS y el remitente debe verificar este registro.
Aparte de eso, TLS no proporciona seguridad de extremo a extremo para el correo, solo paso a paso. Cualquier servidor de correo intermedio tiene acceso al correo normal y, por lo tanto, debe ser completamente confiable. Para obtener un cifrado de extremo a extremo, debe usar S / MIME o PGP. Y debido a esto, a algunos administradores de servidores no les importa el TLS adecuado, porque TLS no ofrecerá seguridad real (de extremo a extremo) para los correos, incluso si se implementa correctamente.