亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種檢驗(yàn)與監(jiān)控BYOD環(huán)境下移動應(yīng)用安全的方法與流程

文檔序號:11177649閱讀:457來源:國知局
一種檢驗(yàn)與監(jiān)控BYOD環(huán)境下移動應(yīng)用安全的方法與流程

本發(fā)明涉及移動應(yīng)用安全領(lǐng)域,具體講涉及一種檢驗(yàn)與監(jiān)控byod環(huán)境下移動應(yīng)用安全的方法。



背景技術(shù):

近年來,很多企業(yè)逐漸開始允許員工帶著自己的移動設(shè)備進(jìn)入工作環(huán)境,稱之為攜帶自己的設(shè)備到工作場所,即byod(bringyourowndevice)。一方面可以方便員工的使用,提高員工的工作效率和積極性;另一方面也可以降低企業(yè)的設(shè)備成本,一舉多得,于此同時,許多智能設(shè)備廠商逐步考慮支持個人設(shè)備在企業(yè)環(huán)境的使用。

智能手機(jī)和平板電腦的廣泛使用引爆了移動安全問題的熱議,新興的byod模式給移動應(yīng)用安全提出了新的挑戰(zhàn)?,F(xiàn)在的移動代碼分發(fā)的趨勢是基于應(yīng)用市場,應(yīng)用市場允許用戶瀏覽和安裝無數(shù)的應(yīng)用移動設(shè)備。一個集中的應(yīng)用倉庫對安全評估有很多優(yōu)勢,因?yàn)閼?yīng)用市場能實(shí)現(xiàn)對移動代碼的分析和測試,主流的應(yīng)用市場需要提供信息可信的、安全的、支持隱私保護(hù)的和有害信息過濾的安全保障。

模型檢驗(yàn)是一種自動驗(yàn)證技術(shù),最早由clarke和emerson以及quielle和sifakis在1981年分別提出的,主要通過顯式狀態(tài)搜索或隱式不動點(diǎn)計算來驗(yàn)證有窮狀態(tài)并發(fā)系統(tǒng)的模態(tài)/命題性質(zhì)。由于模型檢測可以自動執(zhí)行,并能在系統(tǒng)不滿足模態(tài)性質(zhì)時提供反例路徑,因此在工業(yè)界比演繹證明更受推崇。盡管限制在有窮系統(tǒng)上是一個缺點(diǎn),但模型檢查可以應(yīng)用于許多非常重要的系統(tǒng),如硬件控制器和通信協(xié)議都是有窮狀態(tài)系統(tǒng)。很多情況下,可將模型檢測和各種抽象與歸納原則結(jié)合起來驗(yàn)證非有窮狀態(tài)系統(tǒng)。

現(xiàn)在的移動操作系統(tǒng)還不足以處理企業(yè)環(huán)境的安全需求,而且目前的移動安全技術(shù)主要是解決單個應(yīng)用的安全問題,不能處理多個應(yīng)用結(jié)合使用的安全缺陷。

為克服現(xiàn)有移動應(yīng)用安全技術(shù)的缺陷,需要提供一種監(jiān)控在集合市場中多個應(yīng)用結(jié)合使用的方法。



技術(shù)實(shí)現(xiàn)要素:

針對現(xiàn)有技術(shù)中存在的問題,本發(fā)明提供一種基于meta-market的檢驗(yàn)和監(jiān)控byod環(huán)境下移動應(yīng)用安全的方法,處理byod環(huán)境下移動應(yīng)用訪問權(quán)限的問題。

本發(fā)明提供的檢驗(yàn)與監(jiān)控byod環(huán)境下移動應(yīng)用安全的方法,其改進(jìn)之處在于,所述方法包括:

步驟一:設(shè)置移動設(shè)備的關(guān)聯(lián)結(jié)點(diǎn);

步驟二:描述策略規(guī)范;

步驟三:存儲策略規(guī)范;

步驟四:對移動應(yīng)用建模;

步驟五:對所述移動應(yīng)用進(jìn)行靜態(tài)檢測;

步驟六:根據(jù)所述檢測結(jié)果確定是否植入監(jiān)控代碼,進(jìn)行動態(tài)監(jiān)控;

步驟七:全部移動應(yīng)用檢驗(yàn)和監(jiān)控完畢,結(jié)束流程。

進(jìn)一步的,所述步驟一中,每個所述結(jié)點(diǎn)對應(yīng)一條記錄;所述記錄包括所述移動設(shè)備當(dāng)前的策略規(guī)范、已安裝的應(yīng)用集合、已知可安全安裝的應(yīng)用集合以及已知違反該結(jié)點(diǎn)策略規(guī)范的應(yīng)用集合;

所述移動應(yīng)用安裝或卸載時,meta-market更新記錄。

進(jìn)一步的,用有向無環(huán)圖dag表示移動應(yīng)用安裝或卸載時移動設(shè)備的配置及轉(zhuǎn)換關(guān)系;所述移動設(shè)備的配置包括已安裝的移動應(yīng)用和當(dāng)前的策略。

進(jìn)一步的,所述步驟二中,用conspec語言描述所述策略規(guī)范;

所述策略規(guī)范包含:

r1:用戶的移動設(shè)備上不能存儲敏感數(shù)據(jù);

r2:刪除可能包含敏感信息的臨時數(shù)據(jù);

r3:根據(jù)連接標(biāo)識決定是否允許藍(lán)牙輸出。

進(jìn)一步的,所述步驟三,所述策略規(guī)范存儲在meta-market的關(guān)系數(shù)據(jù)庫中。

進(jìn)一步的,所述步驟四中,所述移動應(yīng)用的建模用控制流程圖cfg表示;meta-market采用androguard靜態(tài)分析工具從應(yīng)用包中提取所述cfg,并刪除不涉及相關(guān)安全性的部分以實(shí)現(xiàn)對所述cfg的優(yōu)化。

進(jìn)一步的,所述步驟五中,所述靜態(tài)檢測過程包括:

(1)用模型檢驗(yàn)工具spin將cfg轉(zhuǎn)換成promela規(guī)范;

(2)將所述策略規(guī)范編碼得到抽象的策略控制器promelaagent;

(3)所述策略控制器讀取應(yīng)用模型產(chǎn)生的抽象軌跡;

(4)對攜帶違反策略數(shù)據(jù)的所述應(yīng)用模型,所述策略控制器運(yùn)行至錯誤狀態(tài),導(dǎo)致spin報錯,輸出軌跡;

(5)所述策略控制器將軌跡映射至應(yīng)用代碼中,定位到非法操作流,查找違反策略的數(shù)據(jù);

(6)meta-market保存驗(yàn)證結(jié)果,避免重復(fù)模型檢驗(yàn)。

進(jìn)一步的,所述步驟六中,應(yīng)用模型檢驗(yàn)成功,則應(yīng)用遵循byod安全策略,不需進(jìn)行動態(tài)監(jiān)控;

所述應(yīng)用模型檢驗(yàn)失敗或者超過模型檢驗(yàn)設(shè)置的時間上限閾值,則用動態(tài)監(jiān)控方式監(jiān)控移動應(yīng)用的運(yùn)行過程;

所述動態(tài)監(jiān)控方式包括:在違反策略的數(shù)據(jù)中使用redexer工具植入所述監(jiān)控代碼后,將所述移動應(yīng)用重新打包,并計算新的有效簽名。

進(jìn)一步的,所述動態(tài)監(jiān)控方式的監(jiān)控環(huán)境包含策略決策點(diǎn)pdp和策略執(zhí)行點(diǎn)pep;

所述移動應(yīng)用執(zhí)行安全相關(guān)的訪問時,激活的pep觸發(fā)pdp檢查安全狀態(tài)和策略。

進(jìn)一步的,所述pdp授權(quán)或拒絕訪問操作,所述pep執(zhí)行所述pdp的響應(yīng):所述pdp授權(quán)請求的訪問,執(zhí)行過程繼續(xù);所述pdp拒絕請求的訪問,拋出安全異常。

與最接近的現(xiàn)有技術(shù)比,本申請還具有以下優(yōu)異效果:

(1)本發(fā)明提供的技術(shù)方案使用conspec語言描述策略規(guī)范,可以更細(xì)粒度地對安全策略進(jìn)行定義,對應(yīng)用的安全需求進(jìn)行更具體的描述。

(2)本發(fā)明提供的技術(shù)方案使用靜態(tài)檢測與動態(tài)監(jiān)控相結(jié)合的方法,大大提高了對應(yīng)用集合的驗(yàn)證精確度,減小了對用戶信息的安全性影響。

(3)本發(fā)明提供的技術(shù)方案通過分析和監(jiān)控移動應(yīng)用執(zhí)行byod安全策略,使用動靜態(tài)結(jié)合的技術(shù)檢查應(yīng)用是否遵循了企業(yè)的安全策略,可以保證byod環(huán)境下移動應(yīng)用和企業(yè)數(shù)據(jù)資源的安全。

說明書附圖

圖1是本發(fā)明中meta-market應(yīng)用分發(fā)工作流示意圖;

圖2是本發(fā)明提供的技術(shù)方案中使用conspec語言描述策略規(guī)范示例圖;

圖3是本發(fā)明提供的技術(shù)方案中的dag數(shù)據(jù)結(jié)構(gòu)示意圖。

具體實(shí)施方式

為了更清楚詳細(xì)的解釋本發(fā)明提供的技術(shù)方案涉及的移動應(yīng)用安全監(jiān)測方法,以下將結(jié)合說明書附圖和具體實(shí)施例作進(jìn)一步說明。

本發(fā)明是基于meta-market進(jìn)行的,所述的meta-market是一種能提供安全保護(hù)的應(yīng)用市場,通過分析和監(jiān)控移動應(yīng)用執(zhí)行byod安全策略,使用動靜態(tài)結(jié)合的技術(shù)檢查應(yīng)用是否遵循了企業(yè)的安全策略。meta-market支持:(1)細(xì)粒度的安全策略的定義;(2)對應(yīng)用是否遵循安全策略的基于模型檢驗(yàn)的靜態(tài)檢測;(3)對靜態(tài)檢測失敗的應(yīng)用的運(yùn)行監(jiān)控。

如圖1所示,本實(shí)施例的meta-market應(yīng)用分發(fā)工作流為,代碼的生產(chǎn)者編譯p.0,生成移動應(yīng)用p.1,并將應(yīng)用發(fā)布到標(biāo)準(zhǔn)的應(yīng)用市場p.2,應(yīng)用市場將軟件包存到數(shù)據(jù)庫adb中m.0。當(dāng)代碼的消費(fèi)者向meta-market請求一個應(yīng)用時,相關(guān)的代碼包被取出,模型提取程序被應(yīng)用到代碼中b.0,生成應(yīng)用模型b.1,模型被傳遞到驗(yàn)證程序b.2,檢查是否遵循從策略數(shù)據(jù)庫pdb取出b.4的安全策略b.3。如果驗(yàn)證成功b.5->yes,策略數(shù)據(jù)庫更新,應(yīng)用被傳送到用戶的設(shè)備中b.6;如果驗(yàn)證失敗b.5->no,meta-market會在應(yīng)用中添加監(jiān)控信息b.7。當(dāng)用戶接收到移動應(yīng)用包,會檢查是否存在監(jiān)控信息c.0,如果存在,在安裝前,移動設(shè)備會在應(yīng)用包中植入安全檢查c.1,否則直接安裝。

1、策略規(guī)范和存儲

(1)使用conspec語言描述策略規(guī)范

一個conspec策略規(guī)范包含一個安全狀態(tài)和一系列的安全規(guī)則,安全狀態(tài)包含表示策略結(jié)構(gòu)的一系列的變量,安全規(guī)則定義了評估某一個安全相關(guān)的操作時狀態(tài)的變化。

圖2是conspec語言描述的策略規(guī)范示例圖,這個策略包含3個規(guī)則:

r1表示用戶不能在他們的設(shè)備上存儲敏感數(shù)據(jù):

第7行和第12行:當(dāng)應(yīng)用創(chuàng)建了url對象后,策略會檢查這個url對象是否指向敏感數(shù)據(jù)資源,在本實(shí)施例中定義成agency.gov/路徑;

第9行和第14行:如果url對象指向敏感數(shù)據(jù)資源,則策略將url引用存儲在變量agency_url中;

第10行和第15行:如果url對象沒有指向敏感數(shù)據(jù)資源,則策略將允許操作;

第17行:在url被用于創(chuàng)建數(shù)據(jù)連接之前,規(guī)則被觸發(fā),如果這個url和被存儲在agency_url中的url相同,策略狀態(tài)改變,設(shè)置連接標(biāo)志為true,這意味著應(yīng)用可以訪問敏感數(shù)據(jù);

第22行:只有連接標(biāo)志為false,才能將目標(biāo)寫在本地文件,如果連接標(biāo)志為true即訪問敏感數(shù)據(jù)時,不能將目標(biāo)寫在本地文件。

r2表示可能包含敏感信息的臨時數(shù)據(jù)必須被刪除。

r3表示根據(jù)連接標(biāo)志決定是否允許藍(lán)牙輸出,只有連接標(biāo)志為false,操作才被允許。

(2)策略存儲

移動設(shè)備的安全狀態(tài)要根據(jù)已安裝的應(yīng)用的模型進(jìn)行評估,所以meta-market必須記錄每一個設(shè)備中所有已安裝的應(yīng)用,當(dāng)應(yīng)用安裝或卸載時,記錄更新。

可以使用有向無環(huán)圖dag來表示移動設(shè)備的配置及其轉(zhuǎn)換關(guān)系。如圖3中dag所示,以封閉的三角形表示一個移動設(shè)備,結(jié)點(diǎn)r是根配置,表示原始策略,實(shí)線所示的a1,a2,a3應(yīng)用的安裝導(dǎo)致新的配置n,安裝順序不同會導(dǎo)致路徑不同,附圖中用虛線表示不同的安裝路徑,最后,安裝a4應(yīng)用,當(dāng)a4不違反配置n中的策略時,配置n轉(zhuǎn)換到配置m。

每一個設(shè)備關(guān)聯(lián)到一個結(jié)點(diǎn),結(jié)點(diǎn)對應(yīng)于一條記錄,記錄包含設(shè)備當(dāng)前的策略、已安裝的應(yīng)用集合、已知的可安全安裝的應(yīng)用、已知的違反該結(jié)點(diǎn)的策略的應(yīng)用集合。

meta-market使用關(guān)系數(shù)據(jù)庫存儲已登記的設(shè)備的安全配置數(shù)據(jù)。數(shù)據(jù)庫中存在表policy_instance和表green_list,以圖3中的結(jié)點(diǎn)n為例,結(jié)點(diǎn)n用表policy_instance中的行來表示,包含設(shè)備當(dāng)前的策略已安裝的應(yīng)用集合{a1,a2,a3}、已知的可安全安裝的應(yīng)用及其指向的相應(yīng)結(jié)點(diǎn)a4->m、已知的違反該結(jié)點(diǎn)的策略的應(yīng)用集合{a5}。表green_list表示安裝哪些應(yīng)用是合法的,結(jié)點(diǎn)n對應(yīng)的條目是a4。

影響設(shè)備安全狀態(tài)的兩個主要活動是應(yīng)用的安裝和卸載。

2、移動應(yīng)用建模

用cfg(controlflowgraph)表示代碼段的行為。cfg是一種表示程序的所有可能的執(zhí)行流的數(shù)據(jù)結(jié)構(gòu),包含狀態(tài)及其轉(zhuǎn)移,狀態(tài)表示線性的代碼段,而轉(zhuǎn)移表示有條件或無條件的跳轉(zhuǎn)指令。

cfg可以從應(yīng)用包中提取。meta-market采用androguard來生成cfg。androguard提取出來的cfg是未優(yōu)化的,所以在cfg中刪除不涉及安全相關(guān)的部分實(shí)現(xiàn)優(yōu)化。

3、靜態(tài)檢測

meta-market選擇spin作為模型檢驗(yàn)工具進(jìn)行靜態(tài)檢測。spin對應(yīng)的語言是promela,將從應(yīng)用包中提取出來的cfg轉(zhuǎn)換成對應(yīng)的promela規(guī)范,并將conspec策略規(guī)范編碼得到一個抽象策略控制器promelaagen,讀取模型產(chǎn)生的抽象軌跡,如果模型攜帶了違反策略的行為,策略控制器會到達(dá)一個錯誤的狀態(tài)導(dǎo)致spin報錯,輸出軌跡;分析spin輸出的軌跡可以定位到非法的操作流,找出違反策略的地方,以便對應(yīng)用進(jìn)行代碼植入,從而進(jìn)行動態(tài)監(jiān)控。

meta-market保存驗(yàn)證結(jié)果,避免重復(fù)的模型檢驗(yàn)。

模型檢驗(yàn)時間設(shè)置一個上限閾值,如果超過閾值時間,也認(rèn)為是驗(yàn)證失敗。如果模型檢驗(yàn)結(jié)果是成功,則說明應(yīng)用遵循了byod安全策略;如果檢驗(yàn)結(jié)果是失敗或超過上限閾值,則不能保證應(yīng)用遵循byod安全策略,需要使用動態(tài)監(jiān)控的方式對其運(yùn)行過程進(jìn)行監(jiān)控。

4、動態(tài)監(jiān)控

一個監(jiān)控環(huán)境包含一個策略決定點(diǎn)pdp(policydecisionpoint)和多個策略執(zhí)行點(diǎn)pep(policyenforcementpoint)。pdp保存安全策略和當(dāng)前的安全狀態(tài),pep控制對重要操作的調(diào)用。當(dāng)應(yīng)用嘗試執(zhí)行安全相關(guān)的訪問時,對應(yīng)的pep被激活,pep觸發(fā)pdp檢查安全狀態(tài)和策略,授權(quán)或拒絕操作;pep執(zhí)行pdp的響應(yīng),允許或阻止被請求的訪問。

meta-market采用植入應(yīng)用代碼的方式進(jìn)行pep的部署,具體包括:

(1)對中間代碼進(jìn)行簡單的修改,用pep指令將安全相關(guān)的調(diào)用包裹起來;

(2)中斷代碼執(zhí)行,通知pdp正在進(jìn)行的操作和參數(shù)化;

(3)pdp根據(jù)當(dāng)前的安全狀態(tài)評估這個操作,評估會改變安全狀態(tài),產(chǎn)生一個給pep的返回值:allow或deny。

如果pep接收到allow信號,執(zhí)行過程繼續(xù);如果收到的返回值是deny,則拋出安全異常。

應(yīng)用代碼的植入使用redexer工具。redexer是一個字節(jié)碼植入框架,可以解析、操縱和生成dalvik字節(jié)碼。

植入pep指令后,需要將應(yīng)用重新打包,此時原來的軟件簽名失效,必須計算一個新的有效的簽名。

另外,pdp作為android應(yīng)用四大組件之一的背景service實(shí)現(xiàn),service作為android應(yīng)用的組件,不提供用戶界面,主要用來在后臺執(zhí)行長時間運(yùn)行的操作或者執(zhí)行遠(yuǎn)程連接的工作,策略解釋器在pdp中運(yùn)行。

最后應(yīng)當(dāng)說明的是:以上實(shí)施例僅用以說明本申請的技術(shù)方案而非對其保護(hù)范圍的限制,盡管參照上述實(shí)施例對本申請進(jìn)行了詳細(xì)的說明,所屬領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:本領(lǐng)域技術(shù)人員閱讀本申請后依然可以對申請的具體實(shí)施方式進(jìn)行種種變更、修改或者等同替換,但這些變更、修改或者等同替換,均在申請待批的權(quán)利要求保護(hù)范圍之內(nèi)。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1