1. 程式人生 > >安卓安全探究

安卓安全探究

1  SSL證書有效性檢測  建議使用真實的ssl證書,提高通訊安全性

2 程序安全 動態注入防護檢測:

原因:給Android應用加殼是保護Android應用的常見方法。俠義上的Android加殼,只是將Android原始碼隱藏起來,駭客仍然可以通過靜態或者動態除錯的方法獲取到Android應用的原始碼。因此,在加殼的同時增加反除錯功能能夠有效的對抗駭客的入侵行為。

常見的反除錯思路有:1.禁止讀取應用記憶體 2.禁止偵錯程式attach 3.採用陷阱使偵錯程式崩潰。

Ptrace是Linux系統下用於程序跟蹤的利器。它提供了父程序可以觀察和控制其子程序執行的能力,並允許父程序檢查和替換子程序的核心映象(包括暫存器)的值。其基本原理是: 當使用了ptrace跟蹤後,所有傳送給被跟蹤的子程序的訊號(除了SIGKILL),都會被轉發給父程序,而子程序則會被阻塞,這時子程序的狀態就會被系統標註為TASK_TRACED。而父程序收到訊號後,就可以對停止下來的子程序進行檢查和修改,然後讓子程序繼續執行。

防護:在加固時 勾選防止除錯保護,使黑客在除錯時直接殺死程序或者調換到另外的位置。

免費的梆梆加固沒有這個功能,網上最新的資料比較少,可行性待驗證。

3 業務安全 APP可被脫殼:

原因:獲取源程式Apk,進行解密,然後通過HOOK ,動態除錯等方法還原DEX檔案,從而導致被脫殼。

防護:

殼加固方法:第一代:Dex整體加密

第二代:類抽取

第三代:vmp

可使用第三代殼加固的方法來防止脫殼

 

 

我們拿到需要加密的Apk和自己的殼程式Apk,然後用加密演算法對源Apk進行加密在將殼Apk進行合併得到新的Dex檔案,最後替換殼程式中的dex檔案即可,得到新的Apk,那麼這個新的Apk我們也叫作脫殼程式Apk.他已經不是一個完整意義上的Apk程式了,他的主要工作是:負責解密源Apk.然後載入Apk,讓其正常執行起來。

簡單來說,就是通過殼加密為我們編譯成的DEX檔案加密,這樣的話即使匯出DEX檔案也會發現DEX檔案格式不正確,保證安全

 

修復建議:

在加固的時候勾選防除錯加固。邦邦免費加固不提供這個功能,網上最新的資料比較少,可行性待驗證。