Wireshark系列之5 显示过滤器

对于我们个人用户,显示过滤器相比捕获过滤器要更为常用。显示过滤器主要适用于单机环境流量不大的情况。对于攻击者而言,往往不知道需要什么样的数据包,只能在抓包审计之后再确定,因而也通常选用显示过滤器。

当停止捕获数据之后,在数据包列表上面的过滤框中输入过滤表达式,就可以只显示我们需要的数据包。比如输入表达式“http”,就只显示采用http协议的数据包,点击过滤框右侧的×,可以去掉过滤规则,重新显示所有数据包。

1)语法规则

显示过滤器的语法规则:

在显示过滤器所采用的过滤表达式中,经常要用到各种比较运算符,主要有:

比较运算符 说明
== 等于
!= 不等于
> 大于
< 小于
>= 大于等于
<= 小于等于

应用示例:

ip.addr == 192.168.0.1 //筛选出含有IP地址192.168.0.1的包

ip.src == 192.168.0.1 //筛选出源地址为192.168.0.1的包

ip.dst == 192.168.0.1 //筛选出目的地址为192.168.0.1的包

frame.len<=128 //只显示长度小于128字节的包

tcp.port == 80 //只显示含有80端口的包

tcp.dstport == 25 //只显示目的TCP端口号为25的包

tcp.port > 1024 //只显示端口号大于1024的包

显示过滤器中的逻辑运算符:

逻辑运算 逻辑运算符
and、&&
or、||
!、not

应用示例:

http //只显示采用http协议的包

http or arp //只显示采用http或arp协议的包

snmp || dns || icmp //显示采用SNMP或DNS或ICMP协议的包

not arp //不显示采用arp协议的包

!tcp //不显示采用tcp协议的包

!(ip.addr == 192.168.0.1) //排除含有IP地址192.168.0.1的包

注意,如果过滤器的语法是正确的,表达式的背景呈绿色。如果呈红色,则说明表达式有误。

2)自动添加过滤表达式

有些过滤表达式的写法是比较复杂的,下面介绍一种相对简单的方法,可以自动添加过滤表达式。

首先清除之前的过滤结果,显示完整的数据包。

然后选择一条我们希望在过滤后能保留下来的数据包,比如要过滤出所有HTTP协议中以POST方式发送的数据包,我们先手动找到这样的一个数据包,比如在第3个包的Info中出现了POST信息。

选定3号包,查看该数据包的详细信息。在应用层Hypertext Transfer Protocol中的POST部分再次展开后可以看到Request Method:POST。

在Request Method:POST上点击右键,选择“作为过滤器应用/选中”。

此时就可以发现,过滤器中已经填写上了对应的过滤规则。同时显示也变成了对应的过滤规则下的数据包。

如果我们想要找方法为GET的包,直接将POST改成GET即可。

使用这种方式,难度在于需要事先找到一条含有自己想要的过滤信息的数据包。相比较而言这种方式更加适于初学者,简单易行,而且时间久了,会慢慢的熟悉常见的过滤语句,直到最终直接输入。

3)保存过滤后的数据包

我们可以将过滤后的数据包保存下来以备以后随时使用,比如我们要保存http.request.method == “POST”的数据包,在文件菜单中选择“导出特定分组”。

选择之后,可以看到保存的方式有多种。可以保存所有的数据包(Captured),也可以只保存过滤后的数据包(Displayed)。下方的数据显示,在所有的344条数据包中,有62条为满足我们过滤条件的数据包。一般情况下都是选择Displayed。

原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/57474.html

(0)
上一篇 2021年8月9日
下一篇 2021年8月9日

相关推荐

发表回复

登录后才能评论