search
尋找貓咪~QQ 地點 桃園市桃園區 Taoyuan , Taoyuan

電子數據突破傳銷案件的新模式

原創:宋鵬 湖南省漢壽縣人民檢察

當一件事情,你連套路或者模式都沒搞清楚的時候,就不要妄談其他。宋鵬捉刀的這個案例很典型,在日益高發的觸網犯罪,甚至傳統犯罪形態下,都有很好的啟發意義。但是不得不說,模式重建、字典估算甚至代碼解析會耗費太多的精力,要求也特別高。這屬於典型的疑難複雜案件,能耐心讀完的都能成為電子取證高手!

「高逼格」術語——MVC

MVC 是一種使用 MVC(Model View Controller 模型-視圖-控制器)設計創建 Web 應用程序的框架模式。它強制性的使應用程序的輸入、處理和輸出分開。MVC是目前大量WEB應用程序使用的一種框架模式。隨著網路犯罪不斷增多,查獲的電子證據中使用MVC框架開發的應用程序也越來越多。下面我們以一個典型案例為對象,闡述分析MVC應用程序的方法。

MVC模式示意圖

一、典型案例

2015年在漢壽縣公安局偵辦的一起網路傳銷案中,偵查人員提取了傳銷平台資料庫和網站源代碼。在公安機關的邀請下,檢察機關派技術人員提前介入偵查,參與對電子證據的分析、提取。該案的主要電子證據如下:

1、MSSQL資料庫備份文件1份。

2、網站C#源代碼。

通過對電子證據的初步分析,我們發現該案的傳銷網路平台是用MVC編程模式開發的WEB應用。

在弄清楚了源代碼基本框架的情況下,我們的分析思路是:首先搭建運行平台讓程序運行起來,在運行中動態分析出超級管理員密碼,再用超級管理員在前台提取數據,最後,在分析出業務處理邏輯的情況下編製SQL查詢在後台提取數據作為補充。

二、對電子證據的分析步驟

1、WEB調試環境搭建

(1)版本的確定

在進行程序調試之前,我們需要先確定程序的版本。用記事本打開Web.config查找相關信息。如下圖可以看到.Net版本為4.0。因此,我們可以安裝VS2012作為調試環境。

圖1

VS2012安裝完畢后打開工程文件,未出現錯誤,說明工程文件正常打開,如下圖:

圖2

(2)資料庫初探

嘗試以調試模式運行程序,報異常,如下圖:

圖3

出現該異常的原因是因為沒有配置資料庫。為了正確配置資料庫,需要先找到資料庫連接信息。我們在Web.config中查找到資料庫連接信息。如下圖:

圖4

2、對資料庫備份文件的恢復

(1)、安裝SQL Server 2008,打開SQL Server資源管理器,右鍵單擊列表中「資料庫」,在彈出菜單中選擇「還原資料庫」彈出還原資料庫對話框,根據找到的資料庫連接信息配置目標資料庫名,見下圖:

圖5

(2)配置伺服器登錄名

根據找到的連接信息(圖4)配置登錄名和密碼。見下圖:

圖6

3、測試調試環境

資料庫配置完畢后,在VS2012中以調試模式再次啟動程序,未出現異常,並出現WEB界面,說明環境配置成功,如下圖:

圖7

如果出現錯誤信息,說明環境配置有問題,需要根據錯誤提示逐一解決。不同的案例情況不同,不再贅述。

4、管理員登錄密碼的獲取

由於應用程序的業務處理邏輯雜,在不進入應用程序業務層的情況下分析應用程序和資料庫是很困難的事情,因此,獲取管理員登錄密碼進入業務處理層對成功提取數據至關重要。以本案為例,分析管理員密碼的基本步驟如下:

在資料庫中找到存儲管理員密碼的表,如下圖:

圖8

我們發現,管理員用戶名為admin,但密碼已經進行了加密處理。

我們展開MVC工程的控制,發現有與登錄有關的控制,如下圖:

圖9

繼續分析該程序,找到判斷密碼對錯的代碼,如下圖:

圖10

分析該代碼可以看出,EncryptUtils.AESEncrypt(model.Pwd)是加密程序,在該程序中設置斷點。如下圖:

圖11

在登錄界面輸入用戶名admin,密碼123456,開始調試,程序停止在斷點處,再逐過程運行,得到「123456」的32位加密字元串:

「A0-E0-91-34-09-2B-69-3E-3D-ED-48-AE-BD-78-5F-F8」

用該字元串替換資料庫中超級管理員的字元串,如下圖:

圖12

用密碼123456登錄成功,如下圖:

圖13

5、數據的提取

(1)前台提取數據

超級管理員admin具有全部許可權,用該用戶登錄可以提取到大量數據,如網路圖、會員提現明細、獎金報表、獎金明細等,這些數據可以通過截圖的方式提取。如下圖所示。

圖14會員網路圖

圖15會員提現明細

(2)後台提取

前台提取數據有很多局限性。以提取會員列表為例,前台查詢的數據有幾百頁,不可能截取幾百張圖片。比較好的方法是通過SQL查詢數庫,將SQL查詢語句寫入電子數據分析報告,將查詢結果導成電子表格,並計算校驗值,作為電子證據。

要編製SQL查詢提取會員列表,我們需要先找到處理會員列表的程序,從中分析出會員信息存儲在哪張表中以及查詢的WHERE子句有哪些限制條件。以提取全部會員信息為例(提取其它信息雷同),具體方法為:在會員管理系統界面中找到「會員列表」按鈕,將滑鼠移到該按鈕上,在狀態欄會顯示出對應的視圖為user/list,如下圖:

圖16

在工程中找到MVC視圖文件,如下:

圖17

繼續分析,找到對應該視圖的控制,如下圖:

圖18

單步調試運行,找到構建SQL語句的代碼,如下圖:

圖19

分析該代碼我們發現該SQL查詢的表是T_user,查詢條件是IsValid=1,其它條件為NULL或特定值。我們可以得出,用戶數據存放在T_user表中,有效用戶的IsValid欄位值為1。因此可以構建SQL查詢提取全部有效會員信息,SQL如下:

select*fromT_Userwhere

IsValid= 1

結果:查詢出3652條記錄,與前台記錄一致。將結果導成EXCEL表作為電子證據取證結果,並製作MD5值。提取獎金明細、充值明細等數據的方法與上述方法一致,不再贅述。

三、總結

隨著取證技術和取證意識的不斷發展,在今後辦理的案件中,出現完整源代碼的案件將越來越多,給技術人員提出了新的挑戰。對於基於WEB應用的網路犯罪案件而言,利用調試工具進行動態分析並從WEB應用程序中快速提取大量涉案信息,司法實踐意義重大。



熱門推薦

本文由 yidianzixun 提供 原文連結

寵物協尋 相信 終究能找到回家的路
寫了7763篇文章,獲得2次喜歡
留言回覆
回覆
精彩推薦