菜鳥第一次挑戰apk逆向,結果整得懷疑人生,終於知道android apk加密的重要性

最近準備從x86上轉移到linux上, 因而乎弄了個手游來玩, 正巧朋友推薦了一個修改軟件,相似於八門神器、CE,用於搜索修改遊戲數據,因而抱着好奇的心理初步研究了下該軟件的原理:linux

android apk加密1.png

android apk加密2.png

研究了下軟件, 搜索,修改,暫停遊戲,實現BT都有,比較齊全,猜想應該核心功能是基於SO上實現的。android

打開AndroidKiller.exe,拖進APK,很順利的反編譯完成安全

android apk加密3.png

android apk加密4.png

在目錄結構並無發現so相關的東西, 搜索LoadLibrary也一無所得,看下進程信息函數

android apk加密5.png

我擦,居然沒有進程信息。。。糾結了。先經過smail看它現有的信息吧。工具

搜索它的catch_.me_.if_.you_.can_,也依然一無所得, 那麼搜索它的版本號呢,測試

android apk加密6.png

發現了:加密

android apk加密7.png

這裏定義的版本號,繼續往下瀏覽, 發現:spa

android apk加密8.png

這裏的代碼,經過插入輸出信息,能夠知道,它這裏獲取了包名,接着原名被替換掉了,至此原來不是沒有找到,而是被替換了,因此按照原來的去找就確定找不到了。調試

android apk加密9.png

android apk加密10.png

此舉作法,應該是防止殼或者檢測類軟件檢測它的進程信息。遊戲

接着繼續看它的啓動信息, 由於該軟件能kill掉其餘進程,因此它多是守護進程。

android apk加密11.png

在這裏輸出exec的參數,能夠發現一個關鍵性的點:

android apk加密12.png

好傢伙果真有so 文件 ,那麼目錄中沒有,這裏又加載了,說明它的so是經過下載流dump出來的。

繼續往下看,發現:

android apk加密13.png

android apk加密14.png

到這裏OK,能夠在該路徑下把so文件給pull出來。

分析so部分

android apk加密15.png

原來它用了ptrace該函數實現注入遊戲進程。

android apk加密16.png

經過這兩個部分,一樣能夠對它實行一些檢測,好比檢測進程在被注入的狀況下,進程狀態, 檢測TracerPid的值, 被注入調試,該值不爲0。

菜鳥第一次挑戰apk,結果整得懷疑人生,終於知道android apk加密的重要性了。apk若是不作防禦,一個菜鳥花一點時間就能破解它,找個在線加密工具作防禦仍是很必要的,在網上找了幾家加密作測試,發現幾維安全的apk加密工具,dex文件加密用起來還不錯,關鍵仍是免費。平臺能夠無償使用加密工具,有須要的自取了!

http://cloud.kiwisec.com/encr...
拿走不謝

操做方法很是簡單隻需四步:

一、登陸官網註冊幾維安全帳號;

二、上傳所需加密文件(如.apk/.so等文件);

三、下載加密完成應用;

四、簽名;

android apk加密17.png

此平臺也還有其餘加密功能,例如:安全檢測、安全監測、iOS加密等等。

因爲是菜鳥初入門檻,水平所限,寫的比較淺顯,還請大神勿噴。

相關文章
相關標籤/搜索