协议过滤:dns http ip tcp udp arp icmp ssl smtp ftp msnms oicq bootp websocket
IP端口过滤:
ip.src != 10.0.0.5
tcp.dstport == 888
udp.srcport == 888
dst host 220.181.111.188
http.host contains "163.com"
eth.dst==A0:00:00:04:C5:84
HTTP模式过滤:
请求方法为GET:http.request.method==“GET”
请求方法为POST:http.request.method==“POST”
指定URI:http.request.uri==“/img/logo-edu.gif”
请求或相应中包含特定内容:http contains “FLAG”
长度过滤:
frame.len > 10
udp.length==20
特征过滤:
tcp.flags.syn == 0x02
检测tcp含有十六进制01:bd,从tcp头部开始搜索此数据。
tcp matches "\x01\xbd"
oicq and udp[8:] matches "^\x02[\x00-\xff][\x00-\xff]\x00\x22[\x00-\xff]+\x03$"
1、wireshark基本的语法字符
d 0-9的数字
D d的补集(以所以字符为全集,下同),即所有非数字的字符
w 单词字符,指大小写字母、0-9的数字、下划线
W w的补集
s 空白字符,包括换行符n、回车符r、制表符t、垂直制表符v、换页符f
S s的补集
. 除换行符n外的任意字符。 在Perl中,“.”可以匹配新行符的模式被称作“单行模式”
.* 匹配任意文本,不包括回车(n)? 。 而,[0x00-0xff]* 匹配任意文本,包括n
[…] 匹配[]内所列出的所有字符
[^…] 匹配非[]内所列出的字符
^ 表示其后的字符必须位于字符串的开始处
$ 表示其前面的字符必须位于字符串的结束处
b 匹配一个单词的边界
B 匹配一个非单词的边界
{n} 匹配前面的字符n次
{n,} 匹配前面的字符n次或多于n次
{n,m} 匹配前面的字符n到m次
? 匹配前面的字符0或1次
+ 匹配前面的字符1次或多于1次
* 匹配前面的字符0次或式于0次