WhatsApp取證:解密數(shù)據(jù)庫并提取Android設(shè)備上已刪除信息

來源: 個人圖書館
作者:百煉千錘
時間:2020-12-02
19036
在本文中,我們將要討論如何解密被加密過的WhatsApp數(shù)據(jù)庫,以及如何繞過WhatsApp加密,恢復(fù)被刪除的WhatsApp消息。

196075364_1_20200716100001380.jpg

WhatsApp是世界上最受歡迎的即時通訊工具之一,每月全球有十多億的WhatsApp活躍用戶使用它交換各種信息。

由于WhatsApp將用戶的每次對話都進(jìn)行了端到端加密,再加上Whisper團隊的匿名社交技術(shù),使得這個數(shù)字通信的隱私保密行大大提升,即使信息被成功攔截了,通信的內(nèi)容也不會泄露。

執(zhí)法部門為了調(diào)查某個嫌疑犯,會對其通信記錄進(jìn)行取證,但這明顯違反了公司的安全隱私標(biāo)準(zhǔn)和規(guī)則,WhatsApp肯定不會配合,所以調(diào)查人員要想得到其中至關(guān)重要的犯罪信息,就必須對WhatsApp取證。

這也是為什么WhatsApp目前已成為移動取證熱門領(lǐng)域的原因,然而,眾所周知,保密技術(shù)不斷發(fā)展的當(dāng)下,對智能手機的取證并非那么容易。調(diào)查人員在取證過程中將會遇到各種各樣的困難,例如:數(shù)據(jù)庫加密、系統(tǒng)安全防火墻墻、粉碎刪除的消息等。

因此,在本文中,我們將要討論如何解密被加密過的WhatsApp數(shù)據(jù)庫,以及如何繞過WhatsApp加密,恢復(fù)被刪除的WhatsApp消息。

196075364_2_20200716100001927.jpg

如何解密被加密過的WhatsApp數(shù)據(jù)庫

和許多其他智能手機APP一樣,WhatsApp也將數(shù)據(jù)存儲在SQLite數(shù)據(jù)庫文件中。對于Android設(shè)備來說,WhatsApp有兩個最重要的數(shù)據(jù)庫,即:包含聊天記錄的msgstore.db,以及包含聯(lián)系人列表的wa.db。

這些數(shù)據(jù)庫文件很容易被取證人員所掌握,因為WhatsApp具有備份的功能,它能夠在SD卡創(chuàng)建數(shù)據(jù)庫備份,無需root權(quán)限就能夠訪問。

然而,對于執(zhí)法調(diào)查人員而言,他們面臨的一個嚴(yán)重的問題就是WhatsApp不斷在升級更新的安全措施,例如WhatsApp的數(shù)據(jù)庫被加密后,就不能直接進(jìn)行分析。聊天記錄,消息和通話記錄則使用了行業(yè)標(biāo)準(zhǔn)的AES-256加密,除此之外,照片和視頻等未加密的媒體文件,也把加密從Crypt5,Crypt7,Crypt8更新為了Crypt12。

196075364_3_2020071610000283.jpg

那么,我們將如何解密加密的WhatsApp數(shù)據(jù)庫呢?最重要的一步是獲取密碼密鑰。

密碼密鑰是用戶第一次創(chuàng)建時,和WhatsApp備份一同產(chǎn)生的,并且,密碼密鑰永遠(yuǎn)不會存儲在云中,而是僅僅保存在手機中,并且每臺智能手機的密碼密鑰都是唯一的。所以,為了解密一個加密數(shù)據(jù)庫,分析人員就必須首先從創(chuàng)建備份的設(shè)備中提取密碼密鑰。

密鑰可以在以下的位置找到:

userdata/data/com.whatsapp/files/key

196075364_4_20200716100002255.jpg

在這里,我們要提一下中國的SalvationDATA(效率源)取證工具,SalvationDATA自主可控,智能化高、操作方便、提取功能強、高效快捷、不傷害存儲設(shè)備,在海外取得了8項歐盟CE認(rèn)證、美國FCC認(rèn)證。

如何繞過WhatsApp加密措施

但是,如果執(zhí)法調(diào)查人員沒有獲得設(shè)備的root權(quán)限,那么獲取密碼密鑰文件將是一件很困難的事情。因此,我們還將討論如何繞過WhatsApp的加密措施,換句話說,就是要如何在沒有擁有root權(quán)限的情況下提取WhatsApp數(shù)據(jù)。

由于密碼密鑰文件和未加密的數(shù)據(jù)庫始終存儲在WhatsApp的文件夾中,如果調(diào)查人員能夠得到這些文件,他們就可以查看該設(shè)備上的所有WhatsApp通信歷史記錄。所以唯一的問題是,他們只有獲得root權(quán)限才能直接訪問這些文件。

在沒有獲得root的情況下提取WhatsApp數(shù)據(jù)大致有以下兩種方法:

一、系統(tǒng)備份和恢復(fù)

第一種方法,是利用Android系統(tǒng)的備份和恢復(fù)功能,許多Android手機會允許用戶使用內(nèi)置的系統(tǒng)應(yīng)用程序來創(chuàng)建備份。以這種方式創(chuàng)建的備份文件會存儲在SD卡中,并且一般不會進(jìn)行加密。因此,這對執(zhí)法調(diào)查人員而言,無疑是一種訪問WhatsApp歷史通訊記錄的簡單方法。

下圖顯示的就是使用OPPO智能手機創(chuàng)建WhatsApp備份的例子,用戶可以在工具中找到備份還原,然后創(chuàng)建新的備份,并記住選擇WhatsApp。

196075364_5_20200716100002474.jpg

然后,用戶可以在手機的SD卡上找到WhatsApp的備份文件,該備份將包括所有未加密的數(shù)據(jù)庫和WhatsApp的密鑰。現(xiàn)在,用戶所要做的就是使用移動取證工具來對數(shù)據(jù)庫進(jìn)行分析了。

196075364_6_20200716100002787.jpg

二、降級備份(Downgrade Backup)

另一種方法是,將WhatsApp應(yīng)用程序降級到?jīng)]有備份加密功能的版本,WhatsApp v.2.11.431是沒有強制備份加密的最后一個版本。所以關(guān)鍵是在不刪除用戶數(shù)據(jù)的情況下將WhatsApp降級到v.2.11.431,然后使用舊版本的WhatsApp創(chuàng)建備份文件并提取數(shù)據(jù)庫。

不過,這個過程需要專業(yè)的技能,并有永遠(yuǎn)丟失數(shù)據(jù)的風(fēng)險。因此強烈建議使用專業(yè)的取證工具來進(jìn)行降級。

196075364_7_2020071610000383.jpg

如何恢復(fù)已刪除的WhatsApp消息

現(xiàn)在,我們已經(jīng)知道怎樣從智能手機中提取到WhatsApp的數(shù)據(jù)庫文件了,接下來讓我們繼續(xù)探討一下如何恢復(fù)已刪除的WhatsApp消息?看看如何在Android及iOS設(shè)備上使用該數(shù)據(jù)庫文件來恢復(fù)已被刪除的WhatsApp消息記錄。

WhatsApp用戶可以有兩種方式來刪除消息,可以使用clear聊天按鈕逐個刪除,或是使用delete聊天按鈕一次性刪除消息。根據(jù)我們的測試,用上述任何一種方式刪除的消息都可以使用下面的方法進(jìn)行恢復(fù)。

196075364_8_20200716100003365.jpg

正如前面我們介紹過的那樣,WhatsApp使用SQLite數(shù)據(jù)庫來存儲它的消息。但與Android不同的是,iOS會將所有相關(guān)的WhatsApp數(shù)據(jù)存儲在一個名為ChatStorage.sqlite的數(shù)據(jù)庫中。這些數(shù)據(jù)庫文件通常是帶有“-wal”字樣后綴的緩存文件。

通常在大多數(shù)情況下,這些緩存文件的大小為0,如果不為0,緩存文件可能包含尚未存儲在數(shù)據(jù)庫中的重要數(shù)據(jù)。這種情況必須小心處理,因為如果我們將緩存文件置于無人看管的位置,存儲于其中的信息將會被覆蓋永久丟失。

196075364_9_20200716100003552.jpg

根據(jù)分析,WhatsApp能夠正常訪問的消息存儲在msgstore.db中,而被刪除的消息則存儲在msgstore.db-wal中,它是消息存儲的緩存文件。在把消息保存到真正的數(shù)據(jù)庫之前,WhatsApp會將它先存儲在緩存文件當(dāng)中。

有趣的是,緩存文件有時候甚至比數(shù)據(jù)庫本身的文件還要大。這是因為一條消息只能作為一條記錄存儲在數(shù)據(jù)庫中,而高速緩存文件中卻沒有這樣的限制,一條消息可能同時存在多條記錄,這就使得恢復(fù)被刪除的WhatsApp消息成為可能。

我們用一條測試的消息做示范,可以看到在用戶刪除它之后,消息的記錄通常也會從msgstore.db的數(shù)據(jù)庫文件中被刪除。

196075364_10_20200716100003818.jpg

但在實際上,這條被刪除的消息可能仍然存儲在緩存文件msgstore.db-wal中。下圖就顯示了該條消息被刪除前后所發(fā)生的一些變化,我們可以看到,在消息被刪除后,消息的數(shù)據(jù)仍然保留在緩存文件中,甚至偏移位置也沒有發(fā)生改變。

196075364_11_20200716100004162.jpg

上述解決方案已被證明是一種高效可靠的提取已刪除的WhatsApp數(shù)據(jù)的方式,這是恢復(fù)刪除消息和清除聊天記錄的完美解決方案。

立即登錄,閱讀全文
版權(quán)說明:
本文內(nèi)容來自于個人圖書館,本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個人觀點,不代表快出海對觀點贊同或支持。如有侵權(quán),請聯(lián)系管理員(zzx@kchuhai.com)刪除!
掃碼登錄
打開掃一掃, 關(guān)注公眾號后即可登錄/注冊
加載中
二維碼已失效 請重試
刷新
賬號登錄/注冊
個人VIP
小程序
快出海小程序
公眾號
快出海公眾號
商務(wù)合作
商務(wù)合作
投稿采訪
投稿采訪
出海管家
出海管家