Suplantación de correos es una de las técnicas que utilizan los malintencionados para convencerte de que su correo de spam/phishing es legítimo. En resumen, la suplantación de correos es usada por estos agentes maliciosos para hacer parecer que sus correos provienen de fuentes confiables como tu banco, tu producto favorito o tu jefe.
Los protocolos de correo han estado con nosotros durante mucho tiempo. Protocolo Simple de Transferencia de Correo (SMTP), el protocolo principal en el que se basan las comunicaciones por correo, es de 1981. Internet ha cambiado bastante, pero, desafortunadamente, el correo no tanto. Cuando se creó el correo, había solo una fracción de los usuarios actuales. En ese entonces, enviar un correo falso no causaba mucho daño. Ahora, los correos se utilizan para casi todos los servicios digitales que puedas imaginar y la tecnología ha ido avanzando lentamente.
Comencemos hablando sobre cómo funcionan los correos para que todos estemos en la misma página. Esto es una simplificación extrema de cómo funciona el correo, pero me ayudará a explicar los mecanismos para hacer de este un proceso seguro. A grandes rasgos, cuando alguien envía un correo, sucede así:
- Alice (hi@alice.com) escribe un correo a Bob (hi@bob.com).
- Alice envía el correo a su servidor de correo para que sea entregado.
- El servidor de correo de Alice localiza el servidor de correo de Bob y transmite el correo.
- Cada vez que Bob se conecta a su servidor de correo, solicita nuevos mensajes y un nuevo correo aparece en la bandeja de entrada de Bob.
¡Sencillo! Sin embargo, muchas cosas pueden salir mal en el proceso de envío de un correo. ¡Vamos a profundizar!
Marco de Políticas de Remitente (SPF)
Oh, pero Internet está lleno de horrores. Imaginemos que hay un actor malvado, llamémoslo Chuck, que quiere engañar a Bob para que le envíe su contraseña de Harvest.
Así es, el SMTP simple no nos dice si quien envía un correo es quien dice ser.
Para proteger nuestros correos de este tipo de ataque, podemos usar Marco de Políticas de Remitente (SPF). Cuando un servidor de correo recibe un nuevo correo, pregunta al dominio de origen si el remitente está autorizado a enviar correos en su nombre. Esto es lo que hace SPF; cuando el servidor de correo de Bob recibe un correo que supuestamente proviene de alice.com, primero preguntará a alice.com si el verdadero remitente, chuck.com, puede enviar algo en su nombre.
En la imagen anterior, puedes ver que el servidor de Bob realiza una solicitud DNS. Esta técnica y todas las demás en este artículo se basan en este protocolo. Cuando hablo sobre el servidor de correo de Bob preguntando a alice.com por información, simplemente significa enviar una solicitud DNS a alice.com buscando registros específicos.
Si alice.com no ha listado chuck.com como uno de sus remitentes permitidos, entonces el servidor de correo de Bob podría marcar el correo como spam. Así es, podría hacerlo o no. El servidor de Bob siempre tiene la última palabra y hay otras verificaciones que realizar antes de tomar una decisión final.
Correo Identificado por Claves de Dominio (DKIM)
Los correos deberían ser seguros ahora, ¿verdad? Bueno... no del todo. Hemos prevenido que Chuck envíe correos falsos desde sus propios servidores, pero ¿qué pasaría si encontrara una forma de interceptar correos en tránsito? ¿Y si pudiera cambiar el contenido de los mensajes de Alice? Recuerda, SPF solo verifica que el remitente está autorizado a enviar correos en su nombre, pero no dice nada sobre lo que sucede en el camino hacia el destinatario.
Este es el escenario perfecto para usar firmas. En el mundo digital, una firma es un mecanismo para asegurar y verificar que el contenido de lo que se entrega no ha cambiado. Cuando Alice envía un correo a Bob, ahora el servidor de correo de Alice añadirá una firma al contenido del correo. Si alguien cambia solo un bit de ese mensaje, Bob lo sabrá. Además, el servidor de correo de Alice es el único que sabe cómo crear estas firmas. Nadie más puede hacerlo sin que el receptor lo note.
Esto es exactamente lo que hace Correo Identificado por Claves de Dominio (DKIM). En la práctica, la configuración de DKIM comienza en el servidor de correo de Alice:
- Generalmente hay una forma de "comenzar a autenticar" los correos enviados. Normalmente significa simplemente habilitar DKIM.
- El servidor de correo te pedirá que publiques algunas palabras crípticas en tu DNS; esa es la clave pública de tu firma. En lenguaje sencillo, la clave pública permite que otros verifiquen que una firma que recibieron es válida y que el mensaje no ha sido modificado en tránsito. El servidor mantiene la clave privada para que sea el único capaz de crear firmas.
- Una vez que la clave pública está publicada, el servidor de correo comenzará a enviar una firma con cada nuevo correo.
¿Cómo es útil la firma? Cuando el servidor de correo de Bob recibe un correo con una firma adjunta, puede validar que la firma es correcta. Para hacerlo, el servidor necesita recuperar la clave pública y el contenido del correo. Con solo esas dos cosas, el servidor puede detectar si ha habido alguna modificación no deseada.
Autenticación, Informe y Conformidad de Mensajes Basados en Dominio (DMARC)
Ahora Bob puede estar bastante seguro de que los correos provienen de una fuente confiable y que no han sido manipulados, ¿verdad? ¿VERDAD??... Si tan solo fuera tan fácil... Chuck, nuestro personaje malvado, aún puede modificar el contenido del correo y simplemente deshacerse de la firma DKIM. ¿Quién necesita eso de todos modos? Es mejor tener una verificación neutral que una negativa.
No todo está perdido, sin embargo. Solo necesitamos una forma de decirle al servidor de correo de Bob qué medidas de seguridad se han configurado y una política que defina qué hacer si alguna de ellas falla. Vamos con nuestro último acrónimo: Autenticación, Informe y Conformidad de Mensajes Basados en Dominio (DMARC).
Con DMARC, el servidor de correo de Bob tiene un punto de información pública que define qué hacer con los correos que recibe. Más específicamente, un registro DMARC describe:
- Si SPF o DKIM se aplican en el correo recibido
- Una dirección de correo para informes de monitoreo
- Una política para decidir qué hacer cuando hay una verificación fallida. Hay 3 políticas diferentes:
- Sin política - Los resultados de la verificación DMARC serán ignorados. Sin embargo, los servidores de correo enviarán informes para un análisis posterior. Esto se usa a menudo mientras se configura DMARC para ver si está funcionando como se espera.
- Cuarentena - Los correos que fallen cualquier verificación DMARC serán enviados a la carpeta de spam del destinatario.
- Rechazar - Los correos que fallen cualquier verificación DMARC no llegarán al destinatario.
DMARC es la última pieza de nuestra caja de herramientas, y es la única que le dice específicamente a los servidores de correo que descarten correos no conformes, y bajo qué circunstancias sucede eso.
Conclusiones
Estamos felices de decir que Harvest está utilizando estas técnicas para proteger nuestros correos. Nos tomó meses de aprendizaje y recopilación de datos hasta que finalmente llegamos a donde estamos ahora. Hicimos que fuera realmente difícil para otros suplantarnos y socavar la reputación de Harvest. Este ha sido un logro increíble que impactará positivamente a nuestros clientes.