ARM:Armors团队发现NFT项目Akutars因未对合约进行安全审计

4月23日,NFT项目Akutars 在社交媒体上发布了有关11,539ETH(价值3400万美元)被永久锁定的消息。

Armors Company Limited分析了Akutars事件,得出此次被永久锁定的根本原因为合约上线前代码未经安全机构审计,上线后因其合约实现逻辑漏洞问题导致价值3400万美元的ETH永久被锁死在合约中,用户和开发团队都无法取出资金,这部分资金等同于被销毁状态。

Akutars表示,本次合约漏洞主要因项目方的失误造成,并非被人为恶意利用合约漏洞,被锁定的ETH已无法退还,团队正在紧急协商应对措施,将尽快铸造NFT给用户。

安全审计机构摩斯安全Armors与Coinhub钱包达成深度战略合作:据官方消息,近日,安全审计机构摩斯安全Armors与Coinhub钱包达成深度战略合作。双方将在钱包安全、安全审计、渗透测试、项目推广等层面展开深度合作,共同保障用户资产安全。

Armors摩斯安全机构成立于2017年,为行业最早的专业区块链安全机构之一。截止目前,Armors已为超过2000家区块链平台、交易所、钱包、DApp等机构和项目提供安全审计、渗透测试、跨链迁移、平台安全等各方面保障及服务。

Coinhub 是可信赖的数字资产管理服务平台,轻松掌管全球多链数字资产,服务于全球DeFi项目及投资者,提供专业、全面的去中心化生态数据。[2021/9/9 23:12:44]

Armors Company Limited将此次事件整理分析一下,提醒项目方朋友将来以此为鉴。?

ETC Labs与Swarm达成合作:金色财经报道,ETC Labs发布Medium文章称,去中心化存储网络Swarm已经启动了其Alpha网络。ETC Labs已与Swarm合作以支持Swarm Alpha和Beta版本。[2020/8/27]

Akutars漏洞合约地址如下:

0xf42c318dbfbaab0eee040279c6a2588fa01a961d

Akutars项目采用的是类似荷兰降价拍卖的形式,拍卖结束后会按照结束价格给用户退还超过最低价格的部分。这涉及了refund以及total bids统计两个方面,而项目方的合约在这两个方面都存在着实现逻辑问题。

Sesameseed获Harmony资助,将构建支持HRC20代币交易的DEX:Sesameseed宣布最近获得Harmony的资助,将在Harmony区块链上构建Uniswap风格的DEX,实现HRC20代币的去中心化和透明交易。[2020/8/2]

首先,来看第一个合约漏洞。processRefunds会被恶意合约阻断,实现DOS攻击,也的确有用户使用恶意合约阻断了processRefunds执行,但该名用户表示只是让项目方确认问题存在,随即设置恶意合约变量,使得processRefunds顺利执行完。这个漏洞被人在链上证明有效,随后攻击合约便进行了解锁,并没有进行攻击利用且公开进行了申明,说明这个漏洞并不是此次资金被锁定的原因所在。?

动态 | 美国审计公司Armanino发布基于区块链技术的企业财务审计新工具:美国25家最大的会计和商业咨询公司之一的Armanino发布一款基于区块链的新工具TrustExplorer 2.0,该工具可以在数秒内完成企业财务审计。(Coindesk)[2019/11/3]

接下来的第二个漏洞,才是这次事件的真正元凶,导致了资金被永久锁定在合约中并无法提款。我们看到在Akutars合约中,processRefunds是按照msg.sender的数量记录在了refundProgress变量,拍卖结束项目方调用claimProjectFunds取出合约内的ETH时,要求满足refundProgress>=totalBids。而totalBids记录的是NFT的数量,合约最终状态refundProgress 数值为3669,totalBids数值为5495。

也就是说,这里的refundProgress>=5495且refundProgress<3669,这个判断条件永远不会成立,最终导致了项目方团队自己也将永远无法执行后续的提款操作,此处应将refundProgress与bidIndex做对比。这是Akutars开发者犯的一个很不应该的严重错误。最终,直接导致了项目方11539ETH被锁定无法提取。

这里还需要指出的是,在执行processRefunds之前,参与拍卖的用户可以在三天后通过 emergencyWithdraw将个人投入的ETH取回,但由于processRefunds的执行,导致用户的拍卖状态由未处理变为refund,从而不能再进行emergencyWithdraw。

通过以上分析,我们看出由于Akutars项目方上线前没有对其智能合约进行安全审计,上线后才导致发生了这次资金被永久锁定在合约中无法提取的严重事件。

Armors Company Limited曾不止一次的强调合约安全审计的重要性和必要性,还有很多项目方存在着侥幸心理,觉得问题不会发生在自己项目身上。往往就是抱有的这种侥幸心态,是安全事件频发的原因。项目方开发者应具备基本的安全开发意识,熟悉智能合约开发应注意的安全问题,也务必把合约代码安全当成重中之重,审计是保证代码安全的关键因素,因此合约代码找行业内正规的安全公司进行审计,并定期检查更新。Armors Company Limited同时提醒项目方,上线后要注意加强数据的安全监控。如果项目方合约代码是通过正规审计机构全面合规审计的,就能有效避免安全事件的发生。

Armors Company Limited安全机构成立于2017年,是行业最早成立的专业区块链安全机构之一。Armors Company Limited是Polygon、BSC、Ethereum、Solana等公链审计合作伙伴,已为超过2000家区块链平台、交易所、钱包、DApp等机构和项目提供安全审计、渗透测试、跨链迁移、平台安全等各方面保障及服务。成立以来,Armors Company Limited已为客户挽回超过32000个BTC的资产损失。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

地球链

[0:31ms0-1:76ms