1. 程式人生 > >【阿里雲MongoDB恢復】

【阿里雲MongoDB恢復】

640?

來源:資料安全與取證(ID:Cflab_net)

原創:Wendy

案情簡介

本次案件是電信詐騙,嫌疑人通過一個網路平臺實施詐騙,線上交易短線外匯。

分析過程

在得到嫌疑人的阿里雲賬號後,通過分析該網路平臺的程式碼,發現其應用程式的核心資料都存在阿里雲MongoDB資料庫上。

通過mongo shell連線資料庫後,發現只有一個庫有資料,其他關鍵的資料庫均已被刪除,沒有我們要找的資料庫。

用mongo shell檢視,我們會發現資料庫的大小為0

640?wx_fmt=png

資料庫的大小為0!

取證難點

阿里雲有自動備份的功能,通常在知道資料庫被刪除後,我們首先會去檢視備份。

但是,該備份7天為一個週期,然後會迴圈覆蓋,此案難點就在於資料庫被刪除之日距離分析早已超過7天。

以下圖為例說明,假設資料庫的內容是A。

640?wx_fmt=png

第5天資料庫被刪除

由於每次備份都是針對當前的狀態備份,當第5天嫌疑人刪除了資料庫,那麼從第5天開始,以後的每次備份都將是0。

只要第1天至第4天的資料還在備份裡,我們就是可以提取出來的。

640?wx_fmt=png

七天的備份裡有第4天的資料

也就是說,我們至少要在第10天之前拿到並分析這個資料庫。

但事實是,我們拿到資料庫時早就已經超過第10天了。

640?wx_fmt=png

七天的備份均為0

一般情況下,到了這一步,都視為無法繼續。

但必哥另闢蹊徑,他從備份中發現留有一些原始檔。

他將這些原始檔下載下來,發現被刪除的資料庫所指向的原始檔還佔有一定的空間,也就是資料還可能存在,通過分析MongoDB資料儲存方式,配合已有的檔案,成功提取出了多達百萬條刪除的資料庫資料。

成果展示

還佔有一定空間的原始檔提取出來後如圖:

640?wx_fmt=png

最後,看看我們提取到的交易資訊和會員資訊!(部分敏感資訊我們隱藏了顯示欄)

640?wx_fmt=png

必哥給圖片打碼也很隨性……

研究總結

本次突破的重要思路就在於資料庫備份中的那些原始檔。

長按下方二維碼,關注“資料安全與取證”察看更多精彩內容。

640?wx_fmt=jpeg

推薦閱讀:

640?wx_fmt=jpeg

640?wx_fmt=png