[發明專利]避免進程被注入的方法和裝置在審
| 申請號: | 201410441405.9 | 申請日: | 2014-09-01 |
| 公開(公告)號: | CN104239781A | 公開(公告)日: | 2014-12-24 |
| 發明(設計)人: | 周榮譽;張宇平 | 申請(專利權)人: | 百度在線網絡技術(北京)有限公司 |
| 主分類號: | G06F21/51 | 分類號: | G06F21/51;G06F21/52 |
| 代理公司: | 北京清亦華知識產權代理事務所(普通合伙) 11201 | 代理人: | 宋合成 |
| 地址: | 100085 北京市*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 避免 進程 注入 方法 裝置 | ||
技術領域
本發明涉及安全技術領域,尤其涉及一種避免進程被注入的方法和裝置。
背景技術
進程注入是指一個應用程序進程將自己的模塊通過調試等方式,插入到另一個應用程序進程中然后執行,這樣就可以任意劫持對方應用程序的運行流程,竊取其內存數據。在Android系統中,應用程序進程都是由Zygote進程孵化(fork)的,所以注入Zygote進程是目前通用的注入方法,一旦Zygote進程被注入,之后由Zygote進程孵化的所有進程都被注入。
相關技術中,可以對被注入的Zygote進程進行修復,以避免進程間注入。但是,采用修復Zygote進程的方式,得到的效果并不理想。
發明內容
本發明旨在至少在一定程度上解決相關技術中的技術問題之一。
為此,本發明的一個目的在于提出一種避免進程被注入的方法,該方法可以提高避免進程間注入的效果。
本發明的另一個目的在于提出一種避免進程被注入的裝置。
為達到上述目的,本發明第一方面實施例提出的避免進程被注入的方法,包括:接收應用程序的啟動參數;根據所述啟動參數判斷所述應用程序是否為需要保護的應用程序;如果是,將所述啟動參數發送給預先創建的私有進程,使得所述私有進程根據所述啟動參數孵化得到所述應用程序,其中,所述私有進程是未被注入的孵化載體。
本發明第一方面實施例提出的避免進程被注入的方法,通過在應用程序是需要保護的應用程序時,由私有進程完成該應用程序的孵化,由于私有進程是未被注入的,因此可以避免該應用程序的進程被注入,并且,本實施例采用建立私有進程的方式,而不是修復的方式,可以提高避免進程被注入的效果。
為達到上述目的,本發明第二方面實施例提出的避免進程被注入的裝置,包括:接收模塊,用于接收應用程序的啟動參數;判斷模塊,用于根據所述啟動參數判斷所述應用程序是否為需要保護的應用程序;發送模塊,用于在所述應用程序是需要保護的應用程序時,將所述啟動參數發送給預先創建的私有進程,使得所述私有進程根據所述啟動參數孵化得到所述應用程序,其中,所述私有進程是未被注入的孵化載體。
本發明第二方面實施例提出的避免進程被注入的裝置,通過在應用程序是需要保護的應用程序時,由私有進程完成該應用程序的孵化,由于私有進程是未被注入的,因此可以避免該應用程序的進程被注入,并且,本實施例采用建立私有進程的方式,而不是修復的方式,可以提高避免進程被注入的效果。
本發明附加的方面和優點將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本發明的實踐了解到。
附圖說明
本發明上述的和/或附加的方面和優點從下面結合附圖對實施例的描述中將變得明顯和容易理解,其中:
圖1是相關技術中應用程序啟動的流程示意圖;
圖2是相關技術中進程注入的流程示意圖;
圖3是本發明一實施例提出的避免進程被注入的方法的流程示意圖;
圖4是本發明實施例中一種避免進程被注入的具體實現示意圖;
圖5是本發明另一實施例提出的避免進程被注入的方法的流程示意圖;
圖6是本發明另一實施例提出的避免進程被注入的實現裝置;
圖7是本發明另一實施例提出的避免進程被注入的實現裝置。
具體實施方式
下面詳細描述本發明的實施例,所述實施例的示例在附圖中示出,其中自始至終相同或類似的標號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實施例是示例性的,僅用于解釋本發明,而不能理解為對本發明的限制。相反,本發明的實施例包括落入所附加權利要求書的精神和內涵范圍內的所有變化、修改和等同物。
為了更好的理解本發明,首先對應用程序(app)的啟動流程進行描述。
以Android平臺為例,參見圖1,相關技術中,Android平臺下,應用程序(app)的啟動流程包括:
S11:啟動器啟動app,并將app的啟動參數發送給服務線程。
啟動器可以具體可以是指launcher。服務線程可以具體是指system_server進程中的ActivityManagerService服務線程。
S12:服務線程將app的啟動參數發送給孵化載體。
其中,孵化載體可以具體是指Zygote進程。Zygote進程可以監聽socket連接,服務進程通過socket連接將啟動參數發送給Zygote進程。
S13:孵化載體完成app孵化。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于百度在線網絡技術(北京)有限公司,未經百度在線網絡技術(北京)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410441405.9/2.html,轉載請聲明來源鉆瓜專利網。





