sábado, 9 de abril de 2016

Solventando Problemas de envío de Correos al utilizar dispositivos ASA

El protocolo SMTP (Simple mail Transfer Protocol), definido en el RFC 821 y cuya extensión se define en el RFC 1869, transfiere mensajes de correo entre sistemas y proporciona notificaciones concernientes al correo entrante.


Para que el protocolo pueda cumplir su tarea, diversos comandos deben intercambiarse entre los miembros de la conversación, estos comandos pueden ser:

  • DATA (Comienza con la composición del mensaje)
  • EXPN (Devuelve los nombres contenidos en la lista de correo especificada)
  • HELO (Devuelve la identidad del servidor de correo)
  • HELP (Devuelve la información sobre el comando especificado)
  • MAIL FROM (Inicia una sesión de correo desde el host especificado)
  • NOOP (No se realiza ninguna acción, salvo el envío de una confirmación por parte del servidor)
  • QUIT (Termina la sesión de Correo)
  • RCPT TO (Designa quien recibe el correo)
  • RSET (Reinicia la conexión de correo)
  • SAML FROM (Envía correo al terminal de usuario y buzón de correo especificado)
  • SEND FROM (Envía correo a un terminal de usuario)
  • SOML FROM (Envía correo a un terminal de usuario o buzón de correo)
  • TURN (Conmuta los papeles de receptor y transmisor)
  • VRFY (Verifica la identidad de un usuario) 


Algunos de los síntomas del problema en cuestion, pueden ser:
  • No puedes enviar correos electronicos con archivos adjuntos
  • no puedes establecer sesión telnet con el servidor Exchange en el puerto 25
  • Cuando envias un comando EHLO al servidor Exchange, recibes una respuesta "Comando irreconocible" o una respuesta "OK"
  • No puedes enviar o recivir correos de dominios especificos
  • Problemas de autenticacion con el protocolo POP3
  • Problemas con correos electronicos duplicados siendo enviados
  • Recibes mensajes SMTP entrantes duplicados
  • Clientes Outlook o Outlook Express reportan el error 0x800CCC79 cuando intentan enviar un correo electronico


El problema se presenta debido a que, en sus primeras versiones, la opción de Mailguard en un ASA o PIX, solo permite siete comandos de los utilizados por SMTP, bloqueando el resto, estos son:

  1. HELO
  2. MAIL
  3. RCPT
  4. DATA
  5. RSET
  6. NOOP
  7. QUIT

Otros comandos no son enviados al servidor de correo, sin embargo responden con un mensaje de "OK", esto con el objetivo de no permitirle conocer a un atacante que estos comandos estaban bloqueados.


FIGURA 1: ARQUITECTURA DE RED



En versiones siguientes del IOS (5.1 en adelante), el comando fixup protocol smtp cambia los caracteres en la bandera SMTP por asteriscos. 

Para solventar el problema, ingresa el siguiente comando en el modo de configuración global de tu ASA o PIX no fixup protocol smtp 25. Esto evitara el filtrado de comandos y permitirá el flujo de trafico SMTP.

Espero que esta información los pueda ayudar en sus labores. ¡Éxitos!

Referencias:

[1] https://support.microsoft.com/en-us/kb/320027
[2] Guia Completa de protocolos de telecomunicaciones, McGraw-Hill)
[3] https://tools.ietf.org/html/rfc821
[4] https://tools.ietf.org/html/rfc1869