¿Es una buena idea aplicar el cifrado para SMTP (todavía)?

36

Estoy ejecutando un servidor de correo electrónico que actualmente está configurado para usar TLS si es posible, al enviar y recibir correos electrónicos.

Cuando lea la documentación sobre esto, también existe la opción de aplicar TLS y no aceptar la transmisión de mensajes de texto sin formato. También le advierte que es posible que algunos servidores de correo aún no admitan el cifrado y que la aplicación del cifrado podría bloquear estos servidores.

Pero, ¿sigue siendo un problema en el que uno debería pensar o es seguro decir que aplicar el cifrado ya no será un problema?

¿Hay algún proveedor importante que ya esté haciendo esto o qué consideras mejor práctica en estos días?

comfreak
fuente

Respuestas:

34

El problema práctico es que no todos los servidores compatibles con SMTP (el RFC es bastante antiguo) pueden hablar TLS a su servidor, por lo que es posible que no reciba algunos mensajes de correo electrónico.

El problema filosófico con esto es que es imposible saber cómo se retransmite el correo electrónico después (o antes) de que llegó a su servidor.

Esto significa que es posible que el correo electrónico ya se haya transmitido en texto sin formato a través de un relé.

Cualquier persona seria sobre la protección del contenido de su correo electrónico debería encriptar el cuerpo. Con el cifrado en ruta siempre es plausible, ya se ha transmitido en texto plano.

Por lo tanto, para responder a su pregunta, hacer cumplir la encriptación en la capa SMTP probablemente no tenga sentido, aumenta sus posibilidades de perder el correo electrónico y no se garantiza una recompensa beneficiosa.

Editar: Esto se refiere a la aplicación de SMTP para fines de retransmisión, no para envío de correo electrónico. En el envío de correos, el cifrado debe aplicarse ya que la conversación SMTP (no el correo electrónico real) posiblemente contenga credenciales de autenticación.

Matthew Ife
fuente
77
No creo que esta sea la mejor respuesta. Llega a la conclusión correcta, pero por las razones equivocadas. Es "dejar que lo perfecto sea enemigo de lo bueno" tipo de razonamiento. Creo que la mejor respuesta es que si necesita encriptación, evitará que llegue algún correo legítimo (porque algunos servidores SMTP no pueden encriptar). Si no fuera por ese factor, entonces forzar el cifrado sería beneficioso, aunque por todas las razones que enumera no es perfecto, sería mejor que nada, incluso si no es perfecto.
DW
Tiendo a estar en desacuerdo sobre la perfección por la mera adición de subperfecciones; Aún así, envié una edición a la respuesta para enfatizar la posible incompatibilidad técnica de los servidores que cumplen con el RFC pero no admiten TLS.
Alex Mazzariol
¡Gracias por tu respuesta! Al principio no pensé en lo que sucede después de que mi servidor envió el correo al siguiente servidor o, como dijiste, donde el mensaje "ya ha estado" antes de que me llegara. Por supuesto, no tiene sentido forzar el cifrado, si el lado receptor lo envía en texto plano (tal vez a un subservidor de la misma compañía pero aún a través de Internet).
Comfreak
Elegí esta respuesta como la aceptada, ya que deja en claro lo mejor que forzar el cifrado en mi servidor no garantizará una transferencia segura / cifrada del mensaje del remitente al destinatario, sino solo de mi servidor al siguiente.
Comfreak
Creo que esta respuesta es buena, pero no menciona que todavía se desea el cifrado teniendo en cuenta que solo en un número limitado de casos alguien haría todo lo posible para interceptar el mensaje de texto en claro del remitente para engañarlo. Si te estás escondiendo de la CIA / NSA, seguro que eso podría no ayudarte. Pero lo que sería mejor, aplicar el cifrado para que nadie con interés explícito lo lea / intercepte el mensaje del remitente y lo oculte hasta que un tercero decida intentar espiarlo o que todos sus mensajes estén almacenados en los servidores de la NSA para que un día, no solo pueden comenzar ...
momomo
20

No

RFC 821 tiene 33 años. Usted va a encontrar mensajes transmitidos por los programas notsupporting STARTTLS. A veces serán remitentes de correos electrónicos (por ejemplo, scripts internos), a veces sistemas completos que son viejos, tienen TLS deshabilitado / no compilado, sistemas sin suficiente entropía ...

Fui testigo de que no hace mucho tiempo los correos electrónicos salientes fallaban porque el extremo receptor lo tenía configurado para permitir solo SMTP a través de TLS. Fue un problema en el remitente (no debería haber estado usando esa configuración), pero muestra que sucede.

Solo restringiría los mensajes entrantes de direcciones IP configuradas manualmente. Si el procesador de su tarjeta de crédito no puede iniciar STARTTLS, probablemente prefiera cancelar la conexión (¡y avisar al administrador local para que pueda advertirles!) Antes que recibir esos datos (potencialmente confidenciales) sin cifrar. Para los mensajes salientes, si se conectó a ese host utilizando STARTTLS anteriormente, es posible que no quiera volver a hacerlo de forma insegura, considerándolo como un posible compromiso. También puede tener una lista de hosts STARTTLS conocidos por usar siempre, como gmail o yahoo.

Hay un proyecto https://www.eff.org/starttls-everywhere que proporciona una lista de servidores smtp para los que puede (¿debería?) Aplicar con confianza el uso de starttls.

Ángel
fuente
3
¡Gracias por la respuesta y por publicar ese enlace! Este parece ser un buen enfoque para resolver el problema de un ataque de hombre en el medio degradando la conexión a una conversación sin cifrar.
Comfreak
11

Es completamente inútil, y probablemente activamente dañino, rechazar el correo electrónico de pares incapaces de cifrar.

Siempre que su servidor esté configurado para realizar cifrado oportunista con cualquier par que lo ofrezca, obtendrá lo mejor de ambos mundos: cifrado cuando esté disponible y correo electrónico sobre texto sin formato cuando no lo sea.

Mientras haya servidores que no admitan el cifrado, exigirlo simplemente significa que no pueden hablar con usted; eso es malo. Una vez que todos lo admiten, no hay diferencia entre el cifrado oportunista y obligatorio.

Y como otros han señalado, el cifrado en el cable y el cifrado de extremo a extremo son dos cosas completamente diferentes, que abordan diferentes modelos de amenazas. No confundas los dos.

MadHatter apoya a Monica
fuente
Yo diría que lo mejor de ambos mundos también le permitiría ver la diferencia, similar al "bloqueo" de una página SSL en la web, para que sepa qué correos electrónicos * se habrían bloqueado si hubiera forzado TLS
usuario2813274
@ user2813274 Estoy de acuerdo, y lo hace. Revisa tus encabezados; le mostrarán si algún paso de la cadena de transmisión se realizó con o sin cifrado.
MadHatter apoya a Monica el
@MadHatter a menos que esos encabezados hayan sido forjados totalmente por el salto anterior al tuyo.
thrig
8
No es una diferencia entre el cifrado oportunista y obligatoria. A menudo es posible que un MITM activo interrumpa el cifrado oportunista, lo que hace que los puntos finales no vuelvan a cifrarse, lo que se puede monitorear. Con el cifrado obligatorio, la conexión se interrumpiría, lo que provocaría una denegación de servicio pero no una violación de la privacidad.
cjm
44
@cjm de ahí mi punto sobre los modelos de amenaza. Si está tratando seriamente de defenderse de los ataques MITM, solo el cifrado de extremo a extremo puede ayudarlo. Confiar solo en el cifrado SMTP no tiene sentido; un MITM sofisticado simplemente se hará pasar por su servidor, luego le enviará el correo después de leerlo. Claro, su servidor puede tener un certificado debidamente firmado (lo cual es sorprendentemente raro), pero no puede controlar si el sistema que lo envía lo requiere , por lo que un ataque MITM como este tendrá éxito a pesar de los requisitos que establezca en una conexión cifrada .
MadHatter apoya a Monica el
10

Este es un asunto de política.

En general, cuando se aplica TLS para entrada y salida, se hace para un conjunto limitado de dominios que las partes acuerdan para satisfacer una necesidad (por ejemplo, los socios comerciales pueden tener un acuerdo para cifrar todo el correo entre sus empresas).

A menos que se establezca dicho acuerdo, no active el modo de imposición.

MikeyB
fuente
2

No, es una muy mala idea.

De hecho, resulta que la mayoría de los servidores / clientes STARTTLS no implementan ningún tipo de algoritmo de reintento sin StartTLS en caso de que una conexión TLS no se negocie.

Como tal, ¡incluso anunciar STARTTLS como una opción ya reduce sus posibilidades de recibir (y enviar) correos electrónicos!

Simplemente busque y encontrará que muchas personas no pueden enviar CUALQUIER correo electrónico a los dominios de Microsoft Outlook manejados por el clúster * .protection.outlook.com:

Mensajes de Sendmail rechazados por Microsoft cuando usa TLS

motivo: 403 4.7.0 TLS apretón de manos falló

Para resumir los problemas presentados en las dos publicaciones anteriores:

  • puede enviar cualquier correo a cualquier host que no sean los manejados por Outlook, con o sin STARTTLS,
  • puede enviar correo sin un certificado de cliente y sin STARTTLS a Outlook,
  • o con un certificado de cliente de longitud cero,
  • pero no con un certificado que a Microsoft no le guste, y si falla, los clientes (bueno, los servidores que actúan en modo cliente) no intentan reenviar el mensaje sin STARTTLS si el servidor del destinatario anuncia STARTTLS.

Del mismo modo, cuando su host actúa como servidor, puede ocurrir una situación similar fuera de su control si decide habilitar STARTTLS: cuando un servidor cliente ve que su servidor en modo de servidor ofrece STARTTLS, intentan negociar TLS, pero si la negociación falla , simplemente esperan y vuelven a intentar los mismos pasos, siguen fallando hasta que el mensaje tenga que ser devuelto al remitente.

¡Y esto sucede con bastante frecuencia con varios dominios en la tierra STARTTLS!

Lamentablemente, por mucho que solía ser un partidario de STARTTLS en el pasado, ahora estoy muy privado de que me engañó la publicidad sin riesgos de lo que pensé que se suponía que era un cifrado oportunista.

No solo no debe requerir STARTTLS, sino que incluso puede ser prudente desactivarlo por completo, si desea garantizar la interoperabilidad.

cnst
fuente
2

Tengo que estar de acuerdo con la idea de usar TLS oportunista. Aunque, tengo algo que agregar a la idea también. Sin embargo, algunos se verán perturbados por las sugerencias, ya que mis sugerencias aquí no se hacen a la ligera y sin la debida consideración, antes de emitir un juicio, le pido que lea la discusión completa desde el enlace adjunto.

El uso de TLS oportunista es, con mucho, la mejor solución. El ángulo MITM como argumento en su contra es una pista falsa. Después de todo, como MH mencionó en un comentario, incluso un SMTP "legítimo" con conexión TLS puede ser MITM'd y el usuario final no es más sabio debido a que la gran mayoría de los clientes de correo no se molestan en validar los certificados junto con la gran mayoría de los MTA que están haciendo TLS están usando certificados autofirmados (al menos si no están usando DNSSEC y TLSA / DANE). Como resultado de esto y posiblemente otros factores, es incluso discutible que hasta usted y el resto del mundo ha implementado DANE / TLSA y DNSSEC, que mientras se ejecuta TLS oportunista, es mejor que no se habilite también el diffie-hellman anónimo (mientras se usa PFS). Debido al menos en parte, si no principalmente, al hecho de que todavía cifrará el tráfico que protege contra el observador casual. Para un mayor soporte de esta configuración (con una explicación mucho más elaborada que la mía), vea los comentarios de Viktor Dukhovni en esta publicación en un foro de postfix:http://postfix.1071664.n5.nabble.com/Disabling-Anonymous-Diffie-Hellman-td67965.html

En cuanto a por qué uno podría tomar las sugerencias de Viktor sobre las de los demás, bueno, escribió el código TLS, así como el código DNSSEC, TLSA / DANE para el Postfix MTA, además de haber sido el que escribió los borradores de IETF en ambos DNSSEC y TLSA / DANE. Como tal, diría que sus palabras al respecto tienen mucho peso, probablemente más que las de la mayoría.

Espero que esto ayude.

Mce128
fuente
0

Desde una perspectiva de marketing por correo electrónico, el uso de TLS es una buena práctica y seguro cuando se sabe que se implementa a través de toda la cadena de entrega. Sin embargo, si la seguridad es su requisito principal, encriptar el correo electrónico antes de enviarlo es la opción más segura (por ejemplo, con PGP).

ERM
fuente