目錄
- 需求
- 方法
- 步驟
- 安裝wireshark
- 安裝npcap
- 筆記
- 計算機網路
- wireshark
需求
抓取并過濾dapp流量包
方法
軟體:wireshark
環境:Dapp連本地Ganache埠,用Metamask連測驗網路Ropsten,根據ip地址 (localhost) 和埠 (7545) 過濾流量
步驟
安裝wireshark
官網無腦安裝
安裝npcap
wireshark不能監聽本地回環127.0.0.1,安裝npcap 可以解決這個問題

或者使用 RawCap 也OK
雙擊"Adapter for loopback traffic capture"即可抓 127.0.0.1 的包
我想顯示port列

使用顯示過濾:ip.addr == 127.0.0.1 and tcp.srcport == 7545

檔案 -> 到處特定分組(以默認格式pcapng格式保存即可)
參考csdn五個wireshark課程:
wireshark抓包實戰
Wireshark抓包入門到精通實戰教程
2019版抓包分析-Wireshaek從入門到精通【基礎班】
2019版抓包分析-Wireshark從入門到精通【進階版】
網路技術從零開始學Wireshark抓包-協議分析與故障排除教程【完整版】
ps:
不建議詳細看和記錄每條指令,跳著看看大概wireshark有什么功能,如捕獲方式,如顯示過濾和捕獲過濾就OK,不要一次性記細節,像哪個選項實作什么功能、哪條命令有什么作用等不需要記,只要有個模糊的印象,隨用隨查就行,
我有個習慣,遇到新領域會先查所有有關的博客、視頻、官方檔案等教程,
這些視頻是找到所有相關的,不是推薦,
筆記
為了快一些,沒有記詳細筆記,這個軟體本身也很好上手,
一些筆記太亂也放在草稿箱里補貼出來了,這些是整理的一部分,
計算機網路
抓取資料包涉及到 計算機網路 這門課,我又回顧了一些這門課的概念:
-
計算機網路:通過傳輸線路把終端節點(PC)和網路節點(路由器、交換機)連接起來,實作資源共享
-
協議:不同層通訊的語言 (RFC規范),對網路故障分析就是分析協議是否正常
-
資料:物理層叫位元流,資料鏈路層叫幀,網路層叫報
-
不同層協議:

-
一個講計算機網路挺好的專欄
-
MAC地址和IP地址的區別
MAC地址又被稱為物理地址、硬體地址;網路層加IP首部,資料鏈路層加MAC首部 -
資料鏈路層
-
網路配接器(網卡)
-
抓取的是網卡上的流量,wireshark的作用是將 網卡上的 機器語言0/1 組裝成我們能看懂的樣子

-
交換機/路由器等無法安裝wireshark的器件抓包:

嗅探器抓包方法:
① PC中網卡混雜模式
② 利用集線器進行嗅探抓取
③ 交換機sw moniter技術
④ 路由器 Netflow技術、高端自帶wireshark -
關于IP資料報:
計算機網路第24講-IPv4資料報的首部(計算機網路簡明教程及仿真實驗)
這個視頻講得很好

全世界最常使用的網路是互聯網,互聯網采用TCP/IP協議發送資料

TCP/IP協議將 網路層 -> 網際層 因為IP協議又被稱為網際協議
網際層中加入的資料首部即為IP首部
為了僅在網際層就可以互聯各種不同種類的網路,將下兩層的資料鏈路層和物理層封裝為網路介面層
用戶的資料都被封裝進IP資料報, -
IPv4(最常用)資料格式:

-
域名
-
埠:標識主機多個行程中的某一個行程,將資料包特別地傳給它
-
URL ip地址 域名 域名決議DNS hosts
-
FTP:檔案傳輸協議
-
Telnet:遠程登錄協議
-
https就相當于對http協議(應用層)進行了加密保護,更安全
-
關于私網和公網:
公網IP全世界唯一,一個網路設備一個
私網IP是由路由器分配給內部使用的IP地址,私網內的所有用戶都通過一個公網IP上網
私網的IP地址每個人都不一樣,Internet上的用戶無法直接訪問私網和私網用戶
例子,公網IP顯示了我在整個互聯網上的地址,相當于小區地址;
私網IP顯示了我在局域網中的地址,相當于小區內的幾棟幾樓幾號房子 -
cmd命令
ncpa.cpl:查看當前網卡配置
netstat -ab :查看監聽埠及監聽它的程式

如第一行,135埠在被svchost.exe這個埠監聽
所以關于135埠,可以找svchost.exe程式決議 -
OSI協議 vs TCP/IP協議

-
資料層的封裝與解封裝伴隨在資料傳輸的整個程序
-
包頭封裝方式:Ethernet IEEE802-3
wireshark
-
目前流行的抓包軟體為 tcpdump OmniPeek Wireshark
其中,tcpdump 為 命令列程式,后二者擁有圖形化界面 -
資料包嗅探器(即抓包)作業原理:
① 收集(收集原始的二進制數)
② 轉換(將收集的二進制數轉換成可讀形式)
③ 分析(對捕獲和轉換后的資料進行真正的深入分析) -
wireshark主要有兩種過濾器,
① 捕獲過濾器:只抓滿足某種條件的包,如port = 80,UDP協議的包【用于明確地知道哪種包有問題時】【語法是libpca/winpca庫中tcpdump中的語法 BPF語法】

② 顯示過濾器:所有包都抓,之后可以在所有包中搜索符合某種條件的包【用于不知道哪種包有問題時,自己手動再過濾】【常用】【語法在捕獲過濾器語法若干年后定義,兩套語法不同】

常用命令:
捕獲過濾器 | 資料鏈路層第二層

捕獲過濾器 | 網際層第三層
捕獲過濾器常用命令


顯示過濾器


-
wireshark命令列抓包:

先查看本地介面,我連的是5

抓包:

-
分析包時,一般看報頭就行(最多80個位元組),后面的data資料看了也沒用
分析網路故障控制抓資料包的長度在 80B左右 即可
如果抓出來的資料做流量分析,就不要控制長度,全抓出來就行了 -
wireshark中有一些流量分析、protocol分析、conversion分析工具,甚至graph可視化的statistic工具,太亂了記得,也不詳細,就不貼出來了,知道有這些工具,自己按需所搜就行了
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/347101.html
標籤:其他
