当用户运用手机访问网络时,手机在不断接受与发送数据包,而这些数据包中包含了大量的用户信息,包括各种账号信息、聊天信息、发送接收文件、邮件、浏览的网页等。虽然很多信息是加密传输的,但还是会有大量信息是明文传输或者经过分析可以解密的,如账号信息、文件、邮件、部分聊天信息等。这些数据包都会通过路由器进行分发,我们只需要对路由器进行抓包和分析,就能提取到用户的各种信息,而不需要在用户手机中安装使用插件
二、环境搭建
四、网络数据包分析
抓取网络数据包时,Wireshark分为三个板块显示抓取结果,2。第一个窗口显示了捕获包的列表,中间窗口显示了当前选择包的简单解析内容,最下面窗口显示了当前选择包的十六进制值。
以微信的一个协议包为例,经过捕包操作,捕获到了用户通过手机发送信息的一个完整的对话包,。根据该对话包,显示手机(ip为172.19.90.2,端口号51005)是通过TCP-HTTP协议与服务端(id为121.51.130.113,端口号80)互相传输数据的。
前三个包为手机与服务端相互确认身份所传输的包(TCP的三次握手),没有什么重要信息,主要看第四个包,4。其中:
Frame:物理层的数据帧概况;
Ethernet II:数据链路层以太网帧头部信息,包括发送端和目标端MAC地址信息等;
Internet Protocol Version 4:互联网层IP包头部信息;
Transmission Control Protocol:传输层的数据段头部信息,此处是TCP协议;
Hypertext Transfer Protocol:使用层的信息,此处是HTTP协议;
Media Type:传输的具体数据;
这里主要分析使用层和数据层内容,5。可以看出,服务端域名为szextshort.weixin.qq.com,信息提交地址为/mmtls/04a2f532,数据层数据长度为834字节,其中十六进制面板中蓝色区域及为发送的数据,但数据内容是通过复杂加密的,暂时无法获得。
通过这种方式,我们也可以分析出发送的图片及视频等信息,后续提取工作就可以交给代码实现。