国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      基于行為的軟件可信度量系統(tǒng)及方法

      文檔序號:6340971閱讀:241來源:國知局
      專利名稱:基于行為的軟件可信度量系統(tǒng)及方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及可信計算方法,尤指一種基于預(yù)期行為和實際行為比較的基于行為的 軟件可信度量系統(tǒng)及方法。
      背景技術(shù)
      可信計算(TrustedComputing, TC)是一項由可信計算組織(Trusted Computing Group, TCG,前稱為TCPA)推動和開發(fā)的技術(shù),TCG定義可信為一個實體是可信的,如果它 的行為總是以預(yù)期的方式達到預(yù)期的目標??尚庞嬎愕闹饕枷胧窃谟布脚_上引入安全 芯片(可信平臺模塊)來提高終端系統(tǒng)的安全性,也就是說在每個微機終端植入一個信任 根,從信任根開始到硬件平臺,到操作系統(tǒng)內(nèi)核層,再到應(yīng)用層,構(gòu)建信任關(guān)系,一級認證一 級,一級信任一級,并以此為基礎(chǔ),擴大到網(wǎng)絡(luò)上,建立相應(yīng)的信任鏈,從而確保整個網(wǎng)絡(luò)的 可信。即信任鏈的擴展方法是“邊度量,邊傳遞”。可見,可信度量是可信計算的基礎(chǔ)。TCG組織自成立以來,制定并公布了一系列規(guī)范,其中,規(guī)范架構(gòu)概覽對完整性度 量、存儲和報告進行了詳細的描述。規(guī)范中給出的完整性度量是指獲得影響平臺完整性 (可信性)的平臺屬性的度量值,并把度量值的摘要存入平臺配置寄存器中的這樣一個過 程。完整性度量、存儲和報告三者是分不開的,完整性報告是指對外證明記錄在平臺配置寄 存器中的完整性度量值的過程。完整性度量、存儲和報告的觀念是,允許平臺進入任何可能 的狀態(tài),包括不受歡迎的狀態(tài)和不安全的狀態(tài),但是,不允許平臺謊報它所處的狀態(tài)??梢?用另外一個獨立的過程來評估完整性狀態(tài)并確定合理的響應(yīng)。TCM(Trusted Cryptography Module)是我國依照TPM標準制造的可信芯片,為了 規(guī)范企業(yè)廠商對TCM的使用,2007年底,由國家密碼管理局頒布了《可信計算密碼支撐平臺 功能與接口規(guī)范》,主要以國內(nèi)密碼算法為基礎(chǔ),結(jié)合國內(nèi)安全需求與產(chǎn)業(yè)市場,借鑒國際 先進的可信計算技術(shù)框架與技術(shù)理念并自主創(chuàng)新。規(guī)范中指出,完整性度量與存儲是指計 算部件的度量值,記錄該事件到事件日志,并把度量值記入可信密碼模塊內(nèi)相應(yīng)的平臺配 置寄存器(PCR)中。無論是TCG規(guī)范還是我國的可信計算規(guī)范,都只描述了系統(tǒng)啟動期間的可信度量 方法,即從系統(tǒng)加電開始到操作系統(tǒng)啟動之前靜態(tài)代碼和數(shù)據(jù)的度量。于是,一些企業(yè)和科 研院所開始探索操作系統(tǒng)及其之上的軟件可信度量方法和技術(shù)。2003年,IBM根據(jù)TCG規(guī)范,提出了完整性度量框架IMAantegrity Measurement Architecture)。IMA是一個支持Linux的執(zhí)行架構(gòu),該框架的目的是為了解決分布式應(yīng)用 之間——尤其是在分布式運行時間環(huán)境當中,建立信任關(guān)系的難題。該可信平臺的工作過 程是系統(tǒng)啟動后,把控制權(quán)交給一個不變基;不變基將度量BIOS的完整性,通過計算一個 SHAl確保其內(nèi)容的哈希值,把結(jié)果保存在TPM中;接下來度量下一個啟動程序的代碼,同樣 計算哈希值,確保其可信;這個過程是個遞歸過程,以保證系統(tǒng)是步步為營的啟動起來的。2005年,卡內(nèi)基梅隆大學(xué)和IBM沃森研究中心提出了為分布式系統(tǒng)建立可信環(huán)境 的BIND(Binding Instruction and Data)框架。BIND把代碼的完整性證明細化為關(guān)鍵代碼段的完整性證明,并為關(guān)鍵代碼段產(chǎn)生的每一組數(shù)據(jù)生成一個認證器。認證器附著到相 應(yīng)的數(shù)據(jù)上,從而實現(xiàn)關(guān)鍵代碼段的完整性證明與其所產(chǎn)生的輸出數(shù)據(jù)的綁定。因此,BIND 可以通過關(guān)鍵代碼段以及其輸入數(shù)據(jù)的完整性證明來達到系統(tǒng)完整性證明的目的。但是, 由于系統(tǒng)由程序員自己決定度量點并在度量點插入BIND提供的hook函數(shù)接口,雖然提高 了度量精度,卻增加了程序員編寫程序的負擔(dān)。而且它無法應(yīng)對系統(tǒng)運行時的許多攻擊。2006年,賓夕法尼亞州立大學(xué)的耶格(T. Jaeger)、IBM沃森研究中心的塞勒和 加州大學(xué)伯克利分校的山克(U. Shankar)提出了基于信息流的I3RIMA(Policy-Reduced Integrity Measurement Architecture)完整性度量體系結(jié)構(gòu),并研究了 SE-Linux為基礎(chǔ) 的原型系統(tǒng)。PRIMA項目的研究工作在IMA研究成果的基礎(chǔ)上對IMA的一個擴展和增強,引 入CW-Lite信息流模型來處理組件依賴關(guān)系,在基于信息流的系統(tǒng)完整性動態(tài)度量方面進 行了卓有成效的嘗試。PRIMA的實現(xiàn)思路如下在系統(tǒng)啟動時,MAC策略和可信的主體集被 度量。通過這些度量,遠程方能夠構(gòu)建一個信息流圖。遠程方能夠驗證所有來自于可信主 體(該主體在運行時間被驗證運行著可信的代碼)或具有經(jīng)過過濾器接口過濾過的來自于 非可信主體所有流行目標應(yīng)用和可信應(yīng)用信息。而后,度量運行時間的信息。根據(jù)信息流 圖,僅需要度量所需要依賴的代碼。其他代碼都假定為不可信的。而后還需要度量在加載 代碼和加載該代碼主體之間的映射,從而遠程方能夠驗證該主體執(zhí)行了預(yù)期的代碼。PRIMA 僅僅要求附加地度量MAC策略和在加載時間的可信主體,以及代碼和MAC策略主體之間的 匹配問題,由于不再需要度量不可信的主體,從而就可以減少一部分度量值。PRIMA結(jié)構(gòu)充 分體現(xiàn)了安全操作系統(tǒng)對于可信應(yīng)用的支持上的典型工作。馬里蘭大學(xué)提出的Copilot運用一個獨立于主機的硬件協(xié)處理器來實現(xiàn)對主機 預(yù)定內(nèi)存區(qū)域的完整性度量.CoPilot的缺點在于設(shè)計實現(xiàn)復(fù)雜,需要進行多次對內(nèi)存的 映射操作,而且只能先設(shè)定度量周期,如果其度量周期長于進程完整性被損壞的時間,也可 能發(fā)現(xiàn)不了這樣的破壞。LKIM以及后繼的工作針對系統(tǒng)內(nèi)核進行度量,它在靜態(tài)度量的基礎(chǔ)上,定義一系 列變量表示系統(tǒng)的狀態(tài),這些變量值發(fā)生變化的時候,重新進行度量,從而實現(xiàn)動態(tài)度量的 目的。但是它強調(diào)的靜態(tài)度量加上狀態(tài)變量不能表示真正的動態(tài)的度量,而且它度量針對 的是Linux內(nèi)核,對普通的進程無能為力。國內(nèi),人民大學(xué)提出一個基于TPM安全芯片的進程運行時完整性度量的體系結(jié)構(gòu) 及其原型系統(tǒng)I^atos-RIP,用以度量進程從創(chuàng)建到死亡的整個生命周期中的完整性。北京工業(yè)大學(xué)從軟件行為學(xué)的角度,給出了一個可信動態(tài)度量及證明模型。該模 型基于拓展行為跡的度量機制和行為度量信息基的驗證機制,提出了若干用于可信計算行 為動態(tài)度量的定理,進而給出對軟件行為可信的判定方法和模型??尚哦攘拷?jīng)過10年的研究,從多個角度對可信度量進行探索,有基于代碼的 度量(BIND)、基于角色的度量(PRIMA)、基于信息流的度量(PRIMA)、基于周期的度量 (Copilot)、基于進程的度量(Patos-RIP)、基于內(nèi)存的度量、基于軟件行為的度量等等。然 而,TCG所提出的可信,盡管提出了行為可預(yù)期的超前概念,但其核心思想仍然局限在如何 驗證程序代碼是由可信賴的供應(yīng)商提供或者由可信賴的管理者來安裝、維護。對于上層應(yīng) 用軟件在運行過程中的動態(tài)可信度量,尚沒有比較成熟的度量模型和解決方案。因此,本發(fā)明遵循TCG的可信思想,不僅對軟件的加載代碼進行驗證,還將為軟件建立預(yù)期行為樹和實際行為預(yù)期樹,在驗證預(yù)期行為樹可行的基礎(chǔ)上,通過比較軟件的預(yù) 期和實際的行為軌跡、行為發(fā)生時的環(huán)境上下文、環(huán)境參數(shù)等,來實現(xiàn)對軟件的可信度量。

      發(fā)明內(nèi)容
      本發(fā)明的目的是提出一種基于行為的軟件可信度量方法,對軟件預(yù)期行為的合理 性、軟件加載之前代碼的完整性、軟件運行過程中實際行為與預(yù)期行為的偏差進行度量,以 保證軟件生命周期的可信,從而達到保護整個信息系統(tǒng)的可信的目標。為了實現(xiàn)上述目的,一種基于行為的軟件可信度量系統(tǒng),其特征在于所述的應(yīng)用 系統(tǒng)包括以下部分基礎(chǔ)層,由基于可信計算芯片硬件的可信操作系統(tǒng)組成,是一個可信計 算平臺,為核心層的可信度量和可信判定提供基礎(chǔ)支撐;核心層,由可信度量和可信判定兩 部分組成,其中,可信度量部分負責(zé)收集信息,由完整性度量模塊、預(yù)期行為獲取模塊、實際 行為獲取模塊組成;可信判定部分負責(zé)對可信度量部分得到的信息按照判定規(guī)則進行判 定,由完整性驗證模塊、預(yù)期行為驗證模塊、行為對比模塊組成;應(yīng)用層,負責(zé)軟件裝載和運 行。軟件包括源程序軟件和可執(zhí)行程序軟件。軟件供應(yīng)方是指軟件供應(yīng)商,或者是指基于可信計算芯片的可信計算平臺。一種使用上述系統(tǒng)的基于行為的軟件可信度量方法,其包括以下步驟一、從軟件供應(yīng)方獲得軟件;二、在軟件裝載之前,所述完整性驗證模塊借助完整性度量模塊度量軟件內(nèi)容的 完整性;三、完整性檢查通過后,所述預(yù)期行為獲取模塊獲取軟件的預(yù)期行為;四、所述預(yù)期行為驗證模塊驗證軟件預(yù)期行為的合理性;五、安裝軟件,運行軟件;六、軟件運行過程中,所述實際行為獲取模塊獲取軟件的實際行為;七、所述行為對比模塊比較預(yù)期行為和實際行為的差異,判斷軟件的可信性。在所述步驟三中預(yù)期行為獲取模塊使用反匯編靜態(tài)分析技術(shù)在不運行軟件的情 況下分析軟件的可執(zhí)行程序代碼,對程序的可執(zhí)行語句進行控制流分析,并提取程序可達 的所有執(zhí)行路徑,確定程序的控制結(jié)構(gòu),從而得到軟件的預(yù)期行為。在所述步驟三中,得到軟件的預(yù)期行為的具體操作步驟為①對軟件的可執(zhí)行程 序利用反匯編技術(shù)將可執(zhí)行程序轉(zhuǎn)換為匯編語言源程序;②掃描匯編語言源程序,找到所 有系統(tǒng)調(diào)用指令,并把每個系統(tǒng)調(diào)用指令之間的所有指令記錄為指令塊IB ;③記錄系統(tǒng)調(diào) 用的名稱SysCallName ;④記錄系統(tǒng)調(diào)用上下文SCC ;⑤如果系統(tǒng)調(diào)用涉及文件調(diào)用參數(shù), 那么收集文件名稱、可執(zhí)行文件、系統(tǒng)文件、配置文件、腳本文件、數(shù)據(jù)文件、大小、更新日 期、操作類型、文件完整性的哈希值;⑥用控制流圖對分支指令進行形式化表示;⑦建立預(yù) 期行為樹。在所述步驟六中運用鉤子機制,監(jiān)視軟件運行過程中系統(tǒng)調(diào)用事件的發(fā)生,記錄 系統(tǒng)調(diào)用序列,以監(jiān)視軟件的實際運行狀態(tài)以及提取實際行為。在所述步驟二中,軟件完整性驗證是指驗證軟件的代碼、文件、數(shù)據(jù)等沒有被篡改 過。
      在所述步驟七中,對比規(guī)則是①實際行為樹在每添加一個節(jié)點后,與預(yù)期行為樹 相比,該樹仍然是預(yù)期行為樹的一顆子樹;②把實際行為樹的新增邊的信息與預(yù)期行為樹 的對應(yīng)邊信息進行比較,分別判斷系統(tǒng)它們的系統(tǒng)調(diào)用名稱SysCallName、系統(tǒng)上下文值 SCCV和文件完整性哈希值是否相等。如果滿足這兩個規(guī)則,則說明軟件在按照預(yù)期行為方 式實現(xiàn)預(yù)期目標,否則軟件存在安全隱患,報告給可信操作系統(tǒng),阻止其運行并回退到安全 狀態(tài)。在所述步驟四中,行為合理性包括行為可行性、行為之間的依賴關(guān)系滿足性。與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是在軟件加載到系統(tǒng)之前,不僅驗證了代碼 和數(shù)據(jù)的完整性,還驗證了軟件預(yù)期行為的合理性,并且在軟件加載到系統(tǒng)之后,通過對比 軟件的實際行為和已知的預(yù)期行為的差異,實現(xiàn)了軟件運行期間的動態(tài)度量,從而保證了 軟件是按照“預(yù)期行為達到了預(yù)期目標”。


      圖1為基于行為的軟件可信度量整體架構(gòu)示意圖;圖2為預(yù)期行為樹示例;
      具體實施例方式為使本發(fā)明的特征及優(yōu)點得到更清楚的了解,以下結(jié)合附圖,作詳細說明如下如 圖1所示,描述了本發(fā)明的可信度量架構(gòu)示意圖,分為3層,最低層是基礎(chǔ)層,是可信計算平 臺,由基于可信計算芯片硬件的可信操作系統(tǒng)組成;中間層是核心層,由可信度量和可信判 定兩部分組成,其中,可信度量部分負責(zé)收集信息,可信判定部分負責(zé)對可信度量部分得到 的信息按照判定規(guī)則進行判定;最上層是應(yīng)用層,負責(zé)軟件裝載和運行。軟件在裝載之前,完整性度量模塊接收軟件供應(yīng)者提供的TPM/TCM身份密鑰并計 算軟件代碼的哈希值(分別采用SHAl算法或MD5算法得到一個120bit的數(shù)值),傳遞給 可信判定部分的完整性驗證模塊。可信計算平臺預(yù)先保存著一份各個軟件供應(yīng)者的TPM/ TCM身份密鑰以及它們能夠提供的軟件代碼的哈希值序列表,所以,完整性驗證模塊的判定 規(guī)則就是直接在表中查找完整性度量模塊獲得的TPM/TCM身份密鑰和哈希值,如果找到, 則表明軟件是完整可信的,否則,阻止軟件裝載。軟件通過完整性驗證后,預(yù)期行為獲取模塊使用軟件逆向工程技術(shù)的靜態(tài)分析技 術(shù)在不運行軟件的情況下分析軟件的可執(zhí)行程序代碼,對程序的可執(zhí)行語句進行控制流分 析,并提取程序可達的所有執(zhí)行路徑,確定程序的控制結(jié)構(gòu),從而推斷軟件的預(yù)期行為,建 立預(yù)期行為樹。具體步驟是①對軟件的可執(zhí)行程序進行逆向工程,利用反匯編技術(shù)將可 執(zhí)行程序轉(zhuǎn)換為匯編語言源程序(常用的靜態(tài)分析工具是W32DASM、IDA和HIEW等);② 掃描匯編語言源程序,找到所有系統(tǒng)調(diào)用指令,并把每個系統(tǒng)調(diào)用指令之間的所有指令記 錄為指令塊IB ;③記錄系統(tǒng)調(diào)用的名稱SysCallName ;④記錄系統(tǒng)調(diào)用上下文SCC,它是指
      一個函數(shù)調(diào)用名稱序列 <FuncNamel, FuncName2, FuncName3,......>,表示 FuncNamel 調(diào)用
      FuncName2, FuncName2調(diào)用FuncName3......,系統(tǒng)調(diào)用上下文值SCCV的計算公式是SCCV =
      Hash(SCC);⑤如果系統(tǒng)調(diào)用涉及文件調(diào)用參數(shù),那么收集文件名稱、類型(可執(zhí)行文件、系 統(tǒng)文件、配置文件、腳本文件、數(shù)據(jù)文件)、屬性(大小、更新日期)、操作類型(讀、寫)、文件完整性的哈希值FIH ;⑥用控制流圖對分支指令進行形式化表示CFG = <V,E>,其中V = Ivi I Vi對應(yīng)指令塊IBJ,E = Kvi, Vj> I指令塊IBi到IB^之間存在控制權(quán)轉(zhuǎn)移};⑦建立預(yù) 期行為樹,示例如圖2所示,每條邊的信息表示EI = <SysCalIName, SCCV,F(xiàn)IH>。預(yù)期行為 樹的信息存儲和報告通過TPM/TCM的可信存儲和報告機制實現(xiàn)。預(yù)期行為樹可具體存儲成 一個堆?;驍?shù)組。預(yù)期行為驗證模塊負責(zé)分析預(yù)期行為獲取模塊收集的信息,以判定軟件的預(yù)期行 為是否合理、合法、可行。具體地實施是根據(jù)軟件來源的TPM/TCM信息和EI,結(jié)合信息系統(tǒng) 自身的訪問控制等安全策略,驗證軟件是否有權(quán)進行系統(tǒng)調(diào)用,是否有權(quán)訪問和執(zhí)行系統(tǒng) 文件。如果通過驗證,則軟件可裝載到信息系統(tǒng)當中,否則,拒絕軟件裝載。接下來,軟件將裝載到信息系統(tǒng)當中,開始動態(tài)運行。我們運用鉤子機制,監(jiān)視軟 件運行過程中系統(tǒng)調(diào)用事件的發(fā)生,記錄系統(tǒng)調(diào)用序列。以源代碼開放的Linux操作系統(tǒng) 為例,Linux安全模塊LSM(Linux Security Module)提供了一系列安全相關(guān)的鉤子函數(shù)實 現(xiàn)。可采用程序植入的方式,通過改寫與行為監(jiān)控相關(guān)的鉤子函數(shù),實現(xiàn)對軟件運行過程中 所發(fā)出的系統(tǒng)調(diào)用的動態(tài)攔截,以監(jiān)視軟件的實際運行狀態(tài)以及提取實際行為特征。當有 系統(tǒng)調(diào)用發(fā)生時,事件感知器ES會被觸發(fā),經(jīng)事件適配器EA識別后,由事件分發(fā)器ED啟動 方法集MS中相應(yīng)的特征提取方法去提取當前軟件系統(tǒng)調(diào)用行為的名稱SysCallName、系統(tǒng) 調(diào)用上下文SCC以及被調(diào)用文件的名稱、類型、屬性、操作類型(讀、寫)、文件完整性的哈希 值FIH,然后計算出SCCH,類似預(yù)期行為樹的建立過程,建立實際行為樹,再經(jīng)TPM進行完整 性保護之后上報給行為對比模塊。行為對比模塊負責(zé)對比實際行為與預(yù)期行為的差異。對比規(guī)則是①實際行為樹 在每添加一個節(jié)點后,與預(yù)期行為樹相比,該樹仍然是預(yù)期行為樹的一顆子樹;②把實際行 為樹的新增邊的信息與預(yù)期行為樹的對應(yīng)邊信息進行比較,分別判斷系統(tǒng)它們的系統(tǒng)調(diào)用 名稱SysCallName、系統(tǒng)上下文值SCCV和文件完整性哈希值是否相等。如果滿足這兩個規(guī) 則,則說明軟件在按照預(yù)期行為方式實現(xiàn)預(yù)期目標,否則軟件存在安全隱患,報告給可信操 作系統(tǒng),阻止其運行并回退到安全狀態(tài)。以上所述的實例對本發(fā)明的各個部分的實現(xiàn)方式作了詳細的說明,但是本發(fā)明的 具體實現(xiàn)形式并不局限于此,對于本技術(shù)領(lǐng)域的一般技術(shù)人員來說,在不背離本發(fā)明所述 方法的精神和權(quán)利要求范圍的情況下對它進行的各種顯而易見的改變都在本發(fā)明的保護 范圍之內(nèi)。
      權(quán)利要求
      1.一種基于行為的軟件可信度量系統(tǒng),其特征在于所述的應(yīng)用系統(tǒng)包括以下部分 基礎(chǔ)層,由基于可信計算芯片硬件的可信操作系統(tǒng)組成,是一個可信計算平臺,為核心層的可信度量和可信判定提供基礎(chǔ)支撐;核心層,由可信度量和可信判定兩部分組成,其中,可信度量部分負責(zé)收集信息,由完 整性度量模塊、預(yù)期行為獲取模塊、實際行為獲取模塊組成;可信判定部分負責(zé)對可信度量 部分得到的信息按照判定規(guī)則進行判定,由完整性驗證模塊、預(yù)期行為驗證模塊、行為對比 模塊組成;應(yīng)用層,負責(zé)軟件裝載和運行。
      2.如權(quán)利要求1所述的基于行為的軟件可信度量系統(tǒng),其特征在于軟件包括源程序 軟件和可執(zhí)行程序軟件。
      3.如權(quán)利要求1所述的基于行為的軟件可信度量系統(tǒng),其特征在于軟件供應(yīng)方是指 軟件供應(yīng)商,或者是指基于可信計算芯片的可信計算平臺。
      4.一種使用權(quán)利要求1-3任一項所述系統(tǒng)的基于行為的軟件可信度量方法,其特征在 于其包括以下步驟一、從軟件供應(yīng)方獲得軟件;二、在軟件裝載之前,所述完整性驗證模塊借助完整性度量模塊度量軟件內(nèi)容的完整性;三、完整性檢查通過后,所述預(yù)期行為獲取模塊獲取軟件的預(yù)期行為;四、所述預(yù)期行為驗證模塊驗證軟件預(yù)期行為的合理性;五、安裝軟件,運行軟件;六、軟件運行過程中,所述實際行為獲取模塊獲取軟件的實際行為;七、所述行為對比模塊比較預(yù)期行為和實際行為的差異,判斷軟件的可信性。
      5.如權(quán)利要求4所述的方法,其特征在于在所述步驟三中預(yù)期行為獲取模塊使用反 匯編靜態(tài)分析技術(shù)在不運行軟件的情況下分析軟件的可執(zhí)行程序代碼,對程序的可執(zhí)行語 句進行控制流分析,并提取程序可達的所有執(zhí)行路徑,確定程序的控制結(jié)構(gòu),從而得到軟件 的預(yù)期行為。
      6.如權(quán)利要求5所述的方法,其特征在于在所述步驟三中,得到軟件的預(yù)期行為的具 體操作步驟為①對軟件的可執(zhí)行程序利用反匯編技術(shù)將可執(zhí)行程序轉(zhuǎn)換為匯編語言源程 序;②掃描匯編語言源程序,找到所有系統(tǒng)調(diào)用指令,并把每個系統(tǒng)調(diào)用指令之間的所有指 令記錄為指令塊;③記錄系統(tǒng)調(diào)用的名稱;④記錄系統(tǒng)調(diào)用上下文;⑤如果系統(tǒng)調(diào)用涉及 文件調(diào)用參數(shù),那么收集文件名稱、可執(zhí)行文件、系統(tǒng)文件、配置文件、腳本文件、數(shù)據(jù)文件、 大小、更新日期、操作類型、文件完整性的哈希值;⑥用控制流圖對分支指令進行形式化表 示;⑦建立預(yù)期行為樹。
      7.如權(quán)利要求4所述的方法,其特征在于在所述步驟六中運用鉤子機制,監(jiān)視軟件 運行過程中系統(tǒng)調(diào)用事件的發(fā)生,記錄系統(tǒng)調(diào)用序列,以監(jiān)視軟件的實際運行狀態(tài)以及提 取實際行為。
      8.如權(quán)利要求4所述的方法,其特征在于在所述步驟二中,軟件完整性驗證是指驗證 軟件的代碼、文件、數(shù)據(jù)等沒有被篡改過。
      9.如權(quán)利要求6所述的方法,其特征在于在所述步驟七中,以相同于預(yù)期行為樹的建立過程,建立實際行為樹,而對比規(guī)則是①實際行為樹在每添加一個節(jié)點后,與預(yù)期行為 樹相比,該樹仍然是預(yù)期行為樹的一顆子樹;②把實際行為樹的新增邊的信息與預(yù)期行為 樹的對應(yīng)邊信息進行比較,分別判斷系統(tǒng)它們的系統(tǒng)調(diào)用名稱、系統(tǒng)上下文值和文件完整 性哈希值是否相等;如果滿足這兩個規(guī)則,則說明軟件在按照預(yù)期行為方式實現(xiàn)預(yù)期目標, 否則軟件存在安全隱患,報告給可信操作系統(tǒng),阻止其運行并回退到安全狀態(tài)。
      10.如權(quán)利要求4所述的方法,其特征在于在所述步驟四中,行為合理性包括行為可 行性、行為之間的依賴關(guān)系滿足性。
      全文摘要
      本發(fā)明公開了一種基于行為的軟件可信度量系統(tǒng)及方法,本發(fā)明的系統(tǒng)由基礎(chǔ)層、核心層和用戶層三個層次組成,通過在軟件裝載之前事先提取軟件的預(yù)期行為,與軟件實際運行中的行為進行比較來實現(xiàn)軟件的可信度量。本方法解決了軟件運行時的可信度量問題,以保證“預(yù)期行為達到預(yù)期目標”。
      文檔編號G06F21/00GK102073816SQ201010618258
      公開日2011年5月25日 申請日期2010年12月31日 優(yōu)先權(quán)日2010年12月31日
      發(fā)明者蘭雨晴, 李紅娟, 韓濤 申請人:蘭雨晴
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1