Defijerusalem/DFJ-Pattern-checker

GitHub: Defijerusalem/DFJ-Pattern-checker

基于真实事件的 DeFi 已知漏洞利用模式库,作为 Claude Code 技能运行,用于将协议与已验证的失败模式进行比对检查。

Stars: 0 | Forks: 0

# DFJ 模式检查器 这是一个 DeFi 漏洞利用模式库,旨在根据真实的、有具体日期的事件进行验证——而非理论上的风险。该项目由 [DeFiJerusalem](https://github.com/DeFiJerusalem) 构建,可作为 [Claude Code](https://docs.claude.com) 技能使用。它用于检查协议的合约、文档或审计报告,比对那些已经给行业造成实际资金损失的失败模式——并在无法判断时直言不讳。 **这是一个模式匹配工具,而非漏洞发现工具。** 它不会寻找新的漏洞。它只检查是否存在已知的、有名称、有日期的失败类别。如果你想找审计工具,这不是你要找的——请参阅下方的[这不是什么](#what-this-is-not)。 ## 存在的意义 DeFi 领域的大多数安全工具要么深入审计单个合约(昂贵、缓慢,无法扩展到成千上万个协议),要么在外部对协议进行评分而不展示其推理过程。本项目采用了第三种方法:构建少量模式,每种模式都与一个真实的、包含名称、日期和损失金额的事件挂钩——并且只有当某个模式在不止一个协议中被独立证实后,才会信任它。 第二点很重要。基于单一事件构建的模式只是假设。在不相关的协议中,通过相同的根本机制被证实两次的模式,才更接近于定律。这个库中的几个模式之所以存在,*正是因为* 早期基于善意测试的版本被证明是错误的或范围太窄——这些修正属于这里的公开记录的一部分,并没有被掩盖。 ## 检查内容 分为八大类别,每个类别在 `references/` 下都有对应的文件: | 类别 | 监控重点 | |---|---| | Lending | 抵押品集中度、跨链支撑依赖、非标代币集成、curator/allocator 风险 | | DEX/AMM | 现货价格操纵、闪电贷池比例扭曲、下游 oracle 集成误读 | | Bridge | Verifier/validator 独立性、故障转移行为、密钥托管、签名界面欺骗 | | Derivatives | 杠杆/流动性错配、oracle/标记价格延迟、非对称结算风险 | | Stablecoin | 铸造权限控制、抵押品流动性深度、链下运营依赖 | | Yield Aggregator | 废弃策略清退、可通过捐赠操纵的 Vault 会计计算 | | RWA | 链下托管/密钥风险、oracle/储备金证明完整性 | | Insurance | 资金池充足率、索赔评估人利益冲突相关性、投票者冷漠 | 此外,还有三项无论类别为何都会运行的检查,定义在 `SKILL.md` 中:在进行任何模式比对之前,检查协议是否仍在运营;风险是否继承自其依赖的底层协议;以及是否存在少数集中方(如治理投票、Admin 多重签名、validator 集合)能够对用户资金采取单方面行动。 ## 每个模式的实际构建基础 这里的每种模式都与一个真实的、有具体名称的事件挂钩——绝非假设。以下为部分示例,非详尽清单: - **Aave / KelpDAO,2026 年 4 月(2.92 亿美元)** — Aave 自身的合约从未被攻破。损失源于其接受了一种由单 verifier 跨链桥支撑的流动性再质押代币作为抵押品。这正是 Lending 和 Bridge 文件最初围绕构建的核心案例。 - **Radiant Capital(2024 年 10 月,5300 万美元)和 Bybit(2025 年 2 月,14-15 亿美元)** — 同一个攻击者团伙,相同的被入侵软件,两个毫不相关的组织:多重签名的硬件钱包签名者在屏幕上批准了一笔看似常规的交易,但实际内容并非他们所认为的那样。在获得信任之前,该模式已被独立证实过两次。 - **Centrifuge 的私募信贷池** — 单个价格管理员密钥在没有任何独立链上检查的情况下提交链下 NAV。真实的、有日期的违约事件(Harbor Trade Credit、ConsolFreight)表明这绝非理论假设。 - **Nexus Mutual 与 KelpDAO 的对比** — 这家最大的 DeFi 保险公司整整七年的理赔历史总额,竟然比一次中等规模的黑客攻击损失还要小。这并非指责其恶意违约——而是一项关于资金规模的客观发现。 - **Euler Finance(1.97 亿美元)** — 作为*负面*结果纳入。六次专业审计都漏掉了它。这个模式库同样无法捕捉到它,并在此予以承认。一个声称能捕捉所有漏洞的库,反而不如一个坦诚自身局限性的库值得信赖。 ## 这不是什么 - **这不是审计。** 它不会逐行阅读合约代码以寻找新漏洞。它只检查那些已经在其他地方发生过的模式。 - **这不是安全评分。** DeFiJerusalem 的完整方法论是一个独立的、更全面的系统。这个模式库只是其中的输入之一,不能替代它。 - **这难免会受到文档质量的影响。** 文档简略或非英语的协议会返回更多的“无法判断”结果——并不是因为它们风险更高,而是因为可供检查的公开材料较少。这一点在 `SKILL.md` 中有明确说明,绝不应将其解读为发现了风险。 - **这并非在所有链上都有同等的验证。** EVM 链(Ethereum、Base、BNB Chain、Arbitrum)拥有最深度的测试。兼容 EVM 的链(Tron)和其他生态系统(Solana、Cosmos、Sui)都至少经过了一次检查且表现良好,但重复测试的次数不及 EVM。 ## 结构说明 ``` SKILL.md ← entry point: workflow, cross-cutting checks, known limitations references/ lending.md dex-amm.md bridge.md derivatives.md stablecoin.md yield-aggregator.md rwa.md insurance.md ``` 每个参考文件仅在其所属类别适用时才会加载——例如,检查 stablecoin 时不会引入 Bridge 文件,除非该 stablecoin 确实依赖于某个 Bridge。 ## 使用方法 本项目是作为 [Claude Code](https://docs.claude.com) 技能构建的。克隆本仓库,让 Claude Code 指向该文件夹,并要求它检查某个协议。它会告诉你它发现了什么、其确信程度,以及它无法验证的内容——随后会为没有安全背景的人员提供通俗易懂的分析。 ## 置信度级别通俗说明 - **EXACT MATCH(完全匹配)** — 存在特定的失败机制。高置信度。 - **SIMILAR MATCH(相似匹配)** — 结构上接近但不完全相同,或者证据不完整。需要人工进一步检查。 - **NOT PRESENT(不存在)** — 已检查,但未发现该特定模式。这并不意味着协议是安全的。它仅代表这一项检查未发现问题。 - **CANNOT DETERMINE(无法判断)** — 没有足够的公开信息来进行检查。这被视为一种独特的非负面结果——绝不暗示其存在风险。 ## 贡献 / 修正 如果你发现这里的某个模式有误、夸大其词,或者遗漏了真实的反面案例——请提交 Issue。这个库中有几个模式之所以保持目前较窄的定义形式,*正是因为*有人(在此情况下,为持续进行的内部测试)对早期较宽泛的版本提出了质疑。这一过程在发布后仍不会停止。 ## 许可证 [发布前在此添加许可证。]
标签:Claude Code, DeFi, 智能合约, 模式匹配, 自动化资产收集, 防御加固, 风险核查