El Protocolo SMTP: Cómo Funciona, Vulnerabilidades y Defensas en Ciberseguridad
El correo electrónico es una herramienta indispensable en nuestra comunicación diaria, tanto personal como profesional. Sin embargo, ¿alguna vez te has detenido a pensar cómo funciona realmente y por qué es tan sorprendentemente fácil causar estragos con él? En el corazón de la transmisión de correos electrónicos se encuentra el Protocolo Simple de Transferencia de Correo (SMTP). Aunque vital, es probable que sea uno de los protocolos menos conocidos por el usuario promedio, ya que son los servidores de correo electrónico quienes lo utilizan directamente, no las personas.
El Viaje de un Correo Electrónico: ¿Cómo Funciona SMTP?
El SMTP fue diseñado en los años 80, una época en la que la seguridad no estaba integrada en su concepción original. Desde entonces, las medidas de seguridad se han añadido progresivamente. Entender su funcionamiento es clave:
- Agente de Usuario de Correo (MUA): Tú, como usuario, al redactar un correo en tu cliente (como Outlook o Thunderbird) y presionar "enviar", actúas como el MUA.
- Agente de Transferencia de Correo (MTA): Tu correo viaja primero al MTA de tu organización. Este MTA realiza una búsqueda de registros MX para encontrar el servidor receptor adecuado.
- Proceso de Transferencia: El correo puede pasar por múltiples MTAs (como un MTA de envío, intermedio o de borde) antes de llegar al destino. Cada servidor por el que pasa el correo deja su huella en los encabezados del mensaje.
- Agente de Entrega de Correo (MDA): Finalmente, el correo llega a un procesador llamado Agente de Entrega de Correo (MDA) en la organización receptora. El cliente de destino del destinatario luego recupera el nuevo correo.
La comunicación SMTP en sí es sorprendentemente simple, casi como una conversación directa entre dos servidores. Implica comandos básicos como:
EHLO
(oHELO
): Para saludar e identificarse.MAIL FROM
: Para especificar la dirección del remitente (conocida como el "sobre" del correo).RCPT TO
: Para especificar el destinatario.DATA
: Indica que a continuación viene el contenido real del correo.- Un punto
.
en una línea separada: Señala el final del contenido del correo. QUIT
: Para finalizar la sesión.
Un correo electrónico se divide en tres secciones principales: encabezados de rastreo (creados por cada servidor por el que pasa), encabezados de mensaje (decididos por el cliente de envío, como "Para", "De", "Fecha") y el cuerpo del correo (el asunto, el texto y cualquier archivo adjunto codificado en Base64).
SMTP y Ciberseguridad: El Riesgo de la Suplantación de Identidad (Spoofing)
La falta de autenticación inherente en el diseño original de SMTP es una gran vulnerabilidad. Esto permite que un atacante se conecte a cualquier servidor de correo en Internet y afirme ser cualquier persona, por ejemplo, "Bill Gates en Microsoft", y el servidor inicialmente lo aceptará.
El problema se agrava por la forma en que los clientes de correo muestran la información. Existen dos direcciones "From" en un correo:
MAIL FROM
(del "sobre"): Es la dirección que se usa en la transacción SMTP inicial.From
(del cuerpo del mensaje): Es la que se muestra al usuario final en su cliente de correo.
Un atacante puede establecer una dirección MAIL FROM
(el "sobre") diferente de la dirección From
(el "cuerpo"), y el cliente de correo del usuario mostrará la dirección del cuerpo, haciendo que un correo falso parezca legítimo, por ejemplo, como si viniera de tu padre o de Leo Messi.
Es responsabilidad del MTA receptor (el servidor de correo de tu organización) verificar el origen del correo electrónico y rechazar los mensajes falsos. Si un servidor de correo no verifica los registros de seguridad, aceptará ciegamente correos suplantados.
Herramientas y Estándares para Detectar Amenazas y Fortalecer la Seguridad del Correo Electrónico
Para combatir la suplantación y el spam, existen varias herramientas y estándares cruciales:
-
Análisis de Encabezados del Correo Electrónico:
- Encabezados
Received
: Cada servidor que procesa un correo agrega un encabezadoReceived
. Para un analista, estos encabezados son vitales. Se leen cronológicamente de abajo hacia arriba (o de arriba hacia abajo si la interfaz los invierte, como MailHog). Solo puedes confiar en el encabezadoReceived
generado por tu propio servidor. - Dirección IP del remitente: La dirección IP real que se conecta a tu MTA para entregar el correo no puede ser falsificada. Buscar esta IP en el encabezado
Received
más reciente es fundamental. Analizar la geolocalización de la IP nos puede ayudar a identificar emails fraudulentos. Podemos usar url como www.ip2location.com para ver el país de donde proviene. Si el coreo proviene de Coreo y no tenemos negocios allí es buena idea sospechar del correo. - Detección de falsificaciones: Busca discrepancias en las fechas, dominios que no se pueden resolver o que son sospechosos, y la presencia de direcciones IP de servicios en la nube (como Amazon AWS EC2) que a menudo son utilizadas por spammers.
- Encabezados
-
Estándares de Autenticación de Correo Electrónico: Estos han sido "atornillados" al protocolo SMTP para agregar seguridad. Son cruciales para verificar el origen del correo.
- SPF (Sender Policy Framework): Funciona como una lista blanca pública de direcciones IP autorizadas para enviar correos desde un dominio determinado. Se publica como un registro TXT en el DNS del dominio. Los encabezados
Authentication-Results
oReceived-SPF
en el correo indican si un correo pasó (pass
), falló (fail
) o tuvo un "soft fail" (que aún permite la entrega, pero sugiere una verificación más profunda). - DKIM (DomainKeys Identified Mail): Utiliza criptografía de clave pública y privada. La clave pública del dominio se publica en DNS. Cuando un servidor de correo envía un mensaje, lo firma digitalmente con su clave privada. El servidor receptor usa la clave pública para verificar la firma, asegurando que el correo no fue alterado y proviene de un servidor autorizado. Un
DKIM=pass
en el encabezadoAuthentication-Results
indica que el correo no ha sido suplantado en su origen. Sin embargo, esto no garantiza que el contenido sea seguro, solo la autenticidad del remitente. - DMARC (Domain-based Message Authentication, Reporting, and Conformance): Este estándar alinea los campos "From" (tanto el del sobre como el del cuerpo del mensaje) y exige que el correo pase SPF o DKIM. DMARC permite a las organizaciones establecer políticas para lo que sucede con los correos que fallan estas verificaciones (por ejemplo, rechazarlos o ponerlos en cuarentena) y recibir informes sobre los intentos de suplantación de identidad de su dominio.
Es fundamental que tu propia empresa configure y publique sus registros SPF, DKIM y políticas DMARC para evitar que otros suplanten tu dominio.
- SPF (Sender Policy Framework): Funciona como una lista blanca pública de direcciones IP autorizadas para enviar correos desde un dominio determinado. Se publica como un registro TXT en el DNS del dominio. Los encabezados
- Existen herramientas web como https://mxtoolbox.com/EmailHeaders.aspx que nos ayudan a verificar las cabeceras de los correos e identificar los elementos anteriormente comentado. Para obtener las cabeceras con Outlook, seleccionando un correo le damos a Archivo --> Propiedades
Para GMAIL se puede ver desde aquí:
Pegamos el contenido en la web:
-
Herramientas para Análisis Forense y Detección de Spam:
- Wireshark (o Pcap): Permite capturar y analizar el tráfico de red para observar la comunicación SMTP real, comando por comando.
- Telnet: Puedes interactuar directamente con un servidor SMTP a través de Telnet para enviar correos de forma manual, lo que es útil para entender y simular ataques de spoofing.
- Spamhaus: Una base de datos pública donde se pueden buscar dominios e IPs conocidos por enviar spam. Verificar Email
- Suricata: Un sistema de detección/prevención de intrusiones (IDS/IPS) que puede extraer información detallada de las transacciones SMTP (como
MAIL FROM
,RCPT TO
,From
del cuerpo, hashes MD5 del asunto y enlaces), que luego puede ser enviada a un SIEM (Security Information and Event Management) para búsquedas masivas y una mejor detección de spam.
Conclusión
El protocolo SMTP, aunque fundamental, presenta desafíos significativos en el panorama de la ciberseguridad debido a su diseño original sin seguridad inherente. La suplantación de identidad (spoofing) es una amenaza persistente. Sin embargo, al comprender los mecanismos de envío de correo, analizar los encabezados de los mensajes y, lo que es más importante, implementar y hacer cumplir los estándares de autenticación como SPF, DKIM y DMARC, tanto a nivel de envío como de recepción, las organizaciones pueden protegerse eficazmente contra el spam y los ataques de phishing. Es una responsabilidad compartida: tu empresa debe protegerse de los correos suplantados que llegan y evitar que otros suplanten tu propio dominio.
No hay comentarios:
Publicar un comentario