Objetivo:
Analizar con Wireshark el tráfico del protocolo SMTP (Simple Mail Transfer Protocol) utilizando una máquina virtual Kali Linux para comprender el intercambio de comandos y respuestas en texto plano entre el cliente y el servidor de correo.
Escenario:
- Herramientas: VirtualBox, Kali Linux, Wireshark, servidor de correo o herramienta de prueba SMTP.
- Protocolo analizado: SMTP (Simple Mail Transfer Protocol) y TCP (capa de transporte).
- Proceso clave: Establecimiento de conexión TCP, saludo inicial (EHLO), comandos de origen (MAIL FROM), destino (RCPT TO), envío de datos (DATA) y cierre de sesión.
Instrucciones:
Fase 1: Preparación del entorno de red y Wireshark:
- Abrir una terminal en Kali Linux y comprobar la conectividad de red con el comando
ip a. - Lanzar Wireshark desde el menú y seleccionar la interfaz de red activa (ej.
eth0). - Aplicar un filtro de visualización en Wireshark escribiendo
smtppara aislar las tramas de correo.
Fase 2: Inicio de sesión y comandos SMTP:
- Generar o simular tráfico de envío de correo electrónico desde la máquina virtual o cliente configurado.
- Observar en Wireshark la secuencia del protocolo, basada en comandos de texto plano seguidos de códigos de respuesta numéricos del servidor:
- Conexión TCP y Saludo del Servidor: El servidor responde con el código numérico
220indicando que el servicio está listo (Service Ready). - Comando EHLO / HELO: El cliente inicia la sesión identificándose ante el servidor mediante el saludo extendido.
- MAIL FROM: Se define la dirección de correo electrónico del remitente.
- RCPT TO: Se especifica el destinatario del mensaje.
- DATA: El cliente indica el inicio de la transferencia de las cabeceras y el cuerpo del mensaje.
Fase 3: Análisis de las capas del modelo TCP/IP en Wireshark:
Al inspeccionar las tramas capturadas, identificamos la estructura de la comunicación:
- Capa 2 y 3 (Enlace y Red): Direcciones MAC e IPs de origen y destino implicadas en la comunicación local o enrutada.
- Capa 4 (Transporte - TCP): Al tratarse de un protocolo orientado a conexión, se visualiza el three-way handshake inicial y los números de puerto (por defecto, puerto 25, 465 o 587).
- Capa 7 (Aplicación - SMTP): Se detallan los comandos de texto legibles y los códigos de respuesta del servidor (como
250 OK).
Fase 4: Cierre de la conexión:
- Observar el comando de salida
QUITenviado por el cliente para finalizar la sesión de correo. - Comprobar el cierre ordenado de la sesión TCP mediante los paquetes de finalización.
Verificación:
- Comprobar en Wireshark que los comandos y credenciales (si no están cifrados) se pueden leer de forma clara en texto plano.
- Verificar que los códigos de respuesta del servidor coinciden con la numeración estándar del protocolo SMTP (ej. serie 2xx para operaciones correctas).
Preguntas de reflexión:
- ¿Qué significa el código de respuesta numérico 220 que emite el servidor SMTP al inicio de la conexión y en qué consiste el saludo EHLO?
- ¿Por qué se considera un riesgo de seguridad capturar el tráfico SMTP tradicional mediante analizadores como Wireshark?
- ¿Qué función específica cumplen los comandos MAIL FROM y RCPT TO dentro del intercambio analizado en la traza?
- ¿Qué protocolo de transporte utiliza fundamentalmente SMTP para garantizar la entrega de los comandos y mensajes, y bajo qué puertos estándar opera?
- ¿Qué diferencia principal existe en Wireshark al analizar una sesión SMTP sin cifrar frente a una sesión protegida mediante STARTTLS o SMTPS?
Haz clic aquí para ver las soluciones y explicaciones
1. ¿Qué significa el código de respuesta numérico 220 que emite el servidor SMTP al inicio de la conexión y en qué consiste el saludo EHLO?
El código 220 indica que el servidor SMTP está listo (Service Ready) para aceptar conexiones. El comando EHLO (Extended Hello) es el saludo enviado por el cliente para iniciar la sesión e identificar sus capacidades de extensión ante el servidor.
2. ¿Por qué se considera un riesgo de seguridad capturar el tráfico SMTP tradicional mediante analizadores como Wireshark?
Porque el protocolo SMTP clásico transmite los comandos, el contenido del mensaje e incluso las credenciales de autenticación en texto plano. Cualquier atacante con acceso a la red puede interceptar y leer la información fácilmente utilizando un sniffer.
3. ¿Qué función específica cumplen los comandos MAIL FROM y RCPT TO dentro del intercambio analizado en la traza?
MAIL FROM: Declara la dirección de correo electrónico del remitente (origen del mensaje).
RCPT TO: Especifica la dirección de correo del destinatario (receptor al que va dirigido el correo).
4. ¿Qué protocolo de transporte utiliza fundamentalmente SMTP para garantizar la entrega de los comandos y mensajes, y bajo qué puertos estándar opera?
SMTP opera sobre el protocolo de transporte orientado a conexión TCP para asegurar que los datos no se pierdan. Sus puertos estándar son el 25 (para retransmisión entre servidores), el 587 (para envío de clientes) y el 465 (para SMTPS cifrado).
5. ¿Qué diferencia principal existe en Wireshark al analizar una sesión SMTP sin cifrar frente a una sesión protegida mediante STARTTLS o SMTPS?
En una sesión sin cifrar, Wireshark muestra todos los comandos y el cuerpo del mensaje de forma legible en texto plano. En una sesión protegida mediante cifrado TLS, tras el saludo inicial, el tráfico de la capa de aplicación se encapsula y aparece cifrado (como datos de aplicación TLS), impidiendo la lectura directa de su contenido.
Ficha de Laboratorio: Análisis de SMTP con Wireshark
Instrucciones de entrega:
- Rellena los campos de texto y responde a las cuestiones directamente en este formulario desde tu navegador.
- Una vez completada la ficha, pulsa el botón de imprimir que aparece al final.
- En el cuadro de diálogo de impresión, selecciona la opción "Guardar como PDF" o "Imprimir a PDF".
- Entrega el archivo PDF resultante a través de la plataforma del aula virtual.
Alumno/a: Fecha: Grupo / Clase:
1. Identificación del Entorno y Filtro
Indica los parámetros de red y el filtro aplicado en Wireshark para capturar el tráfico SMTP:
2. Cuestionario de Análisis en Wireshark
-
¿Qué código de respuesta numérico emite el servidor SMTP al inicio de la conexión confirmando que el servicio está listo (Service Ready)?
-
Indica el comando empleado por el cliente para iniciar la sesión extendida de correo (ESMTP):
-
¿Qué comandos específicos se utilizan en la traza para declarar el emisor (remitente) y el receptor del mensaje?
3. Verificación de Transmisión
Describe brevemente qué comando introduce el bloque con el cuerpo del mensaje y qué comando finaliza la sesión SMTP:
