⑴ 用wireshark抓包時怎麼過濾
過濾器會幫助我們在大量的數據中迅速找到我們需要的信息。
過濾專器有兩種,
一種屬是顯示過濾器,就是主界面上那個,用來在捕獲的記錄中找到所需要的記錄
一種是捕獲過濾器,用來過濾捕獲的封包,以免捕獲太多的記錄。 在Capture -> Capture Filters 中設置
保存過濾
在Filter欄上,填好Filter的表達式後,點擊Save按鈕, 取個名字。比如"Filter 102",
⑵ wireshark快速指南
學過網路的同學都知道,互聯網信息的傳遞都是通過網路數據包來完成的。那麼抓取網路數據包對於我們學習網路知識,查找網路問題甚至逆向工程都是至關重要的。
現在本文以Linux 下版本號為1.10.14的wireshark向大家介紹。
wireshark是一款開源的,支持多種操作系統,多種網路協議的抓包工具。它簡單容易上手,並且說明文檔齊全(官網有詳盡的guide book)。
下面跟其他常見的抓包工具進行對比:
注意:只要將手機網路連接到安裝了wireshark的主機上(比如開熱點wifi),就可以抓到手機上的數據包,而不一定要在手機上安裝抓包工具
主要介紹兩個頁面,一個是起始頁,一個是包列表頁。起始頁展示了介面列表(網卡,藍牙,USB等數據埠),捕獲選項以及一些幫助信息。點擊開始捕獲包後就會進入包列表頁,包列表頁展示捕獲到的包,選中包對應的協議信息及其原始十六進制數據
起始頁展示了可供抓包的介面列表,選中想要捕獲的介面開始抓包。捕獲選項里可以設置捕獲過濾規則以及捕獲停止條件。
進行捕獲後,會出現三個欄目:數據包列表欄目,包協議信息欄目,包位元組信息欄目。我們可以通過數據包列表找到想要的某個數據包,滑鼠選中後,在包協議信息欄目分析該包的協議信息,如果想要知道某個位元組的含義則在包位元組信息欄目分析。注意在數據包列表欄目上方有個Filter 輸入框,這里我們可以輸入顯示過濾表達式,過濾掉數據包列表中一些不需要展示的數據包。
3.1.1 從文件導入
數據包已經被抓取並導出到文件,此時我們只需用wireshark導入此捕獲文件即可獲取之前捕獲的數據包。文件的格式有很多種,可以導入tcpmp導出的捕獲文件。有趣的是,也可以導入png,jpg等格式的圖片以及mp4等格式的視頻文件,導入後可以看到圖片和視頻也是一個個數據包組成的,圖片漸近式展示以及視頻不需完全載入就可播放等特性估計跟這有關。
3.1.1 實時抓取
選擇特定介面,點擊start按鈕後,即開始實時抓取。
一般地,介面的數據包數量龐大並且各個包之間的關聯性不強。我們想要得到特定的數據包就必須過濾無關的數據包,從而快速的進行分析。wireshark過濾方式有兩種,第一種是捕獲過濾,這種過濾是捕獲階段進行,它只捕獲未被過濾的數據包,這樣可以減少抓取數據包的數量。第二種是顯示過濾,這種過濾在分析階段進行,它在捕獲的數據包基礎上進行過濾。
3.2.1 捕獲過濾
過濾語法
一般格式: [not] primitive [and|or [not] primitive ...]
primitive 一般由type,dir,proto這三類限定符組成
3.2.2 顯示過濾
過濾語法
一般格式: (過濾欄位 比較操作符 value) 組合表達式 (過濾欄位 比較操作符 value)...
3.3.1 追蹤數據流
將數據包進行關聯,可通過某個數據包即可關聯到該數據包傳輸鏈的所有數據包,比如可以通過一個tcp數據包可關聯到這個tcp會話的所有數據包。
操作:滑鼠點擊數據包列表欄的某個數據包->右鍵->Follow TCP Stream(Follow UDP Stream,Follow SSL Stream)
3.3.2 端點
端點在不同的協議層有不同的含義,在網路層,特定IPv4,IPv6地址為一個端點,在數據運輸層,特定TCP埠,UDP埠為一個端點。端點這個頁面為我們展示每個端點的數據包發送和接收情況。
操作:Statistics->Endpoints
3.3.3 對話
對話頁面展示兩個端點之間的包傳輸情況。端點在不同協議層有不同含義,對話也一樣。在網路層,對話是兩個IP之間進行,在數據傳輸層,對話在兩個埠之間進行。
操作:Statistics->Conversations
3.3.4 流量圖
流量圖使用圖形化展示了數據包的抓取情況。
操作:Statistics->IO Graphs
3.3.5 協議分層
協議分層頁面將抓取到數據包按網路協議進行了分類,我們可以看到每個網路層抓取包的情況。
操作:Statistics->Protocol Hierarchy Statistics
3.3.6 專家信息
wireshark 幫我們分析了數據包情況,通過專家信息頁面提示網路中出現的問題,它將數據包分為4個等級(Error,Warnings,Notes,Chats),從左至右問題嚴重程度依次減少,Chats是正常的數據包。Error表示可能導致問題的數據包。
操作:Analyze->Expert Infos
一般地,如果不設置靜態MAC-->IP對應表,機器都會發送arp請求來獲得其他機器的mac地址。
如此,我們只需要在顯示過濾器輸入 arp 即可獲得apr數據包。捕獲信息見下圖:
wireshark官方文檔
⑶ 抓包軟體和wireshark是怎樣使用的,如何設置簡單的過濾規則
方法/步驟
1過濾源ip、目的ip。在wireshark的過濾規則框Filter中輸入過濾條件。如查找目的地址為192.168.101.8的包,ip.dst==192.168.101.8;查找源地址為ip.src==1.1.1.1;
2埠過濾。如過濾80埠,在Filter中輸入,tcp.port==80,這條規則是把源埠和目的埠為80的都過濾出來。使用tcp.dstport==80隻過濾目的埠為80的,tcp.srcport==80隻過濾源埠為80的包;
3協議過濾比較簡單,直接在Filter框中直接輸入協議名即可,如過濾HTTP的協議;
4
http模式過濾。如過濾get包,http.request.method=="GET",過濾post包,http.request.method=="POST";
5
連接符and的使用。過濾兩種條件時,使用and連接,如過濾ip為192.168.101.8並且為http協議的,ip.src==192.168.101.8
and
http。
⑷ 如何使用抓包工具
開始界面
wireshark是捕獲機器上的某一塊網卡的網路包,當你的機器上有多塊網卡的時候,你需要選擇一個網卡。
點擊Caputre->Interfaces.. 出現下面對話框,選擇正確的網卡。然後點擊"Start"按鈕, 開始抓包
Wireshark 窗口介紹
WireShark 主要分為這幾個界面
1. Display Filter(顯示過濾器), 用於過濾
2. Packet List Pane(封包列表), 顯示捕獲到的封包, 有源地址和目標地址,埠號。 顏色不同,代表
3. Packet Details Pane(封包詳細信息), 顯示封包中的欄位
4. Dissector Pane(16進制數據)
5. Miscellanous(地址欄,雜項)
使用過濾是非常重要的, 初學者使用wireshark時,將會得到大量的冗餘信息,在幾千甚至幾萬條記錄中,以至於很難找到自己需要的部分。搞得暈頭轉向。
過濾器會幫助我們在大量的數據中迅速找到我們需要的信息。
過濾器有兩種,
一種是顯示過濾器,就是主界面上那個,用來在捕獲的記錄中找到所需要的記錄
一種是捕獲過濾器,用來過濾捕獲的封包,以免捕獲太多的記錄。 在Capture -> Capture Filters 中設置
保存過濾
在Filter欄上,填好Filter的表達式後,點擊Save按鈕, 取個名字。比如"Filter 102",
⑸ wireshark抓包
一、 wireshark是捕獲機器上的某一塊網卡的網路包 ,當你的機器上有多塊網卡的時候,你需要選擇一個網卡。
例如,我測試本地連接,直接選擇「本地連接」,進入如下界面
二、 WireShark 主要分為這幾個界面
1. Display Filter(顯示過濾器), 用於過濾
2. Packet List Pane(封包列表), 顯示捕獲到的封包, 有源地址和目標地址,埠號。 顏色不同,代表不同的協議,你也可以修改這些顯示顏色的規則, View ->Coloring Rules.
3. Packet Details Pane(封包詳細信息), 顯示封包中的欄位
Frame: 物理層的數據幀概況
Ethernet II: 數據鏈路層乙太網幀頭部信息
Internet Protocol Version 4: 互聯網層IP包頭部信息
Transmission Control Protocol: 傳輸層T的數據段頭部信息,此處是TCP
Hypertext Transfer Protocol: 應用層的信息,此處是HTTP協議
4. Dissector Pane(16進制數據)
5. Miscellanous(地址欄,雜項)
wireshark頂部顯示過濾器
使用過濾是非常重要的, 初學者使用wireshark時,將會得到大量的冗餘信息,在幾千甚至幾萬條記錄中,以至於很難找到自己需要的部分。搞得暈頭轉向。
過濾器會幫助我們在大量的數據中迅速找到我們需要的信息。
過濾器有兩種,
一種是顯示過濾器,就是主界面上那個,用來在捕獲的記錄中找到所需要的記錄
一種是捕獲過濾器,用來過濾捕獲的封包,以免捕獲太多的記錄。 在Capture -> Capture Filters 中設置
保存過濾
1)設置顯示過濾器,按如下步驟進行編輯
過濾表達式的規則
表達式規則
1. 協議過濾
比如TCP,只顯示TCP協議。
2. IP 過濾
比如 ip.src ==192.168.1.102 顯示源地址為192.168.1.102,
ip.dst==192.168.1.102, 目標地址為192.168.1.102
3. 埠過濾
tcp.port ==80, 埠為80的
tcp.srcport == 80, 只顯示TCP協議的願埠為80的。
4. Http模式過濾
http.request.method=="GET", 只顯示HTTP GET方法的。
5. 邏輯運算符為 AND/ OR
常用的過濾表達式
三、 wireshark與對應的OSI七層模型
TCP包的具體內容
從下圖可以看到wireshark捕獲到的TCP包中的每個欄位。
四、實例分析TCP三次握手過程
看到這, 基本上對wireshak有了初步了解, 現在我們看一個TCP三次握手的實例
三次握手過程為
這圖我都看過很多遍了, 這次我們用wireshark實際分析下三次握手的過程。
打開wireshark, 打開瀏覽器輸入 http://www.cr173.com
在wireshark中輸入http過濾, 然後選中GET /tankxiao HTTP/1.1的那條記錄,右鍵然後點擊"Follow TCP Stream",
這樣做的目的是為了得到與瀏覽器打開網站相關的數據包,將得到如下圖
圖中可以看到wireshark截獲到了三次握手的三個數據包。第四個包才是HTTP的, 這說明HTTP的確是使用TCP建立連接的。
第一次握手數據包
客戶端發送一個TCP,標志位為SYN,序列號為0, 代表客戶端請求建立連接。 如下圖
第二次握手的數據包
伺服器發回確認包, 標志位為 SYN,ACK. 將確認序號(Acknowledgement Number)設置為客戶的I S N加1以.即0+1=1, 如下圖
第三次握手的數據包
客戶端再次發送確認包(ACK) SYN標志位為0,ACK標志位為1.並且把伺服器發來ACK的序號欄位+1,放在確定欄位中發送給對方.並且在數據段放寫ISN的+1, 如下圖:
就這樣通過了TCP三次握手,建立了連接
⑹ 抓包視頻教程
1、打開wireshark 2.6.5,主界面如下:
4、執行需要抓包的操作,如在cmd窗口下執行ping www..com。
5、操作完成後相關數據包就抓取到了。為避免其他無用的數據包影響分析,可以通過在過濾欄設置過濾條件進行數據包列表過濾,獲取結果如下。說明:ip.addr == 119.75.217.26 and icmp 表示只顯示ICPM協議且源主機IP或者目的主機IP為119.75.217.26的數據包。說明:協議名稱icmp要小寫。
5、wireshark抓包完成,就這么簡單。關於wireshark顯示過濾條件、抓包過濾條件、以及如何查看數據包中的詳細內容在後面介紹。
Wireshakr抓包界面介紹
說明:數據包列表區中不同的協議使用了不同的顏色區分。協議顏色標識定位在菜單欄View --> Coloring Rules。如下所示
WireShark 主要分為這幾個界面
1. Display Filter(顯示過濾器), 用於設置過濾條件進行數據包列表過濾。菜單路徑:Analyze -->Display Filters。
2. Packet List Pane(數據包列表), 顯示捕獲到的數據包,每個數據包包含編號,時間戳,源地址,目標地址,協議,長度,以及數據包信息。 不同協議的數據包使用了不同的顏色區分顯示。
3. Packet Details Pane(數據包詳細信息), 在數據包列表中選擇指定數據包,在數據包詳細信息中會顯示數據包的所有詳細信息內容。數據包詳細信息面板是最重要的,用來查看協議中的每一個欄位。各行信息分別為
(1)Frame:物理層的數據幀概況
(2)EthernetII:數據鏈路層乙太網幀頭部信息
(3)Internet Protocol Version 4:互聯網層IP包頭部信息
(4)Transmission Control Protocol:傳輸層T的數據段頭部信息,此處是TCP
(5)Hypertext Transfer Protocol:應用層的信息,此處是HTTP協議
TCP包的具體內容
從下圖可以看到wireshark捕獲到的TCP包中的每個欄位。
4. Dissector Pane(數據包位元組區)。
Wireshark過濾器設置
初學者使用wireshark時,將會得到大量的冗餘數據包列表,以至於很難找到自己需要抓取的數據包部分。wireshark工具中自帶了兩種類型的過濾器,學會使用這兩種過濾器會幫助我們在大量的數據中迅速找到我們需要的信息。
(1)抓包過濾器
捕獲過濾器的菜單欄路徑為Capture --> Capture Filters。用於在抓取數據包前設置。
如何使用?可以在抓取數據包前設置如下。
ip host 60.207.246.216 and icmp表示只捕獲主機IP為60.207.246.216的ICMP數據包。獲取結果如下:
(2)顯示過濾器
顯示過濾器是用於在抓取數據包後設置過濾條件進行過濾數據包。通常是在抓取數據包時設置條件相對寬泛或者沒有設置導致抓取的數據包內容較多時使用顯示過濾器設置條件過濾以方便分析。同樣上述場景,在捕獲時未設置抓包過濾規則直接通過網卡進行抓取所有數據包,如下
執行ping www.huawei.com獲取的數據包列表如下
觀察上述獲取的數據包列表,含有大量的無效數據。這時可以通過設置顯示器過濾條件進行提取分析信息。ip.addr == 211.162.2.183 and icmp。並進行過濾。
上述介紹了抓包過濾器和顯示過濾器的基本使用方法。在組網不復雜或者流量不大情況下,使用顯示器過濾器進行抓包後處理就可以滿足我們使用。下面介紹一下兩者間的語法以及它們的區別。
wireshark過濾器表達式的規則
1、抓包過濾器語法和實例
抓包過濾器類型Type(host、net、port)、方向Dir(src、dst)、協議Proto(ether、ip、tcp、udp、http、icmp、ftp等)、邏輯運算符(&& 與、|| 或、!非)
(1)協議過濾
比較簡單,直接在抓包過濾框中直接輸入協議名即可。
tcp,只顯示TCP協議的數據包列表
http,只查看HTTP協議的數據包列表
icmp,只顯示ICMP協議的數據包列表
(2)IP過濾
host 192.168.1.104
src host192.168.1.104
dst host192.168.1.104
(3)埠過濾
port 80
src port 80
dst port 80
(4)邏輯運算符&& 與、|| 或、!非
src host 192.168.1.104 && dst port 80 抓取主機地址為192.168.1.80、目的埠為80的數據包 host 192.168.1.104 || host 192.168.1.102 抓取主機為192.168.1.104或者192.168.1.102的數據包
!broadcast 不抓取廣播數據包
2、顯示過濾器語法和實例
(1)比較操作符
比較操作符有== 等於、!= 不等於、> 大於、< 小於、>= 大於等於、<=小於等於。
(2)協議過濾
比較簡單,直接在Filter框中直接輸入協議名即可。注意:協議名稱需要輸入小寫。
tcp,只顯示TCP協議的數據包列表
http,只查看HTTP協議的數據包列表
icmp,只顯示ICMP協議的數據包列表
(3) ip過濾
ip.src ==192.168.1.104 顯示源地址為192.168.1.104的數據包列表
ip.dst==192.168.1.104, 顯示目標地址為192.168.1.104的數據包列表
ip.addr == 192.168.1.104 顯示源IP地址或目標IP地址為192.168.1.104的數據包列表
(4)埠過濾
tcp.port ==80, 顯示源主機或者目的主機埠為80的數據包列表。
tcp.srcport == 80, 只顯示TCP協議的源主機埠為80的數據包列表。
tcp.dstport == 80,只顯示TCP協議的目的主機埠為80的數據包列表。
(5) Http模式過濾
http.request.method=="GET", 只顯示HTTP GET方法的。
(6)邏輯運算符為 and/or/not
過濾多個條件組合時,使用and/or。比如獲取IP地址為192.168.1.104的ICMP數據包表達式為ip.addr == 192.168.1.104 and icmp
(7)按照數據包內容過濾。假設我要以IMCP層中的內容進行過濾,可以單擊選中界面中的碼流,在下方進行選中數據。如下
右鍵單擊選中後出現如下界面
選中Select後在過濾器中顯示如下
後面條件表達式就需要自己填寫。如下我想過濾出data數據包中包含"abcd"內容的數據流。包含的關鍵詞是contains 後面跟上內容。
看到這, 基本上對wireshak有了初步了解
⑺ 怎樣使用Wireshark抓包
有很多wireshark抓包的書。wireshark功能過於豐富,以至於使用可以寫一本書。選擇網卡,開始運行是最基本的。wireshark最主要的功能是可以設置顯示過濾器和抓包過濾器,將網卡收到的數據包進行分析歸類。
⑻ tcpmp規則過濾抓包及結果篩選查看
1、抓取指定IP地址數據包
2、抓取主機與特定IP(192.168.1.200 或192.168.1.201)通信包
3、抓取主機與特定IP(192.168.1.200 )之外的通信包
4、抓取特定埠數據包
5、抓取特定網段數據包
6、抓取特定協議數據包
7、條件組合過濾抓包
8、常用邏輯表達式
非 : ! or "not"
且 : && or "and"
或 : || or "or"
1、不解析域名以IP地址顯示第三列的內容,sort -u去重
2、篩選源IP為192.168.1.100的包
3、篩選目的IP為192.168.1.100的包
4、篩選埠為50的包
5、以16進制顯示埠80的包信息
⑼ wireshark設置阻止進程上網
修改TTL值為1 ,ping網路前後對比圖。
修改前成功ping通,修改後ping失敗。
TTL:數據報文的生存周期。在網路中每經過一個網路設備它的值-1,linux默認值是64。
TTL作用:防止數據包在公網中無限制的轉發。
二、同時wireshark抓icmp包,顯示發送的兩個包的TTL值都為1;TTL值改為2時,抓包也得到TTL值為2;改為默認值後,回到最初狀態。
三、拓展:mtr網路分析工具
1)安裝mtr
2)啟動mtr
3)mtr測試結果的分析
第一列:host顯示的是IP地址和本機域名,這點和tracert很像;
第二列:loss%就是對應IP行的丟包率了,需要注意的是有些丟包是由於icmp的保護機製造成的,並不 代表真的丟包;
第三列:snt每秒發送數據包的數量,默認值是10,可通過參數 -c來指定發包個數;
第四列:Last顯示的最近一次的返回時延;
第五列:Avg是平均值 這個應該是發送ping包的平均時延;
第六列:Best是最好或者說時延最短的;
第七列:Wrst是最差或者說時延最常的;
第八列:StDev是標准偏差,統計學名詞,一種量度數據分布的分散程度標准,用以衡量數據值偏離算術平均值的程度。標准偏差越小,這些值偏離平均值就越少。
⑽ 傳奇裡面如何設置顯示過濾和揀取過濾
公服的話就按
F12呼出內掛.上面有一個
顯示過濾和拾取過濾的選項.
系統默認的是開啟
顯示過濾和拾取過濾
.
只要點擊
顯示過濾和拾取過濾
前面的紅對勾就可以取消
顯示過濾和拾取過濾
了!