[發(fā)明專利]一種ARM平臺上的模塊安全隔離方法在審
| 申請?zhí)枺?/td> | 201710334806.8 | 申請日: | 2017-05-12 |
| 公開(公告)號: | CN107194287A | 公開(公告)日: | 2017-09-22 |
| 發(fā)明(設計)人: | 涂碧波;魏煒 | 申請(專利權)人: | 中國科學院信息工程研究所 |
| 主分類號: | G06F21/80 | 分類號: | G06F21/80;G06F21/57 |
| 代理公司: | 北京君尚知識產權代理事務所(普通合伙)11200 | 代理人: | 陳美章 |
| 地址: | 100093 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 arm 平臺 模塊 安全 隔離 方法 | ||
技術領域
本發(fā)明涉及計算機操作系統內存安全技術領域,尤其涉及一種ARM平臺上的模塊安全隔離方法。
背景技術
長期以來,計算機內存安全是計算機操作系統安全的基礎。計算機內存中存儲的數據信息包括敏感內容,也包括代碼信息和操作系統數據。內存中的數據信息需要被保護以不被惡意竊取或篡改。
例如Linux系統中的驅動模塊。故障的Linux設備驅動將有可能對整個Linux系統造成危害。Linux設備驅動是軟件系統和硬件設備交互的接口,它將軟件的設備請求命令轉化為特定設備的控制命令,使得Linux中的設備能正常運轉并被Linux用戶程序使用。另一方面,設備驅動將設備的狀態(tài)及時通知給軟件包括Linux系統。近年來,因設備驅動發(fā)生故障造成的事故層出不窮。Linux設備驅動的高復雜性是影響設備驅動的可靠性和正確性的重要因素之一。異步事件如中斷導致代碼交錯執(zhí)行、復雜的靜態(tài)數據結構互相交織、驅動開發(fā)者開發(fā)的高難度是設備驅動存在錯誤的原因。為保證設備驅動的可靠性,一個重要的方法是將設備驅動故障隔離。它是通過使用故障隔離和恢復的手段,使得設備驅動程序的故障不會導致自身或操作系統的運行被中止,從而一定程度上保證了系統的可靠性。
ARM架構有著低功耗、易擴展、可靠性等優(yōu)勢,而ARMv8架構的推出大大促使了ARM架構處理器在傳統PC、服務器領域的流行。隨之而來,ARM架構的Linux系統上的安全被關注。
但是不同于傳統x86架構,ARM架構尤其是ARMv8架構,有著不同的硬件特性,導致架構特定的Linux系統的實現存在相當差異。基于x86架構的安全隔離機制大多依賴x86硬件屬性,不適用于ARM架構的安全隔離。
發(fā)明內容
本發(fā)明的目的是提供一種ARM平臺上的模塊安全隔離方法,該方法能夠保護Linux系統免受來自非可信模塊的威脅,提高Linux系統的安全可靠性。
為達上述目的,本發(fā)明所采用的技術方案為:
一種ARM平臺上的模塊安全隔離方法,其步驟包括:
1)將Linux內核空間分為可信內核空間和非可信空間;其中可信內核空間中運行Linux內核;非可信空間中運行被隔離的模塊(非可信模塊);
2)當可信內核空間代碼跳轉到非可信空間代碼或訪問非可信空間的數據時,在可信內核空間產生Instruction Abort(指令中止)或Data Abort(數據中止),若所述Instruction Abort或Data Abort由可信內核空間與非可信空間的隔離機制產生,則由EL2特權層的Hypervisor Monitor(安全監(jiān)控器)將可信內核空間切換至非可信空間;
3)執(zhí)行非可信空間代碼,直到非可信空間產生MMU fault異常,該MMU fault異常被EL1特權層的Trampoline處理后陷入Hypervisor Monitor;
4)Hypervisor Monitor將上述MMU fault異常發(fā)生時的LR、FAR_EL1、ELR_EL1寄存器內容與EL2特權層的Access Policy(安全規(guī)則)進行對比,如果所述寄存器內容符合正常的調用和訪問關系,則由EL2特權層的Hypervisor Monitor將非可信空間切換至可信內核空間。
進一步地,步驟2)中當檢測到所述Instruction Abort或Data Abort發(fā)生的位置的對應頁表項權限為Not Present(即該頁表項不存在或非法)時,則所述Instruction Abort或Data Abort由可信內核空間與非可信空間的隔離機制產生。
進一步地,步驟2)中若所述Instruction Abort或Data Abort不是由可信內核空間與非可信空間的隔離機制產生,則作為正常MMU fault異常由Linux內核中現有的內核異常處理機制進行處理。
進一步地,步驟2)中所述可信內核空間切換至非可信空間是通過修改頁表基地址寄存器TTBR1_EL1和異常向量基地址寄存器VABR_EL1為對應非可信空間的值完成。
進一步地,步驟2)還包括:Hypervisor Monitor將HCR_EL2.TVM控制位置1,以限制切換后的非可信空間代碼對HCR_EL2.TVM指定的寄存器的寫訪問。
更進一步地,步驟3)還包括:所述異常向量基地址寄存器VABR_EL1指定異常向量表的基地址,不同類型的MMU fault異常由該異常向量表被導向至各個異常處理例程。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國科學院信息工程研究所,未經中國科學院信息工程研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710334806.8/2.html,轉載請聲明來源鉆瓜專利網。





