工程開發
entry-point-analyzer avatar

entry-point-analyzer

透過識別會更改狀態的進入點、分類存取控制並產生結構化審計報告,來繪製智慧合約代碼庫的攻擊面。

簡介

Entry Point Analyzer 是一款專為審計人員與開發者設計的專業安全工具,旨在繪製智慧合約專案的攻擊面。該工具專注於會更改狀態(State-changing)的函數,因為這些函數是財務損失與狀態損壞的主要向量。透過系統性地過濾掉如 Solidity 的 view/pure 或 CosmWasm 的 query 處理器等唯讀函數,該工具讓審計人員能將注意力集中在程式庫中影響重大的區域。它能識別外部可呼叫的函數,並進行存取控制分析,以區分公開、角色限制(Role-restricted)及僅限合約呼叫的進入點。此工具對於審計初期至關重要,為後續更複雜的漏洞研究提供結構化的基礎。

  • 自動檢測合約程式語言,包括 Solidity、Vyper、Solana/Rust、Move、TON 及 CosmWasm。

  • 整合 Slither 以實現 Solidity 代碼庫中進入點的自動提取。

  • 對 owner、admin、governance 及 pauser 等角色進行細緻的存取控制分類。

  • 產生結構化的 Markdown 報告,詳細說明函數簽章、程式碼位置及權限要求。

  • 協助快速繪製攻擊面,並透過角色限制操作識別潛在的權限提升路徑。

  • 在智慧合約審計的早期階段使用此技能,以清楚了解系統的外部邊界。

  • 本工具並非漏洞掃描器;它是進行後續安全性工作的背景構建先決條件。

  • 不分析非狀態更改操作,因為這些操作通常排除在財務漏洞的核心攻擊面之外。

  • 透過映射特定模式(如 Solana 的 mut 帳戶參考或 Move 的 entry 函數限定符)來支援多鏈環境。

  • 提供按類別分類的函數總結表,幫助審計人員根據授權複雜度與呼叫暴露程度,優先安排人工審查工作。

倉庫統計

Star 數
4,857
Fork 數
421
Open Issue 數
29
主要語言
Python
預設分支
main
同步狀態
閒置
最近同步時間
2026年4月28日 下午12:48
在 GitHub 查看