1. 程式人生 > >【破解手機QQ】聊天記錄內容的8個問題

【破解手機QQ】聊天記錄內容的8個問題

640?

手機QQ的聊天記錄,提取已經不是什麼難題了。當前市面上很多取證軟體都可以做到。小編想從底層的角度,向大家展示一下,鵝長對聊天記錄是怎麼加密的。

這又是一個苦逼的手工活……

一、手機QQ的聊天記錄內容儲存在哪裡?

以安卓機為例,手機QQ的聊天記錄資料庫儲存在“/data/data/com.tencent.mobileqq /databases/”這個資料夾下,檔名為:QQ號碼.db。如果有多個號碼登陸的話,會有多個QQ.db。

640?wx_fmt=png

QQ號碼.db的路徑

當然,訪問這個路徑的前提是獲得root許可權。

640?wx_fmt=png

獲取手機Root許可權才能提取到這個目錄下的檔案

二、如何開啟“QQ號碼.db”檔案?

毫無新意,這個db是一個sqlite小型資料庫檔案。更讓人意外的是,這個db沒有采用任何入口加密措施。換句話說,使用任何一款sqlite檢視工具都可以直接開啟它。

三、聊天記錄是哪一張表?

這個db檔案內容是比較多的,小編只針對儲存聊天記錄內容的表做攻關。大家如果感興趣,可以逐個研究一下,肯定會有不少收穫。

手機QQ使用者與其他QQ號碼聊天的記錄分別儲存在不同的資料表裡,具體的表名非常直觀:mr_friend_MD5(對方QQ號碼)_New。640?wx_fmt=png

為什麼要加“new”呢?應該是為了保持向下相容(小編注)

開啟這個表,大家可以看到有很多欄位。其中,msgData儲存了聊天記錄的內容,senderuin儲存了對方QQ號碼,還有一些訊息傳送和接受時間方面的欄位。遺憾的是,msgData、senderuin都是密文。怎麼辦?

640?wx_fmt=jpeg

加密後的“聊天記錄內容”、“訊息傳送者QQ號碼”

四、加解密方式

基於手機硬體處理效率的考慮,以及使用者便利化的角度,鵝廠不可能採取高強度對聊天記錄進行加密,這算是靠譜的專業判斷。事實上,的確如此。

破解方法:

(1)聊天記錄內容明文:D

(2)聊天記錄內容密文:E

(3)手機IMEI(MEID):IMEI

(4)公式:E = D ^ IMEI。(^:按位異或演算法)

具體的實現是這樣的:

1、聊天記錄採用UTF-8編碼儲存,以漢字為例,一個漢字佔3個位元組。

2、IMEI號碼採用ASCII字元編碼,每個字元佔1個位元組。

3、把聊天記錄內容,按次序與IMEI字元做異或運算,得到密文。

4、有人會問了,IMEI只有15個字元,怎麼辦,沒關係,可以迴圈進行。

小編做了確認,實測可行。附一小段程式碼供大家參考。

640?wx_fmt=jpeg

示例程式碼,實測有效

五、意外收穫

經過上面的異或運算,不僅聊天記錄內容得以破解,傳送者的QQ號碼、暱稱等也按照同樣的方法獲得。具體破解方法就不再重複了。

640?wx_fmt=png

六、手機IMEI號碼到哪裡找?

使用*#06#能夠獲取手機的IMEI號,但在有些情況下(如多卡),可能會有多個硬體ID。具體QQ軟體使用哪一個ID進行解密,最準確的方法是:從DENGTA_META.xml檔案中查詢。

640?wx_fmt=pngDENGTA_META.xml的路徑

640?wx_fmt=png

檔案中獲取準確的IMEI(MEID)

七、水果機QQ聊天記錄咋破解?

不用破解,明文!

八、總之一句話

破解手機QQ的聊天記錄內容,不需要知道你的QQ登陸密碼。有情況的騷年,看好自己的手機喲……

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=png