【技術實現步驟摘要】
201410690354
【技術保護點】
一種安卓應用的口令處理路徑識別方法,其特征在于,包括以下步驟;S1、對待測安卓應用進行反匯編,以還原編譯該款安卓應用的Smali代碼;S2、從該款安卓應用的Smali代碼中查找該款安卓應用的口令輸入框的標識符以及確定存在口令安全隱患的多個API在Smali代碼中的位置;S3、將各API的位置分別作為與該API對應的口令處理路徑的起點,將存儲口令輸入框標識符的指令寄存器的位置作為與該API對應的口令處理路徑的終點,依照設定的遍歷規則對涉及該款安卓應用口令處理的特定指令的執行路徑進行反向遍歷,在反向遍歷中繪制特定指令執行路徑,并將所繪制的特定指令執行路徑作為口令處理路徑進行輸出顯示。
【技術特征摘要】
1.一種安卓應用的口令處理路徑識別方法,其特征在于,包括以下步驟;
S1、對待測安卓應用進行反匯編,以還原編譯該款安卓應用的Smali代碼;
S2、從該款安卓應用的Smali代碼中查找該款安卓應用的口令輸入框的標
識符以及確定存在口令安全隱患的多個API在Smali代碼中的位置;
S3、將各API的位置分別作為與該API對應的口令處理路徑的起點,將
存儲口令輸入框標識符的指令寄存器的位置作為與該API對應的口令處理路
徑的終點,依照設定的遍歷規則對涉及該款安卓應用口令處理的特定指令的
執行路徑進行反向遍歷,在反向遍歷中繪制特定指令執行路徑,并將所繪制
的特定指令執行路徑作為口令處理路徑進行輸出顯示。
2.根據權利要求1所述的安卓應用的口令處理路徑識別方法,其特征在
于,所述步驟S2中所述確定存在口令安全隱患的多個API在Smali代碼中的
位置的步驟包括:
對名稱分別為SQLite、SharedPreference、File及ContentProvider的API
在該款安卓應用的Smali代碼中的位置進行掃描,并記錄各個API在該款安
卓應用的Smali代碼中的位置信息。
3.根據權利要求1所述的安卓應用的口令處理路徑識別方法,其特征在
于,所述步驟S3具體包括如下步驟:
S31、將各個API的位置分別作為執行與該API對應的口令處理路徑反向
遍歷工作的起點,從起點位置查找存儲任意一條特定指令的指令寄存器,讀
取該指令寄存器中的該條特定指令的代碼,從該條特定指令的代碼中截取涉
及用戶口令處理的一段切片代碼;
S32、判斷該段切片代碼中是否包含有口令輸入框的標識符,并記錄口令
輸入框標識符判斷結果;如該段切片代碼中未包含口令輸入框的標識符,則
對該條特定指令進行解析,及判斷該款安卓應用指令的執行流程圖中是否存
在與該條特定指令滿足定義使用鏈條件的另一條特定指令;
S33、如判斷該款安卓應用的指令執行流程圖中存在與該條特定指令滿足
定義使用鏈條件的另一條特定指令,則對存儲另一條特定指令的另一個指令
寄存器進行訪問,讀取另一條特定指令的代碼,從另一條特定指令代碼中截
取涉及口令處理的一段切片代碼,之后返回上一步驟S32;否則,執行下一步
驟S34;
S34、將該API位置作為與該API對應的口令處理路徑反向遍歷工作的起
點,將存儲有該條特定指令的指令寄存器的位置作為與該API對應的口令處
理路徑反向遍歷的終點,繪制口令處理路徑。
4.根據權利要求3所述的安卓應用的口令處理路徑識別方法,其特征在
于,所述步驟S32中對該條特定指令進行解析的步驟包括:
解析該條特定指令,將解析所得的第一函數名稱、第一參數、第一參數
類型、第一返回值及第一返回值類型作為第一指令解析參考信息。
5.根據權利要求3所述的安卓應用的口令處理路徑識別方法,其特征在
于,所述步驟S32還包括:判斷該段切片代碼中是否包含有用于表示口令處
理路徑沿反向出現分支及指向其它API的分支關鍵詞,及在該段切片代碼中
出現該類分支關鍵詞時,記錄該類分支關鍵詞,將該類分支關鍵詞所指向的
API作為執行本次口令處理路徑反向遍歷工作的續接位置,并在該續接位置繼
續執行本次口令處理路徑反向遍歷工作;其中,該類分支關鍵詞包括if、switch。
6.根據權利要...
【專利技術屬性】
技術研發人員:劉洪剛,楊穎,池垂富,夏冰,韓俊焜,姚駿,胡鐵,李景杰,謝桂樺,胡文君,
申請(專利權)人:卓望數碼技術深圳有限公司,
類型:發明
國別省市:廣東;44
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。