quillai-network/quillshield_skills
GitHub: quillai-network/quillshield_skills
面向 AI Agent 的智能合约安全审计技能包,通过语义级分析和对抗性模拟检测传统静态工具容易遗漏的深层漏洞。
Stars: 99 | Forks: 16
# QuillShield 安全技能
[](https://opensource.org/licenses/MIT)
用于高级智能合约安全审计的 AI agent 技能。这些技能向 AI agent(Claude、Cursor)传授 QuillShield 方法论,用于检测传统静态分析工具遗漏的漏洞。
## 快速入门
- **Claude:** 将此仓库作为 Claude 插件安装;市场定义在 `.claude-plugin/marketplace.json` 中。根据您的审计需求启用相应插件。
- **Cursor:** 在审计时引用某个技能——例如 `@plugins/reentrancy-pattern-analysis/skills/reentrancy-pattern-analysis/SKILL.md`——或将插件的 `skills/` 文件夹复制到您的 Cursor 技能目录中。
- **使用正确的技能:** 请参阅下表和 [技能概述](#skills-overview),了解何时使用各个插件。
## 技能概述
### 1. 行为状态分析 (BSA)
**插件:** `plugins/behavioral-state-analysis/`
综合审计方法论。结合了行为意图提取、多维度威胁建模(经济、访问控制、状态完整性)、带有 PoC 生成的对抗性模拟,以及贝叶斯置信度评分。
**适用场景:** 启动全面的智能合约安全审计、对 DeFi 协议进行威胁建模,或生成漏洞利用的概念验证。
### 2. 语义守卫分析
**插件:** `plugins/semantic-guard-analysis/`
通过查找绕过安全检查(require 语句、modifier)的函数来检测逻辑漏洞,而合约自身代码在其他地方始终应用了这些检查。基于一致性原则:“智能合约就是它自身的规范”。
**适用场景:** 查找缺失的访问控制、遗漏的暂停检查、不一致的 modifier,或对模式匹配工具不可见的逻辑错误。
### 3. 状态不变量检测
**插件:** `plugins/state-invariant-detection/`
自动推断状态变量之间的数学关系(总和、守恒、比率、单调性、同步),然后找出违反这些关系的函数。捕获导致最大规模 DeFi 黑客攻击背后的漏洞。
**适用场景:** 审计供应量/余额不匹配、代币经济学被破坏、会计同步失效,或守恒定律违规。
### 4. 重入模式分析
**插件:** `plugins/reentrancy-pattern-analysis/`
系统地检测所有重入变体——经典重入、跨函数重入、跨合约重入、只读重入,以及 ERC-777/ERC-1155 回调重入。构建调用图,验证 CEI 模式合规性,并跟踪相对于外部调用位置的状态变更。
**适用场景:** 审计包含外部调用、ETH 转账、代币交互或多合约架构的合约。涵盖了最臭名昭著的智能合约漏洞类别。
### 5. 预言机与闪电贷分析
**插件:** `plugins/oracle-flashloan-analysis/`
检测价格预言机操纵和闪电贷攻击向量——最常见的 DeFi 攻击组合。对预言机信任模型(Chainlink、TWAP、现货价格)进行分类,识别陈旧价格、循环依赖和闪电贷原子性利用。
**适用场景:** 审计依赖价格数据的 DeFi 协议、预言机集成、借贷协议,或任何可通过闪电贷访问的合约。
### 6. 代理与升级安全性
**插件:** `plugins/proxy-upgrade-safety/`
检测可升级代理架构中的漏洞——存储布局冲突、未初始化的实现、函数选择器冲突以及升级路径安全性。涵盖透明代理、UUPS、Beacon、Diamond (EIP-2535) 和最小化代理模式。
**适用场景:** 审计可升级合约、审查实现升级或分析 delegatecall 架构。对于使用代理模式的 54.2% 的以太坊合约至关重要。
### 7. 输入与算术安全性
**插件:** `plugins/input-arithmetic-safety/`
检测输入验证失败(34.6% 的直接漏洞利用排名第一)和算术漏洞——精度损失、取整利用、ERC4626 通胀攻击、不安全类型转换,以及 Solidity 0.8+ unchecked 块风险。
**适用场景:** 审计费用计算、份额定价、汇率、unchecked 块,或任何具有用户 supplied 参数的公共函数。
### 8. 外部调用安全性
**插件:** `plugins/external-call-safety/`
检测不安全的外部调用模式和代币集成漏洞。涵盖未检查的返回值、转账扣费代币、弹性代币、缺失的 ERC20 返回值 (USDT)、回调风险、不安全的 approve 模式,以及 push 与 pull 支付分析。
**适用场景:** 审计与外部合约交互、集成任意 ERC20 代币或分配支付的合约。
### 9. 签名与重放分析
**插件:** `plugins/signature-replay-analysis/`
检测影响 19.63% 使用签名的合约的签名重放漏洞。涵盖五种重放类型(同链、跨链、跨合约、nonce 跳跃、过期)、EIP-712 域验证、ecrecover 安全性,以及 permit/permit2 实现。
**适用场景:** 审计包含 ecrecover、ECDSA、EIP-712、permit、元交易或任何链下签名验证的合约。
### 10. 拒绝服务与破坏分析
**插件:** `plugins/dos-griefing-analysis/`
检测拒绝服务和破坏漏洞——无限循环、Gas 限制耗尽、外部调用失败导致的 DoS、63/64 Gas 破坏、存储膨胀、时间戳破坏,以及自毁强制喂食。
**适用场景:** 审计具有批量操作、用户数据循环、奖励分配,或依赖于 `address(this).balance` 逻辑的合约。
## 架构
```
qs_skill/
├── .claude-plugin/
│ └── marketplace.json
├── plugins/
│ ├── behavioral-state-analysis/
│ │ ├── .claude-plugin/plugin.json
│ │ ├── README.md
│ │ └── skills/behavioral-state-analysis/
│ │ ├── SKILL.md
│ │ └── references/
│ │ ├── threat-engines.md
│ │ └── confidence-scoring.md
│ ├── semantic-guard-analysis/
│ │ ├── .claude-plugin/plugin.json
│ │ ├── README.md
│ │ └── skills/semantic-guard-analysis/
│ │ ├── SKILL.md
│ │ └── references/
│ │ ├── detection-algorithm.md
│ │ └── case-studies.md
│ ├── state-invariant-detection/
│ │ ├── .claude-plugin/plugin.json
│ │ ├── README.md
│ │ └── skills/state-invariant-detection/
│ │ ├── SKILL.md
│ │ └── references/
│ │ ├── invariant-types.md
│ │ └── case-studies.md
│ ├── reentrancy-pattern-analysis/
│ │ ├── .claude-plugin/plugin.json
│ │ ├── README.md
│ │ └── skills/reentrancy-pattern-analysis/
│ │ ├── SKILL.md
│ │ └── references/
│ │ ├── reentrancy-variants.md
│ │ └── case-studies.md
│ ├── oracle-flashloan-analysis/
│ │ ├── .claude-plugin/plugin.json
│ │ ├── README.md
│ │ └── skills/oracle-flashloan-analysis/
│ │ ├── SKILL.md
│ │ └── references/
│ │ ├── oracle-types.md
│ │ └── flash-loan-vectors.md
│ ├── proxy-upgrade-safety/
│ │ ├── .claude-plugin/plugin.json
│ │ ├── README.md
│ │ └── skills/proxy-upgrade-safety/
│ │ ├── SKILL.md
│ │ └── references/
│ │ ├── proxy-patterns.md
│ │ └── storage-collision-detection.md
│ ├── input-arithmetic-safety/
│ │ ├── .claude-plugin/plugin.json
│ │ ├── README.md
│ │ └── skills/input-arithmetic-safety/
│ │ ├── SKILL.md
│ │ └── references/
│ │ ├── precision-patterns.md
│ │ └── validation-checklist.md
│ ├── external-call-safety/
│ │ ├── .claude-plugin/plugin.json
│ │ ├── README.md
│ │ └── skills/external-call-safety/
│ │ ├── SKILL.md
│ │ └── references/
│ │ ├── weird-erc20.md
│ │ └── call-safety-patterns.md
│ ├── signature-replay-analysis/
│ │ ├── .claude-plugin/plugin.json
│ │ ├── README.md
│ │ └── skills/signature-replay-analysis/
│ │ ├── SKILL.md
│ │ └── references/
│ │ ├── replay-taxonomy.md
│ │ └── eip712-checklist.md
│ └── dos-griefing-analysis/
│ ├── .claude-plugin/plugin.json
│ ├── README.md
│ └── skills/dos-griefing-analysis/
│ ├── SKILL.md
│ └── references/
│ ├── dos-patterns.md
│ └── gas-griefing-vectors.md
└── README.md
```
## 技能关联
```
┌─────────────────────────────────────────────┐
│ Behavioral State Analysis (BSA) │
│ Full Audit Methodology │
│ │
│ Phase 1: Behavioral Decomposition │
│ Phase 2: Multi-Dimensional Threat Model │
│ Phase 3: Adversarial Simulation │
│ Phase 4: Confidence Scoring │
└──────────┬──────────────┬───────────────────┘
│ │
┌─────────────────┴──────┐ ┌─────┴─────────────────────┐
│ Original Layers │ │ Extended Layers │
│ │ │ │
│ Layer 1: Semantic │ │ Layer 3: Reentrancy │
│ Guard Analysis │ │ Layer 4: Oracle/Flash │
│ Layer 2: State │ │ Layer 5: Proxy/Upgrade │
│ Invariant Detection │ │ Layer 6: Input/Arithmetic │
│ │ │ Layer 7: External Calls │
│ │ │ Layer 8: Signature/Replay │
│ │ │ Layer 9: DoS/Griefing │
└────────────────────────┘ └────────────────────────────┘
```
## OWASP 智能合约 Top 10 覆盖范围
| OWASP 类别 | QuillShield 技能 | 覆盖范围 |
|----------------|-------------------|----------|
| SC01: 访问控制 | 语义守卫分析 | 完整 |
| SC02: 预言机操纵 | 预言机与闪电贷分析 | 完整 |
| SC03: 逻辑错误 | BSA + 状态不变量检测 | 完整 |
| SC04: 输入验证 | 输入与算术安全性 | 完整 |
| SC05: 重入 | 重入模式分析 | 完整 |
| SC06: 未检查的外部调用 | 外部调用安全性 | 完整 |
| SC07: 闪电贷攻击 | 预言机与闪电贷分析 | 完整 |
| SC08: 整数溢出 | 输入与算术安全性 | 完整 |
| SC09: 不安全的随机性 | BSA 威胁引擎 | 部分 |
| SC10: DoS 攻击 | 拒绝服务与破坏分析 | 完整 |
**超越 OWASP:**
| 类别 | QuillShield 技能 |
|----------|-------------------|
| 代理/升级漏洞 | 代理与升级安全性 |
| 签名重放攻击 | 签名与重放分析 |
| 代币集成 (怪异 ERC20) | 外部调用安全性 |
| MEV/抢跑 | 预言机与闪电贷分析 |
## 多层严重性矩阵
| 第 1 层 (守卫) | 第 2 层 (不变量) | 第 3 层及以上 (扩展) | 组合严重性 |
|-----------------|---------------------|---------------------|-------------------|
| 守卫缺失 | 破坏不变量 | 额外漏洞 | **严重 (CRITICAL)** |
| 守卫缺失 | 破坏不变量 | 无额外漏洞 | **严重 (CRITICAL)** |
| 守卫缺失 | 未破坏 | 额外漏洞 | **高危 (HIGH)** |
| 守卫缺失 | 未破坏 | 无额外漏洞 | **高危 (HIGH)** |
| 无问题 | 破坏不变量 | 额外漏洞 | **高危 (HIGH)** |
| 无问题 | 破坏不变量 | 无额外漏洞 | **高危 (HIGH)** |
| 无问题 | 未破坏 | 额外漏洞 | **中高危 (MEDIUM-HIGH)** |
| 无问题 | 未破坏 | 无额外漏洞 | **低危/信息 (LOW/INFO)** |
## 研究来源
这些技能源自 QuillShield 语义状态协议研究,并辅以以下内容增强:
- OWASP 智能合约 Top 10 (2025)
- CertiK Hack3d Web3 安全报告 (2024-2025)
- Halborn Top 100 DeFi 黑客攻击分析(损失达 $10.77B)
- Trail of Bits、OpenZeppelin 和 Spearbit 审计方法论
- 关于混合 AI + 符号执行审计的学术研究
- 真实世界的漏洞利用事后分析(The DAO、Euler、Mango Markets、Curve、Nomad Bridge 等)
## 许可证
本项目基于 [MIT 许可证](LICENSE) 授权。
## 安全性
如需报告安全问题(例如在方法论或文档中),请参阅 [SECURITY.md](SECURITY.md)。
## 行为准则
本项目遵守 [贡献者公约行为准则](CODE_OF_CONDUCT.md)。参与本项目即表示您同意遵守该准则。
标签:CISA项目, Claude插件, Cursor插件, DeFi安全, PoC生成, Proof-of-Concept, Solidity, TypeScript, Web3, Web3安全, 云安全监控, 人工智能代理, 区块链安全, 威胁建模, 安全插件, 安全评分, 密码经济学, 对抗模拟, 对称加密, 形式化验证, 智能合约安全, 状态不变量, 自动化审计, 访问控制缺陷, 贝叶斯网络, 逻辑漏洞, 重入攻击分析, 闪贷攻击, 防御加固, 静态分析, 预言机操纵