CaptureFilters

这部分抓包过滤语法,和DisplayFilter语法完全不同,一定要注意这一点

  • 对ip进行限定 host 172.18.5.4 只抓取与ip相关的数据包,记住是host,不是ip
  • 仅对子网进行限定 net 192.168.0.0/24 or net 192.168.0.0 mask 255.255.255.0
  • 只对局域网所有主机发包进行限定 src net 192.168.0.0/24
  • 只对收包地址为所有局域网主机进行限定 dst net 192.168.0.0/24
  • 只对端口进行限定 port 53
  • 对服务器上所有非80和25端口通信进行抓包 host www.example.com and not(port 80 or port 25)
  • 过滤掉所有arp通信和dns通信 not arp and port not 53,记住不要写成not arp and not port 53
  • 只抓取一个端口范围内的数据包 tcp portrange 1501-1549
  • 过滤掉局域网内特定收包地址的数据包 not ether dst 01:80:c2:00:00:0e
  • 只抓取ip通信 ip
  • 过滤掉广播和多播 not broadcast and not multicast
  • 高级语法 只抓取HTTP GET 请求包port 80 and tcp[((tcp[12:1] &0xf0)>>2):4] = 0x47455420

notice部分

注意,captureFilter语法中没有no,只有not。
一般的组合都是关键字 [not] value ,再用逻辑连接

附上链接:
wireShark官方文档之抓包过滤语法及常用测试用例
Capture filters for wireshark


DisplayFilters语法

  • 只显示有关tcp端口为25 或者icmp协议的数据包 tcp.port eq 25 or icmp
  • 只显示局域网内通信 ip.src==192.168.0.0/16 and ip.dst==192.168.0.0/16
  • 只显示tcp buffer 为full的数据包tcp.window_size==0 && flags.reset !=1
    -只显示url中gl=se的数据包 http.request.uri matches "gl=se$"这里是perl regular expression
  • 只显示特定ip地址的通信 ip.addr== 192.168.100.103
  • 上面的内容等同于ip.src == 192.168.100.103 or ip.dst==192.168.100.103
  • 不显示特定ip的通信ip.addr != 192.168.100.103
  • 上述内容是个表达式,因此也可以写作!(ip.addr == 192.168.100.103)

notice部分

这里的语法都有一种面向对象的感觉,因此都需要用.连接起来,没有not(CaptureFilters语法)部分.
不对不对,可以有not的。在书上看到了not ip,现在记住,永远没有no一说就可以了。

附上链接:
wiresharkDisplayFilters官方样例
wireshark display filters全部属性
pacap-filter

wireshark简明教程


Yang_River
156 声望7 粉丝

引用和评论

0 条评论