Saltar al contenido
Lectura9 minPreview

Filtros de captura y filtros de visualización

Diez minutos de captura en una laptop son miles de paquetes. Wireshark tiene dos filtros que se escriben distinto y actúan en momentos distintos; confundirlos es el error de la primera semana.

Filtro de captura: decide qué se guarda

Se escribe antes de iniciar, en el campo sobre la lista de interfaces. Usa BPF (Berkeley Packet Filter, "filtro de paquetes de Berkeley"), la misma sintaxis de tcpdump. Lo que no cumple el filtro nunca se guarda.

[not] [PROTOCOLO] [src|dst] TIPO VALOR [and|or EXPRESIÓN]
port 53                    solo DNS
host 192.0.2.25            todo lo que entra o sale de ese equipo
net 192.0.2.0/24           una red completa
tcp port 8080              solo TCP en el puerto 8080
not port 443               todo excepto HTTPS
port 53 or tcp port 80     DNS o HTTP sin cifrar

Úselo en capturas largas.

Filtro de visualización: decide qué se muestra

Se escribe después, en la barra sobre la lista de paquetes. Usa nombres de campo de Wireshark (protocolo.campo), mucho más expresivos. No borra nada: oculta lo que no coincide.

CAMPO OPERADOR VALOR [and|or EXPRESIÓN]
OperadorQué haceEjemplo
== o eqIgual atcp.port == 8080
!= o neDistinto deip.src != 192.0.2.1
containsEl campo contiene un textodns.qry.name contains "secwing"
and o &&Exige ambas condicionesdns and ip.addr == 192.0.2.25
orBasta una (también dos barras)dns or arp
not o !Niega!(arp or dns)
ip.addr == 192.0.2.25                 origen o destino igual a esa IP
http.request.method == "POST"         solo envíos de datos
dns.flags.rcode == 3                  respuestas NXDOMAIN, nombre inexistente
tcp.flags.syn == 1 && tcp.flags.ack == 0   intentos de conexión nuevos

Barra verde, filtro válido; roja, error. Atajo: clic derecho sobre un campo > Aplicar como filtro.

La diferencia en una tabla

Filtro de capturaFiltro de visualización
MomentoAntes de capturarDurante o después
SintaxisBPF: port 53Campos: udp.port == 53
EfectoDescarta para siempreOculta, no borra

Ficha de tshark

tshark es el Wireshark de terminal (terminal Wireshark) y viene en el mismo instalador.

Sintaxis

tshark [-i INTERFAZ | -r ARCHIVO] [-f "CAPTURA"] [-Y "VISUALIZACIÓN"] [-w ARCHIVO]

Opciones principales

OpciónQué haceEjemplo
-DLista las interfaces numeradastshark -D
-i / -rCaptura en una interfaz / lee un archivo-i 1, -r dns.pcapng
-f / -YFiltro de captura / de visualización-Y "dns"
-wGuarda lo capturado-w dns.pcapng
-T fields -eImprime solo los campos pedidos-T fields -e dns.qry.name
$ tshark -r dns.pcapng -Y "dns.flags.rcode == 3" -T fields -e dns.qry.name
a8f3k2q9z7x1.datos.secwing.example
m4t6p0w2r8y5.datos.secwing.example

Errores frecuentes

"port" is neither a field nor a protocol name.

Escribió sintaxis BPF en la barra de visualización; allí se dice udp.port == 53.

tshark: Invalid capture filter "prot 53" for interface 'wlan0'.

El filtro BPF tiene un error de escritura: corrija a port 53.