智能合约安全审计工作流Skill secure-workflow-guide

这个技能用于实施Trail of Bits的5步安全开发工作流,自动化检测和修复智能合约中的安全问题。它包括Slither扫描漏洞、检查可升级性和ERC合规性、生成可视化安全图、文档化安全属性以进行模糊测试和验证,以及手动审查隐私、前运行、密码学和DeFi风险。适用于区块链开发人员、安全审计师和智能合约团队,提升代码安全性和合规性。关键词:智能合约安全,Slither扫描,Echidna模糊测试,安全审计,区块链开发,DeFi安全,ERC合规,可视化安全图。

智能合约 0 次安装 0 次浏览 更新于 3/14/2026

名称: 安全开发工作流指南 描述: 引导通过Trail of Bits的5步安全开发工作流。运行Slither扫描,检查特殊功能(可升级性/ERC合规性/代币集成),生成可视化安全图,帮助记录安全属性以进行模糊测试/验证,并审查手动安全领域。

安全开发工作流指南

目的

引导通过Trail of Bits的安全开发工作流——一个5步流程,在整个开发过程中增强智能合约安全性。

使用场景: 每次提交前、部署前,或当您需要进行安全审查时


5步工作流

涵盖一个安全工作流,包括:

第1步: 检查已知安全问题

运行Slither(内置70多个检测器)以发现常见漏洞:

  • 按严重性解析发现
  • 用文件引用解释每个问题
  • 推荐修复方案
  • 帮助筛选误报

目标: 干净的Slither报告或已记录的筛选

第2步: 检查特殊功能

检测和验证适用功能:

  • 可升级性: slither-check-upgradeability(17种升级风险)
  • ERC合规性: slither-check-erc(6种常见规范)
  • 代币集成: 推荐token-integration-analyzer技能
  • 安全属性: slither-prop用于ERC20

注意: 仅运行适用于您代码库的检查

第3步: 可视化安全检查

生成3种安全图:

  • 继承图: 识别阴影和C3线性化问题
  • 功能摘要: 显示可见性和访问控制
  • 变量和授权: 映射谁可以写入状态变量

审查每张图以发现安全问题

第4步: 记录安全属性

帮助记录关键安全属性:

  • 状态机转换和不变量
  • 访问控制需求
  • 算术约束和精度
  • 外部交互安全性
  • 标准合规性

然后设置测试:

  • Echidna: 基于属性的模糊测试与不变量
  • Manticore: 符号执行的形式验证
  • 自定义Slither检查: 项目特定业务逻辑

注意: 对安全性最重要的活动

第5步: 手动审查领域

分析自动化工具遗漏的领域:

  • 隐私: 链上秘密,提交-揭示需求
  • 前运行: 滑点保护,排序风险,MEV
  • 密码学: 弱随机性,签名问题,哈希碰撞
  • DeFi交互: 预言机操纵,闪电贷,协议假设

搜索代码库以发现这些模式并标记风险

有关每个步骤的详细说明、命令和解释,请参阅WORKFLOW_STEPS.md


工作方式

调用时,我将:

  1. 探索您的代码库 以了解结构
  2. 运行第1步: Slither安全扫描
  3. 检测并运行第2步: 特殊功能检查(仅适用部分)
  4. 生成第3步: 可视化安全图
  5. 指导第4步: 安全属性记录
  6. 分析第5步: 手动审查领域
  7. 提供行动计划: 优先级修复和后续步骤

根据以下调整:

  • 您已安装的工具
  • 适用于您项目的部分
  • 您在开发中的阶段

合理化(请勿跳过)

合理化 为什么错误 必要行动
“Slither不可用,我将手动检查” 手动检查会错过70多个检测器模式 安装并运行Slither,或记录为什么受阻
“无法生成图,我将描述架构” 描述不直观——图能揭示文本遗漏的模式 执行slither --print命令,生成实际可视化输出
“未检测到升级,跳过可升级性检查” 代理和升级通常是隐式或计划的 在跳过第2步检查前,用代码库搜索验证
“不是代币,跳过ERC检查” 代币可能集成而无需明显的ERC继承 在跳过前,检查代币交互、转账、余额
“现在无法设置Echidna,建议稍后” 基于属性的测试是第4步,非可选 现在记录属性,设置模糊测试基础设施
“无DeFi交互,跳过年预言机/闪电贷检查” DeFi模式出现在意外地方(价格源、外部调用) 完成第5步手动审查,搜索代码库以发现模式
“此步骤不适用于我的项目” 未经验证的"不适用"会导致遗漏漏洞 在声明不适用前,用明确代码库搜索验证
“我将提供通用安全建议而非运行工作流” 通用建议不可操作,工作流能找到具体问题 执行所有5步,生成项目特定发现并附文件:行引用

示例输出

完成工作流后,您将获得一份全面安全报告,包括:

  • 第1步: Slither发现,含严重性、文件引用和修复建议
  • 第2步: 特殊功能验证结果(可升级性、ERC合规性等)
  • 第3步: 可视化图分析继承、功能和状态变量授权
  • 第4步: 记录的安全属性和测试设置(Echidna/Manticore)
  • 第5步: 手动审查发现(隐私、前运行、密码学、DeFi风险)
  • 行动计划: 关键/高/中等优先级任务,带工作量估计
  • 工作流检查清单: 所有5步进度

有关完整示例工作流报告,请参阅EXAMPLE_REPORT.md


您将获得

安全报告:

  • Slither发现,含严重性和修复
  • 特殊功能验证结果
  • 可视化图(PNG/PDF)
  • 手动审查发现

行动计划:

  • [ ] 需立即修复的关键问题
  • [ ] 需记录的安全属性
  • [ ] 需设置的测试(Echidna/Manticore)
  • [ ] 需审查的手动领域

工作流检查清单:

  • [ ] 干净的Slither报告
  • [ ] 特殊功能已验证
  • [ ] 可视化检查完成
  • [ ] 属性已记录
  • [ ] 手动审查完成

获取帮助

Trail of Bits资源:

  • 办公时间: 每周二(预约
  • Empire Hacking Slack: #crytic和#ethereum频道

其他安全:

  • 记住: 安全不仅仅是智能合约
  • 链下安全(所有者密钥、基础设施)同样关键

准备开始

告诉我您准备好了,我将与您的代码库一起运行工作流!