Crytic:智能合约的持续安全保障 - Trail of Bits博客
注意: 此博客文章转载自Truffle Suite的博客。
我们自豪地宣布推出新的智能合约安全产品:https://crytic.io/。Crytic为智能合约提供持续保障。该平台报告每次提交的构建状态,并运行一套安全分析以提供即时反馈。
测试版即将开放。在Twitter上关注我们,以便尽快获得通知并享受服务!前三个月免费。
Crytic如何保护您的智能合约
一旦连接到您的GitHub仓库,Crytic将持续:
- 运行我们的静态分析器Slither,检测最常见的智能合约漏洞,避免严重错误。
- 运行您的Truffle测试,确保在开发项目时不会添加功能错误。
Slither将分析您的代码库,检测超过60种安全缺陷,包括重入、整数溢出、竞争条件等。其中一半的缺陷检测器是私有的,尚未公开。它们可以检测公众知识有限且其他工具无法发现的缺陷。使用Crytic,最近的GridLock漏洞本可以提前检测到!
我们为开发者构建了这个平台,因此将其与GitHub集成。它将监视每次提交和分支,确保在开发过程中不会添加错误。此外,Crytic将在每个PR上运行检查,以方便您的代码审查。
对于发现的每个安全问题,Crytic将:
- 显示关于错误的详细报告,包括源代码高亮。
- 允许您创建GitHub问题,轻松跟踪修复。
- 让您对结果进行分类,决定需要修复的内容。
快速入门
将Crytic添加到您的系统很简单:只需连接到您的GitHub仓库。我们对Truffle提供一流支持;开箱即用!我们还支持大多数其他智能合约平台,包括Embark、Dapp和Etherlime。添加仓库后,仪表板(图1)将显示项目摘要,如crytic-demo:
图1:Crytic仪表板
从现在开始,您将受益于持续的安全分析。
问题报告
发现问题只是第一部分。Crytic将为您提供修复错误所需的详细信息:
图2:报告提供理解和修复问题所需的详细信息
细心的读者会注意到这里的漏洞:函数constuctor(有拼写错误!)创建了一个公共函数,任何人都可调用,而不是仅在初始化时运行。Crytic将即时检测这些类型的严重错误。
问题分类
一旦发现错误,用户可以决定:
- 创建GitHub问题,轻松跟踪修复,或
- 丢弃问题。
图3:Crytic轻松为选定报告创建GitHub问题
Crytic跟踪代码的修改,并仅报告引入的新错误。每个新PR将自动分析:
图4:Crytic与GitHub Pull Requests完全集成
Crytic的未来计划
我们不断改进Crytic。预计未来将看到新的错误检测器和功能。我们计划添加:
- Echidna和Manticore集成:确保检查代码的自定义安全属性。
- 自动错误修复:Crytic将提出修复发现问题的补丁。
- Slither打印机集成:帮助可视化代码的底层细节。
- Delegatecall代理检查器:防止在可升级过程中犯下关键且常见的错误。
有问题?
请带到TruffleCon,在我们的展位或周五关于自动化漏洞检测工具的研讨会上向我们提问!
无论您是否能参加TruffleCon,加入我们的slack频道(#crytic)获取支持,并关注@CryticCI以在测试版开放时第一时间得知。
如果您喜欢这篇文章,请分享: Twitter LinkedIn GitHub Mastodon Hacker News