硬件強制訪問保護的制作方法
【技術領域】
[0001] 本公開涉及設備安全,并且更具體地涉及被配置成用于通過硬件強制安全增強基 于軟件的保護方案的系統。
[0002] 背景
[0003] 由于例如使其可應用于許多日常情況的日益增加的功能性,市場上出現的各種各 樣的移動設備持續擴展。例如,移動"智能"設備除簡單的語音交互之外的通信數據能力使 得這些設備可用于處理傳統上需要通過有線連接(例如,鏈接到互聯網的臺式計算機)處 理、需要親自處理等等的任務。可使用移動設備上被配置成用于提供諸如例如個人或職業 交互性(例如,電子郵件、消息傳送等等)、財務管理和交易(例如,銀行業務、電子購物等 等)等功能性、數據庫功能性(諸如聯系人管理、娛樂應用等等)的各種應用執行這些任 務。
[0004] 然而,移動設備所創造的便利性具有某些固有的風險。移動設備本身內存在可使 其吸引可能希望非法地擁有它的其他人的大量轉售價值。于是,移動設備上存儲有信息。這 種信息可包括標識信息(姓名、地址、電話號碼、社會保障號等等)、財務賬號信息(例如,銀 行賬號、信用卡號等等)、個人或商業相關網絡的登錄信息等等。這種信息比實際的移動設 備本身更有價值,因為其可授權其他人不正當地訪問信息、進行未授權交易、扮演設備用戶 等等。
[0005] 現有的移動設備安全可由設備操作系統(OS)或由以OS等級權限執行的第三方安 全應用提供。盡管對于普通用戶來說有效,更多高級用戶可通過在OS等級攻擊設備來繞過 這些保護。例如,字典攻擊可用于確定密碼,可通過使用外部接口強制地訪問設備存儲器來 檢索敏感信息,可通過安裝新的OS重新配置移動設備等等。結果,移動設備總是作為知道 如何利用其弱點的違法犯罪者的有吸引力的目標。
[0006] 附圖簡要說明
[0007] 所要求保護的主題的各實施例的特征和優點將隨著以下詳細描述的進行并且當 參照附圖時變得明顯,其中相同的數字指示相同的部件,并且在附圖中:
[0008] 圖1示出根據本公開的至少一個實施例的被配置成用于硬件強制訪問保護的示 例設備;
[0009] 圖2示出根據本公開的至少一個實施例的示例設備配置;
[0010] 圖3示出根據本公開的至少一個實施例的用于認證模塊的示例配置;
[0011] 圖4示出根據本公開的至少一個實施例的用于激活和用戶認證恢復的示例操作 的流程圖;
[0012] 圖5示出根據本公開的至少一個實施例的用于硬件強制訪問保護的示例操作的 流程圖。
[0013] 盡管將參考說明性實施例進行以下詳細描述,其許多替代、修改和變化將對本領 域普通技術人員明顯。
[0014] 詳細描述
[0015] 本公開描述了用于硬件強制訪問保護的系統和方法。設備可包括例如登錄代理模 塊(LAM)、操作系統登錄認證模塊(OSLAM)以及安全用戶認證模塊(SUAM)。初始地,LAM可 被配置成用于使設備內的用戶接口呈現提示。該提示可請求有待(例如,由設備用戶)輸 入到設備內的登錄信息。LAM可被進一步配置成用于向OSLAM提供登錄信息,其可被配置成 用于認證登錄信息。如果登錄信息被認證,OSLAM可被進一步配置成用于向SUAM傳輸經簽 名的登錄成功消息。在一個實施例中,SUAM可被加載到(例如由固件)設備內的安全存儲 器空間中,諸如例如受信執行環境(TEE)。SUAM可被配置成用于認證經簽名的登錄成功消 息,并且如果已認證則向OSLAM傳輸經加密的認證消息。OSLAM可被進一步配置成用于解密 并認證經加密的認證消息。如果被認證,OSLAM可授權對設備的訪問。
[0016] 在一個實施例中,OSLAM可包括私鑰并且SUAM可包括公鑰。私鑰可由設備內的已 知用戶信息保護。當用戶登錄設備時(例如,輸入登錄信息),登錄信息可與已知用戶信息 進行比較,并且僅當登錄信息與已知用戶信息相對應時才可授權對私鑰的訪問。私鑰然后 可用于生成經簽名的登錄成功消息,其可由SUAM使用公鑰認證。同樣,經加密的認證消息 可由OSLAM使用私鑰解密。在一個實施例中,私鑰可由TEE根加密以便提供附加保護(例 如,以便防止通過字典攻擊(其中持續猜測密鑰組合直至發現匹配)而確定私鑰)。
[0017] 在一個實施例中,該設備可進一步包括固件接口模塊。固件接口模塊可被配置成 用于將經簽名的登錄成功消息從OSLAM傳送到SUAM并且相反地將經加密的認證消息從 SUAM傳送到OSLAM。在相同或不同實施例中,該設備可進一步包括安全策略模塊(SPM)和/ 或認證恢復模塊(ARM)。SPM可被配置成用于控制LAM、OSLAM和/或SUAM的操作。在LAM 和OSLAM的情況下,SPM可被配置成用于為設備確定上下文(例如,設備位置、設備狀況等 等),并且可設置基于該上下文控制LAM和/或OSLAM的操作的登錄策略。例如,SPM可確 定該設備在"家庭"位置,并且可要求輸入較少登錄信息,與當確定該設備在已知位置時相 反。SPM可被進一步配置成用于例如限定SUAM中的等待計時器和/或最大登錄嘗試次數。 等待計時器可限定在SUAM致使該設備關閉之前SUAM將等待多長時間接收經簽名的登錄成 功消息。在一個實施例中,如果等待計時器過期而沒有接收到經簽名的登錄成功消息,SUAM 然后可確定是否已經超過最大登錄嘗試次數。如果已經超過最大登錄嘗試次數,SUAM可將 該設備置于鎖定狀態,其中,可拒絕訪問操作系統,直至執行用戶認證恢復。ARM可被配置成 用于當該設備連接到遠程資源(例如,可通過網絡連接訪問的計算設備)時執行用戶認證 恢復。
[0018] 在一個實施例中,該遠程資源可以是可通過互聯網訪問的服務器,該服務器被配 置成用于向設備提供私鑰。例如,當被激活時,該設備可被配置成用于初始地確定其是否連 接到該遠程資源。該設備然后可被配置成用于確定該設備內是否存在該私鑰。如果該設備 未連接到該遠程資源并且該私鑰存在于該設備中,可在該設備內開始硬件強制訪問保護。 如果該設備未連接到該遠程資源并且該私鑰不存在于該設備中,則該設備可(例如向設備 用戶)呈現指示必須在使用該設備之前執行安全設置的通知,該安全設置要求該設備連接 到該遠程資源。如果該設備連接到該遠程資源并且該設備是新的設備(例如,不存在私 鑰),則安全軟件可被從該遠程資源下載到該設備(例如,LAM和OSLAM中的某些或全部)并 且該私鑰可由該遠程資源提供。如果該設備連接到該遠程資源并且要求用戶認證恢復,該 遠程資源可執行用戶認證恢復(例如,可通過個人查詢、密碼、密鑰等等確認用戶的身份)。 如果該用戶由該遠程資源認證,該設備內的現有安全配置可被重置并且可從遠程資源向設 備提供新的私鑰。
[0019] 圖1示出根據本公開的至少一個實施例的被配置成用于硬件強制訪問保護的示 例設備100。設備100的示例可包括但不限于:移動通信設備,諸如基于安卓(Android) ? 操作系統(OS)、iOS?、黑莓龍OS、Palm? 〇S、塞班? OS等等的蜂窩手機或智能電話;移動 計算設備,諸如平板計算機,如iPad?、GalaxyTab?、KindleFire?等等;包括由英特爾 公司制造的低功率芯片組的超極本Ultrabook?;上網本計算機、筆記本計算機、膝上計算 機、通常是靜態的計算設備(諸如桌上計算機)等等。設備100可包括例如設備100中的 各種模塊可在其中操作的至少兩種類型的執行環境。低權限環境102可以是例如設備100 內的操作系統(0S)。在低權限環境102中操作的模塊不被"測量"(例如,基于其代碼的散 列進行驗證以便確定真實性)100,并且因此可被自由地寫入、執行、改變等等。高權限環境 104可以是例如設備100內的受信執行環境(TEE)。高權限環境104可提供模塊可在其中操 作的、與由外部影響造成的可能的干擾或介入分離的密碼保護執行環境。結果,硬件管理、 仿真、調試、安全以及其他系統關鍵特征總體上在高權限環境104中執行。
[0020] 在一個實施例中,設備100中的低權限環境102 (例如,設備100中的0S)可至少 包括LAM 106和0SLAM 108。LAM 106可被配置成用于獲得登錄信息(例如,從設備100的 用戶)。例如,LAM 106可致使通過設備100的用戶接口(例如,顯示器)呈現請求向設備 100中輸入登錄信息(例如,通過設備100內的顯示屏、鍵盤等等)的提示。該登錄信息然 后可被傳遞到0SLAM 108,其可被配置成用于認證該登錄信息。例如,0SLAM108可確定從 LAM 106接收的該登錄信息是否與設備100內的已知用戶信息相對應。如果該登錄信息被 認證,0SLAM可生成經簽名的登錄成功消息。例如,可使用0SLAM 108中的私鑰對該經簽名 的登錄成功消息進行簽名。在一個實施例中,低權限環境102可進一步包括固件接口模塊 (FIM)llO。FIM 110可被配置成用于促進高權限執行環境104中的0SLAM 108和SUAM 112 之間的交互。例如,該經簽名的登錄成功消息可被從0SLAM 108傳輸到FM 110以及從FM 110傳輸到SUAM 112。FM 110已經在圖1中被示出為可選的,因為其功能性還可被結合到 0SLAM 108 中。
[0021] SUAM 112可被加載到高權限環境104中。例如,當從設備100內的固件激活時, SUAM 112可被加載到設備100中。SUAM 112還可被"測量",因為在加載期間,SUAM 112的 程序代碼的散列值可由設備100內的硬件與SUAM 112的已知良好版本的散列值進行比較, 并且如果程序代碼的散列與已知良好散列值匹配,則可允許加載該代碼。SUAM 112可被配 置成用于基于接收到該經簽名的登錄成功消息控制對設備100的訪問。例如,如果接收到 該經簽名的登錄成功消息,SUAM 112然