解密PC版微信數據庫ChatMsg.db

最近發現用Python生成詞雲圖挺有意思的,於是想着生成微信和某個人的聊天記錄的詞雲應該挺好玩。

在網上找了好多解密微信數據庫的文章,但大多數都是解密Android版的,好不容易找到些解密PC版的還寫得不夠詳細。

不過最後終於解密成功,其中遇到好多大坑小坑,聽我一一道來。

1,獲取數據庫加密密鑰

解密PC版微信數據庫

照着這篇文章做就好了,有兩個注意的地方

①如果你是64位系統,就下載64位的OllyDbg 否則無法運行。

②附加微信進程的時候可能會報錯忽略就可以了,不影響後面操作。

③附加時候有時候會特別慢,重新關了軟件再來了次就可以了。

這裏終於出現了大坑!

坑一:文章的第14寫“用鼠標框選前四行內容”錯誤,是前兩行。

PC版微信的密鑰是32位,4行就變成64位了,一開始一直用前四行試,永遠無法成功。

2,利用sqlcipher解密數據庫

使用微信聊天記錄統計信息

文章是個好文章,可是無論如何也無法解密,去Google了好多其它方法,也無果而終。

聯繫了文章作者,說是針對Android版微信,不過之前看過其它地方說PC和Android版加密方法是一樣的…

最後這種方法宣告失敗,沒能解密成功,於是用了下面的方法。

坑二:無法找到合適的sqlcipher解密參數。

爲什麼說是一個坑,因爲要在linux上編譯通過sqlcipher也不是一件容易的事情,安裝各種各校的包不說,好多還不能直接通過apt或者yum安裝,得下回來編譯,而編譯時候發現又缺少其它的包……就這樣試了兩個版本的linux最後編譯成功了sqlcipher,可還是無法解密,相信參數對了是應該可以解密的。

3,利用一段C++代碼解密數據庫

解密微信聊天數據庫

雖然說是一段代碼而已,但是並不是那麼容易就能運行起來了。

得需要安裝:visual studio, openssl還要進行各種各校的配置,差一點程序就不能編譯了。

而且win10下openssl一定要用1.0.x的版本,否則無法識別。

關鍵我還幾乎沒用過vs,更沒寫過C++,一開始出各種錯,再加上最開始全是用的前4行做的密鑰,更是雪上加霜…

有幾點需要注意:

①新建的項目選擇Visual C++下面的Windows Console Application

②我把代碼拷貝進去後提示cann't open source file “stdafx.h”,把第一行的#include "stdafx.h"換成#include "pch.h"即可。

坑三:用C++解密需要進行復雜的配置,錯一點就撲街。

在聯繫作者幾次後終於運行成功,得到解密的數據庫文件,最開始有各種錯誤,最後莫名的好了…

最後用Python順利的讀取到了聊天內容,生成了詞雲圖,散花~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章