Wireshark 抓包过滤器学习

Wireshark 抓包过滤器学习

wireshark中,分为两种过滤器:捕获过滤器显示过滤器

捕获过滤器 是指wireshark一开始在抓包时,就确定要抓取哪些类型的包;对于不需要的,不进行抓取。

显示过滤器 是指wireshark对所有的包都进行抓取,当用户分析数据包的信息,便于筛选出需要的数据包。

总结来说,捕获过滤器 是在用户开始任务之前就要使用的规则;而显示过滤器 是任务开始之后(无论是否已完成)要使用的规则。

一、捕获过滤器

1、语法结构

  • Protocols

ether,fddi,ip,arp,rarp,decnet,lat,sca,moprc,mopdl,tcp and udp

注:若不指定,默认使用所有支持的协议

  • Direction

src,dst,src and dst,src or dst
注:若不指定,默认使用双向(src or host)

  • Host

net,port,host,portrange
注:若不指定,默认所有(host)

  • Logical Operations

and,or,not
注:not优先级最高,or和not优先级相等,从左至右依次运算

  • Other expression

其他的过滤条件,当有多重表达条件时与Logica Operatios 一起连用

2、使用示例

  • 过滤地址
host 192.168.1.1  //只抓取源/目的IP为192.168.1.1的数据包

src host 192.168.1.1 && dst host 192.168.1.2  //只抓取源IP为192.168.1.1,目的IP为192.168.1.2的数据包

net 192.168.1.0/24 net  //用于表示一个网段
  • 过滤端口
!port 80  //不抓取端口为80的数据包

tcp portrange 1-1024  //只抓取使用tcp协议的1-1024端口的数据包

dst port 80  //只抓取目标端口为80的所有数据包

src host 192.168.1.5 && port 443   //抓取所有源IP为192.168.1.5,并且与443端口有关的数据包
  • 过滤协议
tcp,udp,icmp,arp  //直接输入某一个协议,则只抓取该协议的数据包

!brocast  //使用逻辑非运算符,不抓取广播包

二、显示过滤器

1、使用示例

  • 可使用连接符
==(eq)  //等于,equal

!=(ne)  //不等于,no equal

<(lt)  //小于,less than

>(gt)  //大于,great than

>=(ge)  //大于等于,great equal

<=(le)  //小于等于,less equal

&&  //逻辑“与”运算

||  //逻辑“或”运算

!  //逻辑“非”运算

  • 过滤IP地址
ip.addr==192.168.1.3  //只显示源/目的IP为192.168.1.3的数据包

not ip.src==1.1.1.1  //不显示源IP为1.1.1.1的数据包

ip.src==1.1.1.1 or ip.dst==1.1.1.2  //只显示源IP为1.1.1.1或目的IP为1.1.1.2的数据包
  • 过滤端口
tcp.port eq 80  //只显示源/目的端口为80的数据包

tcp.dstport==80  //只显示目的端口为80的数据包

tcp.srcport

tcp.port >=1 and tcp.port<=80  //只显示源/目的端口大于等于1,小于等于80的数据包
  • 过滤MAC地址
eth.dst==A0:00:00:04:C5:84  //只显示目的MAC为A0:00:00:04:C5:84 的数据包

eth.addr eq A0:00:00:04:C5:84  //作用同上
  • 过滤协议类别
tcp、ip、dhcp、oicq、ftp、ssl等等

udp || icmp || dns  //只显示udp、icmp、dns相关协议的数据包

not arp 等于 !arp  //不显示arp协议的数据包

  • 过滤协议参数
tcp.flags.syn == 0x02  //显示包含syn标志位的数据包

frame.len==119  //整个数据包长度,从eth开始到最后

http.request.method=="get"  //显示http请求中method值为get的包

tips:如图所示,在显示过滤器中输入规则时,会出现提示信息,可据此了解更多的协议过滤规则

2、注意事项

  • 捕获过滤器对于一个选项的参数之间使用空格进行连接
  • 显示过滤器对于一个选项的参数之间使用点”.”进行连接
  • 输入过滤器规则时,如果语法正确,底色显示为绿色;如果语法错误,显示为红色。
  • 使用捕获过滤器时,要先选择要捕获的接口,再填写过滤器规则

参考

posted @ 2019-08-30 16:57  roverliang  阅读(5766)  评论(0编辑  收藏  举报