Una Guía Completa sobre DMARC: Asegurando la Integridad y Confianza del Correo Electrónico
Mientras desarrollaba Voices.ink, un proyecto colaborativo con @Ester Martí que transcribe notas de voz a Notion, enfrenté un problema común. ¿Cómo podía asegurar que nuestros correos transaccionales llegaran a bandejas de entrada en lugar de carpetas de spam — o peor, evitar que atacantes usaran nuestro dominio para phishing? Mi investigación me llevó a DMARC.
El correo electrónico forma la columna vertebral de la comunicación profesional, pero sus vulnerabilidades de seguridad siguen siendo sorprendentes. Los atacantes cibernéticos engañan constantemente mediante suplantación de identidad y phishing. A medida que el fraude aumenta, las soluciones robustas se vuelven imperativas. DMARC — un protocolo avanzado de correo electrónico — restaura la confianza en nuestras bandejas de entrada.
¿Por Qué Necesitamos DMARC?
Las vulnerabilidades inherentes del correo electrónico permiten la suplantación de dominio, donde los atacantes envían correos fingiendo ser de fuentes confiables. SPF (Sender Policy Framework) y DKIM (DomainKeys Identified Mail) contrarrestan estas amenazas pero siguen siendo imperfectos. DMARC (Domain-based Message Authentication, Reporting & Conformance) llena este vacío aprovechando tanto SPF como DKIM.
Entendiendo la Importancia de DMARC
DMARC sirve tres propósitos principales:
- Autenticación: Asegurar que un correo electrónico que dice ser de un dominio específico genuinamente se origina de ese dominio.
- Reporte: Permitir a los destinatarios del dominio reportar al remitente sobre los resultados de la evaluación DMARC, ofreciendo así información sobre problemas potenciales.
- Aplicación de Políticas: Otorgar a los propietarios de dominios el poder de especificar cómo deben manejarse los correos electrónicos no autenticados.
Crédito: Emailonacid (Cómo funciona la política DMARC)
Los Bloques de Construcción de DMARC: SPF y DKIM
SPF verifica que el servidor de envío del correo electrónico tiene la autorización del propietario del dominio. Utiliza un registro TXT específico en el DNS, como:
v=spf1 ip4:192.0.2.0/24 ip4:198.51.100.123 a:mail.example.com -all
Este registro esencialmente dice, "Solo el rango de IP 192.0.2.0 a 192.0.2.255 y 198.51.100.123 están autorizados para enviar correos electrónicos para mi dominio."
Explicación:
v=spf1: Esto indica la versión de SPF que se está utilizando, que es la versión 1 de SPF.ip4:192.0.2.0/24: Autoriza el rango de IP 192.0.2.0 a 192.0.2.255 para enviar correos electrónicos para el dominio.ip4:198.51.100.123: Autoriza la dirección IP específica 198.51.100.123.a:mail.example.com: Autoriza la dirección IP resuelta del nombre de dominio mail.example.com.-all: Especifica que no se permite a otros hosts enviar correos electrónicos. (El '-' es un fallo duro, lo que significa que los correos electrónicos de otras fuentes deben ser rechazados.~allsería un fallo suave, sugiriendo que deberían ser aceptados pero marcados.)
DKIM, por otro lado, asegura la integridad del correo electrónico utilizando firmas criptográficas. Un registro DNS TXT típico de DKIM podría verse como:
v=DKIM1; p=MIGfMA0GCSqG...
Este registro contiene la clave pública utilizada por los servidores receptores para descifrar la firma DKIM del correo electrónico y verificar su autenticidad.
El nombre del registro típicamente incluye un prefijo selector, permitiendo al dominio tener múltiples claves DKIM. Al enviar un correo electrónico, el servidor mencionará qué selector está utilizando, guiando al servidor receptor al registro DNS correcto.
Explicación:
v=DKIM1: Esto significa la versión de DKIM que se está utilizando.p=: Esta es la clave pública que los servidores receptores utilizan para descifrar la firma DKIM en el encabezado del correo electrónico. La clave real sería una cadena larga (truncada en el ejemplo).
DMARC en Acción
Cuando se implementa DMARC, los propietarios de dominios publican una política
DMARC en sus registros DNS TXT (usando el nombre _dmarc), tal como:
v=DMARC1; p=reject; rua=mailto:[email protected]; ruf=mailto:[email protected]; pct=100; aspf=r; adkim=r
Este registro se traduce a: "Si un correo electrónico falla la autenticación DMARC, recházalo. Y envía reportes agregados de DMARC a [email protected]."
Explicación:
v=DMARC1: Indica la versión de DMARC.p=reject: Política a aplicar a los correos electrónicos que fallan DMARC. Otros valores pueden sernoneoquarantine.rua=mailto:[email protected]: Dirección donde deben enviarse los reportes agregados de DMARC.ruf=mailto:[email protected]: Dirección donde deben enviarse los reportes forenses (detallados) de DMARC.pct=100: Porcentaje de correos electrónicos a los que se debe aplicar la política DMARC.aspf=r: Modo de alineación SPF. 'r' significa relajado (predeterminado), mientras que 's' significa estricto.adkim=r: Modo de alineación DKIM. 'r' es para relajado, y 's' es para estricto.
Una vez que se recibe un correo electrónico, el servidor receptor lo valida contra SPF y DKIM. Para que DMARC pase, al menos uno de estos, SPF o DKIM, debe ser válido y estar alineado con el dominio reclamado. Los correos electrónicos que fallan esta comprobación se tratan de acuerdo con la política DMARC — pueden ser rechazados, puestos en cuarentena o dejados pasar sin acción.
La Conclusión
Los ataques de phishing sofisticados hacen que la confianza sea primordial en la comunicación digital. DMARC va más allá de la seguridad del correo — asegura que los correos genuinos lleguen a los destinatarios mientras los maliciosos permanecen bloqueados. Para organizaciones e individuos por igual, implementar DMARC nos acerca a una comunicación digital más segura.
Al revisar tus medidas de seguridad de correo, recuerda: DMARC no es opcional — es necesario.
Recursos y Herramientas Adicionales
Para explorar DMARC más a fondo:
- Guía DMARC: Una guía completa por la Global Cyber Alliance que cubre los matices de DMARC en detalle. Mírala aquí.
- Verificador de Configuración DMARC: Una herramienta invaluable proporcionada por la Global Cyber Alliance. No solo verifica si tu DMARC está configurado correctamente, sino que también ofrece consejos sobre rectificaciones si es necesario. Prueba la herramienta aquí.