viernes, 8 de julio de 2022

Sniffers I (White Shark)

 

Los sniffers son unas herramientas primordiales para cualquier pentester. No solo para el hacking ético, estas herramientas se usan también administración de redes entre otros.

Contexto

Cuando tenemos una máquina y queremos comunicarnos con otra máquina diferente, debemos establecer una conexión entre ambas máquinas. Esta conexión es lo que denominamos una red y cuando varias máquinas se encentran en una red, a estas máquinas las denominamos nodos.

Cuando enviamos paquetes de un nodo a otro dentro de una red, el nodo que recibe la información debe ser capaz de interpretarlos para poder entender la información que nos está enviando el otro nodo, para interpretar esta información se utiliza son los protocolos de red, de manera simplificada un protocolo de red es un conjunto de reglas, que se aplican sobre la información recibida en una red de forma que pueda ser interpretada. Dependiendo del protocolo usado interpretaremos la información de una manera o de otra.j

Teniendo esto en cuenta los Sniffers son herramientas que se van a situar en nuestro Sistema Operativo para monitorizar todo el tráfico de red, tanto entrante como saliente que estamos intercambiando con otros nodos de la red.

Por supuesto también nos podemos comunicar con otros nodos que se encuentren en otras redes, sabemos que para unir una red con otra red utilizamos Routers, nosotros tenenmops nuestra red en casa por ejemplo y lo que hace el router es conectarnos a otras redes para al final crear lo que se conoce como internet.

Cuando nos comunicamos con oros equipos fuera de nuestra nuestra red, lo hacemos a través de diferentes routers que se encuentran comunicados hasta llegar al host con el que queremos conectar. Todo este tráfico de red que intercambiamos e interpretamos mediante protocolos es lo que llamamos paquetes de red y los Sniffers nos permiten visualizar todos estos paquetes de red de una manera sencilla de interpretar.

White Shark

Este es uno de los Sniffers más importantes y viene incluido en nuestro Kali Linux, para abrirlo bastará con ir a nuestro menú y buscar en sniffing & Spoofing White shark:


Una vez abierto nos muestra las diferentes interfaces que tenemos abiertas en nuestro equipo (en rojo)


La interfaz eth0  es la que nos conecta con internet

La interfaz Loopback sería la interfaz interna nuestro localhost, si enviamos un paquete de red a la interfaz de loopback  lo recibimos nosotros por esa misma interfaz.

La intefaz any, que sería cualquier interfaz.

Capturando tráfico de red

Vamos a capturar el tráfico que nos llega opr la interfaz eth0, para ello basta pulsar dos veces sobre ella:


Si nos fijamos al principio de la interfaz tenemos un cuadro de texto, en el que podemos incluir filtros a la hora de capturar tráfico para que nos intercepte tráfico por determinado protocolo  que nos interese.


Como vemos ya estamos capturando tráfico ya que tengo abierto un navegador, reproduciendo música en youtube, y lo que vemos en el primer tercio de la pantalla, cada una delas líneas es un paquete de red.

Ahora imaginemos que lo que yo quiero es capturar sólo paquetes que tén relacionados con el protocolo DNS, para ello en el cuadro de texto aplicaría el filtro DNS y le daría a enter:


Al hacer esto mi White sharck sólo estaría capturando paquetes DNS, y si selecciono alguno de los paquetes capturados , en la ventana del medio me dará información sobre ese paquete:


Y en la pantalla de abajo del todo veríamos los bytes capturados en hexadecimal:


Si quisiéramos ver el binario, lo podríamos hacer con el botón derecho en el paquete seleccionado, en copy as a raw binary. Entonces el SO ha recibido estos paquetes de otro nodo lo ha interpretado en función del protocolo y White shark nos lo muestra también por protocolos. En la pantalla del medio nos está dando la información de la primera capa Ethernet y nos está diciendo que los 6 primeros bites del paquete de red, se corresponden con la dirección física de destino, del bite 7 al 12 se corresponden con la dirección física de origen, etc

La siguiente capa es la IP en la que nos da información similar y así hasta bajar a la capa DNS.


Cuando hacemos filtrado, luego podemos buscar resultados, por ejemplo si abro la web, detalles únicos y capturo el tráfico filtrando por DNS, en algún momento se habrá tenido que realizar la resolución DNS a ip y puedo buscar ese paquete haciendo una búsqueda por string,

Por ejemplo, abro la web detallesunicos.es y capturo el tráfico DNS

 

Así es como funciona básicamenter White Shark, que vamos a estar utilizando mucho durante el curso.


 Ahora voy a buscar el momento en el que se ha recibido el paquete con la resolución dns, para ello hago clic en la lupa de la barra de herramientas y le digo que voy a buscar por string  y en la casilla de búsqueda pongo el nombre de la página, en este caso detallesunicos.es:


El me encuentra el paquete con ese string, si le doy clic al paquete podemos ver la transacción del DNS la query , la flag y demás información:


Por supuesto si tenemos la query que acabamos de ver, deberá estar la respuesta del servidor a esa query y White shark no lo indica ocn unas flechas:


Si abrimos la respuesta veremos cómo se ha efectado la resolución a ip para elnombre detallesunicos.es, siendo la ip que se corresponde a ese nombre de dominio. 217.76.142.242


Si ahora vamos a un navegador y en vez de escribir el nombre detallesunicos.es, escribimos esta dirección ip veremos que efectivamente estamos accediendo a la web mediante su ip si realizar la resolución DNS

Más cosas que podemos hacer con White Shark

Vamos ahora a filtrar por protocolo HTTP, cambiemos el filtro a HTTP y abramos alguna web que no utilie HTTPS, es decir que los paquetes no vayan cifrados sino que vayan en plano.


 Si vamos a estos paquetes de red debe estar incluida la web que nuestro navegador ha renderizado, ya que nosotros hemos hecho una petición y ese servidor nos ha contestado implementando el protocolo http y nuestro navegador lo ha renderizado.

Aquí hay varias cosas a tener en cuenta, sabemos que http va or encima de la capa tcp y muchas veces cuando estamos intercambiando información con un tamaño muy grande, como el tamaño de los paquetes tiene un tamaño limitado, por lo que si la información a enviar es muy grande no podemos mandar toda esa información en un mismosegmento, por tanto la información se fragmenta y se va enviando en paquetes de red diferentes.

White Shark nos hace un ensamblado de esos paquetes que se están transmitiendo de forma fragmentada, para que podamos observarlo todo junto.

Otra de las cosas interesantes es que si vamos por ejemplo al petición get y hacemos cilc derecho y le damos a followàhttp stream


Nos muestra todo el intercambio http que nosotros hemos realizado con ese servidor web para descargarnos la página y renderizarla:


En rojo veremos nuestra petición y si pulsamos nos lleva al paquete donde está hecha la petición. Abajo en azul tebnemos la respuesta y del mismo modo si pulsamos sobre ella nos lleva al paquete correspondiente, en la respuesta podemos ver toda la página web entera, lógicamente esto no cabe en un solo paquete de red y por eso nos está diciendo que se ha reensamblado 7 segmentos de red:


Lo que comentábamos antes White shark ha unido eso 7 paquetes para poder ver latodo el tráfico y la web montada.

Otra utilidad interesantes la primera capa Frame, en la que si pulsamos se nos seleccionan todos los datos hexadecimales:


Esta capa Frame son una serie de metadatos que White Shark extrae de los paquetes de red que resultan muy interesantes ya que pueden aportar información extra.

No hay comentarios:

Publicar un comentario