聽鬼哥說TL大廈的相關分析,tl大廈
最近一直沒有發分析遊戲破解類的遊戲,剛剛看到一個好玩的遊戲更新了,那麼我們來分析下新版本的破解。
遊戲的破解,主要靠的是積累經驗,沒有千篇一律的遊戲,所以只是照著教程修改是次要的,重要的是破解思路的分析。
遊戲名:逃離大廈版本:1.5目的:金幣破解,廣告去除
0x1:遊戲試玩
發現廣告情況:
到商店看一下:
好了,我們簡單總結一下:通過第一張圖,我們可以得到:①.遊戲在進入的時候顯示廣告--->我們找遊戲啟動類開始分析②.廣告上面說,點擊安裝會增加200金幣--->我們找增加200的地方③.廣告資源是由網路返回的,還是本地內建的--->斷網方式進入,確定資源從哪裡來
通過第二張圖,我們可以得到:①.遊戲初始化金幣為100-->我們可以找遊戲初始化100的地方,看遊戲是如何定義金幣的,同時可以將這裡修改為9999②.商品標價遊戲幣是用coin來表示的-->搜尋coin所在的類進行查看,看看金幣的模型是如何構造的③.最下面有廣告,點擊左下角的小圈i --->通過點擊,確定這裡的廣告是Google廣告
0x2:開始分析
按照0x1的遊戲試玩,我們已經得出了一些結論,那麼下一步就是開始分析這些結論哪個可用。這裡,建議有興趣的朋友可以自己開始動手了。。。------------------------分割線-----------------------------繼續我們的分析:Coin的搜尋,讓我們發現這兩個類:
開啟後,我們發現正是我們所需的
有set 和get方法,還有update函數可以輔助確定,金幣的定義是在此類,那麼接下來就簡單了,我們對get方法的返回值進行賦值即可,float類型的,所以我們在return v0前面加上
const v0, 0x4b18967f
即9999999。不熟悉轉換的,可以自己寫一個helloworld,設定一個float的數值,自己反編譯看看即可。
0x3:廣告的去除
google廣告的去除,以前也有文章簡單敘述過,這裡就不再重複。我們直接開始分析軟體開啟後的那個廣告顯示。通過斷網和連網兩種情況,我們確定此圖片不是由網路返回的,而是本地存在的資源。那麼我們就在本地瀏覽下,一般這些資源都是在assets檔案夾下放置的。通過瀏覽,發現位置:
所以,我們就搜尋一下banner.png的引用位置:
好了,只發現一處,那麼,我們按照正常的思路,直接刪掉這四行引用。
---------------分割線------------
打包測試,遊戲閃退那我們就分析下這幾行代碼的作用。通過閱讀smali代碼,聯絡上下文,發現是對一些圖片資源的定義設定,然後遊戲中來調用,同時,這個方法內的圖片有一些就是遊戲本身的圖片資源,所以我們這裡隨意刪除,肯定會導致其他地方調用失敗,遊戲會閃退。
好了,那麼我們繼續分析下去。我們搜尋assets下banner.png所在檔案夾,berry_king發現:
我們進去看一下:這次我們搜尋.method ,來查看此類裡面的方法:
看到showView和hideView,我們就有一些小激動了,開啟看下
這個menuScene,剛好是我們搜尋的banner.png所在的MenuSceneResources這個類相關,通過名字也可以瞭解,banner.png所在的類為資源定義類,所以推測我們這裡的show方法,就是顯示那個廣告的,於是,我們在方法頭那裡直接返回void即可。return-void
打包,測試。。。。。。。
一切都正常,廣告部顯示,金幣99999。。。。
接下來就是好好玩遊戲吧,其實,第一次發現這個遊戲,我是手動一直打通關的,在通關以後,簡單分析了,這次更新,增加了一些關卡,挺好玩的。
文檔以及附件相關地址:
連結:http://pan.baidu.com/s/1ntmf8SD 密碼:fwo8
交流群:
愛破解,愛鬼哥 377724636