2014年2月26日

手機遊戲修改攻防戰 - 記憶體修改

有時候時代進步了,但是某些老狀況又會出現;這次說說遊戲修改的部分..

有點年紀的玩家可能還記得很早期很早期的線上遊戲,是可以用 GameMaster 之類的修改軟體鎖血、改道具數量的。當然,後來各家遊戲公司發現這種 Bug 之後,開始確實的做資料驗證,自然也就因此消聲匿跡。
到了手機年代,由於並不是每個人都是在WIFI環境或者購買流量吃到飽方案,遊戲只好設計成只有必要時刻才會和伺服器資料驗證。這就給了記憶體修改可趁之機。
以最近的手遊來說,幾乎都逃不過記憶體修改 App 八門或者燒餅的毒手;這邊給個範例,受害者是石器時代OL。

簡單說說解決方案吧。
  1. 驗證:雖然手遊不能像端遊一樣時時驗證,每個動作都記 Transaction。但是仍然可以在 Client 端針對某些關鍵數字 (生命 / 攻擊力 / 金錢 等等) 另外加密儲存,不定時的拿出來比對。 比方說金錢有兩組記錄,第一組明碼被修改成 9999,但加密部分仍然是 99,當正常獲取金幣兩組地方都要增加的時候順便做個比對,就可以知道已經遭到修改。
  2. 加密:由於修改器只能針對有規律性的明碼數值加以追蹤並且修改,將重要資料記憶體加密起來是個可行的主意。
  3. 防堵修改器使用:Android可以掃出行動裝置內已安裝軟體,掃到八門或者燒餅的時候將該帳號加入警示名單。或者在修改軟體啟動的時候鎖死記憶體不給修改。
當然,或許還有更多更好的解決方案,在此不過就是拋磚引玉獻醜。


雖然不少人認為,手遊就算修改,也不過是自爽罷了。不過隨著手遊開始有 PVP / 團隊合作的傾向之後,影響會越來越大…

沒有留言:

延伸閱讀

Related Posts with Thumbnails