Seguridad:

Los principales problemas de seguridad son:

  • Los clientes y servidores de correo son sistemas complejos con múltiples funcionalidades. Tienen vulnerabilidades que pueden ser aprovechadas.
  • El protocolo SMTP en sus especificaciones originales no contempla mecanismos de autenticación, el intercambio de información se realiza en texto plano vulnerable a ataques de análisis de tráfico (sniffing), y no garantiza que los clientes y servidores sean los que dicen ser, se puede suplantar la identidad del equipo.
  • Los mensajes de correo pueden contener información falsa, publicidad, código malicioso, información para engañar al receptor y no se cifran ni se firman pudiendo ser consultados, modificados, suplantados o filtrados por terceros.

Recepción de correo:

Los protocolos POP e IMAP incluyen en sus especificaciones mecanismos de autenticación al acceder a un usuario de su buzón y el intercambio de información se realiza en un fichero plano y no proporciona mecanismos para garantizar que los clientes o los servidores son los que dicen ser.

SALS: Simple Authetication and Security Layer framework para autenticación para protocolos orientados a conexión POP, IMAP, SMTP…

SPA: Secure Password Protocol método de autenticación implementado por los servidores y clientes Microsoft para SMTP, POP e IMAP.

Autenticación SMTP: Para aumentar la seguridad y controlar quién puede utilizar un servidor para enviar correos se han definido extensiones del protocolo SMTP para:

  • Autenticar a los usuarios antes de enviar un correo usando un MTA.
  • Autenticar a los MTA que envían correos a otros MTAs (Smart host).

Algunos de los estándares y mecanismos utilizados en la autenticación de SMTP son:

  • POP o IMAP antes de SMTP: Autenticarse en uno de estos dos servidores antes de utilizar SMTP y el servidor POP o IMAP deben comunicarse con SMTP.
  • SMTP AUTH: Extensión de SALS para SMTP forma parte del protocolo ESMTP, permite autenticarse en el servidor antes de enviar correo a través de él. Se implementa con el comando AUTH y se integra con los protocolos SSL/TLS para aumentar la seguridad.

Protocolos seguros:

SMTP, POP e IMAP pueden encapsularse en SSL/TLS para garantizar la confidencialidad e integridad de la información transmitida.

SMTPS: Determina como encapsular SMTP, usa los puertos 465/TCP y 587/TCP

STARTTLS: Mecanismo para negociar conexiones SSL/TLS sobre protocolos de texto plano. La extensión de SMTP usa el puerto 25/TCP. Es habitual configurar MTAs con SMTP AUTH(SASL) y SATRTTLS escuchando el puerto 25/TCP.

Filtrado de correo:

Posibilidad de definir reglas para filtrar y restringir el envío de correos o marcar correos que no cumplan determinadas características. Estas funciones pueden estar integradas en los MTAs o pueden ampliarse con módulos adicionales.

Antivirus:

Analizan los mensajes de correo en busca de software malicioso y aprueban, rechazan o descartan los mensajes avisando a los usuarios o los administradores.

Filtros y métodos antispam: Los MTAs combinan sus métodos antispam para determinar si un correo es marcado como spam o no. El correo que no se marca como spam se le denomina ham.

Esquemas de autorización de envío: Verifica si el correo ha sido enviado por un MTA autorizado para ello.

SPF: Los MTA consultan servidores DNS para verificar que el correo que reciben proviene de un MTA autorizado.

Sender-ID: Evolución de SPF desarrollado por Microsoft.

Domain-Keys: Utilización de algoritmos de clave pública y funciones hash para firmar los correos y verificarlos consultando servidores DNS.

Firma y cifrado de mensajes (PGP y S/MIME):

Los protocolos seguros no garantizan que los mensajes de correo sean leídos o interceptados por terceros en su viaje por distintos servidores de correo.

Para prevenir esto se pueden firmar y cifrar los correos haciendo uso de algoritmos criptográficos:

  • S/MIME: Conjunto de algoritmos, protocolos e infraestructura de clave pública para firmar y cifrar mensajes de correo. Implementado por Thunderbird, Outlook entre otros.
  • PGP: Software criptográfico para firmar, cifrar y comprimir datos e intercambiarlos de forma segura. Basado en PGP de ha desarrollado OpenPGP. No existen autoridades de certificación centrales. Se basa en confianza entre usuarios.

Implementaciones de OpenPGP:

  • GnuPGP: Interfaz modo texto. Hay varias aplicaciones gráficas que utilizan recursos GPG. Muchos clientes de correo ofrecen plugins que integran su uso.
  • GPA: Interfaz gráfica de GnuPG Disponible para sistemas Linux y Windows.
  • Gpg4Win: Implementación de GnuPG para sistemas Windows que incluye además herramientas gráficas y plugins para clientes de correo.