1. 程式人生 > >渡者 逆向通關分析報告【配置文件】

渡者 逆向通關分析報告【配置文件】

資源管理 遊戲數據 功能 ollydbg 文件 更新 exe 管理 olly

一、工具及遊戲介紹

使用工具:Beyond Compare,010Editor,Ollydbg

實現功能:全部通關。

ferryman 渡者

技術分享圖片

技術分享圖片

技術分享圖片

二、逆向邏輯

1、初步判斷

有兩個方案:

  1. 進OD下相關的文件API斷點,觀察遊戲數據被保存在哪個配置文件。
  2. 第二方法比較取巧,通過文件資源管理器的時間排序,來找到最後修改的文件,確定配置文件。

這裏選擇方案2。

遊戲過關,並查看文件資源管理器。

技術分享圖片

技術分享圖片

技術分享圖片

替換未過關的profile文件,發現關卡回到了之前,可以確定是profile文件

2、對比判斷

備份遊戲過關前後的profile文件。

Beyond Compare進行文件數據的16進制比較。

技術分享圖片

3、修改文件

順水推舟,用010Editor修改以下區域數據。

技術分享圖片

更新profile文件。

成功破解。

二、效果

技術分享圖片

技術分享圖片

逆向破解通關成功。

三、附加

來個小彩蛋, 拉進OD調試,發現文件有個小操作。

首先打開game.exe

技術分享圖片

在一些文件操作函數 和 進程線程函數 下斷點,然後棧回溯到程序代碼,程序函數。

發現程序調用CeateProcess。

技術分享圖片

查看CeateProcess的參數,發現程序實際打開的是captiv8.exe,並結束掉自身。

captiv8.exe才是真正運行遊戲的程序。

技術分享圖片

個人總結:如果采用第1種方案的話,你會發現程序調用CreateFile的次數較多,打開很多文件,可能需要一個一個去觀察鎖定。包括還要辨別文件在附加彩蛋那裏,剛開始打開了另一個exe,掩人耳目。

所以這裏采用第2種方法,省下不少力氣。

附件:

渡者profile配置文件

KID

渡者 逆向通關分析報告【配置文件】