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