自学内容网 自学内容网

WireShark过滤器


Wireshark的过滤器规则可以分为 捕获过滤器显示过滤器,这两种过滤器有不同的编写规则。以下是它们的基本使用方法和编写规则:


1. 捕获过滤器(Capture Filter)

捕获过滤器是在抓包时使用的过滤条件,它决定Wireshark在抓包时应该捕获哪些数据包。

捕获过滤器使用的是 BPF语法(Berkeley Packet Filter),常用于在抓包过程中限制要捕获的流量,以减少数据包的数量。以下是常用的捕获过滤器规则:

系统已经自带了一些捕获的过滤器。

编写的时候 左边是过滤器的名称,右边是过滤器的规则。

语法格式:
<表达式>
常见捕获过滤器示例:
  • 捕获某个IP地址的流量
host 192.168.1.1
  • 捕获某个IP地址的TCP流量
tcp host 192.168.1.1

tcp port 80 and host 192.168.1.1
  • 捕获某个IP地址的HTTPS流量
tcp port 443 and host 192.168.1.1
  • 捕获指定端口的流量
port 80
  • 捕获特定IP段的流量
net 192.168.1.0/24
  • 捕获ARP包
arp
  • 捕获TCP流量
tcp
  • 捕获UDP流量
udp
  • 捕获来自特定MAC地址的流量
ether src host 00:11:22:33:44:55

捕获过滤器是从源头进行过滤,而显示过滤器是在抓取的包中,拿到自己想要的内容。

2. 显示过滤器(Display Filter)

在页面的上面有显示过滤器:

显示过滤器是在抓包之后,用于筛选和显示满足特定条件的数据包。显示过滤器使用的是Wireshark自己的过滤语法,可以更加灵活地根据数据包的具体内容进行筛选。

语法格式:
<字段名> <比较运算符> <值>
常见比较运算符:
  • ==:等于
  • !=:不等于
  • >:大于
  • <:小于
  • >=:大于等于
  • <=:小于等于
  • and:与
  • or:或
  • not:非
常见显示过滤器示例:
  • 显示某个IP地址的流量
ip.addr == 192.168.1.1
  • 显示源IP地址是192.168.1.1的流量
ip.src == 192.168.1.1
  • 显示目的IP地址是192.168.1.1的流量
ip.dst == 192.168.1.1
  • 显示TCP端口80的流量(HTTP)
tcp.port == 80
  • 显示HTTP流量
http
  • 显示HTTPS流量
ssl
  • 显示DNS查询
dns
  • 显示TCP流量
tcp
  • 显示UDP流量
udp
  • 显示包含某个字符串的HTTP流量
http contains "example"
  • 显示某个TCP会话的流量(基于TCP流编号)
tcp.stream eq 5
  • 显示ICMP流量(如ping)
icmp
逻辑操作符:
  • AND(与)
ip.src == 192.168.1.1 and tcp.port == 80
  • OR(或)
ip.src == 192.168.1.1 or ip.dst == 192.168.1.1
  • NOT(非)
not tcp.port == 80

总结:

  • 捕获过滤器:用于在抓包之前定义要捕获的流量类型,语法较为简洁,类似于BPF(Berkeley Packet Filter)格式。
  • 显示过滤器:用于在抓包后筛选显示指定条件的数据包,语法更加复杂,可以针对更详细的数据包字段进行过滤。

如果你需要从大量数据包中找到特定的流量,显示过滤器是非常强大的工具。而如果你想在抓包时只捕获相关流量,使用合适的捕获过滤器可以提高效率。

应用

比如我的现在ip地址是:

抓取的都是来自己我自己电脑的包


原文地址:https://blog.csdn.net/ngczx/article/details/142856167

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!