T

entry-point-analyzer

作者 trailofbits

entry-point-analyzer 可帮助梳理智能合约代码库中会改变状态的入口点,服务于安全审计工作。它会识别可被外部调用、且会修改状态的函数,按访问级别分组,并排除 view、pure 以及其他只读路径。当你需要为 Solidity、Vyper、Solana、Move、TON 或 CosmWasm 项目整理一份聚焦的调用面清单时,可以使用这份 entry-point-analyzer 指南。

Stars5k
收藏0
评论0
收录时间2026年5月4日
分类安全审计
安装命令
npx skills add trailofbits/skills --skill entry-point-analyzer
编辑评分

该技能得分 77/100,属于稳健但非顶级的收录候选。对目录用户来说,它提供了一个范围清晰、可直接触发的工作流,用于识别多个主流语言中的智能合约状态变更入口点,并配有足够的规则与示例,相比通用提示能显著减少猜测。

77/100
亮点
  • 针对审计、入口点、访问控制模式和特权操作,给出了明确的触发条件。
  • 操作层面的清晰度较强:排除了只读函数,并提供了按语言划分的检测规则和示例。
  • 基于 Solidity、Vyper、Solana、Move、TON 和 CosmWasm 的结构化参考,便于代理调用与落地执行。
注意点
  • 没有安装命令或辅助脚本,因此采用门槛取决于是否直接阅读 SKILL.md 和参考资料。
  • 范围刻意收窄:它主要帮助梳理入口点,而不是进行更广泛的漏洞检测或利用生成。
概览

entry-point-analyzer 技能概览

entry-point-analyzer 技能可以帮助你在开始更深入的安全审计之前,先梳理智能合约代码库中会改变状态的攻击面。它专为这类审计场景而设计:第一步关注的不是“有没有 bug?”,而是“哪些外部可达函数会改状态,又是谁能调用它们?”

entry-point-analyzer 适合做什么

当你需要为 Solidity、Vyper、Solana、Move、TON 或 CosmWasm 项目整理一个实用的入口点清单时,就该使用 entry-point-analyzer 技能。它尤其适合 entry-point-analyzer for Security Audit 这类工作流:访问控制审查、特权操作发现,以及审计范围界定。

entry-point-analyzer 会过滤掉什么

这个技能会刻意排除只读代码路径、纯辅助函数,以及仅供内部调用的函数。相比通用提示词,它更适合在你需要的是面向安全的调用面,而不是完整代码走查时使用。

谁最适合用 entry-point-analyzer

最适合的用户是:安全审计人员、协议工程师,以及需要快速识别公开或特权状态修改路径的 agent。如果你的目标是漏洞研究、gas 分析,或者一般性的代码质量检查,这不是合适的工具。

如何使用 entry-point-analyzer 技能

安装并定位该技能

使用 trailofbits/skills 插件仓库里的 entry-point-analyzer install 流程:

npx skills add trailofbits/skills --skill entry-point-analyzer

然后先阅读该技能的入口文件。对于这个仓库来说,最有用的路径是 plugins/entry-point-analyzer/skills/entry-point-analyzer/SKILL.md

构造高质量输入提示

entry-point-analyzer usage 这类模式最有效的前提,是你一开始就把仓库、语言和审查目标说明白。一个更强的提示词可以是:

“分析这个 Solidity 协议,列出所有会改变状态的 external/public 入口点,并按访问控制和部署时行为分组。排除 viewpure 函数。重点标出仅管理员可调用、受角色限制、fallback 以及 constructor 路径。”

如果代码库混合了多种语言,要明确说明。如果你只想看某个模块、合约或 package,也要直接点名。

先读支持文件

想要真正拿到高质量输出,不要只停在 SKILL.md。在这个技能里,配套参考资料通常会把各语言的入口点规则讲得更清楚:

  • references/solidity.md
  • references/vyper.md
  • references/solana.md
  • references/move-aptos.md
  • references/move-sui.md
  • references/ton.md
  • references/cosmwasm.md

这些文件是你核对边界情况的地方,比如 fallback handler、仅交易函数、消息接收器,以及访问控制模式。

能产出有用结果的工作流

先让它给出整个代码库的入口点地图,然后再缩小范围,追查风险最高的入口。例如,在第一轮清单之后,再让它只看管理员门禁函数、只看升级或迁移路径,或者只看会触及 ownership 和 authorization 状态的函数。这样分步做,往往比一次性要一个总结更有价值。

entry-point-analyzer 技能 FAQ

entry-point-analyzer 只适用于智能合约吗?

是的。这个技能就是为智能合约代码库以及链上特有的入口点约定设计的,不适用于标准后端、前端或通用应用代码。

它和普通提示词有什么不同?

普通提示词经常会漏掉各语言特有的入口点规则,尤其是在 Solidity、Move、TON 和 CosmWasm 这些环境里。entry-point-analyzer 技能把目标收得更窄:只看会改变状态的外部面,并通过排除规则减少噪音。

entry-point-analyzer 适合新手吗?

如果你的目标是理解合约的外部状态修改面,那它是适合新手的。
但如果你指望它自己直接找出漏洞,那就没那么适合,因为这个技能的定位是范围界定和分类,而不是漏洞挖掘。

什么时候不该用它?

当你需要只读分析、通用代码审查,或者漏洞开发时,不要用 entry-point-analyzer。如果代码库不是智能合约系统,或者你需要包含所有函数——包括内部辅助函数——它也不合适。

如何改进 entry-point-analyzer 技能

给分析器设定正确的边界

最好的 entry-point-analyzer usage 一开始就应该有清晰的目标范围:一个 repo、一个协议,或者一个部署 package。如果把无关 package 也塞进去,结果会更嘈杂,也更难信任。

明确你关心的访问控制问题

用户通常只关心三类问题之一:“谁都能调用什么?”、“哪些是 admin-only?”、“部署或迁移期间哪些地方会改状态?”把这一点直接说出来。这个技能最擅长按可调用性和权限来分组输出,而不只是按文件罗列。

需要时提供语言层面的上下文

对于多语言仓库,要告诉它优先遵循哪套框架约定。比如 Solana 可以提 Anchor,CosmWasm 可以提 entry_point 模式,TON 可以提 receive handlers。这样能减少因为框架特定入口路径而漏掉的假阴性。

按“清单 → 审查”迭代

先让它给出完整的入口点地图。然后再让它列出最有风险的 5 个函数、它们依赖的授权检查,以及任何看起来异常或保护不足的状态变更路径。相比一口气要求完整安全审计,这种两步法通常效果更好,因为该技能最容易从一张干净的表面地图开始验证。

评分与评论

暂无评分
分享你的评价
登录后即可为这个技能评分并发表评论。
G
0/10000
最新评论
保存中...