View
2.857
Download
2
Embed Size (px)
Citation preview
MANUAL
Wireshark, es un analizador de protocolos utilizado para realizar análisis y solucionar problemas en
redes de comunicaciones para desarrollo de software y protocolos, y como una herramienta didáctica
para educación.
Su función es similar a la de *tcpdump, pero añade una interfaz gráfica y opciones de organización y
filtrado de información. Así, permite ver todo el tráfico que pasa a través de una red estableciendo la
configuración en modo promiscuo.
En la siguiente explicación veremos como funciona más detalladamente.
-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·-·--·-·-·-·-
Manual Wireshark
1.-Cuando abrimos por primera vez el programa se muestra y detalla la interfaz de usuario y como se
aplican las principales funciones de WireShark (Capturar, Desplegar y Filtrar paquetes).
File -> contiene las funciones para manipular archivos y para cerrar la aplicación Wireshark.
Edit ->este se puede aplicar funciones a los paquetes, por ejemplo, buscar un paquetes especifico,
aplicar una marca al paquete y configurar la interfaz de usuario.
View -> permite configurar el despliegue del paquete capturado.
Go -> Desde aquí permiten ...
Capture -> para iniciar y detener la captura de paquetes.
Analyze ->desde analyze podemos manipular los filtros, habilitar o deshabilitar protocolos, flujos de
paquetes, etc.
Statistics ->podemos definir u obtener las estadísticas del trafico capturado.
Help -> menú de ayuda.
A continuación empezaremos con la aplicación más sencilla que podemos utilizar en el programa.
Capturar paquetes IP
WireShark cuenta con tres maneras para iniciar la captura de los paquetes:
·Haciendo doble clic en se despliega una ventana donde se listan las interfaces locales disponibles
para iniciar la captura de paquetes.
· Tres botones se visualizan por cada interfaz
Start -> para iniciar
Options -> para configurar
Details -> proporciona información adicional de la tarjeta como su descripción, estadísticas, etc.
Otra opcion es Otra seleccionar el icono en la barra de herramientas, y abrimos la siguiente
ventana donde se muestra opciones de configuración para la tarjeta de red.
O por ultimo en el caso que se haya predefinido las opciones de la tarjeta, haciendo clic en se inicia
la captura de paquetes inmediata.
Capture/start
Cuando pulsamos a start nos muestra esta pantalla.
La información se organiza de la siguiente forma.
primera columna[N.o]-> muestra el número de paquetes que enviamos o recibimos.
Segunda columna[Time] ->s el tiempo que tarda en transmitirse el paquete de datos.
Tercera columna[Source]-> la ip origen.
Cuarta columna[Destination]-> la ip destino.
Quinta columna[Protocol]-> El protocolo que utiliza en esa transmisión (especificaciones pag..)
Sexta columna[info.]-> Nos muestra una pequeña información sobre el paquete de datos.
En la parte que he señalado en azul->Contiene el protocolo y los campos correspondientes del
paquete previamente seleccionado en el panel de paquetes capturados[Gris]. Seleccionando una de
estas líneas con el botón secundario del Mouse se tiene opciones para ser aplicadas según las
necesidades.
En la parte que he señalado en amarillo-> En este panel se despliega el contenido del paquete en
formato hexadecimal.
Wireshark tiene otra funcion importante y es la campura de paquetes pero con filtrado.
Filtrar paquetes IP.
Para guardar o abrir un filtro existente se debe seleccionar Display Filter en el menú Analyze o Capture
Filter que se encuentra en el menú Capture.
Capture/filter
Para definir un filtro pulsamos un nombre de la lista que tenemos y solo nos filtrara aquello que allamos
seleccionado
Analizando un paquete.
El paquete que voy a analizar va a ser un envio de trafico Ping.
cmd-> ping 192.168.2.21 [cualquier ip]
En la captura vemos que al hacer ping tenemos dos clases de protocolos diferentes: ARP y ICMP. ARP -> para poder llegar al nodo correspondiente se necesita que la tabla ARP se rellene y mas tarde el ping se ara correctamente. ICMP -> en lo que vemos que corresponde al protocolo ICMP es los ping que se han hecho a un nodo. Mediante ping comprobamos la correcta conectividad entre equipos. Observamos que en la columna de info pone request y replay. La línea de request la enviamos desde nuestro nodo y replay es la contestación a nuestra trama.
L U N E S , M A R Z O 2 6 , 2 0 0 7
Wireshark 101 - Como capturar trafico
Con este post, estoy dando inicio a lo que se podría llamar un tutorial sobre Wireshark,
como he comentado en otros posts, Wireshark es un analizador de protocolos open source
y es una de mis herramientas favoritas, que además es de suma utilidad para la
resolución de problemas de redes.
Antes que nada, una palabra de advertencia, la captura de tráfico en una red puede ser
ilegal, o puede estar prohibida por las reglas de seguridad de la empresa, asi que antes
de conectar un analizador de tráfico a cualquier red, favor asegurarse que cuenta con el
permiso respectivo y que esta conciente de las implicaciones que puedan derivarse de
esta actividad, para efectos de este tuturial, lo mejor es establecer un laboratorio aislado
sin conexión a la red de la empresa, o hacerlo desde una red casera.
Una vez hecha la advertencia, el primer aspecto que me gustaría tratar, es sobre como
capturar tráfico, especificamente donde ubicar el wireshark para poder capturar el tráfico
que se desea ver en la red, para ello estaré haciendo referencia a la siguiente figura
Supongamos que queremos capturar (desde una laptop), el tráfico entre un servidor y la
PC de un usuario que esta experimientando problemas para acceder a dicho servidor. Lo
más probable es que esten conectados a través de un switch como se muestra en la
figura 1a, si este es el caso, al conectar la laptop, no podremos ver el tráfico entre la PC y
el Servidor, unicamente será posible ver el tráfico destinado a la laptop y tráfico de
Broadcast, para sobreponernos a esto tenemos tres opciones:
Opción 1 El switch es administrable: En este caso, consultar en la documentación del
mismo, como configurar un Port Mirroring, suponiendo que el Servidor esta ubicado en el
puerto 1, la PC en el puerto 2, y la laptop con wireshark en el puerto 3, debería
configurarse el port mirroring para copiar los puertos 1 y 2 en el puerto 3. Como
configurar el port mirroring depende de cada fabricante, lo ideal es consultar el manual
del switch, o en la página web del fabricante, en el caso de Cisco, el port mirroring se le
denomina SPAN (Switch Port Analizer).
Opción 2 El switch es administrable pero no soporta port mirroring, o no es
administrable: En este caso, la opción que tenemos es conectar un pequeño hub, como se
ilustra en la figura 1b, en este caso, la idea es conectar el hub a un puerto del switch y
conectar la PC, el servidor y la laptop al hub, en este caso si se podrá ver todo el tráfico
ya que en un hub, el tráfico en cada puerto es visible en todos los demás puertos. Las
desventajas de esto, es que el hub no funciona a full duplex, además es muy probable
que la velocidad sea a 10 mientras que los puertos del switch funcionen a 100 o aún a
1000, así que si esta es una red en producción el acceso al servidor se puede ver
severamente afectado para el resto de usuarios, asi que usar esta opción con mucha
precaución y solo despues de haber considerado el impacto que tendrá en los usuarios.
Opción 3 Utilizar un network tap: Esta pienso que es la poción ideal, un network tap, es
un dispositivo pasivo que se puede insertar en la red y permite ver el tráfico que esta
pasando a través de la misma, por ser un dispositivo pasivo no interfiere en ninguna
manera en la configuración, incluso en caso de falla del tap el tráfico sigue pasando por la
red. Existen diferentes tipos de taps, pero en esencia la función es la misma, permitirnos
visibilidad del tráfico. Aunque esta es la opción ideal, es probable que sea la más dificil de
conseguir, sin embargo, si es posible, vale la pena conseguir algunos taps y tenerlos a la
mano para cuando se presenten esos problemas extraños en la red, para aprender más
sobre taps, y ver lo que es posible con estos, recomiendo visitar la página de algunos
fabricantes, normalmente se encontraran descritas las diferentes tecnologías de taps, y
como utilizarlos eficientemente, entre los fabricamentes de taps puede mencionar,
Datacom Systems, Netoptics, y Network Critical.
Estos son solo algunos de los escenarios, pero en general la idea es la misma, en un hub
se puede observar todo el tráfico de la red (sin embargo es muy poco comun hoy en día
encontrar una red basada unicamente en hubs), en un switch es necesario configurar port
mirroring, y con un tap se pueden establecer puntos de monitoreo permanentes.
Wireshark, capturando paquetes
0tweetsretweet
En esta pequeña guía aprenderemos a capturar paquetes con Wireshark, un proceso bastante sencillo e intuitivo. Lo primero, ejecutar el comando wireshark con lo cual aparecerá la interfaz gráfica.
Nota: Es necesario ejecutar Wireshark con privilegios de root, puesto que de lo contrario no podremos configurar las interfaces de red.
Vamos al menú Capture -> Options, con lo cual veremos lo siguiente:
Interface: es la tarjeta de red que utilizaremos para realizar la captura de los paquetes. Capture packets in promiscuous mode: opción bastante importante. Al estar seleccionada Wireshark
captura TODOS los paquetes que la interfaz reciba/envíe. Cabe hacer una pequeña aclaración: cuando tu equipo está conectado detrás de un hub, la tarjeta de red recibe TODOS los paquetes que transmitan/reciban los equipos conectados al mismo hub. Esto es porque, cuando el hub recibe un paquete lo reenvía a todos los puertos conectados, y es el computador quien decide que hacer con ellos (si el paquete es para él, lo recibe; si el paquete es para otro equipo, lo ignora). Esto no sucede así cuando estamos usando un Switch, puesto que cuando usamos una red switcheada se verifica el destinatario del paquete, antes de enviarlo. Luego veremos cómo vulnerar una red switcheada, de momento prosigamos.
Limit each packet to: límita el tamaño máximo de cada paquete capturado. Capture filter: aunque en la siguiente entrada aprenderemos a usar esta característica, no está de más decir
que sirve para asignar un filtro a la captura. Los filtros son útiles para mostrar sólo la información deseada, por ejemplo: paquetes enviados por la IP XX.XXX.XXX.XX, o sólo paquetes HTTP, etc.
File: aquí especificamos el archivo donde serán guardados los paquetes capturados. Es posible además separar los archivos cada vez que alcancen un tamaño, o cada cierto tiempo.
Stop capture: nos sirve para detener automáticamente una captura después de ciertas condiciones (tiempo, tamaño del archivo de captura y número de paquetes).
En las opciones de visualización (Display Options), es posible configurar a Wireshark para: o Actualizar el panel de paquetes cada vez que se capture uno (Update list of packets in real time) o Realizar un scroll-down cada vez que se capture un paquete (Automatic scrolling in live capture) o Ocultar el diálogo de información de captura (Hide capture info dialog)
Por último, las opciones de resolución de nombres (Name resolution) le indican a Wireshark si debe o no intentar resolver las direcciones MAC, el nombre de red y nombre del tipo de transporte, de los paquetes capturados.
Clic en Start para comenzar con la captura de paquetes:
Ahora mismo Wireshark está capturando todos los paquetes posibles de la interfaz de red seleccionada, y guardándolos en el archivo que hayamos especificado (lo que nos permite analizarlo en cualquier momento, reiteradamente, y con diversos programas). Aquí suelen surgir algunas preguntas:
¿Porqué solamente veo los paquetes que envía y recibe mi equipo?
Esto puede deberse principalmente a:
1. Estás tratando de esnifar una red switcheada (que se conecta mediante un switch, y no un hub) 2. Estás conectado a un hub que está configurado como un switch (mismo caso de arriba) 3. No configuraste a Wireshark para que esnifara en modo promiscuo (Capture packets in promiscuous mode)
En caso tal que la conexión de tu red esté detrás de un switch, no es posible que veas los paquetes que transmiten y reciben otros equipos. Esto no quiere decir que sea imposible hacerlo; lo más común a realizar en estos casos es un ataque Man in the Middle a través de un ARP Poisoning. Estás técnicas son bastante fáciles de realizar (además de divertidas), pero se salen del tema de esta entrada. En las próximas entradas hablaremos al respecto.
¿Cómo obtengo datos específicos?
Para esto es imprescindible el uso de los filtros, sobre todo cuando los paquetes capturados son demasiados. Este tema lo trataremos en la próxima entrada.