x64dbg(除錯器):看著程式跑起來的樣子

摘要

給 Windows 程式用的除錯器,六十四位與三十二位都支援,能看見二進位檔實際執行的樣子:中斷點、可讀可改的記憶體、動態分析,以及外掛機制。開源,開發者與安全研究人員都在用。

推薦
軟體名稱
x64dbg(除錯器)
版本
2026.05.27
收費
免費
開源
開源
作業系統
Windows
更新時間
2026-10-14 22:00

原始碼告訴你「應該」發生什麼

讀一個程式,是理解它的一種方式;看它跑,是另一種。而對於一個沒有附上原始碼的二進位檔,看它跑是唯一的選項。除錯器就是做第二件事的儀器:它在指定的位置把程式停下來,顯示那一瞬間所有東西的狀態,再讓你一次往前推一條指令。x64dbg 是一套給 Windows 程式用的除錯器,六十四位與三十二位都涵蓋,而它正是那種能把一個不透明的執行檔,變成一連串可觀察決定的工具。

介面承擔了重量

除錯會一次產生大量資訊,而這些資訊怎麼排,決定了這件事做不做得下去。x64dbg 把反組譯、暫存器、記憶體與呼叫堆疊擺成同時可見的窗格,於是一道指令與它造成的效果之間的關係,是「看一眼」而不是「去找」。這不是門面問題。把脈絡藏在分頁後面的除錯器,等於逼使用者把狀態記在腦子裡,而人腦是放這些東西最糟的地方。

中斷點,以及它帶來的紀律

核心動作,是在選定的位置停住執行,然後環顧四周。軟體中斷點、硬體中斷點與條件式的形式都有,這很要緊,因為有意思的時刻往往不是某一個位址,而是某個位址在某個條件成立時才被走到。盯著一個值、只在它改變時停下來,這跟讀一份上千筆事件的紀錄、再從裡面找出弄壞東西的那一筆,是完全不同的兩件事。

x64dbg 主視窗、反組譯與暫存器

可以讀、也可以改的記憶體

程式的狀態放在記憶體裡,所以一個能準確顯示、也能刻意修改的除錯器,就成了一種驗證假設的方法。改一個位元組,看分支會不會走另一邊;檢視一個緩衝區,看程式以為的長度跟實際進來的長度是否相符。這正是把除錯與猜測分開的部分,因為一個可以在執行中的程式上被驗證的假設,就不再只是意見。

本機與遠端工作階段

除錯眼前這台機器上的程式,是常見情況。除錯跑在別處的程式,則是那種「問題只在特定系統上重現」,或者「被檢查的軟體不能被打擾」時才出現的情況。兩者都支援,意味著同一場調查可以在方便的環境與必要的環境之間移動,而不必換一套儀器。

動態分析作為一種方法

靜態檢視是讀一個檔案然後推理;動態分析是把它跑起來然後觀察。後者是除錯器的本業,而它回答靜態閱讀答不出的問題:在這份輸入下實際走了哪些分支、什麼東西在什麼時候被載入、資料畸形時執行停在哪裡。對安全工作來說,這往往是看見「執行時才組出來的行為」的唯一辦法,那些行為並沒有寫在檔案裡。

中斷點設定與條件停止

外掛,因為分析總是特定的

每一場調查都有自己的形狀,除錯器不可能為每一種都內建一個功能。外掛機制讓工具朝著任務長:脫殼的例行流程、重複檢視用的腳本、為某種檔案格式量身打造檢視。結果是同一套除錯器,既能服務正在追記憶體錯誤的開發者,也能服務正在摸清一個陌生二進位檔的研究者,而兩者都不必為對方的需求付出代價。

開源在這裡是一個論點

對一個要檢查其他軟體的工具來說,開源不只是授權問題。它意味著除錯器本身可以被檢查,而不是只能被信任——當這件儀器卡在你與你正在分析的東西之間時,這是合理的要求。它同時意味著,這套工具可以為某種罕見的調查方式被改,而不必等廠商覺得值得花力氣。

誰在用它,用來做什麼

開發者用它找出程式為什麼崩潰,尤其是當原始碼本身解釋不了、而程式碼又不是自己寫的時候。安全研究者用它搞懂一個陌生二進位檔在做什麼,不論問題是惡意行為,還是單純沒有說明文件的行為。學生用它看見一個編譯過後的程式實際怎麼執行,那是讀多少書都換不來的一課。共同點是:需要觀察,而不是假設。

可編輯的記憶體檢視

它對使用者要求什麼

它不是那種會把主題藏起來的工具。組合語言閱讀、記憶體布局、呼叫慣例就是它的字彙,沒有這些字彙的人會覺得介面誠實到近乎不友善。說明文件與教學確實存在,也值得花時間,因為替代方案不是一個更簡單的除錯器,而是完全沒有能力回答那個問題。它是一個獎勵知識、也慢慢教知識的工具。

對範圍的合理立場

它是 Windows 除錯器,而且是把這件事做透,而不是把自己攤薄到各平台。它免費且開源,對研究工具來說這很要緊,因為能不能用不該取決於預算簽核。它不是反編譯器、不是反組譯套件、也不是惡意程式沙箱;它是工作流程裡「程式跑起來、有人在旁邊看」的那一段。用這麼窄的一句話,形容一個最後變得極為核心的工具。

呼叫堆疊與執行控制面板

為什麼它一直留在機器上

多數除錯工具很少被打開,但被打開時極其重要。決定一個工具留不留下的,是它在需要的那一天擋了多少路:能不能很快地帶著一個二進位檔啟動、窗格是不是在記憶期待的位置、針對眼前問題的外掛是不是已經有人做了。x64dbg 是由實際在用它的人做出來的,這些細節看得出來,而這也正是它會成為「那個沒有預警就出現的問題」預設答案的現實理由。

x64dbg(除錯器)下載地址
支援的作業系統: Windows