小屋創作

日誌2018-07-01 18:47

逆向基礎實作.1

作者:廢物敗類窩囊廢漢堡

這是一個簡單的逆向,專門讓有興趣的認識認識(逆向基礎)

建議讀我這個的需求會些程式語言比較好上手

實驗程式 AssaultCube遊戲

這遊戲普遍被拿來練習逆向實作,國外也有很多相關知識可以學習

畢竟中文的教學少之又少

所以我盡可能的把我知道的知識給大家

如果有錯可以糾正

首先我們需要的用到的程式 Cheat Engine(CE) 、visual studio 2017,

CE是一個很普遍的修改器,我覺得方便實用,修改單機遊戲全靠它!

所以先打開遊戲

打開CE



搜索進程

找到遊戲程式

點選介面會跑出遊戲程式的進程

首先我們要先知道一個東西的數值比如生命

所以剛開始先在Value設值 100後點選第一次搜尋 (Tpye搜尋用4bytes)
會找到這些地址或更多的地址

不過沒關西我們需要的地址只有一個,那才是正確的地址

而要怎麼做呢?就是使自己減少血量然後搜尋更改後的數值

所以我先拿顆炸彈炸自己

血量目前變為55 所以到搜尋值得欄位改為55然後點選下一個搜尋



此時找到的位址已經剩下兩個了

現在開始把鼠標移到那兩個位子 雙擊後

會在table出現這兩個位址




現在可以點選這兩個的Value來修改血量,像0x12184B4C我改成500



並沒有改變遊戲內的數值,所以我知道了0x02AFA7E0這個位址才是生命正確的位址
數值修改成500後




正確的修改了這個數值了,不過這個位址並不是真的(位址)

為甚麼我會這樣說呢?因為這只是記憶體暫存的位址

如果你的遊戲關掉後打開,就不會是同一個地方了

所以要怎麼做????就是找到一個真正的位址,這樣就能下次使用時不用再搜尋了

那又要怎麼做了?其實很簡單CE強大的功能 找到是哪個地址調用它

對著0x02AFA7E0位址按右鍵找到框選的功能


會跳出這個介面

我們會看到0x00408702和0x0040C048這兩個一子再跑新的資料

而越底下的資料越新,所以我點選了0x0040C048看它的運作



得知 mov eax,[esi+0F8]
這段意思就是 esi加上 0x0f8後 移動到eax

這邊就有關到組和語言了,組語方面的資源網路上很多,想學的請自己加油

我們知道了esi +0x0f8是0x02AFA7E0調用位址,而esi就是0x02AFA6E8

而0x0f8就是偏移量,這些都在info裡很詳細,

所以現在複製esi的位址和記下0x0f8然後到CE主介面開一個新搜尋

一樣用Tpye搜尋4bytes的,然後點HEX的勾勾

把02AFA6E8位址丟進去搜尋


出現了這些新的位址,都是從02AFA6E8搜尋到的

然而有沒有發現3個位址的顏色不一樣?

那就是靜態位址,基本上都是不變得,有些比較新的遊戲可能會有多個靜態地址,

增加你搜尋的難度,練習的當然比較簡單所以我們就把00509B74拉起來吧,

點擊它的位址
會跑出視窗

有沒有發現它的位址好奇怪?
ac_client.exe+109B74
不要慌這告訴我們這就是正確的地址了,然後增加新位址 (ADD address Manually)點選pointer
把它copy上去並在偏移量打上0f8

Value是500表示正確,這樣之後只要有了這個位址,再找到東西的偏移量
你就完成了基本學習的一半了


之後的2教學我想到在寫,因為我超討厭寫文章= =


5

2

LINE 分享

相關創作

USD和MaterialX使用經驗分享

【RPG公會】無面么子·林慎行

【yotoo】240427

留言

開啟 APP

face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】