Wireshark 是一個網絡封包分析軟件。網絡封包分析軟件的功能是獲取網絡封包,並盡可能顯示出最為詳細的網絡封包資料。Wireshark使用WinPCAP作為接口,直接與網卡進行數據報文交換。
一 安裝和配置WireShark環境
1 安裝 WireSharek
去官網上下載最新的而且穩定的版本 。
https://www.wireshark.org/download.html
根據使用的操作系統類型,選擇最新的穩定的版本
根據使用的操作系統類型,選擇最新的穩定的版本,安裝完成后進入wireshark運行界面。
2 配置 WireShark
查看電腦中有哪些網卡可以獲取流量, 點擊 capture -> interface
確定好抓取流量的網卡后,一定要選中混雜模式"use promiscuous mode on all interfaces",否則就無法獲取內網的其他信息。然后WireShark就開始捕獲網卡的數據了。
二 捕獲發送請求
1 使用WireShark捕獲報文
在頁面中發送一個帶參數的request請求如下所示,
使用WireShark抓取網絡數據包后,抓到的數據報文如下圖所示:
選擇那條報文,右擊鼠標選擇"追蹤流" -> "TCP流",查看請求返回的數據值。
2 轉意請求地址
發送的請求地址如下,會發現請求的參數(在?后面那堆參數)使用16進制的數字。
http://aaa.com?param=%7B%22resType%22%3A%22vm%22%2C%22projectId%22%3A%2209a362f281b64f3983a9feef8164182b%22%2C%22resourceStatus%22%3A%22%22%2C%22resourcePoolId%22%3A%22%22%2C%22name%22%3A%22%22%2C%22startpage%22%3A%221%22%2C%22pagesize%22%3A%2210%22%7D
可以通過JS進行解義。
var url ="http://aaa.com?param=%7B%22resType%22%3A%22vm%22%2C%22projectId%22%3A%2209a362f281b64f3983a9feef8164182b%22%2C%22resourceStatus%22%3A%22%22%2C%22resourcePoolId%22%3A%22%22%2C%22name%22%3A%22%22%2C%22startpage%22%3A%221%22%2C%22pagesize%22%3A%2210%22%7D" ; var decodeUrl = decodeURIComponent(url); console.log(decodeUrl );
也可以通過JAVA進行解義。
try { String url ="http://aaa.com?param=%7B%22resType%22%3A%22vm%22%2C%22projectId%22%3A%2209a362f281b64f3983a9feef8164182b%22%2C%22resourceStatus%22%3A%22%22%2C%22resourcePoolId%22%3A%22%22%2C%22name%22%3A%22%22%2C%22startpage%22%3A%221%22%2C%22pagesize%22%3A%2210%22%7D" ; String decodeUrl = URLDecoder.decode(url, "UTF-8"); System.out.println(decodeUrl); } catch (UnsupportedEncodingException e) { e.printStackTrace(); }
參考文章:http://microsoftarena.net/winpcap-on-windows-8-how-to/
注意:運行Wireshark后如果沒有顯示網卡的話,那么要用管理員身份運行程序才能見到網卡。
其他資料:
http://www.9upk.com/article/2537.html
http://blog.sina.com.cn/s/blog_5d527ff00100dwph.html
http://openmaniak.com/cn/wireshark_filters.php
http://www.w3school.com.cn/jsref/jsref_decodeURI.asp
http://www.jb51.net/article/22880.htm
http://zhidao.baidu.com/link?url=LlzoCR3yYuDqEWpBueyZ8ZYKxMR14CWzcd_X-T_rKnQDyPVFPUuJF-l4F9-pfnhMKe4gkljvetwpTKmdrtsY6a