李 晶,張 濱
(1. 浙江財經大學經濟與管理實驗中心,浙江 杭州 310018;2. 浙江財經大學藝術學院,浙江 杭州 310018)
計算機取證包含物理證據獲取及信息發現兩個步驟。物理證據獲取表示調查人員抵達計算機犯罪現場,探尋并核查有關計算機硬件[1,2],物理證據是所有取證工作的前提,在得到物理證據時,最關鍵的就是確保獲取的初始證據不遭受損壞。信息發現表示從初始數據內探尋能夠用于證明或反駁的證據。為了維護初始數據安全,全部的信息發現工作均是在初始證據的物理拷貝下實現的,物理復制工作可采用Unix系統的dd命令。
計算機取證不僅是計算機及網絡技術問題,還牽涉法律與道德觀念,并需要計算機專家、執法人員等多方人員的共同合作。此外相關研究人員針對不同領域問題得出如下解決方法。
文獻[3]提出一種基于局部二值模式和馬爾科夫特征的數字圖像篡改取證方法。運用LBP(Local Binary Pattern,LBP)算子把圖像從空域轉換到LBP域,進行JPEG壓縮后提取二維JPEG矩陣,計算矩陣在各方向上的一階差分矩陣,對每個方向上差分矩陣分別提取馬爾科夫特征,運用支持向量機實完成分類訓練,對細縫裁剪篡改進行檢測。文獻[4]提出一種基于隱藏事件觸發機制的內存取證方法。運用虛擬化技術實時監視目標虛擬機中的內核對象,分析內核對象邏輯連接關系與運行狀態變化,以此檢測隱藏對象;將發現隱藏對象作為內存取證觸發事件,利用內存映射提取隱藏對象代碼段信息,達到實時和局部內存取證目標,但是取證工作的實際應用限制較大。文獻[5]采用求解線性方程稀疏解的方式,在稀疏解的求解過程中對大數據進行特征分類,優化目標函數的求解,結合數據在類中的分布情況進行有效加權來實現大數據挖掘,提高大數據挖掘的效率及準確度,但是該方法沒有考慮網絡數據冗余性對結果的影響。
因此,本文提出一種基于并行挖掘大數據的無損云取證模型,采用動態調度并行挖掘方法,保證挖掘結果正確性的同時,增強取證挖掘速率,使用分塊無損壓縮手段,結合虛擬化技術與協作技術,創建無損云取證模型,綜合維護證據安全性。
全局通信模式——Master-Worker模式,如圖1所示。此模式可應用在擁有完全并行性算法內。初始數據集可劃分成毫無關聯的子集,每個子任務計算不同數據子集,每個Worker節點間的關聯較小,因此利用Master節點完成通信目的,如圖1所示。

圖1 全局通信模式示意圖
數據挖掘的核心問題就是關聯規則挖掘,關聯規則挖掘的重心是得到頻繁項目集,以關聯規則挖掘為例,探究動態調度下并行挖掘大數據算法的詳細操作過程。
使用數學矩陣工具,運用具備較強優越性的計算機處理矢量矩陣把事物數據庫變換為矢量矩陣[6]。比如,把某個事物數據庫變換為上三角矩陣,繼而展現單屬性下的關聯規則,其可以表示成

(1)
假設e為待挖掘目標屬性,在矩陣A內能夠算出該屬性的支持度與置信度
sup(f?e)=0.6,conf(f?e)=0.75
sup(g?e)=0.6,conf(g?e)=0.75
sup(h?e)=0.6,conf(h?e)=0.6
sup(d?e)=0.6,conf(d?e)=1.0
(2)
若設置minsup=0.5,minconf=0.7,就能獲得以下關聯規則:f?e,g?e,d?e。

將規模M×N的數據庫均勻輸送至p個節點內,把M各元組分割為M1,M2,…,Mp。則第i個節點內的數據庫是:

(3)
式中,

(4)

把新生成的數據庫Di依次輸送至第i個節點內,明確待挖掘目標,給予參變量minsup、minconf。
關于第i個節點,把Di當作矩陣,了解待挖掘對象,同時進行相關運算

(5)



(6)

(7)

(8)

(9)
將Pj值重新排序,讓屬性序列更加稠密,則關聯規則更易被挖掘。

(10)
如果滿足式(10)條件,計算Aj?Ak的支持度sjk。Aj、Ak依次表示數據庫內第j與第k個屬性。且滿足:

(11)

算出Aj?Ak的信任度cjk的值:

(12)
產生一個大項集合后,使用全局通信模式,將節點Master當作主節點[8]。剩余Worker節點把自身生成的大項集合結果sjk和cjk輸送至主節點cjk,讓主節點承擔全局關聯規則任務。
經過以上步驟得到數量較多的繁瑣規則,需要注意的是,在輸出最后規則集過程中,要實施嚴格挑選,得到輸出規則R,從而完成并行挖掘大數據的全部過程,實現高效率數據挖掘。
云取證面臨的關鍵問題即為取證完整性,對取證數據進行分塊無損壓縮可充分解決這一問題。初始信號的特征會直接影響壓縮效率,網絡信號通常由一系列周期信號和噪聲信號重疊構成。數據分塊無損壓縮框架如圖2所示。

圖2 數據分塊無損壓縮框架圖
網絡振動信號通過離散余弦轉換后,在頻譜內展現較優的能量匯集特征[9]。子帶量化預測算法能有效利用該特征,即運用較少的量化位數評估初始信號的多數信息。由于信號采集數量較多,在網絡節點這樣內存資源受限的平臺內不能一次性處理全部數據,所以需要對數據實施分塊處理,減小內存占用比例。
節點把初始數據分塊成固定長度,將塊編碼當作文件名存儲在SD卡內,每次處理SD卡都能得到對應數據,提高數據壓縮性能。
DCT轉換考慮到節點硬件平臺支持,使用DCT類型IV轉換模式,記作
(13)
式中,k=1,2,…,N,mn代表初始數據,N是分塊大小,相對的反向DCT轉換是

(14)
式中,n=1,2,…,N。DCT類型IV轉換和反向轉換的對稱性,表明兩個轉換可以使用相同計算函數完成,減少了轉換矩陣在節點內占用的存儲空間。
差值計算關鍵是由量化DCT系數還原與反向DCT轉換構成的。在進行量化DCT系數還原時,首先采用邊帶數據內的第j列數據最大絕對值,根據式(14)獲得此列數據需要的最大分配位數bj,然后按照邊帶數據內的分配位數nj還原量化系數qi,j,將此過程描述為式(15)。由此實現犯罪取證數據無損壓縮,保障數據高度完整性。

(15)
使用并行挖掘大數據與無損壓縮方法,可有效改善無損云取證模型可靠性。本文采用云計算技術的虛擬化及協作技術建立無損云取證模型。把基礎設施層的各部分利用虛擬化技術,在服務器集群內產生數量眾多的虛擬機,減少服務器的購置金額與運營成本。在進行數據采集與日志分析時,讓每個主機和服務器集群共同協作,用最低的代價與高速率實現取證工作[10,11]。模型框架如圖3所示。

圖3 無損云取證模型架構圖
云取證模型每層功能定義如下:
物理資源層:關鍵是將云計算物理資源的全球框架整合到一個層中。基礎設施層包括虛擬化云中的主機、分布式存儲、關聯數據庫和許多其它資源。中間層在提供基礎設施層資源的前提下,可以完成多租戶、并行處理、分布式緩存等業務,同時使用顯示層為用戶提供所需的消息。
證據資源池:這一層是法醫證據的關鍵來源。利用云基礎設施層的數據采集代理獨立獲取所需的日志數據,將獲取的日志數據詳細劃分為文件類型、帳戶類型、攻擊類型等,形成證據資源池。
虛擬層:將證據分析過程設置為虛擬層,規范日志格式,采用靜態取證和動態取證完成電子證據的截取。
協同層:該層的關鍵是協同代理。其核心功能是讓服務器集群與各個代理協同運行,完成通信和交互。
管理中間件:關鍵包括用戶管理、取證管理和安全管理。安全管理可以保證取證時系統的安全。
取證服務層:使用云端的數據采集代理采集問題日志,日志格式標準化后保存到日志庫中。通過云計算中各主機和服務器集群的協作,進行挖掘和證據分析[12]。最后,根據用戶的需求,反饋取證保留問題,使取證速度和準確性更加優異。
為了證明所建模型實用性,對模型性能展開深入探究。把實驗使用的15臺主機與服務器、路由器及交換機構成的系統為虛擬云,每個主機與分布器均為分布式架構,各個主機均能存留證據。實驗過程中,設定大數據并行挖掘時間是50s,依次挑選不同時間段的完整數據。測試評估指標含義如表1所示。

表1 測試指標含義
使用JMeter依次模擬100~700個虛擬用戶進行測驗,同時記錄測驗參數,測驗結果如圖4所示。

圖4 負載測驗結果
從圖4可知,本文模型可以高精度響應用戶請求,取證效率較高,檢測時間最大為11ms,并一定程度上保證數據無損壓縮后的完整性,為網絡云取證工作帶來突破性進展。
在主機A內使用攻擊工具對虛擬云內主機實施攻擊,發現9臺機器收到的UDP包數量明顯上升,UDP數據包信息如表2所示。

表2 UDP數據包信息(部分)
從表2中可知,全部信息均源自主機A內,因此可斷定A對其余主機具備攻擊動作,斷開每個主機與主機A的關聯,對得到的數據完成備份,證據不但能儲存在服務器集群內,還能備份在主機內,增加證據安全性能。
通常狀態下,取證人員要摘要初始證據內的數據,再將初始證據與摘要信息妥善保管。和其余類型證據相同,電子證據一定要有足夠的存儲空間,因此以初始證據信息的可壓縮性作為驗證指標,將本文方法與文獻[3]、文獻[4]和文獻[5]方法進行對比,驗證轉換矩陣在節點內占用的存儲空間,得到對比結果如圖5所示。

圖5 初始證據信息的可壓縮性對比結果
由圖5可知,本文方法初始證據信息最終占據空間最小,在編號為三的轉換矩陣中為2b,低于其它文獻方法,說明轉換矩陣在節點內占用的存儲空間最小即初始證據信息的可壓縮性較強。
1)立足大數據挖掘與計算機取證,基于并行挖掘大數據構建一種無損云取證模型。充分提升證據獲取速率的同時,保障數據完整性,確定網絡犯罪的時間與傳播過程,構成完整證據鏈。
2)云計算的出現讓大數據挖掘變得更加有效,其使用集群并行計算,在多臺機器內同時進行數據處理,檢測時間最大僅為11ms,且轉換矩陣在節點內占用的存儲空間為2b,極大提高數據處理能力與效率。
3)但本文方法在數據無損方面的研究較為淺顯,不保證適用于全部網絡取證工作,下一步會深入研究無損取證全范圍適用性優化問題。