CNVD在2020年6月3日,开了区块链漏洞子库,其中漏洞分类有三。公链漏洞、联盟链漏洞、外部系统漏洞。 笔者发现公链和联盟链的本质区别只是在参与block produce的人员的候选范围不同。 所以漏洞定级标准中,公链漏洞和联盟链漏洞相差不大。或者说 公链漏洞定级标准中涉及的危害,是联盟链漏洞危害的子集。 由于联盟链的界限不清、联盟链漏洞的定级标准模糊,导致现在cnvd能够准确收录的漏洞还不多。 截止2020年7月1日,联盟链漏洞分类下,只有两个漏洞。
Hyperledger Iroha存在逻辑缺陷漏洞 和 loncoin存在逻辑缺陷漏洞
其中loncoin漏洞 是智能合约漏洞,收录在联盟链分类下,很显然不合适。Hyperledger Iroha is a simple blockchain platform you can use to make trusted, secure, and fast applications by bringing the power of permission-based blockchain with Crash fault-tolerant consensus. It’s free, open-source, and works on Linux and Mac OS, with a variety of mobile and desktop libraries. Hyperledger Iroha是一套基于区块链技术的资产创建和管理分布式系统。 Hyperledger Iroha 1.0_beta版本和1.0.0_beta-1版本中存在安全漏洞。攻击者可通过发送特制请求利用该漏洞绕过交易和块的签名验证。 漏洞链接如下 https://www.cnvd.org.cn/flaw/show/CNVD-2020-30034
CNVD官方描述中说到,漏洞允许攻击者绕过交易和块的签名验证。 此外提到,漏洞的公开时间是2020-05-05。 这里我们试着根据描述来寻找一下修复代码,从而分析一下漏洞细节。
CNVD的描述中提到新版本的release链接是 https://github.com/hyperledger/iroha/releases/tag/v1.0.0_beta-2
但是链接直接404
我们到iroha的release界面并没有找到所谓的v1.0.0_beta-2版本,只找到了Release 1.0.1 同时提交时间也不是5月5日。 release 1.0.1中标注的修复问题,是关于多签名transaction的过期时间问题,和绕过似乎无关。
发现iroha的 VCS 除了github之外还在openii有所收录。 v1.0.0_beta-2版本的对应链接如下 https://openii.cn/blockchain/iroha/commits/v1.0.0_beta-2 这个版本的最后一次维护在2018年5月19日,和CNVD中的漏洞报送时间2020年5月5日不符。 在该版本所有的提交commit中,也没有找到对应的transaction signature verify 绕过的fix。
CNVD漏洞库的区块链漏洞子库,截止2020年7月5日,收录了两个联盟链漏洞。 这两个联盟链漏洞一个分错目录,另一个是找不到对应的漏洞详情