当前位置:主页 > 查看内容

一篇带给你Wireshark之捕获过滤器

发布时间:2021-05-25 00:00| 位朋友查看

简介:在之前文章《我是如何使用wireshark软件的》中介绍了wireshark的使用,提到了显示过滤器和捕获过滤器,重点介绍了显示过滤器,本文将主要介绍一下捕获过滤器。 这里再次说明一下两者区别,需要看显示过滤器的同学,请看文章《我是如何使用wireshark软件的》……

在之前文章《我是如何使用wireshark软件的》中介绍了wireshark的使用,提到了显示过滤器和捕获过滤器,重点介绍了显示过滤器,本文将主要介绍一下捕获过滤器。

这里再次说明一下两者区别,需要看显示过滤器的同学,请看文章《我是如何使用wireshark软件的》。

  1. 捕获过滤器:当进行数据包捕获时,只有那些满足给定的包含/排除表达式的数据包会被捕获。
  2. 显示过滤器:该过滤器根据指定的表达式用于在一个已捕获的数据包集合中,隐藏不想显示的数据包,或者只显示那些需要的数据包。

01简介

首先了解下,为什么需要捕获过滤器。举个例子,在一台服务器(TCPsever,端口5005)上,一个客户端(其他家公司设备)运行几天,就会突然掉线。这时候,说不清是服务器把客户端踢下线,还是客户端主动离线。

当然,这个时候在服务器添加日志记录即可,就可以找“真凶”。如果是对方设备主动离线,对方又不配合时,对方“不相信你的日志”。这个时候,使用wireshark抓包,找出对方设备(TCPClient)先发出的FIN断开连接的证据,然后“甩”他脸上即可。

其实上述场景,我在《我是如何使用wireshark软件的》文中也提到过解决方案,使用显示过滤加定时保存的策略,不过这样在几天的抓包中,会导致抓包文件很大。而捕获过滤则可以解决这个问题。

捕获过滤使用方法

1.选择捕获->捕获过滤器,然后编辑一个新的捕获过滤器选项:名称为“port5005”(名字根据自己的需求即可),过滤器为“port5005”。


2.在开始界面选择网卡,然后点击②处,选择上一步新建的输入捕获条件即可。

3.开始捕获

选择完输入捕获条件,如下图,直接双击网卡,就开始捕获了。


02BPF语法

捕获过滤器应用于WinPcap,并使用BerkeleyPacketFilter(BPF)语法。这个语法被广泛用于多种数据包嗅探软件,主要因为大部分数据包嗅探软件都依赖于使用BPF的libpcap/WinPcap库。掌握BPF语法对你在数据包层级更深入地探索网络来说,非常关键。

使用BPF语法创建的过滤器被称为表达式,并且表达式包含一个或多个原语。每个原语包含一个或多个限定词,然后跟着一个ID名字或者数字,如:

BPF语法也是支持下列逻辑运算符的,从而创造更高级的表达式。

  1. 连接运算符 与 (&&)
  2. 选择运算符 或 (||)
  3. 否定运算符 非 (!)

举例说明:

  1. src 192.168.0.10 && port 5005 

上述表达式只对源地址是192.168.0.10和源端口或目标端口是5005的流量进行捕获。

03过滤示例

常用的过滤示例


注意灵活使用上文提到的逻辑运算符。


本文转载自网络,原文链接:https://mp.weixin.qq.com/s/uXJoM68GhJjv8-fTJTelIQ
本站部分内容转载于网络,版权归原作者所有,转载之目的在于传播更多优秀技术内容,如有侵权请联系QQ/微信:153890879删除,谢谢!
上一篇:基于Python实践感知器分类算法 下一篇:没有了

推荐图文

  • 周排行
  • 月排行
  • 总排行

随机推荐