黑客四连击:Wiener DOGE, Last Kilometer, Medamon以及PIDAO项目被攻击事件分析

admin 火币huobi官网 2022-04-26 41 次浏览 没有评论

据CertiK安全团队监测,, Wiener DOGE项目于北京时间2022年4月24日下午4时33分被恶意利用,造成了3万美元(折合人民币约12.6万)的损失。攻击者利用WDODGE的收费机制和交换池之间的不一致,发起了攻击。

事件发生的根本原因是:通过紧缩的代币合约造成发送方的LP对没有被排除在转账费用之外。因此,攻击者能够将LP对中的通货紧缩代币耗尽,进而导致货币对价格失衡。

而随后于同一天接连发生了另外三起恶意利用:

同天下午6时20分,Last Kilometer项目被闪电贷攻击利用,造成了26495美元(折合人民币约17万)的损失;

同天晚上9时45分,Medamon项目被闪存贷攻击利用,造成3159美元(折合人民币约2万)的损失;

紧接着, PI-DAO项目被闪存贷攻击利用,造成了6445(折合人民币约4万)美元的损失。

这一系列攻击的攻击者与攻击方法,与同一天早些时候发生的Wiener DOGE相同。
Wiener DOGE攻击流程

攻击者通过闪电贷获得了2900枚BNB。

攻击者将2900枚BNB换成了6,638,066,501,83枚WDOGE

WdogE : 199,177,850,468

WBNB: 2978

LP的状态:

将5,974,259,851,654枚WDOGE发送到LP,由于WDOGE比BNB多,所以LP现在处于不平衡状态。

WDOGE : 5,178,624,112,169

WBNB : 2978

LP的状态:

调用skim()函数,从LP中取回4,979,446,261,701枚WDOGE。由于攻击者在调用skim()之前发送了大量的WDOGE,所以LP将支付大量的费用。这一操作清空了LP内的WDOGE的数量。

黑客四连击:Wiener DOGE, Last Kilometer, Medamon以及PIDAO项目被攻击事件分析

攻击者还调用可sync()函数来更新LP内的储备值。若干枚WDOGE和2978枚BNB的存在,造成了WDOGE的价格与WBNB相比异常昂贵。

5. 最后,攻击者用剩下的WDOGE换回了2978枚BNB,偿还了闪电贷,赚取了78枚BNB。

而其他几个项目被攻击的流程步骤也相似:

闪电贷取得WBNB,并用WBNB换取LP中的通缩代币;

直接将通缩的代币转移到LP对上;

调用skim()函数,迫使LP对输回通缩代币;

由于转让费的存在,攻击者会重复步骤2~3,将LP对中的通缩代币耗尽;

通过LP对中的价格不平衡来获取利润。

合约漏洞分析

当用户(或LP)转移一定数量的WDOGE时,除了费用,还有4%的代币将被销毁。

因此,如果LP发送100枚WDOGE,其余额将减少104枚WDOGE。

黑客四连击:Wiener DOGE, Last Kilometer, Medamon以及PIDAO项目被攻击事件分析

所以,LP应该被排除在费用和代币销毁之外。

资产损失

黑客四连击:Wiener DOGE, Last Kilometer, Medamon以及PIDAO项目被攻击事件分析

审计的作用

CertiK审计专家认为:如果同时对代币和LP合约进行审计,这个漏洞就可能被发现。然而,如果只有代币合约被审计,那么交换机制将被视为一个外部依赖。而这种情况在审计过程中将会指出第三方依赖风险。具体为:如果是代币合约,CertiK审计专家将会与项目方讨论,确认是否需要除去LP对的手续费;如果是LP对方的合约,CertiK审计专家会提出通缩币的讨论,并且提醒项目方可能存在的风险。

作为区块链安全领域的领军者,CertiK致力于提高加密货币及DeFi的安全和透明等级。迄今为止,CertiK已获得了3200家企业客户的认可,保护了超过3110亿美元的数字资产免受损失。(CertiK中文社区)

发表评论

您的电子邮箱地址不会被公开。

回顶部