從植物大戰殭屍開始一步一步帶你入門逆向工程,
逆向工程掃盲篇
最近又來了一群對逆向工程感興趣的同學,我這裡帶領大家來一次逆向工程初體驗。
在這裡我們會
- 修改彈框的值
- 修改植物大戰殭屍的陽光
編譯並執行以下C程式
使用的工具:Devcpp
#include<windows.h>
int main(){
MessageBox(0,"Hello world","title",MB_OK);
return 0;
}
編譯後如上所示。
執行結果如下:
下面我們來一步一步修改HelloWorld
IDA的基本使用
IDA的介紹:
互動式反彙編器專業版(Interactive Disassembler Professional),人們常稱其為IDA Pro,或簡稱為IDA。是目前最棒的一個靜態反編譯軟體,為眾多0day世界的成員和ShellCode安全分析人士不可缺少的利器!IDA Pro是一款互動式的,可程式設計的,可擴充套件的,多處理器的,交叉Windows或Linux WinCE MacOS平臺主機來分析程式, 被公認為最好的花錢可以買到的逆向工程利器。IDA Pro已經成為事實上的分析敵意程式碼的標準並讓其自身迅速成為攻擊研究領域的重要工具。它支援數十種CPU指令集其中包括Intel x86,x64,MIPS,PowerPC,ARM,Z80,68000,c8051等等。
IDA pro 7.0下載地址:https://www.52pojie.cn/thread-675251-1-1.html
IDA的基本操作
開啟IDA我們會發現這個頁面
我們點ok下一步。
然後將我們剛才生成的程式拖進來。
然後進行反彙編,反彙編後的頁面如下所示。
這裡在右面我們找到main方法開啟,然後按tab檢視原始碼。
原始碼如上所示。
我們對比下可以發現,基本上和我們的源程式一樣。
這也是IDA強大的地方。
這裡我們找到msgbox壓引數前的位置。然後把這個地址複製下來
至此IDA的工作,在我們這裡結束
X64dbg修改彈框文字
x64是一個超級強大的偵錯程式。下載地址:https://x64dbg.com/
然後按Ctrl+g跳到指定位置。
在這裡雙擊下斷點。
然後按F9跳到這裡。
然後我們看到右面的ds:[404006]
我們為此跳到404006的位置。位置在左下角按Ctrl+G跳到404006
可以看到右下角是helloworld。
我們右擊後編輯。
然後繼續按F9執行。
至此我們完成了對彈框字串的修改。
植物大戰殭屍修改陽光初體驗
這裡我們下載完植物大戰殭屍小遊戲後執行。
執行後可以發現,目前的陽光數是50
我們開啟Cheat Engine工具有以下頁面
這裡我們選擇植物大戰殭屍的應用並且開啟
然後輸入value=50 然後點first Scan
在植物大戰殭屍裡花掉50陽光,使陽光變為0
然後再右面填0然後點next scan
然後再撿個陽光使值變成25
然後在右面填next scan
然後將11F40700這個地址的value變成9999
修改成功
至此我們完成了逆向工程初體驗。逆向工程博大精深,希望大家能多學習,多學知識謝謝大家。