之前玩了一個安卓的小游戲,弱網絡交互的單機小游戲(只有在存檔,取檔,買vip會員時,每日獎勵,進行網絡交互)。
由於其策划太tm變態,人民幣玩家都很難看到后面的關卡,所以下決定務必破了這游戲,幫前人看到后面的關卡,成就功與名。
於是下了個PC安卓模擬器,開始了我為時一周的破解歷程。
一開始的想法肯定的是本地破解,或者加速。
於是下載,八門神器,葫蘆俠,燒餅修改器等。
一開這些大眾安卓游戲修改器,通通報錯,'檢測到作弊行為',然后強退。
於是根據教程用'MT管理器',修改這些垃圾修改器的resource.arsc,然后簽名,安裝,滿懷信心的打開。
依舊被檢測到,強退。
於是,猜到它應該是檢測到我正在運行的程序了,想辦法讓他這個權限沒有就可以了。
但這個系統極爛無比,權限管理沒有細分到像小米。
於是用xposed(框架服務) + xprivacy,終於把tm的檢測正在運行的程序的權限禁掉了。
滿懷信心,打開修改器,打開游戲。
沒有報錯...開心...
但是,在找到其內存的數值之后,一點修改,tm的又強退了,強退了,退了,了。
心如死灰。想從防止強退入手。
問了安卓的同事強退原理是啥,答:'強退還不簡單,拋出異常就能強退'。
...沒有任何辦法防止強退。
想直接從apk下手。
網上下載了一個android killer(安卓應用逆向工具),看到其舊版本是用梆梆加固的,新版是基於cocos2 加固的。
反編譯貌似失敗了,因為代碼混淆了。
看到少許smali代碼,並沒卵用。
大概手打一兩天,累。
在某個無聊的正在刷圖的晚上,突然想到,它還有一小些弱網絡交互啊。
於是開啟fiddler,抓包,點vip付費等,會看到它加載了一些網銀的請求,回包非常奇葩,xml格式,嘗試修改了一下,並無卵用。
想,fiddler只抓http協議請求啊,能不能找到一個能抓其他自定義協議的請求。
於是找到了一個安卓上的抓包工具,叫packet_capture,抓到了很多在fiddler沒有抓到的請求。
想了一下,存取檔時應該有網絡請求,於是抓。
看到了角色的所有數據...明文傳輸,沒有加密,沒有任何判斷條件,來者不拒(沒有任何對useragent refer等的檢測,雖然這些也能偽造,最重要的是沒加密請求體)
(並不知道為啥同樣是http請求,fiddler就抓不到)
於是,簡單的用fiddler的composer發了post請求,各種數據各種改。
就這樣,我替前輩看到了后面的關卡...並沒有想像中那么多新鮮的東西,所以就是個爛尾的垃圾游戲...