C/C++ 逆向
編譯指令
gcc -m32 -O0 -o challenge challenge.c
# -m32: 編譯成 32 位元程式,彙編更簡潔,適合初學者
# -O0: 關閉所有優化,程式碼結構和原始碼幾乎一對一gcc -O2 -s -o challenge challenge.c
# -O2: 開啟大部分優化。編譯器會進行函式內聯、迴圈展開、指令重排等。
# -s: 去除符號表 (strip)。所有函式名和全域變數名都會丟失。gcc -static -O2 -s -o challenge challenge.c
# -static: 進行靜態連結永遠記得檢查題目有沒有明文儲存 FLAG 除非在出 strings 的題目