一.参数过滤

1.捕获过滤器

解释:该过滤是为了在抓包时筛选出符合指定规则的包,其余包直接丢弃不会抓,该规则同scapy中的sniff(filter='过滤')一样

wireshark 如何过滤参数值 wireshark过滤数据内容_数据

1.1 语法

语法<Protocol> <Direction> <Host(s)> < Value> < Logical Operations> <Other expression>

1.2 详细

详细

  1. Protocol(协议): etheriparptcpudp 等,如果没指明协议类型,则默认为捕捉所有支持的协议
  2. Direction(方向):srcdstsrc and dstsrc or dst等,如果没指明方向,则默认使用 “src or dst” 作为关键字
  3. Host(主机):net, port, host等等,如果没有指明,默认是‘host’.
  4. Logical Operations(逻辑运算):例如and or not

1.3 实例

1.3.1 关于IP地址
  1. 捕获192.168.0.0目标和源头的这个网段所有数据:net 192.168.0.0/24
  2. 不捕获192.168.0.0为目标这个网段所有数据:not dst net 192.168.0.0/24
  3. 捕获192.168.0.0网段为源头的所有数据:src net 192.168.0.0/24
  4. 捕获192.168.0.1主机为源头的所有数据:src host 192.168.0.1
1.3.2 关于广播地址
  1. 捕获239.255.255.255~224.0.0.0的数据:ip multicast
1.3.3 关于Mac地址
  1. 捕获到达/来自 aa:aa:aa:aa:aa:aa的数据:ether host aa:aa:aa:aa:aa:aa
  2. 捕获到达aa:aa:aa:aa:aa:aa的数据:ether dst aa:aa:aa:aa:aa:aa
  3. 不捕获到达/来自 aa:aa:aa:aa:aa:aa的数据:not ether host aa:aa:aa:aa:aa:aa
1.3.4 捕获关于端口
  1. 捕获来自53端口的TCP/UDP数据:port 53
  2. 捕获来自67端口的UDP数据:udp port 67
  3. 捕获来自1-80端口的TCP/UDP数据:portrange 1-80
  4. 捕获来自1-80端口的TCP数据:tcp portrange 1-80
1.3.5 捕获ICMP数据
  1. 捕获所有icmp数据:icmp
  2. 捕获ICMP字段类型为8(echo request):icmp[0]=8
  3. 捕获ICMP字段类型为17(Address Mask request):icmp[0]=17

2.显示过滤器

解释:该过滤会抓取所有的包,通过指定语法规定显示何种包

wireshark 如何过滤参数值 wireshark过滤数据内容_wireshark 如何过滤参数值_02

2.1 语法

语法<Protocol> <String 1> <String 2> < Comparison operator> < Value> <Logical Operations>

2.2 详细

详细

  1. Protocol(协议):可以使用大量位于OSI模型第2至7层的协议,例如IP TCP DNS SSH,远比捕捉过滤器丰富
  2. String 1(参数 1):协议的子类,之间用点号.相连接
  3. String 2(参数 2):协议的子类,之间用点号.相连接
  4. Comparison operators (比较运算符):例如== != > <
  5. Value(值):填入例如ip地址的值
  6. Logical expression_rs(逻辑运算符):例如:and or not

2.3 实例

2.3.1 非语法

图解:选中右击

wireshark 如何过滤参数值 wireshark过滤数据内容_wireshark 如何过滤参数值_03


效果:自动填充到上面的显示过滤器处

wireshark 如何过滤参数值 wireshark过滤数据内容_数据_04

2.3.2 语法
2.3.2.1 协议过滤器
  1. 显示arp协议流量:arp
  2. 显示ipv4协议流量ip
  3. 显示tcp协议流量:tcp
2.3.2.2 应用过滤器
  1. 捕获dhcp协议流量:dhcp
  2. 捕获dns协议流量:dns
  3. 捕获http协议流量:http
  4. 捕获icmp协议流量:icmp
2.3.2.3 地址过滤法
  1. 显示来自iv4的数据:ip.src
  2. 显示到达ipv4且值为192.168.0.1的数据:ip.dst==192.168.0.1
  3. 显示来自/到达ipv4且值为192.168.0.1的数据:ip.host==192.168.0.1
  4. 显示来自/到达ipv4且值为192.168.0.0网段的数据:ip.addr==192.168.0.0/24(类似前面的net)
2.3.2.4 其它过滤法
  1. 正则模糊匹配:http.host matches "qq"(其使用的为正则表达式)
  2. 包含模糊匹配:http.host contains"qq"(其包含引号里面内容就会显示)
  3. 获取许多分析数据
2.3.2.5 实践
  1. 筛选ip来源或者目的地为指定ip的包:ip.addr == 192.168.0.1
  2. 筛选ip来源为指定目的地的包:ip.scr == 192.168.0.1
  3. 筛选dns协议的包:dns
  4. 筛选指定mac地址并且为arp的包:eth.dst == A0:00:00:04:C5:84 and arp
  5. 筛选http请求为post的包:http.request.method == POST
  6. 筛选dns响应包:dns.flags.response == 1
  7. 筛选tcp到达端口为80的包:tcp.dstport == 80