黑客四连击:同一天内Wiener DOGE等四个项目遭受攻击事件分析

CertiK
企业专栏
热度: 19959

北京时间2022年4月24日下午4时33分,CertiK审计团队监测到Wiener DOGE项目被恶意利用

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

事件发生的根本原因是:通过紧缩的代币合约造成发送方的LP对没有被排除在转账费用之外。因此,攻击者能够将LP对中的通货紧缩代币耗尽,进而导致货币对价格失衡。而随后于同一天内接连发生了另外三起恶意利用:

  • 下午6时20分,Last Kilometer项目被闪电贷攻击利用,造成了26495美元(折合人民币约17万)的损失;
  • 晚上9时45分,Medamon项目被闪存贷攻击利用,造成3159美元(折合人民币约2万)的损失;
  • 紧接着, PI-DAO项目被闪存贷攻击利用,造成了6445(折合人民币约4万)美元的损失。

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


攻击步骤

  • ① 攻击者通过闪电贷获得了2900枚BNB。②攻击者将2900枚BNB换成了6,638,066,501,83枚WDOGE。● LP的状态:  ○ WdogE : 199,177,850,468  ○ WBNB: 2978③将5,974,259,851,654枚WDOGE发送到LP,由于WDOGE比BNB多,所以LP现在处于不平衡状态。● LP的状态:  ○ WDOGE : 5,178,624,112,169  ○ WBNB : 2978④ 调用skim()函数,从LP中取回4,979,446,261,701枚WDOGE。由于攻击者在调用skim()之前发送了大量的WDOGE,所以LP将支付大量的费用。这一操作清空了LP内的WDOGE的数量。
  • 黑客
  • 攻击者还调用可sync()函数来更新LP内的储备值。若干枚WDOGE和2978枚BNB的存在,造成了WDOGE的价格与WBNB相比异常昂贵。⑤ 最后,攻击者用剩下的WDOGE换回了2978枚BNB,偿还了闪电贷,赚取了78枚BNB。而其他几个项目被攻击的流程步骤也相似:
  • 闪电贷取得WBNB,并用WBNB换取LP中的通缩代币;
  • 直接将通缩的代币转移到LP对上;
  • 调用skim()函数,迫使LP对输回通缩代币;
  • 由于转让费的存在,攻击者会重复步骤2~3,将LP对中的通缩代币耗尽;
  • 通过LP对中的价格不平衡来获取利润。


漏洞分析

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

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

黑客

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



资产去向

黑客



写在最后

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

声明:本文为入驻“火星财经 专栏”作者作品,不代表火星财经官方立场。
转载请联系网页底部:内容合作栏目,邮件进行授权。授权后转载时请注明出处、作者和本文链接。未经许可擅自转载本站文章,将追究相关法律责任,侵权必究。
提示:投资有风险,入市须谨慎,本资讯不作为投资理财建议。
本内容旨在传递行业动态,不构成投资建议或承诺。