Android 逆向概述
阿新 • • 發佈:2018-07-15
腳本 set 函數 打包 16進制 匯編 sharp rstp so文件
大體來看與Windows逆向類似, 不過涉及到的東西更多也更雜, 總體的思路是類似的.
Smali語言是Davlik的寄存器語言, 語法類似於匯編, 直接修改Smali文件是可以的, 不需要像X86_64匯編那樣還需要註意指令長度, Android Killer中修改後需要手動保存, 否則回編譯後將是舊的內容
在Android Killer的工程搜索中可搜索字符串, 不過需要註意搜索的字符串需要先轉成Unicode串才能進行搜索
基於mono框架的U3D遊戲的主要腳本主要存放在Assembly-CSharp.dll或者Assembly-CSharp-firstpass.dll中(路徑為 $工程名\Project\assets\bin\Data\Managed), 一般較大的那個是我們需要修改的腳本, 對這兩個.NET架構的dll進行反編譯, 生成il文件與res文件, 其中il文件就是需要進行修改的, 修改完成後進行回編譯重新打包成dll進行替換即可
cocos2d手遊,可修改的函數主要位於libcocos2dcpp.so中(路徑為 $工程名\Project\lib\armeabi), so文件的反匯編使用IDA, 修改是使用16進制
客戶端用於 ADB 通信的默認端口始終是 5037,設備使用從 5555 到 5585 的端口
Android 逆向概述