NFT项目Akutars资金锁定事件简析

据慢雾区消息,Akutars(@AkuDreams) 项目拍卖合约由于多个代码缺陷导致 11,539.5 枚 ETH 永久无法取出。慢雾安全团队进行分析后以简讯的形式分享给大家。

1. Akutars 拍卖合约中存在 bid 与 processRefunds 功能,用户分别可以进行拍卖出价与退款操作。

2. 在拍卖结束后发起 processRefunds 退款操作时拍卖合约将遍历出价用户,并通过低级调用 call 为用户进行退款,但并未限制这一调用的 gasLimit。而未做此 gasLimit 限制的情况下,拍卖合约将使用发起者的全部 gas 进行外部调用。

Willy Woo:大型场外交易的过度杠杆清算引发价格回落,并非巨鲸抛售:9月11日消息,链上分析师Willy Woo发推表示,最近的价格回落并非来自巨鲸抛售,巨鲸一直处于重要的购买区域。而此次价格回落可能是由于大型场外交易通过一连串的过度杠杆清算所引发。[2021/9/11 23:18:22]

3. 但由于 Akutars 拍卖合约并不限制合约参与拍卖,因此“恶意用户”可以使用合约参与拍卖,并在其合约的接收以太函数中写入恶意消耗 gas 的逻辑,使得在进行退款流程时触发此用户合约,进而恶意消耗了调用发起者的全部 gas,直接导致后续退款无法正常进行。

4. 幸运的是此“恶意用户”仅仅只是做了风险验证测试,最终解除了恶意消耗 gas 的逻辑使得退款可以继续顺利进行。当然用户也可以在拍卖结束的 3 天后进行紧急退款。

5. 在用户退款完成后项目方可以通过 claimProjectFunds 功能提取合约中的拍卖所得。但拍卖合约在用户进行 bid 时使用 totalBids 与 bidIndex 记录用户所拍的数量与出价次数,而用户是可以在一次出价中任意选择所拍的数量的,因此在拍卖结束 totalBids 实际上大于 bidIndex。当前 totalBids 为 5495,bidIndex 仅为 3669。

6. 但在 claimProjectFunds 函数中却要求 refundProgress 退款数必须大于等于 totalBids,项目方本意应是为了保证全部用户完成退款后才可进行取款。而实际上 refundProgress 是根据出价人总数进行计算的,也就是全部退款完成 refundProgress 也只是会等于 bidIndex。这就出现了 refundProgress 永远不会大于 totalBids 的情况。最终导致合约中 11,539.5 枚 ETH 永远无法取出。

综上,即使在用户无法退款问题被解决的情况下,由于出价人数与拍卖数量的计数不一致以及项目方取款函数的缺陷,最终都会导致 Akutars 资金被永久锁住的结果。

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

区块博客

BTC尽管存在全球通胀的担忧 美国加密货币的采用率依旧高居不下

比推消息,DappRadar 发布的一份定量分析报告揭示了一些具有启发性的全球数字资产采用行为的市场指标。区块链数据描绘了 Web3 和元宇宙行业的积极情绪,尤其是在美国;在2月俄乌战争爆发后,乌克兰和俄罗斯地区对于加密货币兴趣极具上升,此外整个欧洲的天然气价格飙升正在影响通胀指标,欧洲居民面临缺面缺油等困境。

OKBCobie :ApeCoin 与 Staking 之死

注:原文作者是 Cobie 。 最近,ApeCoin 董事会的一位成员联系了我,他们要求我对一些提案提供一些反馈,然后我在电话中提出了我的想法。 我想写一些公开讨论的事,因为我认为它们是有趣的话题。

TRX一周必读10篇 | 消除碳足迹 以太坊合并四大支柱重振生态信心

1.消除碳足迹?以太坊合并四大支柱重振生态信心 与权益证明(PoS)的合并(The Merge)将是迄今为止对以太坊最深刻的升级,其重要性仅次于创世区块。这将是让世界看到一个主要的、分散的系统如何在实际上消除其碳足迹的例子。近日,以太坊基础设施开发公司ConsenSys发推称,以太坊合并将彻底改变构建和访问以太坊的方式,合并将为以太坊发展带来4大支柱。

[0:15ms0-6:907ms