Wireshark過濾規則之 http資料報

2021-08-03 11:17:35 字數 4559 閱讀 5319

wireshark過濾語句中常用的操作符

關鍵字有:

eq,== 等於

ne,!= 不等於

gt,> 比…大

lt,< 比…小 ge,>= 大於等於

le,<= 小於等於 and,|| 且 or,&& 或 not,! 取反

另外還有contains和matches兩個不常用的關鍵字,過濾效果不錯。

「contains」過濾包含指定字串的資料報。例如:

//過濾http請求的uri中含有/dll/test.htm?欄位的請求資訊

udp contains 81:60:03

//過濾包含81:60:03的udp資料報

//matches 匹配過濾條件中給定的正規表示式,支援與perl相容的正規表示式(pcre)。

//過濾經過指定網域名稱的http資料報,這裡的host值不一定是請求中的網域名稱

//過濾http響應狀態碼為302的資料報

//過濾所有的http響應包

//過濾所有的http請求,貌似也可以使用http.request

//wireshark過濾所有請求方式為post的http請求包,注意post為大寫

//過濾含有指定cookie的http資料報

//過濾請求的uri,取值是網域名稱後的部分

//過濾含網域名稱的整個url則需要使用http.request.full_uri

//過濾http頭中server欄位含有nginx字元的資料報

//過濾content_type是text/html的http響應、post包,即根據檔案型別過濾http資料報

//過濾content_encoding是gzip的http包

//根據transfer_encoding過濾

//根據content_length的數值過濾

//過濾所有含有http頭中含有server欄位的資料報

//過濾http/1.1版本的http包,包括請求和響應

//過濾http響應中的phrase

wireshark捕獲udp資料報

udp協議分析常用過濾條件

ip.addr==192.168.0.1 //過濾ip位址

data.len==8 //過濾data部分長度為8的資料報

data.data == 00:08:30:03:00:00:00:00 //過濾指定內容的資料報

udp.srcport == 10092 //過濾經過本機10092埠的udp資料報

udp.dstport == 80 //過濾目標機器10092埠的udp資料報

udp.port==10092 //過濾本機或目標機器10092埠的資料報

udp.length == 20 //過濾指定長度的udp資料報

udp校驗和過濾條件

udp.checksum == 0x250f

udp.checksum_good == 0 //boolean型別

udp.checksum_bad == 0

程序相關的過濾條件

以下過濾條件不支援windows,因為需要特殊的驅動。

udp.proc.dstcmd //過濾目標程序名

udp.proc.dstpid //過濾目標程序pid

udp.proc.dstuid //過濾目標程序的使用者id

udp.proc.dstuname //過濾目標程序的使用者名稱

udp.proc.srccmd //過濾源程序名

udp.proc.srcpid //過濾源程序pid

udp.proc.srcuid //過濾源程序的使用者id

udp.proc.srcuname //過濾源程序的使用者名稱

ether host 00:11:22:33:44:55 //過濾目標或源位址是00:11:22:33:44:55的資料報

ether dst host 00:11:22:33:44:55 //過濾目標位址是00:11:22:33:44:55的資料報

ether src host 00:11:22:33:44:55 //過濾源位址是00:11:22:33:44:55的資料報

eth.addr== 00:11:22:33:44:55 //過濾目標或源位址是00:11:22:33:44:55的資料報

eth.src== 00:11:22:33:44:55 //過濾源位址是00:11:22:33:44:55的資料報

eth.dst== 00:11:22:33:44:55 //過濾目標位址是00:11:22:33:44:55的資料報

wireshark捕獲經過指定ip的資料報

捕捉過濾抓包前在capture option中設定,僅捕獲符合條件的包,可以避免產生較大的捕獲檔案和記憶體占用,但不能完整的復現測試時的網路環境。

host 192.168.0.1 //抓取192.168.0.1 收到和發出的所有資料報

src host 192.168.0.1 //源位址,192.168.0.1發出的所有資料報

dst host 192.168.0.1 //目標位址,192.168.0.1收到的所有資料報

src host hostname //根據主機名過濾

ether host 80:05:09:03:e4:35 //根據mac位址過濾

net 192.168.0 //網路過濾,過濾整個網段

src net 192.168

dst net 192

非: ! or 「not」 (去掉雙引號)

且: && or 「and」

或: || or 「or」

wirershark過濾指定ip收發資料報示例:

抓取所有目的位址是192.168.0.2 或192.168.0.3 埠是80 的tcp 資料

(tcp port 80) and ((dst host 192.168.0.2) or (dst host

192.168.0.3)) //捕獲過濾

tcp.port==80&&(ip.dst==192.168.0.2||ip.dst==192.168.0.3) //顯示過濾

抓取所有目標mac 位址是80:05:09:03:e4:35 的icmp 資料

(icmp) and ((ether dst host 80:05:09:03:e4:35))

icmp && eth.dst==80:05:09:03:e4:35

抓取所有目的網路是192.168,但目的主機不是192.168.0.2 的tcp 資料

(tcp) and ((dst net 192.168) and (not dst host 192.168.0.2))

tcp&&ip.src==192.168.0.0/16&&!(ip.src==192.168.0.2)

捕獲主機192.168.0.1 和主機192.168.0.2 或192.168.0.3的通訊

host 192.168.0.1 and (192.168.0.2 or 192.168.0.3 )

ip.addr==192.168.0.1&&(ip.addr==192.168.0.2||ip.addr==192.168.0.3)

獲取主機192.168.0.1除了和主機192.168.0.2之外所有主機通訊的資料報

host 192.168.0.1 and ! 192.168.0.2

ip.addr==192.168.0.1&&!ip.addr==192.168.0.2

獲取主機192.168.0.1接收或發出的telnet包,telnet使用tcp 23埠

tcp port 23 and host 192.168.0.1

tcp.port==23&&ip.addr==192.168.0.1

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 ...

wireshark過濾規則

b 資料過濾 b ip.src eq 172.16.10.104 or ip.dst eq 192.168.1.107 或者ip.addr eq 172.16.10.1 都能顯示 ip和目標ip img 所有mac位址相關的wifi資料報 wlan.addr mac位址 eth.addr mac 檢...

wireshark過濾規則

b 資料過濾 b ip.src eq 172.16.10.104 or ip.dst eq 192.168.1.107 或者ip.addr eq 172.16.10.1 都能顯示 ip和目標ip img 所有mac位址相關的wifi資料報 wlan.addr mac位址 eth.addr mac 檢...