4.6.6.5 Práctica de laboratorio: Utilizar Wireshark para examinar tráfico HTTP y HTTPS

Última actualización: octubre 16, 2022

4.6.6.5 Práctica de laboratorio: Utilizar Wireshark para examinar tráfico HTTP y HTTPS (versión para el instructor)

Nota para el instructor: Los elementos con color de fuente rojo o resaltados en gris indican texto que aparece solo en la copia del instructor.

Objetivos

Parte 1: Capturar y ver tráfico HTTP
Parte 2: Capturar y ver tráfico HTTP

Antecedentes / Escenario

El Protocolo de transferencia de hipertexto (HyperText Transfer Protocol, HTTP) es un protocolo de la capa de aplicación que presenta datos a través de un navegador web. Con HTTP, no se protegen los datos intercambiados entre dos dispositivos que se están comunicando.

Con HTTPS, se emplea cifrado por medio de un algoritmo matemático. Este algoritmo oculta el verdadero significado de los datos que se están intercambiando. Esto se hace mediante el uso de certificados que podremos ver más adelante en esta práctica de laboratorio.

Independientemente de que se utilice HTTP o HTTPS, solo se recomienda intercambiar datos con sitios web de confianza. El solo hecho de que un sitio utilice HTTPS no significa que sea confiable. Los actores de amenazas suelen utilizar HTTPS para ocultar sus actividades.

En esta práctica de laboratorio explorarán y capturarán tráfico HTTP y HTTPS con Wireshark.

Recursos necesarios

  • VM CyberOps Workstation
  • Conexión a Internet

Parte 1: Capturar y ver tráfico HTTP

En esta parte utilizarán tcpdump para capturar el contenido del tráfico HTTP. Utilizarán opciones de comandos para guardar el tráfico en un archivo de captura de paquetes (pcap). Estos registros se pueden analizar posteriormente con diferentes aplicaciones que leen archivos pcap, incluida Wireshark.

Paso 1: Iniciar la máquina virtual e iniciar sesión

Inicien la VM CyberOps Workstation. Utilicen las siguientes credenciales de usuario:

Nombre de usuario: analyst
Contraseña: cyberops

Paso 2: Abrir un terminal e iniciar tcpdump

a. Abra una aplicación del terminal e introduzca el comando ifconfig.

[analyst@secOps ~]$ ifconfig

b. Generen una lista de las interfaces y sus direcciones IP que aparecieron en la salida de ifconfig.
enp0s3 con 192.168.1.15 y lo con 127.0.0.1 (las respuestas para enp0s3 van a variar).

c. Sin salir de la aplicación del terminal, introduzca el comandosudo tcpdump –i enp0s3 –s 0 –w httpdump.pcap. Introduzcan la contraseña cyberops para el usuario analyst cuando el sistema se los solicite.

[analyst@secOps ~]$ sudo tcpdump –i enp0s3 –s 0 –w httpdump.pcap
[sudo] contraseña para analyst:
tcpdump: listening on enp0s3, link-type EN10MB (Ethernet), capture size 262144 bytes

Este comando inicia tcpdump y registra el tráfico de red en la interfaz enp0s3.

La opción de comando -i les permite especificar la interfaz. Si no se la especifica, tcpdump capturará todo el tráfico en todas las interfaces.

La opción de comando -s especifica la longitud de la instantánea correspondiente a cada paquete. Deberían limitar snaplen a la cifra más pequeña que capturará la información del protocolo en la que están interesados. Si se define snaplen en 0 se lo establece en el valor predeterminado de 262144, para ofrecer retrocompatibilidad con versiones anteriores recientes de tcpdump.

La opción de comando -w se utiliza para escribir el resultado del comando tcpdump en un archivo. Si se agrega la extensión .pcap, se garantiza que los sistemas operativos y las aplicaciones podrán leer el archivo. Todo el tráfico registrado se imprimirá al archivo httpdump.pcap, en el directorio de inicio del usuario analyst.

Consulten las páginas man correspondientes a tcpdump para conocer el uso de las opciones de comando -s y -w.

d. Abran un navegador web desde la barra iniciadora de la estación de trabajo Linux. Diríjanse a www.altoromutual.com/bank/login.aspx.

Como este sitio web utiliza HTTP, el tráfico no está cifrado. Hagan clic en el campo Username (Nombre de usuario) para ver la advertencia emergente.

e. Introduzca Admin como nombre de usuario y Admin como contraseña; luego, haga clic en Iniciar sesión.

f. Cierren el navegador web virtual.

g. Regresen a la ventana del terminal donde se está ejecutando tcpdump. Presionen CTRL+C para detener la captura de paquetes.

Paso 3: Ver la captura HTTP

El comando tcpdump, que se ejecutó en el paso anterior, imprimió la salida a un archivo de nombre httpdump.pcap. Este archivo está ubicado en el directorio de inicio correspondiente al usuario analyst.

a. Haga clic en el icono del Administrador de archivos del escritorio y diríjase a la carpeta de inicio correspondiente al usuario analyst. Hagan doble clic en el archivo httpdump.pcap para abrirlo en Wireshark.

b. En la aplicación Wireshark, filtre por http y haga clic en Aplicar.

c. Desplácense por los diferentes mensajes HTTP y seleccionen el mensaje POST.

d. El mensaje aparece en la ventana inferior. Expanda la sección URL de forma HTML decodificada: application/x-www-form-urlencoded.

¿Cuáles son los dos datos que aparecen en pantalla?
El uid de Admin y la contraseña de Admin

e. Cierren la aplicación Wireshark

Parte 2: Capturar y ver tráfico HTTPS

Ahora utilizarán tcpdump desde la línea de comandos de una estación de trabajo Linux para capturar tráfico HTTPS. Después de iniciar tcpdump, generarán tráfico HTTPS mientras tcpdump registra el contenido del tráfico de red. Estos registros nuevamente se analizará con Wireshark.

Paso 1: Abrir tcpdump en un terminal

a. Sin salir de la aplicación del terminal, introduzca el comando sudo tcpdump –i enp0s3 –s 0 –w httpsdump.pcap. Introduzcan la contraseña cyberops para el usuario analyst cuando el sistema se los solicite.

[analyst@secOps ~]$ sudo tcpdump –i enp0s3 –s 0 –w httpsdump.pcap
[sudo] contraseña para analyst: 
tcpdump: listening on enp0s3, link-type EN10MB (Ethernet), capture size 262144 bytes

Este comando iniciará tcpdump y registrará el tráfico de red en la interfaz enp0s3 de la estación de trabajo Linux. Si la interfaz no es enp0s3, modifíquenla con el comando anterior.

Todo el tráfico registrado se imprimirá al archivo httpsdump.pcap, en el directorio de inicio del usuario analyst.

b. Abran un navegador web desde la barra iniciadora de la estación de trabajo Linux. Diríjanse a www.netacad.com.

¿Qué notan con respecto a la URL del sitio web?
Las respuestas pueden variar. El sitio web está utilizando HTTPS, y hay un bloqueo.

c. Hagan clic en Log in (Iniciar sesión).

d. Introduzcan su nombre de usuario y contraseña de NetAcad. Hagan clic en Log In (Iniciar sesión).

e. Cierren el navegador web virtual.

f. Regresen a la ventana del terminal donde se está ejecutando tcpdump. Presionen CTRL+C para detener la captura de paquetes.

Paso 2: Vean la captura HTTPS.

El comando tcpdump que se ejecutó en el Paso 1 imprimió la salida a un archivo de nombre httpsdump.pcap. Este archivo está ubicado en el directorio de inicio correspondiente al usuario analyst.

a. Hagan clic en el icono del Sistema de archivos del escritorio y diríjanse a la carpeta de inicio correspondiente al usuario analyst. Abran el archivo httpsdump.pcap.

b. En la aplicación Wireshark, expandan verticalmente la ventana de la captura y, luego, filtren por tráfico HTTPS a través del puerto 443.

Introduzca tcp.port==443 como filtro y haga clic en Aplicar.

c. Desplácese por los diferentes mensajes HTTPS y seleccione un mensaje deDatos de aplicación.

d. El mensaje aparece en la ventana inferior.

¿Qué ha sustituido a la sección HTTP que estaba en el archivo de captura anterior?
Después de la sección TCP, ahora hay una sección de Capa de sockets seguros (SSL. Secure Sockets Layer) en lugar de HTTP.

e. Expandan completamente la sección Secure Sockets Layer.

f. Hagan clic en Encrypted Application Data (Datos de aplicación cifrados).

¿Los datos de aplicación están en texto plano o formato legible?
La carga de datos se encripta usando TLSv1.2 y no puede visualizarse.

g. Cierren todas las ventanas y apaguen la máquina virtual.

Reflexión

1. ¿Cuáles son las ventajas de utilizar HTTPS y no HTTP?

Cuando se usa HTTPS, la carga de datos de un mensaje está cifrada y solamente puede ser vista por los dispositivos que forman parte de la conversación cifrada.

2. ¿Se consideran confiables todos los sitios web que utilizan HTTPS?

No, porque los sitios web maliciosos pueden utilizar HTTPS para aparecer legítimos, a la vez que capturan los inicios de sesión y datos de usuario.

Subscribe
Notify of
guest

0 Comments
Inline Feedbacks
View all comments
0
¿Tienes otra pregunta? Por favor comentax