Wireshark es un analizador de protocolos de trafico de red

 

www.onlinetis.com

Wireshark es un analizador de protocolos de red (también conocido como sniffer o packet analyzer) de código abierto que se utiliza para capturar y examinar el tráfico de datos que viaja a través de una red. Te permite ver lo que está sucediendo en tu red a un nivel microscópico, capturando paquetes y mostrando los datos de cada uno en el mayor detalle posible.

¿Cómo funciona?

Wireshark funciona poniendo la interfaz de red de tu computadora en modo promiscuo (si está disponible), lo que le permite capturar todos los paquetes que pasan por la red, no solo aquellos destinados a tu máquina. Una vez capturados, los paquetes se pueden filtrar, analizar y ordenar para diagnosticar problemas de red, examinar la seguridad, depurar protocolos de comunicación y más.

Usos principales

  • Solución de problemas de red: Identificar la causa de una conexión lenta, una conexión que falla o un comportamiento inesperado.

  • Análisis de seguridad: Detectar intentos de intrusión, tráfico sospechoso, malware o el uso no autorizado de protocolos.

  • Desarrollo de protocolos: Depurar y validar el comportamiento de nuevos protocolos de red.

  • Educación: Entender cómo funcionan los protocolos de red en la práctica, viendo el flujo de datos real.

En resumen, Wireshark es una herramienta esencial para ingenieros de redes, administradores de sistemas y profesionales de la seguridad, ya que proporciona una visión profunda y detallada de la actividad de una red.

 

Los filtros de Wireshark son una herramienta muy poderosa y hay muchísimos más ejemplos y categorías para un análisis más profundo. Aquí tienes una lista más completa, centrada principalmente en los filtros de visualización, que son los más utilizados para el análisis post-captura.

Filtros por Protocolo

Estos son los más básicos y te permiten aislar el tráfico de un protocolo específico.

  • http: Muestra todo el tráfico del protocolo HTTP.

  • dns: Muestra solo los paquetes del sistema de nombres de dominio (DNS).

  • arp: Muestra únicamente los paquetes del Protocolo de Resolución de Direcciones (ARP).

  • icmp: Muestra el tráfico de ICMP (utilizado por el comando ping).

  • tls: Para ver el tráfico TLS/SSL ( HTTPS).

  • ftp: Para el protocolo de transferencia de archivos.

Filtros por Dirección y Puerto

Permiten enfocarse en hosts o servicios específicos.

  • ip.addr == 192.168.1.100: Muestra el tráfico que tiene como origen o destino la IP 192.168.1.100.

  • ip.src == 192.168.1.100: Muestra solo los paquetes que tienen como origen la IP 192.168.1.100.

  • ip.dst == 192.168.1.100: Muestra solo los paquetes que tienen como destino la IP 192.168.1.100.

  • tcp.port == 80: Muestra el tráfico TCP en el puerto 80 (HTTP).

  • tcp.srcport == 443: Muestra el tráfico TCP que tiene como puerto de origen el 443.

  • tcp.port in {80, 443, 8080}: Muestra el tráfico que utiliza cualquiera de los puertos especificados.

Filtros de Conversación

Útiles para aislar el diálogo completo entre dos hosts o por un protocolo.

  • ip.addr == 192.168.1.100 and ip.addr == 192.168.1.200: Muestra el tráfico entre estas dos direcciones IP.

  • tcp.stream eq 1: Muestra todos los paquetes que forman parte de la conversación TCP número 1.

Filtros de Banderas (Flags) TCP

Excelentes para diagnosticar problemas de conexión o analizar ataques.

  • tcp.flags.syn == 1: Muestra todos los paquetes TCP que inician una conexión (SYN). Útil para detectar ataques de tipo "SYN Flood".

  • tcp.flags.ack == 1: Muestra todos los paquetes que contienen la bandera ACK (confirmación).

  • tcp.flags.reset == 1: Muestra los paquetes de reinicio de conexión (RST). Son comunes en el escaneo de puertos o conexiones fallidas.

  • tcp.flags.push == 1: Muestra paquetes con la bandera PUSH, que indica que los datos deben ser enviados al proceso de la aplicación de inmediato.

  • tcp.flags.fin == 1: Muestra los paquetes que terminan una conexión (FIN).

Filtros de Contenido y Cadena de Texto

Para buscar información específica dentro de los paquetes.

  • http.request.uri contains "login": Muestra las solicitudes HTTP cuya URI (Uniform Resource Identifier) contiene la palabra "login".

  • http.request.method == "POST": Muestra solo las peticiones HTTP que utilizan el método POST.

  • http contains "GET": Muestra cualquier paquete HTTP que contenga la cadena "GET".

Filtros de Análisis y Errores

  • tcp.analysis.retransmission: Muestra los paquetes que Wireshark ha identificado como retransmisiones. Esto puede indicar pérdida de paquetes en la red.

  • tcp.analysis.duplicate_ack: Muestra los paquetes de "acuse de recibo duplicado", que también son un indicador de retransmisiones y pérdida de paquetes.

  • ip.checksum.bad == 1: Muestra paquetes IP con una suma de verificación incorrecta. Generalmente, indica un problema en la tarjeta de red o el controlador.

Operadores Lógicos

Puedes combinar filtros para crear expresiones más complejas.

  • && o and: Ambas condiciones deben cumplirse.

    • Ejemplo: ip.src == 192.168.1.100 and tcp.port == 80

  • || o or: Cualquiera de las condiciones puede cumplirse.

    • Ejemplo: http or dns

  • ! o not: Excluye lo que le sigue.

    • Ejemplo: !arp para ocultar todo el tráfico ARP.

  • ne o !=: No es igual a.

    • Ejemplo: tcp.port != 22

Dominar estos filtros te permitirá pasar de una visión general de tu red a un análisis muy detallado y focalizado, lo cual es fundamental para la resolución de problemas, el análisis de seguridad y la auditoría de redes.

Entradas populares de este blog

Ciberseguridad y hacking con Whatweb

Como robar contraseñas haciendo un phishing web

Arsenal software hacking NFC