終端可信軟體的度量和認證的製作方法
2023-10-08 12:33:04 1
終端可信軟體的度量和認證的製作方法
【專利摘要】本發明專利首先對應用軟體可信性的靜態度量和動態度量分別進行了研究,並從可行性方面分別對兩種度量方法進行了分析和改進;然後,對實現應用軟體可信性混合度量需要使用的相關關鍵技術進行了分析和介紹,主要是系統調用截獲技術,包括核心級的截獲技術和用戶級的截獲技術;最後,設計和實現了應用軟體可行性混合度量的應用系統,系統是C/S工作模式,從阻止危害軟體的運行來保護計算機系統的安全。
【專利說明】終端可信軟體的度量和認證
【技術領域】:
[0001]首先,對應用軟體可信性的靜態度量和動態度量分別進行了研究,並從可行性方面分別對兩種度量方法進行了分析和改進;然後,對實現應用軟體可信性混合度量需要使用的相關關鍵技術進行了分析和介紹,主要是系統調用截獲技術,包括核心級的截獲技術和用戶級的截獲技術;最後,設計和實現了應用軟體可行性混合度量的應用系統,系統是C/S工作模式,從阻止危害軟體的運行來保護計算機系統的安全。
【背景技術】:
[0002]現代社會是資訊時代,信息的傳遞無時無刻不在影響著人們的生活,隨著信息技術的發展,信息安全問題越來越嚴重。信息安全問題已經上升到國家安全層面,信息安全問題面臨著前所未有的挑戰。由防火牆、入侵檢測和病毒防範為主構成的傳統信息安全系統,在變化多端的惡意攻擊手段面前毫無防禦能力,「老三樣、堵漏洞、做高牆、防外攻,防不勝防」就是信息安全的基本現狀[1]。面對信息安全的種種問題,人們意識到要解決信息安全問題,必須確保計算機源頭的信息安全,必須從計算機的晶片、硬體結構等底層出發,對計算機平臺進行綜合管理,這樣出現了可信計算[2]。近年來,可信計算技術正越來越受到人們的關注,成為信息安全新的熱點研究方向,自1983年美國國防部制定了世界上第一個《可信計算機系統評價準則》TCSEC(Trusted computer system evaluation criteria) [3],可信計算已經經歷了很長的發展歷程,國內外已經取得一些成就,一些技術已經在實踐中得到了應用。可信計算體現整體安全思想,有別於傳統的安全技術,從終端開始防範攻擊。可信計算的核心思想是在計算機系統中加入一個可信晶片,把可信晶片作為一個信任根,從信任根開始一級度量認證一級,一級信任一級,這樣就建立一個信任鏈,從信任根開始到硬體設備、作業系統、應用軟體、網絡系統,形成一個完整的可信計算機系統[4]。一個可信計算機系統由可信根、可信硬體平臺、可信作業系統和可信作業系統之上的可信應用系統組成。
【發明內容】
:
[0003](I)對應用軟體可信性的靜態度量方法進行研究,主要分析了靜態度量方法存在的劣勢,提出將驗證資料庫分到客戶端和伺服器端兩部分,客戶端存放少量的常用數據,這樣能夠很好地保證驗證效率。
[0004](2)對應用軟體可信性的動態度量方法進行研究,主要從實時監控應用軟體的軟體行為方面進行了研究,對危害軟體的危害行為進行了總結歸納,監控應用軟體的軟體行為主要是監控軟體的危害行為,在這些危害行為發生之前阻止其發生,保證計算機的安全。
[0005](3)基於以上兩種應用軟體可信性的度量方法,提出一種混合度量方面,並且從可信性、應用性方面進行了分析。對其中所需要使用到的技術進行了深入的研究,如系統調用截獲技術、驅動程序設計等。
[0006](4)設計和實現了一個基於應用軟體可信性混合度量的安全防護系統。該系統是在C/S模式下工作,分客戶端和伺服器兩部分,客戶端又包括應用層和驅動層兩次結構。該系統能夠很好地阻止危害軟體危害行為的發生,保證計算機安全穩定地運行。
【專利附圖】
【附圖說明】:
[0007]圖1:系統總體框架圖
[0008]圖2:系統運行過程圖
[0009]圖3:客服端各模塊交互圖
[0010]圖4:伺服器各模塊交互圖
【具體實施方式】:
[0011]一、系統的總體框架
[0012]系統總體框架分為以下三個部分(如附圖圖1):
[0013]客戶端驅動層模塊:客戶端驅動層模塊負責監控計算機中將要啟動和加載的進程,將截獲到將要啟動和加載的進程信息發送到應用層的客戶端;接受從客戶端發送來的信息,並做出相應反應比如對運行進程的控制操作,如掛起進程、結束進程等操作。
[0014]客戶端:與客戶端的啟動層進行交互包含獲取從驅動層傳來的進程信息和向驅動層發送操作命令;如果客戶端資料庫中不存在進程的信息,則需要將相關信息發送到伺服器,並接收從伺服器返回的查詢結果;統計陌生程序出現的次數和狀況,發送程序到伺服器供伺服器對陌生程序進程可信度量;實時監控應用軟體的軟體行為;定期對客戶端資料庫進行維護,清理一些不存在的應用軟體信息,提高查詢效率。
[0015]伺服器:與客戶端進行交互包括接收客戶端發來的請求和回復根據請求查詢的相應結果;度量新的應用軟體的可信性。
[0016]二、系統運行過程
[0017]系統的整體運行過程(如附圖圖2所示):
[0018]首先在驅動層中設置一個回調函數,當有進程啟動時,回調函數捕獲到將要啟動進程的進程信息然後從中解析出進程名稱、進程所在路徑等信息,並將這些信息傳遞給應用層的客戶端程序,回調函數結束。
[0019]客戶端對接收到的進程求其二進位代碼的Hash值,然後首先從客戶端的資料庫中查詢應用軟體的可信性,如果客戶端的資料庫中不存在此應用軟體的可信信息,則發送請求信息到伺服器端,伺服器端來完成進程信息的查詢。通過與伺服器端資料庫中的進程比較來判斷將要啟動進程的可信性。伺服器端將查詢的結果返回客戶端,客戶端根據客戶端資料庫查詢的結果或從伺服器返回的結果做出相應的行動。如果是可信的進程就允許通過,讓其正常運行;如果是不可信的危害進程,就結束進程阻止其運行。對於新出現的程序,比如用戶自己編寫的程序在客戶端和伺服器資料庫中都不存在其可信信息,採取提醒用戶的方式,如果用戶自己希望這部分進程運行,就對這部分進程進行動態度量,實時監控這部分進行的軟體行為,如果在度量過程中發現會產生危害的進程,則提醒用戶,並且結束此進程阻止其繼續運行。
[0020]三、系統主要功能設計與實現
[0021](I)客服端部分的設計與實現(如附圖圖3所示):
[0022]客戶端主要包括進程啟動截獲模塊、軟體行為截獲模塊、資料庫模塊、資料庫維護更新模塊、與伺服器通信等功能模塊。各模塊的相互交互如圖3所示:
[0023]進程啟動截獲模塊主要是對將要啟動進程的截獲操作、進程控制操作和對客戶端資料庫的操作。進程啟動的截獲採用的技術是截獲系統服務分派表SSDT,通過編寫驅動層程序來實現。進程控制包括掛起、結束、恢復等操作。
[0024]軟體行為截獲模塊是對應用軟體的軟體行為截獲,通過從用戶級截獲系統調用來實現。軟體行為截獲模塊也有與用戶交互、進程控制的功能,根據用戶的選擇進而來對截獲的軟體行為做出對應的操作。
[0025]資料庫維護更新模塊主要是為了保證資料庫查詢的高效性,定期對安裝在客戶端計算機上的應用軟體進行掃描並與客戶端限制列表中的內容進行比較,對限制列表定期進行更新維護。當計算機有新的應用軟體安裝時,對資料庫進行增加,如果有的程序被卸載,相應地刪除資料庫中相關的內容。
[0026](2)伺服器部分的設計與實現(如附圖圖4所示):
[0027]伺服器主要包括可信驗證模塊、資料庫操作模塊、與客戶端通信等功能模塊。各模塊的相互交互如附圖圖4所示。
[0028]資料庫操作模塊主要是進行根據客戶端發送來的查詢請求來對資料庫進行查詢、對新的數據項加入資料庫等操作。
[0029]可信驗證模塊主要是驗證應用軟體的可信性來擴大伺服器的資料庫的容量,驗證方法主要包括:收集軟體廠商提供的正版軟體的Hash值;通過在虛擬環境中運行應用軟體,根據應用軟體的軟體行為和運行軌跡來判斷軟體的可信性,這部分工作需要手動來完成。
[0030]通信模塊與客戶端的通信模塊一起完成伺服器與客戶端的通信功能,為伺服器和客戶端提供信息交互的作用。
【權利要求】
1.本專利在對應用軟體可信性靜態度量和動態度量進行研究的基礎上,針對這兩種度量方法存在的缺陷,提出了應用軟體可信性的混合度量。
2.設計和實現了基於應用軟體可信性混合度量的安全防護系統,該系統屬於C/S工作模式,通過對運行在終端計算機上的應用軟體可信性的度量,允許可信的應用軟體運行,阻止不可信的應用軟體運行,以達到保護終端計算機安全的目的。
3.本系統分為客戶端和服務兩部分,選用了SHA-1哈希算法,客戶端和伺服器的通信採用了 OpenSSL軟體包提供的加解密、摘要算法、生成證書等服務。
4.本系統可以對應用軟體的可信性進行度量,可以解決應用軟體帶來的危害問題,能夠保證運行在計算機上的應用軟體是安全可靠的,其發生的軟體行為不會給計算機帶來危害,如果有危害則在危害軟體的行為發生前阻止其發生。
【文檔編號】G06F21/51GK103679003SQ201310254451
【公開日】2014年3月26日 申請日期:2013年6月25日 優先權日:2013年6月25日
【發明者】韓永飛 申請人:廈門密安信息技術有限責任公司