當交易過於複雜,僅從表面觀察難以理解時,Phalcon Debug 能讓交易分析變得更加容易。它不僅止於高層級的交易追蹤,還能讓使用者深入執行流程、檢查已驗證的程式碼,並詳細追蹤內部邏輯。這使得它在漏洞分析、根本原因調查與團隊協作方面特別實用。
在本指南中,我們以 Euler 協議漏洞交易 為例。我們的目標是展示 Phalcon Debug 如何協助使用者從可疑的交易步驟,進展到對事件發生經過及其關鍵原因的清晰解釋。
您可以直接在此開啟該交易:Phalcon 交易頁面
如何進入除錯模式 (Debug Mode)
在 Phalcon 中進入除錯模式主要有兩種方式。
第一種是從「調用流程 (Invocation Flow)」視圖中的特定列進入;第二種是透過交易頁面右上角的 Debug 按鈕。兩者都會進入相同的除錯環境,但如果您在看到可疑步驟時想要直接從該點切入,從調用流程開始通常會更有用。
在 Euler 漏洞攻擊的範例中,該交易包含許多步驟,包括從 Aave 借入閃電貸並將 DAI 存入 Euler。其中一個特別可疑的步驟是呼叫 donateToReserves(),攻擊者在此處向協議捐贈了巨額資金。這類操作通常需要更深入的審查,而 Phalcon Debug 讓使用者可以直接從該點開始分析。

Debug 視圖佈局
進入除錯模式後,Phalcon 會顯示一個專為逐步交易分析而設計的工作區。該佈局包含五個核心面板。
呼叫追蹤面板 (Call Trace Panel) 顯示外部呼叫與事件的追蹤記錄。原始碼面板 (Source Code Panel) 顯示當前合約的原始碼並突顯相關行數。除錯控制台 (Debug Console) 提供呼叫層級的逐步執行控制。除錯追蹤面板 (Debug Trace Panel) 顯示包含內部與外部呼叫的當前合約呼叫堆疊。參數與回傳值面板 (Parameters & Return Values Panel) 則顯示當前呼叫的輸入與輸出。
此佈局非常實用,因為使用者無需在多個工具間切換即可理解交易的某個部分。他們可以在同一個地方閱讀追蹤記錄、檢查程式碼並跟隨執行邏輯。
有時原始碼面板可能無法顯示程式碼,這通常發生在當前呼叫指向未經驗證的合約時。在這個 Euler 的案例中,攻擊者合約未經過驗證,因此該處無法顯示原始碼。然而 eDai 合約是經過驗證的,這意味著使用者可以 Step In (進入) 並在已驗證的邏輯內繼續分析。

在進入經過驗證的 eDai 合約後,使用者可以進一步深入 donateToReserves() 的實作,並檢查該可疑交易步驟背後的確切程式碼路徑。

如何使用 Debug 控制台
除錯控制台旨在協助使用者詳細走訪交易執行過程。這一點很重要,因為 呼叫追蹤面板 僅顯示外部呼叫與事件,並不會顯示內部函式呼叫,而除錯控制台正好補足了這一點。
Phalcon 在此面板中提供了多種導覽控制項。Next (下一步) 與 Previous (上一步) 各有兩個版本:紅色按鈕用於遍歷完整的呼叫追蹤,藍色按鈕則用於在當前函式內移動。Step In (進入) 會深入被呼叫的函式,Step Out (跳出) 則返回當前函式的呼叫點。
透過這些控制項,使用者可以逐行遍歷合約邏輯,並理解狀態變更是如何發生的。以 Euler 為例,這有助於揭示 donateToReserves() 背後更深層的問題。分析顯示,攻擊者捐贈了 1 億個 eDAI,這改變了 eDAI 與 dDAI 之間的關係,使得該部位符合清算條件。根本原因在於 donateToReserves() 缺乏針對符合清算條件的流動性檢查,從而導致攻擊者得以進行清算並提取價值。
這正是 Phalcon Debug 超越單純檢視器的時刻。它成為了一款實用的交易分析工具,能找出合約執行過程中的根本原因。


Debug 視圖分享
另一項實用的功能是,除錯視圖可以直接透過 URL 分享。分享的連結包含了選定的追蹤行,因此當其他使用者開啟時,他們會立即看到相同的除錯視圖。
這對安全團隊特別有用。分析師不需要撰寫長篇大論的說明,也不必要求隊友手動重現相同的視圖,只需分享確切的上下文內容。這能大幅提升事件分析或內部審查時的協作效率。
典型的工作流程如下:首先,在「調用流程」中找到可疑步驟;接著,使用除錯模式檢查程式碼、內部呼叫與參數;最後,與隊友分享確切的除錯視圖,以便他們查看相同的上下文並繼續討論。
其他實用功能
Phalcon Debug 還包含一些能提升分析效率的額外功能。
當開啟參數開關時,呼叫追蹤視圖 可以顯示完整參數。這有助於使用者在無需逐一打開每一步驟的情況下,檢視更豐富的上下文。
對於外部呼叫,使用者也可以點擊 Rawdata 來檢查原始呼叫參數。當解碼後的數據不足,或是使用者想要驗證 calldata 實際結構時,這相當實用。
這些細節看似微小,但在實際分析過程中卻能節省大量時間。對於漏洞調查、審計工作或是合約審查而言,小規模的工作流程改進往往會帶來巨大的差異。


對於希望超越單筆交易,並追蹤資產如何在更廣泛的攻擊路徑中流動的團隊來說,MetaSleuth 是理想的下一步。在釐清交易層級的根本原因後,它可以協助調查人員追蹤跨地址與實體的資金流向。
Phalcon Debug 在交易過於複雜而無法透過表面解讀,但仍需要明確解釋時最為有效。它能協助使用者從可疑的追蹤入口推進到實際的程式碼路徑、內部邏輯與根本原因。這不僅在安全研究方面具有價值,對於事件回顧、漏洞分析與智慧合約評估也同樣重要。對於希望在部署前加強程式碼的團隊而言,這種思維方式也能自然地延展至 智慧合約審計 與 基礎設施審計,在複雜行為成為實際風險前便先進行審查。


