wireshark过滤(wireshark过滤规则及使用方法)
大家好,今天来给大家分享wireshark过滤的相关知识,通过是也会对wireshark过滤规则及使用方法相关问题来为大家分享,如果能碰巧解决你现在面临的问题的话,希望大家别忘了关注下本站哈,接下来我们现在开始吧!
1【Wireshark】Wireshark 过滤器表达式语法
Wireshark 的世界里有2种过滤器,分别是捕获过滤器和显示过滤器。
采用恰当的过滤器,不但能提高数据分析的灵活性,而且能让分析者更快看到自己想要的分析对象。
BPF(Berkeley Packet Filter)全称为伯克利包过滤,是一种功能非常强大的过滤语法.这个语法被广泛应用于多种数据包嗅探软件,因为大部分数据包嗅探软件都依赖于使用BPF的libpcap/WinPcap库.诸如tcpdump,wireshark等等。
捕获过滤器:wireshark 仅捕获过滤器设置的数据,其它数据不收集,用于定向分析问题。
显示过滤器:wireshark 对已经捕获的数据,进行显示设置。只是不显示的数据还是在内存中的,修改显示过滤器就可以显示出来,不适合大流量的场景。
捕获过滤器语法规则 BPF(Berkeley Packet Filter),使用 google 搜索 “BPF 语法” 能搜索到很多相关内容。
显示过滤器是对已经抓取的数据,进行显示过滤设置。 语法是 wireshark 自己的语法,可以使用 wireshark 辅助生成过滤表达式。
WireShark DisplayFilter Examples
Wireshark基础使用和表达式语法
Chapter 6. Working With Captured Packets
Wireshark入门与进阶系列之常见捕获过滤器
BPF过滤规则
2wireshark过滤规则有哪些
wireshark过滤规则:
一、IP过滤:包括来源IP或者目标IP等于某个IP
比如:ip.src addr==192.168.0.208 or ip.src addr eq 192.168.0.208 显示来源IP
ip.dst addr==192.168.0.208 or ip.dst addr eq 192.168.0.208 显示目标IP
二、端口过滤:
比如:tcp.port eq 80 // 不管端口是来源的还是目标的都显示
tcp.port == 80
tcp.port eq 2722
tcp.port eq 80 or udp.port eq 80
tcp.dstport == 80 // 只显tcp协议的目标端口80
tcp.srcport == 80 // 只显tcp协议的来源端口80
过滤端口范围
tcp.port = 1 and tcp.port 三、协议过滤:tcp
udp
arp
icmp
http
smtp
ftp
dns
msnms
ip
ssl
等等
排除ssl包,如!ssl 或者 not ssl
四、包长度过滤:
比如:
udp.length == 26 这个长度是指udp本身固定长度8加上udp下面那块数据包之和
tcp.len = 7 指的是ip数据包(tcp下面那块数据),不包括tcp本身
ip.len == 94 除了以太网头固定长度14,其它都算是ip.len,即从ip本身到最后
frame.len == 119 整个数据包长度,从eth开始到最后
五、http模式过滤:
例子:
http.request.method == “GET”
http.request.method == “POST”
http.request.uri == “/img/logo-edu.gif”
http contains “GET”
http contains “HTTP/1.”
// GET包包含某头字段
http.request.method == “GET” http contains “Host: ”
http.request.method == “GET” http contains “User-Agent: ”
// POST包包含某头字段
http.request.method == “POST” http contains “Host: ”
http.request.method == “POST” http contains “User-Agent: ”
// 响应包包含某头字段
http contains “HTTP/1.1 200 OK” http contains “Content-Type: ”
http contains “HTTP/1.0 200 OK” http contains “Content-Type: ”六、连接符 and / or
七、表达式:!(arp.src==192.168.1.1) and !(arp.dst.proto_ipv4==192.168.1.243)
八、expert.message是用来对info信息过滤,主要配合contains来使用
3wireshark过滤规则
过滤源ip、目的ip。在wireshark的过滤规则框Filter中输入过滤条件。如查找目的地址为192.168.101.8的包,ip.dst==192.168.101.8;查找源地址为ip.src==1.1.1.1。
端口过滤。如过滤80端口,在Filter中输入,tcp.port==80,这条规则是把源端口和目的端口为80的都过滤出来。使用tcp.dstport==80只过滤目的端口为80的,tcp.srcport==80只过滤源端口为80的包。
协议过滤比较简单,直接在Filter框中直接输入协议名即可,如过滤HTTP的协议。
http模式过滤。如过滤get包,http.request.method=="GET",过滤post包,http.request.method=="POST"。
连接符and的使用。过滤两种条件时,使用and连接,如过滤ip为192.168.101.8并且为http协议的,ip.src==192.168.101.8 and http。
4wireshark过滤输入http为什么错误
wireshark过滤输入http错误的原因是由于慢速服务器或客户端,TCP性能问题导致。根据查询相关公开信息显示:在wireshark的过滤规则框Filter中输入过滤条件,如查找目的地址为192.168.101.8的包,ip.dst==192.168.101.8。查找源地址为ip.src==1.1.1.1,对源或者目的地址表达式为:ip.addr==192.168.0.0,或者ip.src==192.168.0.0orip.dst==192.168.0.0,故wireshark过滤输入http错误的原因是由于慢速服务器或客户端,TCP性能问题导致。
5wireshark常用过滤规则
可使用单个或多个过滤条件(可使用==,=等),多个条件时使用and or进行连接
例子:ip.src ==192.168.1.107 or ip.dst ==192.168.1.107
例子:
tcp.port eq 80 // 不管端口是来源的还是目标的都显示
tcp.port == 80
tcp.dstport == 80 // 只显tcp协议的目标端口80tcp.srcport == 80 // 只显tcp协议的来源端口80
过滤端口范围tcp.port = 1 and tcp.port = 80
例子:
tcp udp arp icmp http smtp ftp dns等等
排除arp包,如!arp 或者 not arp
例子太以网头过滤
eth.dst == A0:00:00:04:C5:84 // 过滤目标mac
eth.src eq A0:00:00:04:C5:84 // 过滤来源mac
例子:
udp.length == 26 这个长度是指udp本身固定长度8加上udp下面那块数据包之和
tcp.len = 7 指的是ip数据包(tcp下面那块数据),不包括tcp本身
ip.len == 94 除了以太网头固定长度14,其它都算是ip.len,即从ip本身到最后
frame.len == 119 整个数据包长度,从eth开始到最后
例子:
http.request.method == “GET”
http.request.method == “POST”
http.request.uri == “/img/logo-edu.gif”
http contains “GET”
http contains “HTTP/1.”
tcp.flags 显示包含TCP标志的封包。
tcp.flags.syn == 0x02 显示包含TCP SYN标志的封包。
tcp contains "关键字"
9.报文
好了,文章到此结束,希望可以帮助到大家。