敏感信息安全保護方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及信息安全領(lǐng)域,尤其涉及敏感信息安全保護方法和裝置。
【背景技術(shù)】
[0002]智能終端的使用度和使用率正在穩(wěn)步提高。隨著移動平臺逐漸強大的計算能力、收發(fā)能力和通訊通信能力,越來越多的應(yīng)用程序被開發(fā)并且被用戶安裝到智能終端上。但是隨著智能終端的快速發(fā)展,智能終端上的惡意應(yīng)用程序和應(yīng)用程序中的惡意行為發(fā)生率也越來越高。
[0003]已有的許多相類似的相關(guān)研究包括Android應(yīng)用沙箱在內(nèi),都是基于傳統(tǒng)的系統(tǒng)調(diào)用分析方法來描述應(yīng)用程序行為的。但是通過一系列的探索后發(fā)現(xiàn)以往這些傳統(tǒng)的基于系統(tǒng)調(diào)用分析的方法并不能獲取應(yīng)用程序和Android系統(tǒng)之間的核心交互過程。例如TaintDroid技術(shù)為所有敏感信息和信息標上敏感標示符,當(dāng)這些標識信息要被獲取或發(fā)送到服務(wù)器時就會被阻止,以此來保護這些標識信息資源不被泄露,但TaintDroid技術(shù)卻不能分析出某些不期望發(fā)生的應(yīng)用程序行為,如偷偷發(fā)送短信息,而且也不能檢查敏感行為的內(nèi)部邏輯。與此同時,也有很多研究者考慮到進程間通信方面的問題,通過監(jiān)控應(yīng)用程序的進程通信來實現(xiàn)對應(yīng)用程序行為的監(jiān)控和記錄,但是卻沒有考慮到應(yīng)用程序接口層面的隔離,從而不能真正的實現(xiàn)對應(yīng)用程序接觸敏感數(shù)據(jù)和資源的行為的隔離和阻止。
[0004]上述內(nèi)容僅用于輔助理解本發(fā)明的技術(shù)方案,并不代表承認上述內(nèi)容是現(xiàn)有技術(shù)。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的主要目的在于提供一種敏感信息安全保護方法和裝置,旨在達到防止惡意應(yīng)用程序獲取和泄露智能終端中的敏感信息的目的,實現(xiàn)了對智能終端用戶敏感信息的保護。
[0006]為實現(xiàn)上述目的,本發(fā)明提供一種敏感信息安全保護方法,包括以下步驟:
[0007]監(jiān)測進程中是否存在目標應(yīng)用程序的進程;
[0008]當(dāng)監(jiān)測到進程中存在目標應(yīng)用程序的進程時,則將預(yù)先設(shè)置的動態(tài)鏈接庫注入目標應(yīng)用程序的進程中;
[0009]執(zhí)行所述目標應(yīng)用程序的進程中的動態(tài)鏈接庫以封裝并加載預(yù)先設(shè)置的功能數(shù)據(jù)包;
[0010]運行所述功能數(shù)據(jù)包,對所述目標應(yīng)用程序要訪問的敏感信息進行偽裝,形成偽裝數(shù)據(jù),以供所述目標應(yīng)用程序獲取。
[0011 ] 優(yōu)選地,所述監(jiān)測目標應(yīng)用程序下是否存在進程之前還包括獲取已啟動的目標應(yīng)用程序的控制權(quán)限,以對目標應(yīng)用程序進行監(jiān)控。
[0012]優(yōu)選地,所述當(dāng)監(jiān)測到所述目標應(yīng)用程序下存在進程時,則將預(yù)先設(shè)置的動態(tài)鏈接庫注入應(yīng)用程序的進程中包括:
[0013]當(dāng)所述目標應(yīng)用程序下存在進程時,獲取預(yù)先設(shè)置的動態(tài)鏈接庫;
[0014]將所述動態(tài)鏈接庫加載到所述目標應(yīng)用程序的進程中,以供所述目標應(yīng)用程序的進程執(zhí)行所述動態(tài)鏈接庫中的函數(shù)。
[0015]優(yōu)選地,所述運行所述功能數(shù)據(jù)包,對所述目標應(yīng)用程序要訪問的敏感信息進行偽裝,形成偽裝數(shù)據(jù)包括:
[0016]通過所述目標應(yīng)用程序的進程執(zhí)行所述動態(tài)鏈接庫中的函數(shù),以運行所述功能數(shù)據(jù)包,對所述目標應(yīng)用程序的數(shù)據(jù)訪問請求進行監(jiān)控;
[0017]當(dāng)所述目標應(yīng)用程序的數(shù)據(jù)訪問請求所要訪問的數(shù)據(jù)為預(yù)先設(shè)置的敏感信息時,根據(jù)所述敏感信息的類型,進行相應(yīng)的偽裝處理,形成偽裝數(shù)據(jù)。
[0018]優(yōu)選地,所述敏感信息安全保護方法還包括:
[0019]在所述目標應(yīng)用程序的啟動過程中,重置所述目標應(yīng)用程序的用戶標識;
[0020]通過重置后的用戶標識將所述目標應(yīng)用程序的文件系統(tǒng)路徑備份到預(yù)先設(shè)置的隔離區(qū),以對目標應(yīng)用程序的數(shù)據(jù)進行保護。
[0021]本發(fā)明還提供了一種敏感信息安全保護裝置,包括:
[0022]監(jiān)測模塊,用于監(jiān)測進程中是否存在目標應(yīng)用程序的進程;
[0023]注入模塊,用于當(dāng)監(jiān)測到進程中存在目標應(yīng)用程序的進程時,則將預(yù)先設(shè)置的動態(tài)鏈接庫注入目標應(yīng)用程序的進程中;
[0024]封裝加載模塊,用于執(zhí)行所述目標應(yīng)用程序的進程中的動態(tài)鏈接庫以封裝并加載預(yù)先設(shè)置的功能數(shù)據(jù)包;
[0025]偽裝模塊,用于運行所述功能數(shù)據(jù)包,對所述目標應(yīng)用程序要訪問的敏感信息進行偽裝,形成偽裝數(shù)據(jù),以供所述目標應(yīng)用程序獲取。
[0026]優(yōu)選地,所述敏感信息安全保護裝置還包括:
[0027]權(quán)限獲取模塊,用于獲取已啟動的目標應(yīng)用程序的控制權(quán)限,以對目標應(yīng)用程序進行監(jiān)控。
[0028]優(yōu)選地,所述注入模塊包括:
[0029]獲取單元,用于當(dāng)所述目標應(yīng)用程序下存在進程時,獲取預(yù)先設(shè)置的動態(tài)鏈接庫;
[0030]加載單元,用于將所述動態(tài)鏈接庫加載到所述目標應(yīng)用程序的進程中,以供所述目標應(yīng)用程序的進程執(zhí)行所述動態(tài)鏈接庫中的函數(shù)。
[0031]優(yōu)選地,所述偽裝模塊包括:
[0032]監(jiān)控單元,用于通過所述目標應(yīng)用程序的進程執(zhí)行所述動態(tài)鏈接庫中的函數(shù),以運行所述功能數(shù)據(jù)包,對所述目標應(yīng)用程序的數(shù)據(jù)訪問請求進行監(jiān)控;
[0033]偽裝處理單元,當(dāng)所述目標應(yīng)用程序的數(shù)據(jù)訪問請求所要訪問的數(shù)據(jù)為預(yù)先設(shè)置的敏感信息時,根據(jù)所述敏感信息的類型,進行相應(yīng)的偽裝處理,形成偽裝數(shù)據(jù)。
[0034]優(yōu)選地,所述敏感信息安全保護裝置還包括:
[0035]重置模塊,用于在所述目標應(yīng)用程序的啟動過程中,重置所述目標應(yīng)用程序的用戶標識;
[0036]備份模塊,通過重置后的用戶標識將所述目標應(yīng)用程序的文件系統(tǒng)路徑備份到預(yù)先設(shè)置的隔離區(qū),以對目標應(yīng)用程序的數(shù)據(jù)進行保護。
[0037]本發(fā)明主要采用了數(shù)據(jù)偽裝的核心思想,將應(yīng)用程序需要獲取的相關(guān)敏感信息進行偽裝,這種偽裝策略一方面使得應(yīng)用程序拿到一個錯誤的數(shù)據(jù)或者拿不到數(shù)據(jù),另一方面則可以保證這種偽裝策略不會輕易被應(yīng)用程序反監(jiān)測到,因而可以有效防止惡意應(yīng)用程序獲得準確的敏感信息。
【附圖說明】
[0038]圖1為本發(fā)明敏感信息安全保護方法第一實施例流程示意圖;
[0039]圖2為本發(fā)明敏感信息安全保護方法第二實施例流程示意圖;
[0040]圖3為本發(fā)明敏感信息安全保護方法第三實施例流程示意圖;
[0041]圖4為本發(fā)明敏感信息安全保護方法進程注入流程示意圖;
[0042]圖5為本發(fā)明敏感信息安全保護方法敏感信息偽裝流程示意圖;
[0043]圖6為Android系統(tǒng)中應(yīng)用程序訪問敏感信息資源示例圖;
[0044]圖7為本發(fā)明下Android系統(tǒng)中目標應(yīng)用程序訪問敏感信息資源示例圖;
[0045]圖8為本發(fā)明敏感信息安全保護裝置第一實施例功能模塊示意圖;
[0046]圖9為本發(fā)明敏感信息安全保護裝置第二實施例功能模塊示意圖;
[0047]圖10為本發(fā)明敏感信息安全保護裝置第三實施例功能模塊示意圖;
[0048]圖11為本發(fā)明敏感信息安全保護裝置注入模塊示意圖;
[0049]圖12為本發(fā)明敏感信息安全保護裝置偽裝模塊示意圖。
[0050]本發(fā)明目的的實現(xiàn)、功能特點及優(yōu)點將結(jié)合實施例,參照附圖做進一步說明。
【具體實施方式】
[0051]應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0052]本發(fā)明的核心思想為對敏感信息進行數(shù)據(jù)偽裝,當(dāng)應(yīng)用程序嘗試打開這些敏感信息資源的時候,則通過本發(fā)明對敏感信息進行數(shù)據(jù)偽裝,從而提供給應(yīng)用程序偽裝的數(shù)據(jù):例如打開的是一個空文件,或者直接提供錯誤的數(shù)據(jù)和毫無相關(guān)的數(shù)據(jù),從而使應(yīng)用程序訪問敏感信息時得不到正確的敏感信息。
[0053]具體舉例來說,當(dāng)一個應(yīng)用程序要求獲取一個設(shè)備所在的位置信息時,通過本發(fā)明返回的是一個看上去似乎是一個位置的坐標,但并不是設(shè)備所在的真正坐標,完全是一個無關(guān)的位置坐標。當(dāng)一個應(yīng)用程序想要獲取設(shè)備的信息數(shù)據(jù),如手機號和設(shè)備ID時,通過本發(fā)明返回一個設(shè)定好的假的手機號碼和一個設(shè)定好的假的隨機數(shù)字和字母組合而成的設(shè)備ID,這些偽裝過的數(shù)據(jù)看上去和真實的數(shù)據(jù)的格式幾乎毫無差別,應(yīng)用程序無法探測出本發(fā)明的數(shù)據(jù)偽裝策略。當(dāng)應(yīng)用程序嘗試讀取通訊錄聯(lián)系人信息或者是短信記錄的時候,通過本發(fā)明將系統(tǒng)中的content provider數(shù)據(jù)庫進行修改,