Ir atrás

Herramientas de análisis forense: Wireshark.

luishcr • 7 April, 2024

Portada del artículo
"TnVuY2EgcGFyZXMgZGUgYXByZW5kZXI="

¿Qué es Wireshark?.

Wireshark, como un avezado detective en el mundo digital, te permite capturar y analizar el tráfico de red, descifrando el lenguaje que fluye por tus cables y antenas. Esta herramienta, gratuita y de código abierto, se ha convertido en la brújula de expertos en redes, desarrolladores e incluso aficionados a la informática, permitiéndoles navegar por las complejidades de las comunicaciones digitales.

¿Cómo funciona?

Imagina una autopista por la que circulan miles de vehículos, cada uno con su propio destino y mensaje. Wireshark actúa como un peaje inteligente, capturando cada vehículo, inspeccionando su contenido y registrando su recorrido. Al analizar estos datos, puedes:

  • Solucionar problemas de red: Identificar cuellos de botella, latencias inusuales o paquetes perdidos, los culpables de esas molestas desconexiones o lentitud en tu conexión.
  • Analizar protocolos: Descifrar el lenguaje de los diferentes protocolos de red, como HTTP, TCP/IP o FTP, comprendiendo cómo se comunican dispositivos y aplicaciones.
  • Desarrollar software y redes: Diseñar y probar nuevos protocolos y aplicaciones de red, asegurando su correcto funcionamiento y eficiencia.
  • Investigar seguridad: Detectar posibles intrusiones, ataques cibernéticos o malware, protegiendo tu red de las amenazas digitales.

¿Por qué usar esta herramienta?

Wireshark se ha convertido en una herramienta indispensable por su:

  • Versatilidad: Funciona en múltiples sistemas operativos (Windows, macOS, Linux) y captura tráfico en diferentes tipos de redes (Ethernet, Wi-Fi, etc.).
  • Profundidad: Ofrece un análisis detallado de cada paquete, permitiendo identificar campos específicos, protocolos utilizados y hasta contenido de la información transmitida.
  • Flexibilidad: Posee filtros avanzados y opciones de visualización que te permiten personalizar tu análisis, enfocándote en la información que realmente te interesa.
  • Comunidad activa: Cuenta con una amplia comunidad de usuarios y desarrolladores que comparten conocimiento, crean complementos y brindan soporte en caso de dudas.

¿Qué son los filtros en Wireshark?

En Wireshark, los filtros son herramientas que permiten seleccionar y mostrar un subconjunto específico de tráfico de red de interés dentro de la enorme cantidad de datos que la herramienta puede capturar y analizar. Existen dos tipos principales de filtros:

  • Filtros de captura: Estos filtros se aplican durante la captura de tráfico y determinan qué paquetes serán guardados. Solo los paquetes que coinciden con los criterios del filtro serán capturados. Por ejemplo, un filtro de captura podría ser host 192.168.1.1, que capturaría solo los paquetes que tienen como origen o destino la dirección IP 192.168.1.1.
  • Filtros de visualización: Estos filtros se aplican después de que los datos ya han sido capturados. Permiten al usuario ver solo los paquetes que cumplen con ciertos criterios, facilitando el análisis al enfocarse en el tráfico relevante. Por ejemplo, un filtro de visualización podría ser http, que mostraría solo los paquetes HTTP en la captura.

 

Usar filtros en Wireshark es crucial por varias razones que mejoran la eficiencia y efectividad del análisis de tráfico de red. Aquí se detallan algunas de las razones más importantes:

  • Reducción de la cantidad de datos: Wireshark captura todo el tráfico de red que pasa por una interfaz, lo que puede resultar en una enorme cantidad de datos. Los filtros ayudan a reducir esta cantidad, permitiendo enfocarse en el tráfico relevante para el análisis.
  • Mejora de la eficiencia: Analizar grandes volúmenes de datos sin filtrar puede ser extremadamente ineficiente y consumir mucho tiempo. Los filtros permiten a los analistas centrarse rápidamente en los paquetes de interés, acelerando el proceso de diagnóstico y resolución de problemas.
  • Aislamiento de problemas específicos: Los filtros permiten a los analistas aislar ciertos tipos de tráfico o problemas específicos, como paquetes de un protocolo en particular, tráfico entre dos direcciones IP, o ciertos tipos de errores. Esto es esencial para un diagnóstico preciso.
  • Facilita la detección de anomalías: Al filtrar el tráfico normal, se puede enfocar en detectar patrones anómalos o no deseados, como intentos de intrusión, malware, o comportamientos sospechosos.
  • Seguridad y privacidad: Al capturar y analizar datos de red, se pueden manejar grandes volúmenes de información sensible. Usar filtros ayuda a minimizar la exposición innecesaria de datos sensibles, enfocándose solo en lo que es necesario para el análisis.
  • Simplificación del análisis: Filtrar el tráfico por protocolos específicos (como TCP, UDP, HTTP) o por atributos (como puertos, direcciones IP, flags de los paquetes) simplifica la visualización y comprensión del tráfico de red, haciendo el análisis más manejable y menos abrumador.
  • Mejora del rendimiento de Wireshark: Menos datos para procesar significa que Wireshark puede funcionar más rápido y con mayor eficiencia. Esto es especialmente importante en redes

PoC: Solución de laboratorio de análisis forense con Wireshark.

WireDive Blue Team Lab de Cyberdefenders.

  • Q1. Archivo: dhcp.pcapng: ¿Qué dirección IP solicita el cliente?.
dhcp.option.dhcp == 3

Wireshark Lab

 

  • Q2. Archivo: dhcp.pcapng: ¿Cuál es el ID de transacción para la versión DHCP?.
dhcp.option.dhcp == 7

Wireshark Lab

 

  • Q3. Archivo: dhcp.pcapng - ¿Cuál es la dirección MAC del cliente?.
dhcp.type == 1

Wireshark Lab

 

  • Q4. Archivo dns.pcapng: ¿Cuál es la respuesta para la búsqueda de flag.fruitinc.xyz?.
dns.resp.name == "flag.fruitinc.xyz"

Wireshark Lab

 

  • Q5. Archivo: dns.pcapng: ¿qué servidor raíz responde a la consulta de google.com? Nombre de host.
dns.qry.name == "<Root>"

Wireshark Lab

 

  • Q6. Archivo smb.pcapng: ¿Cuál es la ruta del archivo que se abre?.
smb.access.append

Wireshark Lab

 

  • Q7. Archivo smb.pcapng: ¿Cuál es el código de estado hexadecimal cuando el usuario SAMBA\jtomato inicia sesión?.
smb2.acct == "jtomato"

Wireshark Lab

 

  • Q8. Archivo smb.pcapng - ¿Cuál es el árbol que se está explorando?.
smb2.cmd == 3

Wireshark Lab

 

  • Q9. Archivo smb.pcapng: ¿Cuál es la bandera en el archivo?.

    Exportamos el fichero de la captura y filtramos su contenido.

File > Export Object > SMB

Wireshark Lab

grep -i 'flag' %5cHelloWorld%5cTradeSecrets.txt

Wireshark Lab

 

  • Q10. Archivo shell.pcapng: ¿en qué puerto escucha el shell?.

    Deducimos que en un ataque reverse shell el atacante suele usar un puerto fuera de los llamados puertos bien conocidos enumerados del número 1 al 1024.

tcp.dstport > 1024

Wireshark Lab

 

  • Q11. Archivo shell.pcapng: ¿cuál es el puerto para el segundo shell?.
tcp.dstport > 1024

Wireshark Lab

 

  • Q12. Archivo shell.pcapng - ¿Qué versión de netcat está instalada?.
http contains "netcat"

Wireshark Lab

 

  • Q13. Archivo shell.pcapng: qué archivo se agrega al segundo shell.
ClickDerechoPaqueteTCP > Follow > TCP Sream

Wireshark Lab Wireshark Lab

 

  • Q14. Archivo shell.pcapng: ¿Qué contraseña se utiliza para elevar el shell?.
ClickDerechoPaqueteTCP > Follow > TCP Sream

Wireshark Lab

 

  • Q15. Archivo shell.pcapng: ¿Cuál es la versión del sistema operativo del sistema de destino?.
ClickDerechoPaqueteTCP > Follow > TCP Sream

Wireshark Lab

 

  • Q16. Archivo shell.pcapng: ¿cuántos usuarios hay en el sistema de destino?.
ClickDerechoPaqueteTCP > Follow > TCP Sream > 6

Wireshark Lab

 

  • Q17. Archivo network.pcapng - ¿Cuál es la IP del servidor NTP IPv6?.
ntp and ipv6

Wireshark Lab

 

  • Q18. Archivo network.pcapng: ¿Cuál es la primera dirección IP solicitada por el cliente DHCP?.
dhcp

Wireshark Lab

 

  • Q19. Archivo network.pcapng: ¿Cuál es el primer servidor de nombres autorizado que se devuelve para el dominio que se está consultando?.
dns.resp.type == 2

Wireshark Lab

 

  • Q20. Archivo network.pcapng: ¿Cuál es el número de la primera VLAN en la que se produjo un cambio de topología?.
stp.flags.tc == 1

Wireshark Lab

 

Referencias.

Ir atrás
Ir arriba