Práctica 5 - Análisis de la capa de aplicación#
El objetivo de esta práctica es realizar la captura del tráfico de red correspondiente al intercambio de mensajes en los que intervienen protocolos a nivel de aplicación, su análisis y la identificación de los diferentes campos de los mensajes. Concretamente, en esta sesión se verán los protocolos DNS y HTTP.
Evaluación#
Esta práctica es evaluable (0.5 puntos sobre los 3.0 puntos totales de las prácticas), por lo que deberás acceder al cuestionario correspondiente en Campus Virtual y responder a las preguntas. Las preguntas que hay que responder estarán disponibles mientras se realiza la sesión de prácticas y hay que entregar antes de la finalización de la misma. Cada respuesta errónea se penalizará con un 1/3 del valor asignado a cada pregunta.
Preparación#
Para la realización de la práctica es necesario que la conexión de red esté configurada correctamente:
Se suponen conocidos aspectos ya vistos en prácticas anteriores, por ejemplo, el comando para conocer la propia IP y el manejo de Wireshark.
Prepara tu directorio de trabajo:
En
/home/alumnocrea un directorio llamadop5. Asumiendo que tu directorio actual es/home/alumno, el comando sería:mkdir p5Si ya existe, bórralo y créalo de nuevo
rm -rf p5 mkdir p5
Ve al directorio y realiza la práctica desde allí:
cd p5Comprueba que estás en el directorio adecuado con:
pwdDebe devolver:
/home/alumno/p5
Asegúrate que la interfaz de red de la máquina virtual tiene una dirección IP del tipo
172.24.21x.xxx.Asegúrate que puedes salir a Internet desde la máquina virtual. Por ejemplo, puedes ejecutar:
ping -c 3 8.8.8.8Esto debe proporcionar un resultado similar a:
3 packets transmitted, 3 received, 0% packet loss, time XXXms
Abre un navegador dentro de la máquina virtual y ten a mano estas instrucciones así como el formulario de Campus Virtual. Así te será más fácil seguirlas y descargar los archivos necesarios.
Importante
No almacenes tu contraseña de Campus Virtual en la máquina virtual.
DNS#
dns1.pcapng#
Esta captura se ha generado utilizando el siguiente comando:
host www.uclm.es
Este comando resuelve el nombre www.uclm.es en la dirección o
direcciones IP a la que corresponde dicho nombre utilizando el
protocolo DNS.
Descarga la captura dns1.pcapng y realiza un análisis con
wireshark o tshark. Responde a las preguntas del cuestionario
relacionadas con esta captura.
dns2.pcapng#
Descarga la captura dns2.pcapng y analízala. Después, responde
a las preguntas asociadas a la misma. Esta captura se ha
generado utilizando el siguiente comando:
host redes1.com
HTTP#
http1.pcapng#
En este ejercicio se utilizará el comando curl. Se trata de una herramienta
que permite realizar peticiones HTTP. La
respuesta a cada petición la muestra por pantalla. Por defecto, el
método que utiliza es GET que es el caso de este ejemplo. Se
puede utilizar otro método a través de la opción -X.
En esta ocasión, debes crear una captura llamada http1.pcapng que
contendrá tráfico HTTP. Para ello:
Arranca
wireshark.Ten a mano un terminal abierto.
Comienza a capturar tráfico en
wireshark.Ejecuta lo siguiente en el terminal:
curl http://httpbin.org/getDebes tener una salida similar a la siguiente:
{ "args": {}, "headers": { "Accept": "*/*", "Host": "httpbin.org", "User-Agent": "curl/7.74.0", "X-Amzn-Trace-Id": "Root=1-621ff61f-71e17fc20c02922e7e26a8df" }, "origin": "182.200.203.150", "url": "http://httpbin.org/get" }
Para de capturar tráfico en
wireshark.Guarda la captura como
http1.pcapng. Asegúrate que lo guardas en/home/alumno/p5.Como filtro de visualización utiliza
http.Se deben mostrar 2 paquetes HTTP únicamente. Si no obtienes esta salida, debes repetir la captura.
Con los 2 paquetes HTTP mostrados ya puedes completar la parte del cuestionario asignada a este ejercicio.
http2.pcapng#
Para generar el tráfico en este ejercicio se empleará el comando wget
que sirve, entre otras muchas funcionalidades, para
descargar ficheros utilizando HTTP. A diferencia de curl, este
comando guarda en ficheros las respuestas del servidor, además de
implementar funcionalidades de más alto nivel como seguir las
redirecciones HTTP de forma automática. De hecho, esto mismo es lo
que se hará en este ejemplo.
En definitiva, wget es una herramienta de más alto nivel que
curl y permite descargar ficheros por HTTP a como lo haría un
navegador convencional pero sin necesidad de entorno gráfico.
Utilizando el procedimiento anterior, ahora debes crear la captura
llamada http2.pcapng de la siguiente forma:
Arranca
wireshark.Ten a mano un terminal abierto.
Comienza a capturar tráfico en
wireshark.Ejecuta lo siguiente en el terminal:
wget http://www.uclm.esDebes tener una salida similar a la siguiente:
--2022-03-07 09:31:00-- http://www.uclm.es/ Resolving www.uclm.es (www.uclm.es)... 51.105.185.204 Connecting to www.uclm.es (www.uclm.es)|51.105.185.204|:80... connected. HTTP request sent, awaiting response... 302 Found Location: https://www.uclm.es/ [following] --2022-03-07 09:31:00-- https://www.uclm.es/ Connecting to www.uclm.es (www.uclm.es)|51.105.185.204|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 113381 (111K) [text/html] Saving to: ‘index.html’ index.html 100%[==============================>] 110.72K --.-KB/s in 0.03s 2022-03-07 09:31:00 (3.57 MB/s) - ‘index.html’ saved [113381/113381]
Para de capturar tráfico en
wireshark.Guarda la captura como
http2.pcapng. Asegúrate que lo guardas en/home/alumno/p5.Como filtro de visualización utiliza
ip.addr == 51.105.185.204.Debes ver diferentes tipos de tráfico. Además
wgetse ha debido de descargar un fichero llamadoindex.html. Si falta algo de esto, debes repetir la captura.
Con todos los requisitos cumplidos ya puedes analizar el tráfico y responder a la parte del cuestionario asignada a este ejercicio.
Finalización#
Finalmente, borra el directorio generado /home/alumno/p5 con:
rm -rf /home/alumno/p5