一種應(yīng)用程序處理方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種應(yīng)用程序處理方法。
【背景技術(shù)】
[0002]當(dāng)越來越多的智能移動終端以網(wǎng)絡(luò)客戶端的形式接入到互聯(lián)網(wǎng)時,安全問題都會出現(xiàn)在智能移動終端中,尤其是應(yīng)用程序安全。雖然為了保護(hù)應(yīng)用程序和數(shù)據(jù),操作系統(tǒng)在設(shè)計(jì)上結(jié)合系統(tǒng)層安全機(jī)制和由組件間通信確定的安全框架,但仍然存在針對應(yīng)用程序文件的危險行為和系統(tǒng)漏洞。當(dāng)前對移動終端安全采用的普遍做法是利用智能移動終端安全程序來檢測應(yīng)用程序的惡意行為。但這類安全程序只是作為應(yīng)用程序被安裝在客戶端上,并且會受到處理器和存儲設(shè)備的限制,無法保證客戶端的系統(tǒng)安全,也無法防止安全產(chǎn)品程序本身被卸載和刪改。
[0003]因此,針對相關(guān)技術(shù)中所存在的上述問題,目前尚未提出有效的解決方案。
【發(fā)明內(nèi)容】
[0004]為解決上述現(xiàn)有技術(shù)所存在的問題,本發(fā)明提出了一種應(yīng)用程序處理方法,包括:
[0005]將TPM模型應(yīng)用于移動終端中,在內(nèi)核系統(tǒng)調(diào)用邏輯中插入一系列hook函數(shù),回調(diào)第三方安全模塊來檢測對應(yīng)用程序的修改操作,由該安全模塊決定是否允許對應(yīng)用程序的訪問或修改,獲取每個可執(zhí)行文件、庫文件和內(nèi)核文件在加載進(jìn)系統(tǒng)之前的檢測值,通過這些檢測值來監(jiān)控系統(tǒng)安全狀態(tài)。
[0006]優(yōu)選地,所述方法運(yùn)行于安全控制系統(tǒng)中,所述安全控制系統(tǒng)包括部署在服務(wù)器端的監(jiān)控中心子系統(tǒng)和運(yùn)行在移動終端的客戶端運(yùn)行狀態(tài)檢測與反饋?zhàn)酉到y(tǒng);
[0007]所述狀態(tài)檢測包括操作系統(tǒng)的安全引導(dǎo)、安全檢測和初始安全性驗(yàn)證,通過安全引導(dǎo)保證移動終端啟動時裝載的內(nèi)核文件可信,在安全檢測中檢測移動終端中裝載的內(nèi)核模塊、可執(zhí)行代碼、守護(hù)進(jìn)程、虛擬機(jī)初始化進(jìn)程、應(yīng)用層狀態(tài)反饋和系統(tǒng)安全啟動后運(yùn)行的應(yīng)用程序;初始安全性驗(yàn)證包括保證移動終端在啟動過程中所有的檢測結(jié)果都是可信的;
[0008]所述狀態(tài)反饋包括,客戶端位置監(jiān)控模塊始終監(jiān)測客戶端位置信息,每當(dāng)需要上傳應(yīng)用程序檢測值時均調(diào)用上傳檢測值到服務(wù)器中。
[0009]優(yōu)選地,所述監(jiān)控中心子系統(tǒng)用于對移動終端應(yīng)用程序安全檢測值進(jìn)行收集和驗(yàn)證,防止安全敏感信息的竊取或修改,該監(jiān)控中心子系統(tǒng)包括用于收集移動終端發(fā)送來的安全檢測值的安全信息收集模塊,將收集到的應(yīng)用程序安全檢測值同數(shù)據(jù)庫中安全信息列表進(jìn)行比對并向客戶端返回比對結(jié)果的安全性驗(yàn)證模塊,以及維護(hù)包括操作系統(tǒng)安全的應(yīng)用程序的檢測值的安全檢測值信息列表的安全策略管理模塊,判斷是否是可信應(yīng)用程序,而選擇添加到相應(yīng)的列表中,或是從列表中刪除。
[0010]優(yōu)選地,所述方法還包括:
[0011]使用散列算法得到每個執(zhí)行文件、庫文件和內(nèi)核模塊的散列值,并代替可執(zhí)行文件內(nèi)容存入到位于內(nèi)核中的檢測值列表中,實(shí)施檢測包括在系統(tǒng)中插入檢測點(diǎn)、實(shí)際檢測和驗(yàn)證檢測值,該方法從B1S下一步開始檢測,然后繼續(xù)檢測下一部分代碼直到狀態(tài)反饋檢測結(jié)束,并驗(yàn)證通過OS啟動成功,對于新開啟的應(yīng)用程序,將每個應(yīng)用程序安裝包中的配置文件映射至新分配的虛擬機(jī)內(nèi)存空間,安全檢測模塊通過hook函數(shù)調(diào)用內(nèi)核態(tài)的安全檢測模塊,對內(nèi)存中的配置文件進(jìn)行檢測,生成檢測值;
[0012]在客戶端設(shè)置區(qū)域范圍的位置信息,服務(wù)啟動后自動開啟位置位置監(jiān)聽,實(shí)時獲取位置,判斷成功后,向監(jiān)控中心發(fā)送用戶名,同時移動終端存儲用戶輸入的服務(wù)器預(yù)分配口令于內(nèi)存中,監(jiān)控中心將隨機(jī)數(shù)返回到客戶端,然后對隨機(jī)數(shù)及用戶預(yù)分配口令進(jìn)行哈希運(yùn)算,生成虛擬機(jī)應(yīng)用安全信息的加密密鑰,客戶端上傳加密后的包含虛擬機(jī)應(yīng)用安全信息的XML至監(jiān)控中心進(jìn)行驗(yàn)證;
[0013]安全信息收集、安全信息驗(yàn)證和安全策略使用同一數(shù)據(jù)庫;通過動態(tài)監(jiān)聽可執(zhí)行程序運(yùn)行后,開啟Socket連接監(jiān)聽,解析接收到的XML文件,并進(jìn)行格式轉(zhuǎn)換,最后將數(shù)據(jù)庫中安全性元數(shù)據(jù)與之對比的結(jié)果返回;
[0014]為用戶提供對存在安全隱患的權(quán)限控制進(jìn)行即時賦權(quán),在應(yīng)用程序使用可疑權(quán)限前請求用戶確認(rèn),對現(xiàn)有惡意應(yīng)用程序樣本進(jìn)行詳細(xì)分析,推導(dǎo)出惡意應(yīng)用所必備的權(quán)限控制特征集合,基于該特征集合進(jìn)行應(yīng)用程序權(quán)限控制;在系統(tǒng)運(yùn)行過程中,當(dāng)一個應(yīng)用程序試圖對應(yīng)用程序文件進(jìn)行卸載或刪除時,攔截該權(quán)限控制請求并重定向到權(quán)限控制監(jiān)控器,根據(jù)權(quán)限控制監(jiān)控器提供的權(quán)限信息和應(yīng)用信息查詢相應(yīng)的權(quán)限狀態(tài),如果相應(yīng)的權(quán)限狀態(tài)是已賦權(quán)或已阻止,則將直接通知權(quán)限控制監(jiān)控器同意或拒絕本次請求,如果相應(yīng)的權(quán)限狀態(tài)是待定,則查詢惡意應(yīng)用程序權(quán)限控制特征集合,確定本次請求是否符合其中的特征;如果不符合任何一項(xiàng)特征,則通知權(quán)限控制監(jiān)控器允許,并更新權(quán)限狀態(tài)信息,否則通知權(quán)限控制監(jiān)控器對本次訪問請求用戶確認(rèn),系統(tǒng)調(diào)用攔截器將所有第三方應(yīng)用程序?qū)ο嚓P(guān)系統(tǒng)調(diào)用的訪問進(jìn)行攔截并重定向至權(quán)限控制監(jiān)控器,并且只修改系統(tǒng)調(diào)用包裝函數(shù),并強(qiáng)制第三方應(yīng)用程序使用當(dāng)前版本的函數(shù)庫,而其他系統(tǒng)進(jìn)程將使用原版函數(shù)庫,避免對內(nèi)核的修改;通過修改運(yùn)行時環(huán)境,在第三方應(yīng)用程序加載本地代碼庫時對類庫進(jìn)行掃描,以確保其中不包含軟中斷指令,將應(yīng)用程序?qū)?yīng)的ID加入相應(yīng)的用戶組,而具體的訪問控制由系統(tǒng)調(diào)用攔截器重定向至決策器進(jìn)行管理。
[0015]本發(fā)明相比現(xiàn)有技術(shù),具有以下優(yōu)點(diǎn):
[0016]本發(fā)明提出了一種應(yīng)用程序的處理方法,通過虛擬機(jī)在移動終端中保證應(yīng)用程序的完整性和終端系統(tǒng)安全。
【附圖說明】
[0017]圖1是根據(jù)本發(fā)明實(shí)施例的應(yīng)用程序處理方法的流程圖。
【具體實(shí)施方式】
[0018]下文與圖示本發(fā)明原理的附圖一起提供對本發(fā)明一個或者多個實(shí)施例的詳細(xì)描述。結(jié)合這樣的實(shí)施例描述本發(fā)明,但是本發(fā)明不限于任何實(shí)施例。本發(fā)明的范圍僅由權(quán)利要求書限定,并且本發(fā)明涵蓋諸多替代、修改和等同物。在下文描述中闡述諸多具體細(xì)節(jié)以便提供對本發(fā)明的透徹理解。出于示例的目的而提供這些細(xì)節(jié),并且無這些具體細(xì)節(jié)中的一些或者所有細(xì)節(jié)也可以根據(jù)權(quán)利要求書實(shí)現(xiàn)本發(fā)明。
[0019]本發(fā)明的一方面提供了一種應(yīng)用程序處理方法。圖1是根據(jù)本發(fā)明實(shí)施例的應(yīng)用程序處理方法流程圖。
[0020]本發(fā)明的安全控制系統(tǒng)將TPM模型運(yùn)用到了移動終端中,確保了從OS開始加載到狀態(tài)反饋啟動結(jié)束全過程未被刪改。安全控制系統(tǒng)中包括安全模塊,是為了增強(qiáng)操作系統(tǒng)安全而設(shè)計(jì)的輕量級通用訪問控制框架,它通過在內(nèi)核系統(tǒng)調(diào)用邏輯中插入一系列hook函數(shù),回調(diào)第三方安全模塊實(shí)現(xiàn),而這些第三方的安全模塊決定了是否允許訪問或進(jìn)行其他操作。利用了安全模塊框架得到每個可執(zhí)行文件、庫文件和內(nèi)核文件在加載進(jìn)系統(tǒng)之前的檢測值,通過這些檢測值來監(jiān)控系統(tǒng)安全狀態(tài)。由于移動操作系統(tǒng)采用了經(jīng)過剪裁的帶有安全模塊的內(nèi)核,所以安全控制系統(tǒng)在內(nèi)核中移植了安全檢測架構(gòu),并擴(kuò)展了對應(yīng)用程序進(jìn)行安全檢測的功能。
[0021]本發(fā)明的安全控制系統(tǒng)將安全引導(dǎo)模塊存儲在移動終端的OTP中。從OTP的安全引導(dǎo)模塊的引導(dǎo)程序開始,安全啟動操作系統(tǒng),首先引導(dǎo)程序檢測內(nèi)核,根據(jù)存儲于內(nèi)存中的檢測值進(jìn)行驗(yàn)證,驗(yàn)證