作为全球最大,最为知名的区块链生态之一,Cosmos生态专注于提升区块链互操作性,实现不同区块链之间的高效互通。Cosmos为开发者提供模块化的Cosmos SDK,帮助开发者快速搭建专属于特定应用的区块链,包括广受用户关注的dYdX V4在内的诸多应用均据此进行搭建。因此Cosmos生态的安全问题往往具备广泛的影响力。例如Cosmos SDK 曾发生的Dragonfruit漏洞就影响了多个主流公链的正常运行,导致链开发人员不得不暂停链的正常运行以采取漏洞修复措施。由CertiK研究团队发布的《Cosmos生态安全指南》全面剖析了Cosmos生态中关键组件的安全状况,针对以往发现的安全漏洞进行归纳分类,为Cosmos生态开发者和用户总结出通用的漏洞模型,审计思路和需要重点关注的安全问题,助力提升Cosmos生态与整个区块链行业的安全水平。
由于Cosmos生态系统基础组件的分散性,链开发者需要根据不同的功能需求使用或者扩展不同的组件,导致生态上的安全问题存在多样性的特点。该报告不仅是对以往重大安全漏洞的分析,还将一些常见的安全漏洞根据漏洞起因,效果,代码位置等分类,以安全手册的形式最大程度地为Cosmos生态开发者提供安全指南,并为相关的安全审计人员提供学习和审计Cosmos安全问题的途径。
目前,Cosmos生态开发者最常用的基础组件是Cosmos SDK和IBC协议(The Inter-Blockchain Communication protocol),这两者也是开发者最常使用的扩展和添加链自身逻辑的组件。
对于Cosmos SDK来说,从危险程度和影响范围考虑,我们主要关注Critical和Major的安全漏洞,他们通常可以造成以下风险:
- 链停止运行
- 资金损失
- 影响系统状态或正常运行
而这些危险的起因往往是以下几种类型的安全漏洞:
- 拒绝服务
- 错误的状态设置
- 验证缺失或者不合理
- 唯一性问题
- 共识算法问题
- 实现上的逻辑漏洞
- 语言特性问题
而对于IBC来说,常见漏洞分类见下:
- 命名漏洞
- 字符串处理漏洞
- 字节码处理漏洞
- 传输过程漏洞
- 数据包顺序漏洞
- 数据包超时漏洞
- 数据包认证漏洞
- 其他数据包漏洞
- 逻辑漏洞
- 状态更新漏洞
- 投票共识等漏洞
- 其他逻辑漏洞
- Gas消耗漏洞
尽管Cosmos上的安全问题呈现多样性,但从积极角度考虑,Cosmos生态相关的开发流程正在逐步规范化,因此涉及到的安全对象和攻击入口更加确定,从而为Cosmos生态安全审计人员对链的审计思路提供了一个更清晰的框架。《Cosmos生态安全指南》出于提升Cosmos生态系统安全性的愿景,将细致剖析这些安全场景,详情内容可下载研究报告阅读。
CertiK团队一直以来都在通过持续的研究和挖掘,致力于协助提升Cosmos以及整个Web3生态的安全性,并将定期输出各类项目安全报告和技术研究,欢迎大家持续关注!如有任何疑问,可随时与我们取得联系。
阅读及下载报告全文:https://indd.adobe.com/view/91035407-4f21-4383-9485-a56394d9f95f