Windows系统用Wireshark抓包软件截获iPhone网络数据通讯
首先先认识下什么是Wireshark:Wireshark(前称Ethereal)是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。 - [来自:百度百科]。
要捕获iPhone传输的数据我们不能直接在iPhone上进行。所以我的想法是在Windows上安装一个Wireshark抓包软件,同时这台电脑有一张无线网卡。然后我将这台Windows电脑的无线网卡设置成为一个无线路由器,然后用iPhone连接上这个虚拟的无线路由器。这样所有iPhone传输的数据都会到我们Windows电脑的这张无线网卡,之后我们就可以用Wireshark来抓包获取这张无线网卡的所有网络数据,其中就包括我们的iPhone的网络通讯数据了。通过我的实际测试,这个想法是完全可行的。在这里我们需要使用到两个软件,一个是上面提到的Wireshark,另外一个是能够将电脑的无线网卡变身为共享无线路由器的Connectify Hotspot软件。
首先下载安装Wireshark [下载地址]和Connectify Hotspot [下载地址]。
安装Connectify Hotspot和Wireshark
下载完成后,直接双击安装Connectify Hotspot,安装过程中会需要重新启动一次。重启后在屏幕的右边就会弹出Connectify Hotspot的窗口了。先把Connectify Hotspot放在一边,把Wireshark安装上。
设置Connectify Hotspot为无线路由器
打开右下角的Connectify Hotspot窗口,设置Password,等下在iPhone上我们要用此密码验证。第二个Internet to Share要选择Windows电脑的无线网卡,我这里直接显示的是Wi-Fi。然后Share Over同样选择Wi-Fi。下面一项是加密方式,这跟设置无线路由器的加密方式一样。这里使用默认的WPA2。然后点击Start Hotspot按钮就可以将这台Windows电脑的无线网卡变身成一个无线路由器了。如下图:
iPhone连接Connectify Hotspot
Connectify Hotspot成功运行后,打开iPhone手机,进入设置 - 无线局域网。这里就会看到一个新的无线网络,如图名为Connectify-me。点击它,然后输入我们在Connectify Hotspot上设置的密码就可以连接了。如下图:
连接成功后可以在iPhone上打开浏览器试着打开一个网页,看能否打开。如果能够打开,就说明成功了。
用Wireshark抓包获取iPhone网络通讯数据
下面就可以开始工作了。运行Wireshark,在窗口上点击Interface List,看哪张网卡正在发送和接受数据包的,从Packets那一项可以看出。点击网卡前面的选择框选中,然后点Start按钮开始抓包。如下图:
现在你就可以在iPhone上运行各种网络应用了,只要他们有网络通讯传输任何数据,Wireshark都可以截获到这些数据。比如下图就是我用iPhone的浏览器Safari访问了一下Connectify的网站,Wireshark抓到的HTTP包。我使用了http过滤器,只显示了所有的HTTP包。
希望本文对需要抓包分析应用传输的网络数据的iPhone和Android开发的朋友有所帮助。