Wire Shark

download Wire Shark

If you can't read please download the document

Transcript of Wire Shark

El analizador de protocolos Wireshark1. IntroduccinEn esta prctica se pretende adquirir las capacidades necesarias para capturar paquetes usando la herramienta Wireshark. En primer lugar se pretende que el alumno conozca las acciones (secuencias de intercambio de paquetes) generadas por la ejecucin de las rdenes de red ms frecuentes. En segundo lugar, dado que por la red viajan multitud de paquetes, ser necesario seleccionar aquellos que nos resulten de inters. or ello vamos a aprender a capturar paquetes utilizando los filtros que nos proporciona Wireshark, de manera que aceptaremos unos paquetes ! desecharemos otros. En tercer lugar, se pretende introducir al alumno en la interpretacin del contenido de los paquetes capturados para afianzar los conceptos relativos a los protocolos estudiados en clase. "odo ello permitir poner en prctica los conocimientos adquiridos a lo largo de varios de los temas vistos en las clases de teor#a, adquiriendo una ma!or comprensin de los procesos que ocurren en la red cuando se llevan a cabo diversas acciones a nivel de usuario.$aptura realizada con %ireshar&Ejercicio 0:'orra todas las entradas de tu cache de () ! lanza el programa Wireshark.*esde una consola ejecuta la orden ping www.google.es ! captura los paquetes que lleguen a tu tarjeta de red (en modo +, promiscuo) durante -. segundos. ,bserva los paquetes que has capturado. /Entiendes todos los paquetes0 E1plica los paquetes capturados generados por la orden ping ejecutada.Ejercicio 1:)ealiza otra captura, esta vez en modo promiscuo, para ver los paquetes que circulan por la red local en este momento. 2ediante la opcin Statistics/Protocol Hierarchy, indica cuntos paquetes de cada uno de estos tipos has recibido, teniendo en cuenta que alguno de los valores podr#a ser cero si no se han capturado paquetes del protocolo correspondiente3()3 43 4$23 "$3 5*3$entra tu atencin en el primer paquete 4 recibido, ! rellena los siguientes datos del mismo3*ir. 4 origen3 *ir. 4 destino3 rotocolo3"ama6o3 ""73 4dentificador32. Filtros de captura y de pantalla$omo habrs visto, al intentar analizar el trfico de cualquier red, resulta habitual encontrarse gran cantidad de paquetes que emplean protocolos en los que no estamos interesados. "al cantidad de trfico dificulta el anlisis de los paquetes capturados ! aumenta innecesariamene el tama6o de los ficheros de captura, por lo que se hace indispensable filtrar toda esa informacin.ara filtrar los paquetes ! facilitar el anlisis del trfico capturado podemos usar dos alternativas, no e1clu!entes entre ellas. 7a primera es definir un filtro de captura, de modo que el propio Wireshark, cuando llega un nuevo paquete, decide si ese paquete se ajusta o no a los criterios establecidos por el filtro. En caso de que se ajuste, el paquete es aceptado ! mostrado en pantalla, mientras que en caso contrario el paquete se descarta. 7a otra alternativa para filtrar la informacin de los paquetes es establecer un filtro de pantalla. En este caso lo habitual es capturar todos los paquetes que circulan por la red, sin restriccin alguna, ! especificar un filtro para poder e1traer entre todo ese trfico capturado aquellos paquetes que nos interesan. En cualquier caso, es posible usar un filtro de captura !posteriormente, sobre los paquetes capturados, usar un filtro de pantalla para ver mejor los detalles que estemos buscando en cada momento. 7os filtros de captura se pueden especificar desde la ventana de captura (Capture Options). odemos especificar un filtro escribiendo la e1presin correspondiente en la caja de te1to situada junto al botn Filter.7a sinta1is de estas e1presiones es la misma que la usada en la orden tcpdump, disponible habitualmente en los sistemas 5ni1 ! 7inu1. En el apartado siguiente se mostrar un resumen de esta sinta1is.or otra parte, los filtros de pantalla se pueden especificar desde la parte inferior de la ventana principal de WireShark. 7a sinta1is para este tipo de filtros es ligeramente diferente. Es posible disponer de un asistente para especificar estos filtros. Es conveniente tener cuidado con estos filtros de visualizacin, !a que pueden, en ocasiones, llevar a error. or ejemplo, estos filtros se emplearn ms delante en "$ de forma automtica para seguir un flujo "$. or tanto, para volver a visualizar todos los paquetes capturados es necesario limpiar este filtro de visualizacin, bien con la opcin correspondiente (clear filter), o bien empleando un filtro vac#o (l#nea en blanco). 2.1 Expresiones de filtros de capturaara seleccionar qu paquetes sern capturados se emplea una e1presin de filtro, de forma que el paquete ser almacenado si cumple con los criterios del filtro (la e1presin se eval8a a true). 7as e1presiones de filtro se emplean siempre en min8sculas, ! consisten en una o varias primitivas conectadas mediante operadores lgicos (and, or, not). $ada una de estas primitivas constan de un identificador precedido, al menos, de alguno de los siguientes tres tipos de calificadores3 9 *e tipo3 4ndican a qu hace referencia el identificador-. $omputadores concretos (host). or ejemplo, el filtro3 host 158.42.180.62captura todas las tramas dirigidas o procedentes de esa direccin 4.:. )edes concretas (net). or ejemplo, el filtro3 net 158.42 captura todas las tramas dirigidas o procedentes de dicha red 4.;. uertos determinados (port). (s#, el filtro3 port 7 captura todas las tramas dirigidas o procedentes del puerto < de cualquier computador, tanto "$ como 5*.=i no se especifica el tipo se asume el tipo host. "ambin se encuentra especificado el identificador broadcast, que permite hacer referencia a las direcciones de difusin.9 *e direccin3 Especifican si el identificador debe entenderse sobre el origen, el destino o ambos. 7os calificadores de direccin posibles son src, dst, src or dst, ! src and dst. =e aplicarn sobre alguno de los calificadores de tipo. Ejemplos3src 158.42.181.18src port 25src or dst net 158.429 *e protocolo3 4ndican un tipo de protocolo. En nuestro caso resultan de inters los protocolos arp, ip, icmp, tcp, o udp. $omo norma general, no e1isten calificadores de nivel de aplicacin, debiendo emplearse el n8mero de puerto ! protocolo de transporte para capturar el trfico correspondiente a un protocolo de aplicacin concreto. =e pueden combinar varias primitivas mediante los conectores and ! or. "ambin es posible usar el operador not.Ejemplo3 udp and dst 158.42.148.3Esto mismo es aplicable tambinlos identificadores.Ejemplo3 dst 158.42.181.4 or 158.42.181.15"ambin se puede hacer uso de parntesis para indicar las precedencias deseadas.Ejemplo3 dst 158.42.181.4 and (udp or icmp)En los ejercicios de esta prctica se propone el uso de diferentes filtros que se pueden deducir a partir de esta introduccin.3. La orden pingara comenzar, estudiaremos la orden ping. $omo sabemos, la orden ping genera paquetes 4$2 de tipo echo request ! echo reply. ( continuacin comprobaremos el funcionamiento de la misma.Ejercicio 2:)ealiza una captura de los paquetes 4$2 generados tras la ejecucin de la orden ping www.elpais.com (plica un filtro que te permita capturar 8nicamente los paquetes que contengan mensajes del protocolo 4$2. *etn la captura cuando terminen los cuatro intentos ! observa cuntos mensajes 4$2 se producen, prestando especial atencin a los campos tipo, cdigo, ! ytes de datos. (simismo, analiza las cabeceras 4 de cada uno de ellos, ! en concreto los campos longitud de la caecera, longitud total ! ytes de datos.!. El protocolo "#$El protocolo *+=, que emplea habitualmente el puerto >; de 5*, es imprescindible para poder denominar a los computadores mediante nombres simblicos, sin tener que recordar las direcciones 4 correspondientes a cada computador. ( continuacin observaremos el funcionamiento del *+=, as# como su utilizacin por parte de la orden ping.Ejercicio 3:2odifica el filtro para que encuentre la consulta *+= ! toma una nueva captura, escribiendo la orden ping www.nba.com. "en en cuenta que no ser posible filtrar paquetes en funcin del protocolo de aplicacin *+= ! debers, por tanto, pensar en otra alternativa. E1amina el contenido del datagrama 5* ! f#jate en los n8meros de puerto implicados en la transmisin. )ealiza de nuevo la misma captura, pero esta vez sustitu!e en la orden ping el nombre de la mquina donde se aloja la pgina de la nba por su direccin 4. 5na vez realizada la captura comprueba, observando los paquetes capturados, que no se ha realizado ninguna consulta al *+=.%. El protocolo &'(ara que un datagrama llegue a su destino es necesario especificar, adems de la direccin 4 destino, la direccin f#sica del adaptador de red que debe recibir la trama en la que viaja el datagrama. Este adaptador de red puede ser el del host destino o bien el de un router intermedio.recisamente, para averiguar la direccin f#sica que corresponde a una direccin 4 determinada se cre el protocolo (), del que !a hemos hablado en clase (! habis disfrutado con l haciendo los problemas de encaminamiento 4). ?amos a retomar de nuevo el estudio de este protocolo.Ejercicio !:'orra las entradas de tu cache de (). $aptura el trfico generado por la ejecucin de la orden ping www.barrapunto.co modificando el filtro de la captura anterior para que inclu!a los paquetes del protocolo () (slo los de tu mquina). /=e ha generado alg8n paquete () para enviar la trama que contiene la peticin a barrapunto0. ?uelve a realizar de nuevo la captura (no dejes pasar mucho tiempo). @ ahora, /se han vuelto a generar paquetes ()0 /or qu0#ota3 como sabes, puedes conocer la direccin f#sica de la tarjeta de red de tu ordenador mediante la orden ipconfig. (dems, recuerda que puedes consultar la tabla () con arp )a.*. La orden traceroute7a orden tracert+traceroute permite registrar la ruta seguida por un datagrama hasta un destino determinado. =u funcionamiento se basa en mensajes 4$2 (o peticiones a puertos no privilegiados mu! poco utilizados)! en la variacin del parmetro ""7 de las cabeceras 4.Ejercicio ,:$aptura los paquetes 4 derivados de la ejecucin de la orden tracert ---.rae.es. Enumera cuntos tipos distintos de paquetes se han obtenido ! cul es su funcin, comprobando cmo aumenta el ""7 en cada mensaje 4$2 enviado./$ul es el tipo ! el cdigo de los mensajes 4$2 timeAtoAlive e1ceeded0 /or qu crees que aparecen ; mensajes de este tipo desde cada router del camino0 /$mo sabe nuestra mquina que ha llegado a la mquina final0.. (rotocolos de ni/el de transporteEn este apartado vamos a emplear WireShark para observar el funcionamiento de los protocolos"$ ! 5* de nivel de transporte.Ejercicio *:(bre el navegador. Establece el filtro adecuado para capturar todos los paquetes "$ ! 5* de tu mquina.*esde el navegador solicita una pgina %eb (por ejemplo3 %%%.nba.com). $uando la pgina ha!a cargador detn la captura./$untos paquetes 5* has capturado0 /$untos "$0Estudia los segmentos que has obtenido en la captura ! usca los pa0uetes de estalecimiento de la conexin 1triple apretn de manos2 y los pa0uetes de fin de conexin.