王文奇,李世曉
(中原工學(xué)院,鄭州450007)
用戶行為逆向分析技術(shù)研究
王文奇,李世曉
(中原工學(xué)院,鄭州450007)
通過收集并分析用戶在計(jì)算機(jī)上的各種遺留信息,根據(jù)Windows操作系統(tǒng)提供的用戶對各種文件的操作行為,設(shè)計(jì)了一種逆向綜合分析算法,可分析出一定時(shí)間內(nèi)用戶對計(jì)算機(jī)的各種行為和操作,從而為發(fā)現(xiàn)各種非法和異常行為并加固操作系統(tǒng)提供可靠的支撐信息.
遺留信息;逆向綜合分析算法;用戶行為
近年來,網(wǎng)絡(luò)及信息安全技術(shù)和安全措施層出不窮,如數(shù)據(jù)傳輸與存儲加密、防火墻、虛擬專用網(wǎng)絡(luò)、入侵檢測系統(tǒng)、網(wǎng)絡(luò)安全服務(wù)器和安全管理中心等,這些安全機(jī)制的確能夠解決系統(tǒng)安全中某些方面的問題.從宏觀上看,它們基本上都屬于被動(dòng)式防御技術(shù),單純依靠這些技術(shù)不可能滿足全部的安全要求.
在用戶使用計(jì)算機(jī)以及計(jì)算機(jī)各種軟件運(yùn)行的過程中,應(yīng)用軟件和操作系統(tǒng)會(huì)以不同的方式記錄用戶的使用過程,從而在計(jì)算機(jī)中遺留大量的信息[1].對這些遺留信息進(jìn)行提取,進(jìn)而逆向綜合分析,可獲得用戶在計(jì)算機(jī)上的操作行為.這樣不但可以分析出系統(tǒng)的缺陷,進(jìn)而加固操作系統(tǒng),還可以將這些信息固定封存,作為取證的基礎(chǔ)[2].
分析遺留信息時(shí)有幾個(gè)關(guān)鍵問題需要解決.首先,計(jì)算機(jī)磁盤中存儲著海量的信息,需要從中查找并獲取用戶在計(jì)算機(jī)上遺留的有用信息;其次,計(jì)算機(jī)中存儲的信息格式不同、種類繁多,如何針對不同格式的信息展開綜合分析,也是一個(gè)需要解決的問題.
遺留信息可能存在于注冊表、數(shù)據(jù)文件、臨時(shí)文件、系統(tǒng)日志、交換區(qū)文件中,當(dāng)然也有可能存在于回收站、硬盤未分區(qū)空間、系統(tǒng)緩沖區(qū)等不同的位置.分析主機(jī)遺留信息,就是在上述存儲介質(zhì)中盡可能地尋找所有系統(tǒng)、軟件遺留的信息和用戶的操作痕跡.
雖然目前已有360安全衛(wèi)士等系列軟件針對遺留信息進(jìn)行分析,但360安全衛(wèi)士僅僅是簡單掃描某幾款常用軟件的位置,通過刪除使用者的操作痕跡,確保使用者的隱私.系統(tǒng)和軟件在使用過程中會(huì)遺留大量信息,360安全衛(wèi)士等系列軟件并不能將其全部檢測和刪除.因此,有必要利用專門的工具和軟件,徹底地對用戶操作計(jì)算機(jī)的遺留信息進(jìn)行分析.
純手工分析遺留的數(shù)據(jù)不太現(xiàn)實(shí),只有通過監(jiān)控軟件對其進(jìn)行大量測試、比較,才能夠準(zhǔn)確得知系統(tǒng)文件和程序的變化,檢測用戶的使用行為,重構(gòu)用戶操作活動(dòng).對于Windows操作系統(tǒng)來說,注冊表是操作系統(tǒng)的核心,它保留了Windows系統(tǒng)中所有32位硬件/驅(qū)動(dòng)和32位應(yīng)用程序的數(shù)據(jù)文件,是一個(gè)系統(tǒng)信息的數(shù)據(jù)庫.因此,注冊表必然保留了用戶操作的大量遺留信息.同時(shí),用戶對主機(jī)的操作不可能是僅僅運(yùn)行軟件.軟件運(yùn)行是為了對信息進(jìn)行處理,因此,這些信息必然作為一個(gè)文件保存下來.目前,有大量的注冊表和文件變化監(jiān)控軟件,為了盡可能地分析所有的遺留信息,經(jīng)過分析比對各軟件使用的監(jiān)控技術(shù),我們主要采用如下的監(jiān)控軟件:
(1)RegSnap.它是一個(gè)專門用于比較 Windows注冊表及系統(tǒng)啟動(dòng)設(shè)置文件變化的工具,工作方法較為簡單.在需要的時(shí)候,通過“File/New”菜單或工具條按鈕將當(dāng)前注冊表及相關(guān)內(nèi)容保存到擴(kuò)展名為rgs的文件中(在軟件安裝之前和安裝結(jié)束后分別保存一次),然后通過“File/Compare”菜單比較這兩個(gè)文件,Regsnap就會(huì)詳細(xì)地報(bào)告注冊表及與系統(tǒng)有關(guān)的其他內(nèi)容的變化情況.Regsnap比較報(bào)告的主要內(nèi)容有:對注冊表修改了哪些鍵以及這些鍵修改前后的值,增加和刪除了哪些鍵以及這些鍵的值.報(bào)告結(jié)果既可以純文本的方式,也可以html網(wǎng)頁的方式顯示,便于查看.
(2)Filemon.它是一款出色的文件監(jiān)控軟件,用于監(jiān)視應(yīng)用程序進(jìn)行的文件創(chuàng)建、讀取和修改操作,并允許系統(tǒng)用戶保存、過濾、查找已記錄的文件信息,為用戶維護(hù)系統(tǒng)、發(fā)現(xiàn)問題提供便利.
通過以上工具的分析以及資料的收集和分析,用戶在使用計(jì)算機(jī)過程中主要會(huì)遺留以下信息:
(1)日志文件.日志文件是 Windows系統(tǒng)中一個(gè)比較特殊的文件,記錄著Windows系統(tǒng)運(yùn)行過程中許多關(guān)鍵事件,如各種系統(tǒng)服務(wù)的啟動(dòng)、運(yùn)行、關(guān)閉等信息.Windows日志包括應(yīng)用程序、安全、系統(tǒng)等幾個(gè)部分,它們的存放路徑是 “%systemroot%\system32\config”.應(yīng)用程序日志、安全日志和系統(tǒng)日志對應(yīng)的文 件 名 分 別 為 App Event.evt、SecEvent.evt 和SysEvent.evt.這些文件受到“Event Log(事件記錄)”服務(wù)的保護(hù),不能被刪除,但可以被清空.
(2)上網(wǎng)記錄.瀏覽器是當(dāng)前計(jì)算機(jī)用戶最常用的計(jì)算機(jī)軟件之一.用戶在使用瀏覽器上網(wǎng)的過程中,瀏覽器一般為了提高瀏覽的速度,采用了數(shù)據(jù)緩沖技術(shù),即利用HTTP協(xié)議把要瀏覽的信息下載到本地磁盤,然后再顯示出來[3].同時(shí)IE瀏覽器為方便用戶的使用,記錄了用戶的訪問歷史.為維護(hù)用戶的正常使用,IE瀏覽器記錄了每次連接的cookie記錄,在注冊表記錄了用戶的登錄上網(wǎng)網(wǎng)址,同時(shí)在Index.dat文件中詳細(xì)記錄了用戶在上網(wǎng)過程中瀏覽過的信息.不同瀏覽器的遺留信息記錄位置和記錄內(nèi)容會(huì)有細(xì)微的不同.
(3)Index.dat文件.Windows系統(tǒng)中會(huì)存在三個(gè)index.dat文件,它們分別用來保存IE上網(wǎng)的cookies、臨時(shí)文件和上網(wǎng)歷史的索引信息.index.dat文件還包括用戶使用文件的記錄.根據(jù)Windows系統(tǒng)版本的不同,這些文件在系統(tǒng)中的位置也是不盡相同的.在Window2000/XP系統(tǒng)中,index.dat一般存在于下面的位置中[4]:
C:\Documents and Settings\<username>\Cookies\index.dat
C:\Documents and Settings\<username>\Local Settings\History\History.IE5\index.dat
C:\Documents and Settings\<username>\Local Settings\Temporary Internet Files\Content.IE5\index.dat
(4)使用文件記錄.在Windows操作系統(tǒng)中,除了index.dat文件中保存了用戶使用的記錄外,還在其他多個(gè)位置保存了用戶使用的記錄.其位置分別如下:
C:\Documents and Settings\Administrator\Recent文件夾,它包含最近打開使用過的文件,它們是文件的快捷方式,并不是文件的真實(shí)存放位置.快捷方式中保存了源文件的打開文件時(shí)間、源文件位置等信息.
注冊表中的 HKEY_CURRENT_USER\Software\Microsoft\Windows\Current Ver sion\Explorer\RecentDocs\,這里保存了所有最近打開的文件,但是只保存了打開的文件名,不包含文件位置以及打開文件時(shí)間,用戶只能從最后寫入注冊表的時(shí)間獲得最后一次打開文件的時(shí)間.
注冊表中 HKEY_CURRENT_USER\Software\Microsoft\Windows\Curr ent Version\Explorer下各子鍵,它包含了各種常用類型文件的打開記錄,如doc文件位于主鍵 HKEY_CURRENT_USER\Software\Microsoft\Windows\Current Version\Explorer\Recent Docs\.doc下,包含了最近打開的doc文檔.
另外,其他非 Microsoft軟件可能不遵循 Windows規(guī)范,而是自己在注冊表設(shè)定、保存最近打開文件的記錄,如福昕閱讀器,其最近打開文檔的位置為HKEY_CURRENT_USER\Software\Foxit Software\Foxit Reader\Recent File List.
(5)各類應(yīng)用程序的遺留信息.現(xiàn)在大部分應(yīng)用程序具有網(wǎng)絡(luò)數(shù)據(jù)傳輸功能,通常本地緩存大量網(wǎng)絡(luò)數(shù)據(jù),如迅雷等下載軟件緩存了正在下載的文件,從這些緩存的網(wǎng)絡(luò)數(shù)據(jù)中也可以挖掘出用戶的操作行為.應(yīng)用程序可提取的遺留信息還包括應(yīng)用程序記錄的最近打開文件、應(yīng)用程序的日志信息等.
逆向行為分析框架如圖1所示,描述如下:
圖1 主機(jī)行為分析框架
收集用戶在主機(jī)上進(jìn)行各種操作時(shí)遺留的各種信息(包括前面分析的各種遺留信息),如系統(tǒng)的日志文件、各類應(yīng)用程序自己記錄的各種日志、系統(tǒng)記錄的訪問文件的記錄——Index.dat文件以及緩沖區(qū)文件、注冊表信息以及特定軟件的遺留信息等.
不同軟件或系統(tǒng)遺留信息的格式是多種多樣的.首先需要分析這些信息的保存格式,通過信息格式分析,提取出需要的遺留信息.由于這些遺留信息是各種各樣的,需要對這些遺留信息進(jìn)行歸一化處理.
通過對已有信息的分析,根據(jù)本次分析用戶行為的目的,所有提取的信息歸一化為以下內(nèi)容:文件名、訪問方式、時(shí)間、行為等.文件名是指用戶最近操作了哪些文件;訪問方式是指用戶對這些文件的操作方式是修改還是僅僅只讀式打開;時(shí)間是指用戶對這些文件操作的時(shí)間;行為是指用戶通過運(yùn)行哪些軟件操作了這些文件.
信息歸一化處理還包括對這些信息格式化統(tǒng)一后,形成一致的信息記錄.由于遺留的信息保存于不同的位置,這些信息可能是重復(fù)的,也可能是有缺失的.
對于重復(fù)記錄的處理,首先確定記錄的優(yōu)先級,用戶不易修改的記錄優(yōu)先級最高,也就是最真實(shí)的記錄具有更高的優(yōu)先級;較詳細(xì)、較準(zhǔn)確的記錄,優(yōu)先級較高.對于重復(fù)記錄,當(dāng)文件信息不一致時(shí),根據(jù)優(yōu)先級確定采用那些記錄.
僅僅獲得最近操作的文件是不夠的,還要知道通過哪些軟件對這些文件進(jìn)行了操作.在Windows的注冊表中保存了不同擴(kuò)展名文件的打開方式,在主鍵HKEY_CLASSES_ROOT下,保存了擴(kuò)展名子鍵,這些擴(kuò)展名子鍵中默認(rèn)項(xiàng)鍵值保存了這些擴(kuò)展名文件類型.如當(dāng)系統(tǒng)安裝了office系列軟件時(shí),HKEY_CLASSES_ROOT 下 “.doc”子鍵的 默認(rèn)項(xiàng) 鍵值為“Word.Document.8”,表明擴(kuò)展名為“.doc”的文件屬于“Word.Document.8”類型文件.同時(shí) HKEY_CLASSES_ROOT主鍵下還保存了這些類型文件的打開方式,在這些類型文件的子鍵下,有“\\shell\\open\\command”子鍵,這一子鍵的默認(rèn)項(xiàng)鍵值就是打開這一類型文件的軟件位置.如當(dāng)系統(tǒng)安裝了office系列軟件時(shí),“Word.Document.8”子鍵下“\\shell\\open\\command”子鍵的默認(rèn)項(xiàng)鍵值為"C:\Program Files\Microsoft Office\OFFICE11\WINWORD.EXE“/n/dde”,表明“Word.Document.8”類型文件的打開軟件該為其下的WINWORD.EXE.
通過用戶行為逆向分析技術(shù)分析操作系統(tǒng)的遺留信息,進(jìn)而分析獲取的遺留信息文件格式,并采用歸一化技術(shù),將主機(jī)用戶所有遺留信息進(jìn)行歸一化處理,最后獲得用戶對主機(jī)的行為和操作.通過提取分析用戶的活動(dòng),不但可以從中發(fā)現(xiàn)操作系統(tǒng)中存在的安全風(fēng)險(xiǎn),也可以發(fā)現(xiàn)用戶的犯罪行為.
[1]茍和平,馮百明,景永霞.遺留信息共享的一種實(shí)現(xiàn)方案[J].蘭州理工大學(xué)學(xué)報(bào),2007,33(6):93-96.
[2]王文奇,庫金龍.基于主機(jī)的行為分析取證技術(shù)研究[J].中原工學(xué)院學(xué)報(bào),2010,21(4):19-21.
[3]田飛,程慧芳.基于P2P網(wǎng)絡(luò)的瀏覽器緩存協(xié)作系統(tǒng)的研究[J].計(jì)算機(jī)工程與設(shè)計(jì),2010,31(22):4780-4786.
[4]吳清,吳順祥.Index.dat文件結(jié)構(gòu)解析[J].現(xiàn)代計(jì)算機(jī),2008(12):35-38.
The Research on Inverse Direction Analysis for User Behavioral
WANG Wen-qi,LI Shi-xiao
(Zhongyuan University of Technology,Zhengzhou 450007,China)
By collecting and analysising the user’s legacy information in host,a inverse comprehensive analysised algorithm based on the user’s behavioral in windows system is designed.The behavioral and action of user is reconstructed in a given time by the algorithm.As the result,the illegal information may be found by these behavioral.
legacy information;inverse analysised algorithm;user’s behavioral
TP393.08
A
10.3969/j.issn.1671-6906.2011.05.008
1671-6906(2011)05-0031-03
2011-09-20
河南省科技攻關(guān)計(jì)劃項(xiàng)目(082102210082;082102210092);河南省教育廳自然科學(xué)基金項(xiàng)目(2008B520045)
王文奇(1971-),男,河南安陽人,副教授,博士.