首先分享一份安卓逆向的視頻地址煩請查看http://www.52pojie.cn/thread-247179-1-1.htmlhtml
還有順便推介一下吾愛裏移動安全區放出的安卓逆向8節課,持續更新。java
學着作了一段時間的windows逆向的內容,相接處一下安卓的就找了一些資料。看完以後受益不淺,可是仍是有一些欠缺的東西。好比app被加殼
後,還不會去app的殼,若是誰能看見,煩請分享一下。windows
很少廢話,這裏拿了一個吾愛的例子作學習,因爲剛接觸,東西拿的比較low,你們要是有好的app練習的話也能夠聯繫我一塊兒學習。
一、首先你得有安卓逆向的一些工具,這裏我用的是apkIDE,吾愛的工具包裏有了。還須要下載jdk包而後配置java環境,這裏很少說,很簡單。安全
二、其次咱們須要的就是一個安卓的模擬器,網上有好多,好比藍蝶和海馬等。app
三、基本流程是,首先把app放到模擬器中,看一下咱們須要着手的點還有一些須要注意的事項,關鍵的信息等作記錄;其次,咱們進行用IDE
進行反編譯,並搜索關鍵信息;找到關鍵信息後分析關鍵代碼,修改關鍵位置;最後編譯查看是否達到目的。整個流程基本上和Windows內容相
差不大。ide
四、將app放到ide中,查找關鍵詞激活vip,這裏須要注意的是unicode和ascll的區別和轉換。工具
五、這裏只找到一個信息進入發現附近信息。學習
const/16 v2, 0x1e if-ge v0, v2, :cond_0
在這裏咱們能夠看到這個判斷的語句,送查看v0和31的大小也就是以前看到30分的要求,則能夠知道這個判斷決定這程序的走向。若是小於30則直接
往下走,若是大於等於31則直接跳到cond_0code
六、因此咱們能夠作如下修改:視頻
const/16 v2, 0x1e goto :cond_0
這樣是讓判斷直接到達cond_0的狀況。
七、從新編譯,驗證沒問題。