麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

一種動態可信度量方法及安全嵌入式系統的制作方法

文檔序號:6363051閱讀:273來源:國知局
專利名稱:一種動態可信度量方法及安全嵌入式系統的制作方法
技術領域
本發明涉及一種動態可信度量方法及安全嵌入式系統,屬于工業控制安全技術領域。
背景技術
一直以來,信息安全的主要技術是防火墻、入侵檢測和殺毒軟件。傳統的這三種信息安全技術是以“防外”為重點,與目前的信息安全問題主要源自內部(用戶行為等)的實際情況不相適應,尤其是工業控制系統,其更嚴重的攻擊來自內部物理層的攻擊,傳統的信息安全手段對這類攻擊的預防已無能為力;另外,人們應對信息安全問題的注意力主要集中在對服務器和網絡設備的保護上,都是被動的封堵的辦法,忽略了對終端的主動的保護,這就造成了執行代碼的可被修改,病毒程序的可被植入并運行;超級用戶權限的可被竊取;私密信息的可被讀取等漏洞。而近年來,嵌入式系統被廣泛應用在工業領域中,但是嵌入式系統在最初的設計時沒有過多地考慮其安全特性,使得現有的安全方案大多基于軟件,缺乏硬件層面的支持。因此,越來越多的研究開始轉向基于硬件的安全方案,其中,比較多的是在硬件平臺上引入安全芯片(可信平臺模塊TPM)來提高終端系統的安全性,即可信計算技術。可信嵌入式系統設計的目標是使系統運行的各種固件和軟件具有可信賴性,全子系統從一個硬件組成的信任根源開始,從系統上電到操作系統上層軟件的運行形成信任鏈,每一個環節都具有完整性檢測、存儲保護和狀態報告等機制,以確保系統運行的軟件實體在該環節中不被非法改變。現有的TCG (可信計算組織)度量方法僅提供程序裝載時的度量,不能響應實時運行攻擊。現在有不少研究機構和大學對可信度量技術進行了研究,從多個角度對可信度量進行探索,如IMA度量架構、基于信息流的度量(PRIMA)。IMA在操作系統載入到內存時,對程序文件進行度量,但由于它在系統調用中插入了度量點,因而會產生大量冗余;PRIMA對此進行了改進,與SELinux結合,使用了策略規約的方法減少了冗余度,但IMA和PRIMA從本質說,仍然是靜態度量系統;LKIM等人研究基于內核的上下文檢查的度量方法,它采用靜態度量加上狀態變量的方式,但并沒有實現真正的動態度量,而且它度量針對的Iinux 內核,對普通的進程無能為力;基于屬性的度量不同于此前基于二進制的度量,其度量方式不再是對被度量對象的二進制代碼進行哈希運算得到的摘要,而是確定被度量對象是否滿足需要的安全屬性,但缺點是,屬性一般依賴于應用程序和其運行環境,可擴展性比較差。 這些方法要求監測的應用程序的源代碼被限定在特定的運行環境中,在動態性和實時性方面都有很大缺陷,缺乏靈活性,不能有效阻止或探測實時攻擊。目前大多數商用操作系統將內核程序設計成擁有超級用戶權限,而且內核程序使用共享線性內存以便提高系統效率,這導致了僅僅提供軟件加載驗證的TCG結構容易遭受T0CT0U攻擊,該攻擊利用程序度量和程序使用這個時間差,對程序的內存進行篡改, 導致TPM所提供的平臺信息無法反映出實際的運行情況(采用內存監控機制,發現內存被修改,攻擊事件記錄,通知度量模塊進行響應)。目前出現了一種新的實時攻擊,即被稱為返回導向編程攻擊技術,它不需要注入新的代碼,而是使用已經存在進程內存空間的代碼;這種新的攻擊能夠覆蓋堆棧中的返回地址,指向程序或系統庫中的現有的代碼片段,現有的保護機制如數據執行保護(DEP)已經無能為力。這些實時攻擊使得信息系統面臨這極大的威脅,特別是工業控制系統,這些攻擊可能造成更嚴重的財產和生命安全,目前還沒有完善的解決方案。

發明內容
本發明的目的在于,提供一種動態可信度量方法及安全嵌入式系統,能有效地探測和防御復雜實時攻擊。并且能夠主動探測和防御內部物理層的攻擊,實現安全嵌入式系統平臺。為解決上述技術問題,本發明采用如下的技術方案一種動態可信度量方法,包括以下步驟
Si,硬件層通過TPM芯片和傳統硬件重新設計可信BIOS,信任鏈從TPM安全芯片、可信 BIOS、可信OS內核、嵌入式軟件棧傳遞到應用程序,實現動態可信度量模塊DTM的可信啟動;也可以將CRTM(CRTM是平臺執行RTM的執行代碼,在一個可信平臺中有三個可信根度量可信根RTM、存儲可信根RTS、報告可信根RTR)集成到TPM中,使得CRTM不直接與嵌入式設備的主處理器進行交互,避免了平臺異構性對CRTM帶來的影響;
S2,應用層度量請求模塊根據來自安全設備的可疑事件及本地安全策略需求生成度量請求信息,并將其格式化,發送度量請求給內核層的動態可信度量模塊DTM,激活動態可信度量模塊DTM;
S3,動態可信度量模塊DTM對系統進程或模塊進行可信度量并響應。前述的一種動態可信度量方法中,所述實現動態可信度量模塊DTM的可信啟動的步驟包括
S21,啟動TPM芯片進行初始化;
S22,由可信根依次對BootLoader、OS和應用程序3個實體進行完整性度量,如果所有被度量實體的完整性沒有被破壞,就轉到步驟S23 ;如果實體的完整性被破壞,就轉到步驟 S24 ;
S23,將完整性度量值存儲在TPM內部的平臺配置寄存器(PCR)中,系統控制權交給 BootLoader開始啟動,然后啟動0S,最后啟動應用程序;
S24,由上述實體的備份替換上述實體,再重新度量該實體的完整性,只有3個實體的完整性都通過驗證之后,才能正常啟動,否則拒絕啟動執行。前述的一種動態可信度量方法中,所述步驟S3包括 S31,當監測到度量請求時,將DTM模塊插入內核;
S32,判斷度量目標程序是進程還是內核模塊,根據其不同的數據結構分別進行處理; 由于進程和模塊度量的關鍵數據(主體)不完全相同,因此其度量處理的過程有所不同,需要分別進行處理;
S33,對程序的靜態二進制進行度量,根據跟蹤控制策略重寫程序二進制代碼; S34,程序進程被激活,開始對程序進行動態跟蹤,跟蹤代碼在相應的數據段存儲跟蹤數據;
S35,隨著跟蹤事件的發生,跟蹤代碼動態地更新跟蹤數據;
S36,將這些跟蹤數據交與TPM芯片做散列值,并由TPM芯片進行簽名,將散列值和簽名存入事先定義好的數據結構中;
S37,處理并響應接收的度量信息。前述的一種動態可信度量方法中,所述系統與其他終端或設備進行遠程認證,如果該終端或設備也擴展了 TPM安全芯片,系統與該終端或設備之間通過各自的TPM模塊相互進行可信報告。遠程認證終端服務程序可以與訪問控制模塊相交互,通過遠程認證進行雙方的可信報告,如果通過驗證則生成會話標志,可以進行會話,否則中斷會話。前述的一種動態可信度量方法中,當監測到內存更改時就激活動態可信度量模塊 DTM,對系統進行動態可信度量,可以作為度量請求的一種補充形式,實現真正的動態度量, 采用虛擬技術,可以不改動硬件,可擴展性較好。前述的一種動態可信度量方法中,向嵌入式系統加載新的軟件和升級現有的軟件,并由中心管理平臺統一管理。主要包括系統升級、加載新的操作系統核心模塊、升級已有的操作系統核心模塊、加載新的應用程序、升級已有的應用程序等,通過嵌入式終端中引入TPM構建安全嵌入式系統,通過應用基于TPM的身份鑒別、動態可信度量、數字簽名等技術來保障系統升級的安全可靠,從可信的角度考慮操作的安全性、可靠性及可恢復性。實現前述方法的一種安全嵌入式系統,包括硬件層、內核層(OS層)和應用層(用戶層);
其中,硬件層包括ARM處理器、BIOS系統、外圍設備和TPM模塊,通過擴展TPM安全芯片作為信任根,信任鏈從TPM安全芯片、可信BIOS、可信OS內核、嵌入式軟件棧傳遞到應用程序;ARM處理器具有高性能、低功耗的顯著優點;外圍設備包括存儲器、輸入設備、輸出設備、外圍接口、硬盤、電源、內存卡及其他嵌入式固件等;TPM具有密鑰管理和配置管理等特性,能夠被用于平臺的完整性驗證,用戶身份認證和數據簽名等,其內部還包括一組被稱為 PCR (平臺配置寄存器)的易失性存儲器,被用來作為完整性度量的依據;在基于ARM處理器的嵌入式系統中,通過SPI接口并基于FPGA來擴展TPM芯片,通過FPGA實現信號間的轉換,負責特殊LPC總線周期的生成。內核層包括度量接口模塊和動態可信度量模塊DTM ;TPM接口可以采用LPC總線接口,也可以通過SPI接口采用FPGA來擴展TPM芯片。應用層包括用來激活動態可信度量模塊DTM的度量請求模塊,位于應用層的用戶空間,主要接收來自遠端詢問、訪問控制等安全設備的可疑事件以及本地安全策略需求等, 并將其格式化;度量請求模塊與度量接口模塊進行交互。前述的一種安全嵌入式系統中,所述動態可信度量模塊DTM包括 程序加載引擎,用于對系統進程或模塊進行靜態可信度量;
跟蹤度量策略模塊,用于預先定義所有需要度量的程序二進制的跟蹤事件,以及與不同進程及模塊相匹配的模式和跟蹤代碼;
跟蹤實現組件,用于對進程或模塊的二進制代碼進行重寫,即附加跟蹤代碼,用來實現對程序動態跟蹤;跟蹤實現組件的實現可以采用基于信息流的動態污點分析技術、基于數據流跟蹤和庫函數識別技術等;跟蹤度量引擎,用于對系統進程或模塊進行動態可信度量,實現程序動態事件跟蹤及跟蹤數據維護;負責與TPM模塊的交互,將跟蹤數據交與TPM芯片做散列值,并由TPM進行簽名,將散列值和簽名存入事先定義好的數據結構中;
度量響應引擎,用于根據度量結果進行判斷并響應,將度量信息組裝,發送回遠端或本地。前述的一種安全嵌入式系統中,內核層還包括認證代理模塊,與動態可信度量模塊進行交互,用于系統與其他終端或設備進行遠程認證,如果該終端或設備也擴展了 TPM 安全芯片,系統與該終端或設備之間通過各自的TPM模塊相互進行可信報告,如果通過驗證則生成會話標志,可以進行會話,否則中斷會話,這樣大大增加了通訊的安全性。前述的一種安全嵌入式系統中,內核層還包括內存監視器,用于監視內存更改,當監測到內存更改時就激活動態可信度量模塊DTM,對內核進行動態可信度量,可以作為度量請求的一種補充形式,實現真正的動態度量,采用虛擬技術,可以不改動硬件,可擴展性較好。前述的一種安全嵌入式系統中,內核層還包括可信在線升級模塊,與動態可信度量模塊進行交互,用于向系統加載新的軟件和升級現有的軟件,并由中心管理平臺統一管理。主要包括系統升級、加載新的操作系統核心模塊、升級已有的操作系統核心模塊、加載新的應用程序、升級已有的應用程序等,通過嵌入式終端引入TPM構建安全嵌入式系統,通過應用基于TPM的身份鑒別、動態可信度量、數字簽名等技術來保障系統升級的安全可靠, 從可信的角度考慮操作的安全性、可靠性及可恢復性。與現有技術相比,本發明從可信硬件層、可信操作系統層和可信應用層這三個層上來保證嵌入式系統的安全,動態可信度量架構考慮了程序裝載可信度量技術、動態跟蹤技術、內存監視、遠程認證、訪問控制策略等技術,來構建安全嵌入式系統,能夠探測和防御內部攻擊及實時攻擊,實現安全嵌入式系統平臺。本發明采用嵌入式硬件擴展TPM安全芯片的硬件保護策略,通過BIOS靜態啟動度量,擴展到可執行程序加載度量,再到進程、模塊及內存的動態度量,以及終端之間的遠程認證,并與訪問控制、入侵檢測等安全策略相配合,采用全方位的保護策略,對系統從加電到運行進行實時度量和跟蹤,能夠有效防御 T0CT0U、返回導向編程ROP等復雜實時攻擊。采用動態二進制數據流跟蹤分析技術,很好的解決程序源代碼不易獲得的問題, 它通過將來自不安全途徑的數據打標簽,并跟蹤觀察其在內存中的行為,只要增加探測的規則就可以廣泛的探測各種攻擊行為,比較典型的如緩沖區溢出攻擊、ROP攻擊。跟蹤代碼可以采用二進制方式來實現,是由于目標是跟蹤緩沖區溢出攻擊、ROP攻擊的一般特征,而不是特定程序的行為,因此不需要知道程序的源代碼。現有的采用加密技術的嵌入式系統中,密鑰通常被存儲在不安全的存儲器中,很容易被竊取。本發明基于軟硬件相結合的技術,通過在嵌入式平臺內部引入可信硬件設備 TPM安全芯片作為系統安全性的支撐模塊,對系統引導及運行過程所需要的主要密碼運算和安全存儲提供支持。而TPM則可以將各種密鑰及敏感數據存放在芯片內部和其他組件隔離的存儲器內,從根本上擺脫了對操作系統的依賴,實現了數據的物理隔離。此外,TPM的加解密功能以及安全存儲能力,可以在不占用嵌入式設備原有資源的情況下為系統提供安全保障,通過其低功耗、高性能的特點也剛好滿足嵌入式系統的需求。


圖1是本發明的一種實施例的動態可信度量架構圖; 圖2是本發明的一種實施例的總體架構圖3是本發明的一種實施例的工作流程圖。下面結合附圖和具體實施方式
對本發明作進一步的說明。
具體實施例方式
具體實施例方式一種利用前述系統的可信度量方法,包括以下步驟
Si,硬件層通過TPM芯片和傳統硬件重新設計可信BIOS,信任鏈從TPM安全芯片、可信 BIOS、可信OS內核、嵌入式軟件棧傳遞到應用程序,實現動態可信度量模塊DTM的可信啟動;也可以將CRTM(CRTM是平臺執行RTM的執行代碼,在一個可信平臺中有三個可信根度量可信根RTM、存儲可信根RTS、報告可信根RTR)集成到TPM中,使得CRTM不直接與嵌入式設備的主處理器進行交互,避免了平臺異構性對CRTM帶來的影響;
S2,應用層度量請求模塊根據來自安全設備的可疑事件及本地安全策略需求生成度量請求信息,并將其格式化,發送度量請求給內核層的動態可信度量模塊DTM,激活動態可信度量模塊DTM;
S3,動態可信度量模塊DTM對系統進程或模塊進行可信度量并響應。如圖2所示,實心箭頭標識了安全嵌入式系統信任鏈的傳遞過程,安全嵌入式系統信任鏈包括TPM安全芯片、可信BIOS、可信OS內核、嵌入式軟件棧和應用程序。TSS (可信軟件協議棧)是對可信度量計算平臺提供支持的軟件,是對使用TPM功能的應用程序提供一個唯一的入口,這樣應用程序就可以通過調用TSS中的API函數(可信服務提供模塊TSP) 方便地使用TPM中的功能,包括TPM的同步訪問、管理TPM的資源、適當的時候釋放TPM的資源等。TSS從結構上可分為三層,自下至上分別為TDDL、TCS和TSP,全部運行于用戶模式。其中,TDDL (TPM驅動程序庫)主要功能是通過提供標準接口,屏蔽各種不同安全芯片的差異,在用戶模式和內核模式之間提供一個通信通道;TCS (TSS核心服務)是用戶模式的系統進程,通常以系統服務形式存在,它通過TDDL與安全芯片進行通信,除提供安全芯片所具有的所有原始功能外,還提供如密鑰管理等功能。通過TCS的接口,上層應用可以非常直接、簡便地使用安全芯片提供的功能;TSP (TSS服務提供者)是用戶模式的用戶進程,位于TSS的最上層,它為應用程序提供了豐富的、面向對象的接口,使應用程序可以更加方便地利用安全芯片提供的功能結構建所需要的安全特性。嵌入式終端的資源有限,功能普遍單一,其應用領域相對比較集中,因此某一類型的嵌入式設備對TSS的功能需求相對固定, 因此,可以將嵌入式TSS的功能模塊化,僅向上層提供某種功能的接口,應用程序可以按照自身需要選擇有用的TSS功能,可以通過對現有的TSS進行剪裁和改造來實現。所述實現動態可信度量模塊DTM的可信啟動的步驟包括 S21,啟動TPM芯片進行初始化;
S22,由可信根依次對BootLoader、OS和應用程序3個實體進行完整性度量,如果所有被度量實體的完整性沒有被破壞,就轉到步驟S23 ;如果實體的完整性被破壞,就轉到步驟 S24 ;S23,將完整性度量值存儲在TPM內部的平臺配置寄存器(PCR)中,系統控制權交給 BootLoader開始啟動,然后啟動0S,最后啟動應用程序;
S24,由上述實體的備份替換上述實體,再重新度量該實體的完整性,只有3個實體的完整性都通過驗證之后,才能正常啟動,否則拒絕啟動執行。所述步驟S3包括
S31,當監測到度量請求時,將DTM模塊插入內核;
S32,判斷度量目標程序是進程還是內核模塊,根據其不同的數據結構分別進行處理; 由于進程和模塊度量的關鍵數據(主體)不完全相同,因此其度量處理的過程有所不同,需要分別進行處理;
S33,對程序的靜態二進制進行度量,根據跟蹤控制策略重寫程序二進制代碼; S34,程序進程被激活,開始對程序進行動態跟蹤,跟蹤代碼在相應的數據段存儲跟蹤數據;
S35,隨著跟蹤事件的發生,跟蹤代碼動態地更新跟蹤數據;
S36,將這些跟蹤數據交與TPM芯片做散列值,并由TPM芯片進行簽名,將散列值和簽名存入事先定義好的數據結構中;
S37,處理并響應接收的度量信息。所述系統與其他終端或設備進行遠程認證,如果該終端或設備也擴展了 TPM安全芯片,系統與該終端或設備之間通過各自的TPM模塊相互進行可信報告。遠程認證終端服務程序可以與訪問控制模塊相交互,通過遠程認證進行雙方的可信報告,如果通過驗證則生成會話標志,可以進行會話,否則中斷會話。當監測到內存更改時就激活動態可信度量模塊DTM,對系統進行動態可信度量,可以作為度量請求的一種補充形式,實現真正的動態度量,采用虛擬技術,可以不改動硬件, 可擴展性較好。向嵌入式系統加載新的軟件和升級現有的軟件,并由中心管理平臺統一管理。主要包括系統升級、加載新的操作系統核心模塊、升級已有的操作系統核心模塊、加載新的應用程序、升級已有的應用程序等,通過嵌入式終端中引入TPM構建安全嵌入式系統,通過應用基于TPM的身份鑒別、動態可信度量、數字簽名等技術來保障系統升級的安全可靠,從可信的角度考慮操作的安全性、可靠性及可恢復性。如圖3所示,嵌入式平臺上Boot Loader嚴重依賴于硬件平臺,必須在考慮嵌入式平臺的基礎上對Boot Loader進行重新設計。對于采用ARM+ Linux開發平臺來說,Boot Loader通常分為兩個階段第一個階段通常是一段代碼,包括基本硬件初始化,為第二階段準備RAM空間,復制Boot Loader的第二階段代碼到RAM,設置堆棧,之后跳轉到第二階段的程序入口點;第二階段通常是C程序,包括初始化本階段要用到的硬件設備,檢查系統內存映射,將內核影像和根文件映像從Flash讀到RAM,為內核設置啟動參數,最后調用操作系統內核。系統首先進行硬件BIOS可信引導過程。進行以下處理硬件平臺和TPM同時加電, TPM初始化,首先度量第一階段關鍵代碼的完整性;對硬件平臺上各種硬件進行初始化,并度量其組成與配置;對第二階段程序代碼進行度量,為第二階段準備RAM空間,復制第二段代碼到RAM,設置堆棧,掉轉到程序入口 ;檢查系統內存映射,進行完整性度量,操作系統度量應用程序完整性,生成全部完整性度量值,存入RAM;設置內核啟動參數,調用內核,TPM 將完整性值報告給操作系統;操作系統將完整性序列值和已存儲在TPM內部的驗證碼進行比較;如兩者不同,則中斷系統運行,進行系統恢復,重啟;若兩者相同,系統能夠正常啟動,然后進入系統正常運行狀態。系統進入正常的運行狀態,系統程序的調度和響應是采用線程及中斷方式進行的,操作系統基于線程及中斷的調度方式可以實現快速切換、多處理器的并行運行,滿足系統實時性的要求。系統按照以下流程工作的首先,進行系統、線程及中斷初始化,為系統工作做準備;然后通過設置狀態字及優先級的方式,進行線程及中斷服務程序的調用,直到接收到結束命令。該系統主要由動態可信度量終端服務程序、遠程認證中斷服務程序、可信在線升級中斷服務程序、第三方軟件可信啟動線程以及其他中斷服務程序或線程組成。動態可信度量終端服務程序實現更加細粒度的實時動態度量,包括對內核的進程、模塊的代碼、參數、堆棧等分別進行度量。遠程認證終端服務程序可以與訪問控制模塊相交互,通過遠程認證進行雙方的可信報告,如果通過驗證則生成會話標志,可以進行會話,否則中斷會話。第三方應用軟件可信啟動應用軟件的可信啟動將通過軟件簽名驗證機制來保證,確保軟件完整性沒有被破壞,從而實現受控啟動。在嵌入式可信平臺上運行的應用軟件 (包括動態鏈接庫)、內核模塊和腳本文件,必須由第三方可信認證中心對其簽名授權發布。 首先計算原文件的Hash值,用TPM簽名密鑰對中的私鑰對其加密,形成數字簽名,然后附加在原文件后面,合并為簽名后的新文件。應用軟件的執行,將基于LSM框架結構和可信系統調用,實現軟件的簽名驗證和受控啟動。LSM框架通過對客體進行訪問的函數中插入hook, 截獲訪問,由可信系統調用模塊實現對可執行文件的簽名驗證。LSM的捕獲點在內核空間中,其粒度比系統調用更細,且都位于對各種資源的訪問點上,因此對軟件的執行可實現更細粒度的安全控制。可重復編程是嵌入式系統的一大特性,但在產品投入使用后并且被安裝在偏遠或環境較為惡劣的地方,嵌入式系統軟件直接制約著使用該嵌入式系統產品的功能。大多數情況下,產品功能的提升都可以通過嵌入式系統軟件升級特別是遠程在線升級來實現。其中,不同的中斷服務程序采用不同優先級進行響應,線程之間采用狀態字的方式進行同步控制。實現前述方法的一種安全嵌入式系統,如圖1所示,包括硬件層、內核層(OS層) 和應用層(用戶層);
其中,硬件層包括ARM處理器、BIOS系統、外圍設備和TPM模塊,通過擴展TPM安全芯片作為信任根,信任鏈從TPM安全芯片、可信BIOS、可信OS內核、嵌入式軟件棧傳遞到應用程序;ARM處理器具有高性能、低功耗的顯著優點;外圍設備包括存儲器、輸入設備、輸出設備、外圍接口、硬盤、電源、內存卡及其他嵌入式固件等;TPM具有密鑰管理和配置管理等特性,能夠被用于平臺的完整性驗證,用戶身份認證和數據簽名等,其內部還包括一組被稱為 PCR (平臺配置寄存器)的易失性存儲器,被用來作為完整性度量的依據;在基于ARM處理器的嵌入式系統中,通過SPI接口并基于FPGA來擴展TPM芯片,通過FPGA實現信號間的轉換,負責特殊LPC總線周期的生成。內核層包括度量接口模塊和動態可信度量模塊DTM ;TPM接口可以采用LPC總線接
10口,也可以通過SPI接口采用FPGA來擴展TPM芯片。應用層包括用來激活動態可信度量模塊DTM的度量請求模塊,位于應用層的用戶空間,主要接收來自遠端詢問、訪問控制等安全設備的可疑事件以及本地安全策略需求等, 并將其格式化;度量請求模塊與度量接口模塊進行交互。所述動態可信度量模塊DTM包括
程序加載引擎,用于對系統進程或模塊進行靜態可信度量;
跟蹤度量策略模塊,用于預先定義所有需要度量的程序二進制的跟蹤事件,以及與不同進程及模塊相匹配的模式和跟蹤代碼;
跟蹤實現組件,用于對進程或模塊的二進制代碼進行重寫,即附加跟蹤代碼,用來實現對程序動態跟蹤;跟蹤實現組件的實現可以采用基于信息流的動態污點分析技術、基于數據流跟蹤和庫函數識別技術等;
跟蹤度量引擎,用于對系統進程或模塊進行動態可信度量,實現程序動態事件跟蹤及跟蹤數據維護;負責與TPM模塊的交互,將跟蹤數據交與TPM芯片做散列值,并由TPM進行簽名,將散列值和簽名存入事先定義好的數據結構中;
度量響應引擎,用于根據度量結果進行判斷并響應,將度量信息組裝,發送回遠端或本地。內核層還包括認證代理模塊,與動態可信度量模塊進行交互,用于系統與其他終端或設備進行遠程認證,如果該終端或設備也擴展了 TPM安全芯片,系統與該終端或設備之間通過各自的TPM模塊相互進行可信報告,如果通過驗證則生成會話標志,可以進行會話,否則中斷會話,這樣大大增加了通訊的安全性。內核層還包括內存監視器,用于監視內存更改,當監測到內存更改時就激活動態可信度量模塊DTM,對內核進行動態可信度量,可以作為度量請求的一種補充形式,實現真正的動態度量,采用虛擬技術,可以不改動硬件,可擴展性較好。內核層還包括可信在線升級模塊,與動態可信度量模塊進行交互,用于向系統加載新的軟件和升級現有的軟件,并由中心管理平臺統一管理。主要包括系統升級、加載新的操作系統核心模塊、升級已有的操作系統核心模塊、加載新的應用程序、升級已有的應用程序等,通過嵌入式終端引入TPM構建安全嵌入式系統,通過應用基于TPM的身份鑒別、動態可信度量、數字簽名等技術來保障系統升級的安全可靠,從可信的角度考慮操作的安全性、 可靠性及可恢復性。以上對本發明實施方式提供的技術方案進行了詳細的介紹,本文中應用了具體實施例對本發明所實施的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發明實施的原理;同時,對于本領域的一般技術人員,本發明實施例,在具體實施方式
以及應用范圍上均有改變之處,綜上所述,本說明書內容不應理解為對本發明的限制。
權利要求
1.一種動態可信度量方法,其特征在于,包括以下步驟Si,硬件層通過TPM芯片和傳統硬件重新設計可信BIOS,信任鏈從TPM安全芯片、可信 BIOS、可信OS內核、嵌入式軟件棧傳遞到應用程序,實現動態可信度量模塊DTM的可信啟動;S2,應用層度量請求模塊根據來自安全設備的可疑事件及本地安全策略需求生成度量請求信息,并將其格式化,發送度量請求給內核層的動態可信度量模塊DTM,激活動態可信度量模塊DTM ;S3,動態可信度量模塊DTM對系統進程或模塊進行可信度量并響應。
2.根據權利要求1所述的一種動態可信度量方法,其特征在于,所述實現動態可信度量模塊DTM的可信啟動的步驟包括S21,啟動TPM模塊進行初始化;S22,由可信根依次對BootLoader、OS和應用程序3個實體進行完整性度量,如果所有被度量實體的完整性沒有被破壞,就轉到步驟S23 ;如果實體的完整性被破壞,就轉到步驟 S24 ;S23,將完整性度量值存儲在TPM內部的平臺配置寄存器(PCR)中,系統控制權交給 BootLoader開始啟動,然后啟動0S,最后啟動應用程序;S24,由上述實體的備份替換上述實體,再重新度量該實體的完整性,只有3個實體的完整性都通過驗證之后,才能正常啟動,否則拒絕啟動執行。
3.根據權利要求1所述的一種動態可信度量方法,其特征在于,所述步驟S3包括S31,當監測到度量請求時,將DTM模塊插入內核;S32,判斷度量目標程序是進程還是內核模塊,根據其不同的數據結構分別進行處理;S33,對程序的靜態二進制進行度量,根據跟蹤控制策略重寫程序二進制代碼;S34,程序進程被激活,開始對程序進行動態跟蹤,跟蹤代碼在相應的數據段存儲跟蹤數據;S35,隨著跟蹤事件的發生,跟蹤代碼動態地更新跟蹤數據;S36,將這些跟蹤數據交與TPM芯片做散列值,并由TPM芯片進行簽名,將散列值和簽名存入事先定義好的數據結構中;S37,處理并響應接收的度量信息。
4.根據權利要求1所述的一種動態可信度量方法,其特征在于所述系統與其他終端或設備進行遠程認證,如果該終端或設備也擴展了 TPM安全芯片,系統與該終端或設備之間通過各自的TPM模塊相互進行可信報告。
5.根據權利要求1所述的一種動態可信度量方法,其特征在于采用內存監視方式, 即監測到內存更改,就激活動態可信度量模塊DTM,對系統進行動態可信度量。
6.實現權利要求1 5所述方法的一種安全嵌入式系統,其特征在于,包括硬件層、 內核層(OS層)和應用層(用戶層);硬件層包括ARM處理器、BIOS系統、外圍設備和TPM模塊,通過擴展TPM安全芯片作為信任根,信任鏈從TPM安全芯片、可信BIOS、可信OS內核、嵌入式軟件棧傳遞到應用程序;內核層包括度量接口模塊和動態可信度量模塊DTM ;應用層包括用來激活動態可信度量模塊DTM的度量請求模塊,度量請求模塊與度量接口模塊進行交互。
7.根據權利要求6所述的一種安全嵌入式系統,其特征在于,所述動態可信度量模塊 DTM包括程序加載引擎,用于對系統進程或模塊進行靜態可信度量;跟蹤度量策略模塊,用于預先定義所有需要度量的程序二進制的跟蹤事件,以及與不同進程及模塊相匹配的模式和跟蹤代碼;跟蹤實現組件,用于對進程或模塊的二進制代碼進行重寫,即附加跟蹤代碼,用來實現對程序動態跟蹤;跟蹤度量引擎,用于對系統進程或模塊進行動態可信度量,實現程序動態事件跟蹤及跟蹤數據維護;度量響應引擎,用于根據度量結果進行判斷并響應,將度量信息組裝,發送回遠端或本地。
8.根據權利要求6所述的一種安全嵌入式系統,其特征在于內核層還包括認證代理模塊,與動態可信度量模塊進行交互,用于系統與其他終端或設備進行遠程認證,如果該終端或設備也擴展了 TPM安全芯片,系統與該終端或設備之間通過各自的TPM模塊相互進行可信報告。
9.根據權利要求6所述的一種安全嵌入式系統,其特征在于內核層還包括內存監視器,用于監視內存更改,當監測到內存更改時就激活動態可信度量模塊DTM,對內核進行動態可信度量。
10.根據權利要求6所述的一種安全嵌入式系統,其特征在于內核層還包括可信在線升級模塊,與動態可信度量模塊進行交互,用于向系統加載新的軟件和升級現有的軟件,并由中心管理平臺統一管理。
全文摘要
本發明公開了一種動態可信度量方法及安全嵌入式系統,所述方法包括以下步驟S1,硬件層通過TPM芯片和傳統硬件重新設計可信BIOS,信任鏈從TPM安全芯片、可信BIOS、可信OS內核、嵌入式軟件棧傳遞到應用程序,實現動態可信度量模塊DTM的可信啟動;S2,應用層度量請求模塊根據來自安全設備的可疑事件及本地安全策略需求生成度量請求信息,并將其格式化,發送度量請求給內核層的動態可信度量模塊DTM,激活動態可信度量模塊DTM;S3,動態可信度量模塊DTM對系統進程或模塊進行可信度量并響應。本發明能有效地探測和防御復雜實時攻擊。并且能夠主動探測和防御內部物理層的攻擊,實現安全嵌入式系統平臺。
文檔編號G06F21/00GK102436566SQ20121000870
公開日2012年5月2日 申請日期2012年1月12日 優先權日2012年1月12日
發明者于立業, 張云貴, 潘秋娟, 王麗娜, 趙永麗 申請人:冶金自動化研究設計院
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
主站蜘蛛池模板: 常山县| 博湖县| 鞍山市| 临颍县| 盖州市| 子洲县| 沭阳县| 醴陵市| 宁陕县| 密云县| 库伦旗| 青阳县| 汝城县| 石景山区| 南平市| 阳山县| 大关县| 那曲县| 怀化市| 多伦县| 文化| 开化县| 顺义区| 汉寿县| 高邮市| 克什克腾旗| 渝北区| 宁明县| 类乌齐县| 独山县| 南丰县| 龙州县| 视频| 锡林浩特市| 南安市| 紫阳县| 贺州市| 汕头市| 临颍县| 卢湾区| 沁源县|