過濾規(guī)則
只抓取符合條件的包吸祟,在Wireshark通過winpacp抓包時(shí)可以過濾掉不符合條件的包,提高我們的分析效率。
1.只抓取HTTP報(bào)文
tcp port 80
解析:上面是只抓取tcp 協(xié)議中80端口的包,大部分Web網(wǎng)站都是工作在80端口的,如果碰到了81端口呢什往?可以使用邏輯運(yùn)算符or唄!如 tcp port 80 or tcp port 81
2.只抓取arp報(bào)文
ether proto 0x0806
解析:ether表示以太網(wǎng)頭部慌闭,proto表示以太網(wǎng)頭部proto字段值為0x0806别威,這個(gè)字段的值表示是ARP報(bào)文,如果的ip報(bào)文此值為0x8000
3.只抓取與某主機(jī)的通信
host www.cnblogs.com
只抓取和博客園服務(wù)器的通信,src表示源地址驴剔,dst表示目標(biāo)地址
4.只抓取ICMP報(bào)文
icmp
顯示規(guī)則
只是將已經(jīng)抓取到的包進(jìn)行過濾顯示省古。
1.過濾IP,如來源IP或者目標(biāo)IP等于某個(gè)IP
例子:
ip.src eq 192.168.1.107 or ip.dst eq 192.168.1.107
或者
ip.addr eq 192.168.1.107 // 都能顯示來源IP和目標(biāo)IP
2.過濾端口
tcp.port eq 80 //不管端口是來源的還是目標(biāo)的都顯示
tcp.port == 80
tcp.port eq 2722
tcp.port eq 80 or udp.port eq 80
tcp.dstport == 80 //只顯tcp協(xié)議的目標(biāo)端口80
tcp.srcport == 80 //只顯tcp協(xié)議的來源端口80
udp.port eq 15000
過濾端口范圍
tcp.port >= 1 and tcp.port <= 80
3.過濾協(xié)議
tcp
udp
arp
icmp
http
smtp
ftp
dns
msnms
ip
ssl
oicq
bootp
//排除arp包仔拟,如!arp 或者 not arp
4.過濾MAC
eth.dst == A0:00:00:04:C5:84 // 過濾目標(biāo)mac
eth.src eq A0:00:00:04:C5:84 // 過濾來源mac
eth.dst == A0:00:00:04:C5:84
eth.dst == A0-00-00-04-C5-84
eth.addr eq A0:00:00:04:C5:84 // 過濾來源MAC和目標(biāo)MAC都等于A0:00:00:04:C5:84的
5.包長度過濾
udp.length == 26 //這個(gè)長度是指udp本身固定長度8加上udp下面那塊數(shù)據(jù)包之和
tcp.len >= 7 //指的是ip數(shù)據(jù)包(tcp下面那塊數(shù)據(jù)),不包括tcp本身
ip.len == 94 //除了以太網(wǎng)頭固定長度14,其它都算是ip.len,即從ip本身到最后
frame.len == 119 //整個(gè)數(shù)據(jù)包長度,從eth開始到最后
6.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:"
// 響應(yīng)包
http contains "HTTP/1.1 200 OK" && http contains "Content-Type:"
http contains "HTTP/1.0 200 OK" && http contains "Content-Type:"
7.TCP參數(shù)過濾
tcp.flags //顯示包含TCP標(biāo)志的封包衫樊。
tcp.flags.syn == 0x02 //顯示包含TCP SYN標(biāo)志的封包。
tcp.window_size == 0 && tcp.flags.reset != 1
8.包內(nèi)容過濾
tcp[20:8] //表示從20開始,取8個(gè)字符
tcp[offset,n]
udp[8:3]==81:60:03 // 偏移8個(gè)bytes,再取3個(gè)數(shù)科侈,是否與==后面的數(shù)據(jù)相等
eth.addr[0:3]==00:06:5B