1.什么是Wireshark
Wireshark 是網絡包分析工具,是今天能使用的好的開源網絡分析軟件。網絡包分析工具的主要作用是嘗試捕獲網絡包,并嘗試顯示包的盡可能詳細的情況。Wireshark是開源軟件項目,用GPL協議發行,所有的源代碼在GPL框架下都可以免費使用。因為以上原因,人們可以很容易在Wireshark上添加新的協議,或者將其作為插件整合到您的程序里,這種應用十分廣泛。
1.1主要應用
網絡管理員用來解決網絡問題
網絡安全工程師用來檢測安全隱患
開發人員用來測試協議執行情況
用來學習網絡協議
1.2.特性
支持UNIX和Windows平臺
在接口實時捕捉包
能詳細顯示包的詳細協議信息
可以打開/保存捕捉的包
可以導入導出其他捕捉程序支持的包數據格式
可以通過多種方式過濾包
多種方式查找包
通過過濾以多種色彩顯示包
創建多種統計分析
…
1.3適合人群
網絡管理員
網絡工程師
安全工程師
IT運維人員…
1.4 平臺支持
Windows,linux,unix
1.5相關軟件
Sniffer,omnipeek,fiddler,httpwatch,科學網絡分析系統
抓包原理
(1) 網絡原理
(a)本機環境:直接抓本機網卡進出流量
b) 集線器環境:流量防洪,同一沖突域
C) 交換機環境:
端口鏡像
arp欺騙
mac泛洪
(2) 底層原理
① Win/libcap:wireshark抓包時依賴的庫文件
② Capture:抓包引擎,利用Win/libcap從底層抓取網絡數據包,Win/libcap提供通用生物抓包借口,能從不同類型的網絡接口獲取數據包;
③ Wiretap:格式支持,從抓包文件中讀取數據包,支持多種格式
④ Core:核心引擎,通過函數調用將其他模塊連接在一起,起到聯動調度的作用
⑤ GTK 1/2:圖形處理工具,處理用戶的輸入輸出顯示
2.wireshark使用
2.1安裝流程
參考:https://jingyan.baidu.com/article/bad08e1e87d68209c9512153.html
2.2界面分析
2.3 Wireshark 主界面的操作菜單
File 打開文件
Open 打開文件
Open Recent 打開近期訪問過的文件
Merge…將幾個文件合并為一個文件
Close 關閉此文件
Save As…保存為…
File Set 文件屬性
Export 文件輸出
Print…打印輸出
Quit 關閉
Edit 編輯
Find Packet…搜索數據包
Find Next 搜索下一個
Find Previous 搜索前一個
Mark Packet (toggle) 對數據包做標記(標定)
Find Next Mark 搜索下一個標記的包
Find Previous Mark 搜索前一個標記的包
Mark All Packets 對所有包做標記
Unmark All Packets 去除所有包的標記
Set Time Reference (toggle) 設置參考時間(標定)
Find Next Reference 搜索下一個參考點
Find Previous Reference 搜索前一個參考點
Preferences 參數選擇
View 視圖
Main Toolbar 主工具欄
Filter Toolbar 過濾器工具欄
Wireless Toolbar 無線工具欄
Statusbar 運行狀況工具欄
Packet List 數據包列表
Packet Details 數據包細節
Packet Bytes 數據包字節
Time Display Format 時間顯示格式
Name resolution 名字解析(轉換:域名/IP地址,廠商名/MAC地址,端口號/端口名)
Colorize Packet List 顏色標識的數據包列表
Auto Scroll in Live Capture 現場捕獲時實時滾動
Zoom In 放大顯示
Zoom Out 縮小顯示
Normal Size 正常大小
Resize All Columns 改變所有列大小
Expand Sub trees 擴展開數據包內封裝協議的子樹結構
Expand All 全部擴展開
Collapse All 全部折疊收縮
Coloring Rules…對不同類型的數據包用不同顏色標識的規則
Show Packet in New Window 將數據包顯示在一個新的窗口
Reload 將數據文件重新加
Go 運行
Back 向后運行
Forward 向前運行
Go to packet…轉移到某數據包
Go to Corresponding Packet 轉到相應的數據包
Previous Packet 前一個數據包
Next Packet 下一個數據包
First Packet 第一個數據包
Last Packet 后一個數據包
Capture 捕獲網絡數據
Interfaces…選擇本機的網絡接口進行數據捕獲
Options…捕獲參數選擇
Start 開始捕獲網絡數據
Stop 停止捕獲網絡數據
Restart 重新開始捕獲
Capture Filters…選擇捕獲過濾器
Analyze 對已捕獲的網絡數據進行分析
Display Filters…選擇顯示過濾器
Apply as Filter 將其應用為過濾器
Prepare a Filter 設計一個過濾器
Firewall ACL Rules 防火墻ACL規則
Enabled Protocols…已可以分析的協議列表
Decode As…將網絡數據按某協議規則解碼
User Specified Decodes…用戶自定義的解碼規則
Follow TCP Stream 跟蹤TCP傳輸控制協議的通信數據段,將分散傳輸的數據組裝還原
Follow SSL stream 跟蹤SSL 安全套接層協議的通信數據流
Expert Info 專家分析信息
Expert Info Composite 構造專家分析信息
Statistics對已捕獲的網絡數據進行統計分析
Summary 已捕獲數據文件的總統計概況
Protocol Hierarchy 數據中的協議類型和層次結構
Conversations 會話
Endpoints 定義統計分析的結束點
IO Graphs 輸入/輸出數據流量圖
Conversation List 會話列表
Endpoint List 統計分析結束點的列表
Service Response Time 從客戶端發出請求至收到服務器響應的時間間隔
ANSI 按照美國標準協會的ANSI協議分析
Fax T38 Analysis... 按照T38傳真規范進行分析
GSM 全球移動通信系統GSM的數據
H.225 H.225協議的數據
MTP3 MTP3協議的數據
RTP 實時傳輸協議RTP的數據
SCTP 數據流控制傳輸協議SCTP的數據
SIP... 會話初始化協議SIP的數據
VoIP Calls 互聯網IP電話的數據
WAP-WSP 無線應用協議WAP和WSP的數據
BOOTP-DHCP 引導協議和動態主機配置協議的數據
Destinations…通信目的端
Flow Graph…網絡通信流向圖
HTTP 超文本傳輸協議的數據
IP address…互聯網IP地址
ISUP Messages… ISUP協議的報文
Multicast Streams 多播數據流
ONC-RPC Programs
Packet Length 數據包的長度
Port Type…傳輸層通信端口類型
TCP Stream Graph 傳輸控制協議TCP數據流波形圖
Help 幫助
Contents Wireshark 使用手冊
Supported Protocols Wireshark支持的協議清單
Manual Pages 使用手冊(HTML網頁)
Wireshark Online Wireshark 在線
About Wireshark 關于Wireshark
2.4 基本使用
(1) 選擇網絡接口,并雙擊選擇的網卡啟動抓包,如:雙擊以太網2
(2) 點擊紅框的按鈕以結束
(3)保存
(4) 數據解析