卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

利用Wireshark軟件對(duì)微信協(xié)議的分析

利用Wireshark 軟件對(duì)微信協(xié)議的分析 ——QPIC賈冰杰 1120101251全然 1120101259王浩峰 112010

利用Wireshark 軟件對(duì)微信協(xié)議的分析 ——QPIC

賈冰杰 1120101251

全然 1120101259

王浩峰 1120101261 (組長(zhǎng)) 謝青梅 1120101262

閆郡 1120101263

,

數(shù)據(jù)通信基礎(chǔ) 小組:qpic

目錄

一. 實(shí)驗(yàn)規(guī)劃 ——03

二. 實(shí)驗(yàn)內(nèi)容

步驟1. 配置虛擬AP :

步驟2. 分析微信的登陸認(rèn)證過(guò)程

步驟3. 分析微信的普通聊天過(guò)程

步驟4. 微信-附近的人

三. 實(shí)驗(yàn)結(jié)論:關(guān)于微信協(xié)議

1. 微信通過(guò)內(nèi)置瀏覽器和服務(wù)器交互數(shù)據(jù)。

2. 微信的數(shù)據(jù)傳輸未加密

3. 微信不同功能有獨(dú)立的服務(wù)器

4. 關(guān)于”微信與運(yùn)營(yíng)商大戰(zhàn)”的思考

參考文獻(xiàn)

2 ——04 ——05 ——06 ——07 ——09 ——09 ——10 ——11 ——12

,

數(shù)據(jù)通信基礎(chǔ) 小組:qpic

一. 實(shí)驗(yàn)規(guī)劃:

1. 接入手機(jī), 通過(guò)wireshark 抓取微信數(shù)據(jù)包。

2. 分析微信的登陸認(rèn)證過(guò)程

3. 分析微信的普通聊天過(guò)程

3.分析微信的典型應(yīng)用——附近的人

4.總結(jié):微信的協(xié)議

3

,

數(shù)據(jù)通信基礎(chǔ) 小組:qpic

二. 實(shí)驗(yàn)內(nèi)容:

步驟1、配置虛擬AP :

由于微信的pc 網(wǎng)頁(yè)版本不容易操作,針對(duì)本次分析,我們使用Android 手機(jī)系統(tǒng)下的微信客戶端進(jìn)行操作。通過(guò)手機(jī)連接至pc 虛擬的無(wú)線網(wǎng)絡(luò)進(jìn)行微信的連接,這樣通過(guò)wireshark 軟件進(jìn)行抓包。

win7系統(tǒng)下可以很容易將無(wú)線網(wǎng)卡設(shè)置為虛擬AP , 供其他無(wú)線設(shè)備接入。 配置腳本如下:

#Vitual_Wifi_setup.bat

netsh wlan set hostednetwork mode=allow ssid="HappyBoy" key=******

#在GUI 界面下,將正在使用的某個(gè)網(wǎng)絡(luò)連接共享給該虛擬AP .

netsh wlan start hostednetwork

netsh wlan show hostednetwork

將手機(jī)接入后, 可以看到: Number of clients為1.

打開(kāi)wireshark ,能看到在接口列表中已經(jīng)有虛擬AP 了(如圖)。手機(jī)接入后,打開(kāi)微信app ,點(diǎn)擊開(kāi)始抓包,就能抓到微信數(shù)據(jù)包了。

4

,

數(shù)據(jù)通信基礎(chǔ) 小組:qpic

步驟2. 分析微信的登陸認(rèn)證過(guò)程:

打開(kāi)微信客戶端,微信開(kāi)始登錄,可以看到手機(jī)分配到的IP 為192.168.137.87,AP 站點(diǎn)的IP 為192.168.137.1

第一包數(shù)據(jù) 是一個(gè)域名查詢,微信客戶端向網(wǎng)絡(luò)查詢微信服務(wù)器,域名為long.weixin.qq.com 的IP 地址;

第二包數(shù)據(jù) 是ARP 地址解析,AP 站點(diǎn)向全網(wǎng)廣播,詢問(wèn)192.168.137.87對(duì)應(yīng)的MAC 地址;

第三包數(shù)據(jù) 是ARP 應(yīng)答,手機(jī)告訴AP 站點(diǎn)自己的MAC 地址;

第四包數(shù)據(jù) 是第一包DNS 查詢的應(yīng)答,將該包數(shù)據(jù)展開(kāi),可以看到:

可以看到,查詢到微信域名long.weixin.qq.com 的多個(gè)服務(wù)器IP 。 接下來(lái)TCP 的通信過(guò)程表明,微信客戶端選擇了IP 為120.204.201.154的主機(jī)進(jìn)行數(shù)據(jù)傳送。

5

,

數(shù)據(jù)通信基礎(chǔ) 小組:qpic

步驟3. 分析微信的普通聊天過(guò)程

先是建立TCP 連接:第5到第7包數(shù)據(jù)是TCP 的三次握手

首先客戶端向服務(wù)器發(fā)送標(biāo)志為SYN 的連接請(qǐng)求,數(shù)據(jù)包標(biāo)號(hào)Seq=0;

收到請(qǐng)求后,服務(wù)器向客戶端發(fā)送了帶有SYN 和ACK 的確認(rèn)應(yīng)答,發(fā)送序號(hào)Seq=0,確認(rèn)序號(hào)ACK=1;接下來(lái),客戶端向服務(wù)器發(fā)送確認(rèn)應(yīng)答,Seq=1,ACK=1. 連接建立完成。

第8到第19包數(shù)據(jù)是客戶端和服務(wù)器之前用HTTP 協(xié)議相互傳送了一些數(shù)據(jù)。

第18包是HTTP 數(shù)據(jù)包,它的大小為314字節(jié),其中有用數(shù)據(jù)長(zhǎng)度為248字節(jié),數(shù)據(jù)最后一行為空行,表明數(shù)據(jù)已經(jīng)傳送完畢,如下圖所示:

第20和21包數(shù)據(jù)是關(guān)閉連接。傳送完數(shù)據(jù)后,主機(jī)發(fā)出帶FIN 的TCP 報(bào)文,要求關(guān)閉連接,客戶端發(fā)出確認(rèn)(第21包數(shù)據(jù)),連接關(guān)閉。

6

,

數(shù)據(jù)通信基礎(chǔ) 小組:qpic

超時(shí)會(huì)重傳:

第39包:未收到第38包數(shù)據(jù)的確認(rèn)應(yīng)答,超時(shí)后,開(kāi)始重傳; 第42包:第38包數(shù)據(jù)仍未收到應(yīng)答,又超時(shí),重傳一次; 第43包:終于收到了第38包數(shù)據(jù)的應(yīng)答。

步驟4. 微信-附近的人

用wireshark 抓包得到如下數(shù)據(jù)

首先是DNS 解析,展開(kāi)第二包數(shù)據(jù),可以看到

7

,

數(shù)據(jù)通信基礎(chǔ) 小組:qpic

DNS 應(yīng)答返回了域名mapi.mapabc.com 的IP :211.151.71.89

mapabc.com 是北京圖盟科技有限公司的網(wǎng)站,是一家致力于互聯(lián)網(wǎng)地圖、手機(jī)地圖和相關(guān)位置服務(wù)的互聯(lián)網(wǎng)軟件技術(shù)服務(wù)公司,它是高德成員企業(yè)。(有個(gè)高德地圖的app )

隨后的幾包數(shù)據(jù),是客戶端和該服務(wù)器之間相互交換信息。

查詢?cè)揑P . 發(fā)現(xiàn)服務(wù)器位于北京。

可以看到,微信客戶端的地點(diǎn)信息被收集起來(lái)存儲(chǔ)在服務(wù)器中,當(dāng)客戶端發(fā)送附近的人請(qǐng)求時(shí),服務(wù)器調(diào)用地圖信息,通過(guò)計(jì)算,得到位于附近的用戶數(shù)據(jù),將它們傳給該客戶端。

附近的人---用戶頭像下載過(guò)程

第134包: HTTP 的GET 請(qǐng)求,展開(kāi)該包:

將請(qǐng)求的地址輸入到瀏覽器,會(huì)看到一個(gè)用戶頭像;

第135包 是服務(wù)器端的TCP 協(xié)議將該頭像分段成兩段(第135包和136包) ,傳送給客戶端;

第136包 標(biāo)為HTTP 包,表示頭像傳送出去了。

第137和138包 客戶端收到HTTP 傳來(lái)的頭像后,向服務(wù)器發(fā)TCP 確認(rèn),傳送完成。

8

,

數(shù)據(jù)通信基礎(chǔ) 小組:qpic

三. 實(shí)驗(yàn)結(jié)論:關(guān)于微信協(xié)議

1. 微信通過(guò)內(nèi)置瀏覽器和服務(wù)器交互數(shù)據(jù)。

微信在應(yīng)用層使用HTTP 協(xié)議傳輸數(shù)據(jù)。微信的聊天對(duì)話框如下,點(diǎn)擊網(wǎng)址鏈接,會(huì)跳轉(zhuǎn)到瀏覽器模式,打開(kāi)該消息對(duì)應(yīng)的網(wǎng)頁(yè)?,F(xiàn)在手機(jī)QQ 和微博客戶端都內(nèi)置了瀏覽器。而且用wireshark 抓包發(fā)現(xiàn)微信的通信都是用HTTP 協(xié)議收發(fā)數(shù)據(jù)的,內(nèi)嵌瀏覽器為網(wǎng)絡(luò)通信接口。

2. 微信的數(shù)據(jù)傳輸未加密

微信只有在輸入密碼的初次認(rèn)證過(guò)程中的數(shù)據(jù)是用SSL 加密傳輸?shù)?。其他?shù)據(jù),比如聊天數(shù)據(jù),地理位置信息等,傳輸過(guò)程都沒(méi)有加密(源端加密未知)

總結(jié):微信各個(gè)功能的數(shù)據(jù)傳輸,幾乎全都是用HTTP 協(xié)議

9

,

數(shù)據(jù)通信基礎(chǔ) 小組:qpic

3. 微信不同功能有獨(dú)立的服務(wù)器:

①涉及到位置信息,會(huì)調(diào)用地圖,常用的有:

map.soso.com 搜搜地圖

maps.google.com 谷歌地圖

mapi.mapabc.com 高德地圖

②微信的好多圖片文件的訪問(wèn),都是對(duì)wx.qlogo.cn 和mmsns.qpic.cn 的

③微信登陸的時(shí)候,有兩個(gè)域名:long.weixin.qq.com 和short.weixin.qq.com

short.weixin.qq.com 是HTTP 協(xié)議擴(kuò)展

tcp 短連接,運(yùn)行8080 port,http body 為二進(jìn)制。

提供API :

用戶登錄驗(yàn)證

;

10

標(biāo)簽: