Daoswap攻击事件分析:卡Bug给自己「开工资」-ODAILY

北京时间2022年9月5日,CertiK审计团队监测到Daoswap由于挖矿奖励大于交换过程中收取的费用以及缺乏验证,允许用户将邀请者地址设置为自己,在一次攻击中损失了58万USDT。

攻击步骤

①攻击者合约从12个地址中共闪电贷到了218万美元。

②攻击者合约使用DAORouter将所有闪电贷到的USDT交换为DAO代币。在交换过程中,攻击者合约以两种方式从SwapToEarn获得DAO代币作为奖励:

MakerDAO拟将金库上限设为5000万枚DAI,超出部分买入MKR并添加流动性:7月3日消息,MakerDAO风险核心单元团队在社区发布“智能销毁引擎与初始参数介绍”提案,目前该提案尚未投票。该提案称,智能销毁引擎(Smart Burn Engine)是一种新型智能合约系统,旨在从Maker未将其用作应急储备的Surplusbuffer中分配多余的Dai。智能销毁引擎与此前的销毁设计不同之处在于,MKR代币将以Uniswap V2LP代币形式累积,而非被获取并销毁。此外,Surplus Auctions(Flaps)将被DssFlapper合约取代。[2023/7/3 22:14:51]

a.代币奖励:这是为换取代币的用户准备的。

b.邀请者奖励:攻击者在调用函数时可以任意设置一个“邀请者”地址,相当于推荐人也可以获取奖励。在这种情况下,攻击者合约将邀请者地址设置为自己。

BendDAO一周年财务报表:营业收入约 222 万美元:金色财经报道,NFT 流动性协议 BendDAO 公布成立一周年的财务报表,由 Unboxing Lab 制作,该报告包括现金储备、贷款、NFT(托管、转让与存款)和股权等其他资本。其中,BendDAO 年利息收入为 3,630.66 枚 ETH,年利息支出为 2,447.04 枚 ETH,营业收入为 1,183.62 枚 ETH(约 222 万美元)。[2023/4/7 13:50:17]

③攻击者合约用同样的方法将所有DAO代币换回USDT,再次获得这两种奖励。

④攻击者合约多次重复步骤②和③。因为攻击者收到了DAO代币作为奖励,所以他每次都能获得更多的USDT。

⑤攻击者合约偿还了所有借贷资金,并将剩余的USDT金额转移给攻击者。

MakerDAO发起调整基本费率和添加BAL和YFI作为抵押品的投票:据官方博客消息,10月12日,Maker Foundation临时风险小组已将一系列治理民意测验纳入投票系统 ,该系统将进行民意测验以调整基本费率,以及添加BAL和YFI作为抵押品等。其中基本费率投票支持的范围选项为-4%至4%。[2020/10/13]

合约漏洞

DAOSwap包含一个“swap-mining”的奖励,其实现方式如下。

MakerDAO发起有关调整基本费率和PAXUSD债务上限的投票:金色财经报道,据官方博客消息,Maker Foundation临时风险小组已将一系列治理投票纳入投票系统,以对基本费率和PAXUSD债务上限进行调整。其中基本费率投票的支持范围为-3.75%至4.25%,PAXUSD-A债务上限从当前值增加到1亿Dai。[2020/9/29]

在函数_swap中调换之后,可调用SwapToEarn.sol中的函数swapCall。

动态 | MakerDAO将在5月个以来首次降低DAI稳定费:据coindesk报道,MakerDAO背后的代币持有人五个月以来已首次投票决定降低DAI稳定费。在五个月的时间里,DAI的稳定费已从0.5%增加到19.5%,增加了39倍,引发了MakerDAO系统中一些早期借款人的愤怒。[2019/5/17]

在函数swapCall中,DAO代币被转移给用户和邀请者,二者的地址都是通过参数传递的。

当函数在_swap中被调用时,我们可以看到用户被设置为信息发送者msg.sender,而邀请者则来自于输入参数。

邀请者地址可以是任何地址,因为这个地址没有设置检查。攻击者能够将邀请者设为自己,并得到了额外的奖励。

值得注意的是,攻击者作为邀请者得到的奖励约占总奖励的20%。即使不允许攻击者将邀请人地址设置为自己,攻击者仍然可以从交易中获利。

6次交易的总利润约为581,254USDT。

相关交易

交易①:

https://bscscan.com/tx/0x414462f2aa63f371fbcf3c8df46b9a64ab64085ac0ab48900f675acd63931f23

交易②:https://bscscan.com/tx/0x6c859ae624002e07dac39cbc5efef76133f8af5d5a4e0c42ef85e47d51f82ae0

交易③:

https://bscscan.com/tx/0x3b1d631542eb91b5734e3305be54f305f26ab291b33c8017a73dcca5b0c32a1b

交易④:https://bscscan.com/tx/0xa7fdefcd80ba54d2e8dd1ab260495dca547993019d90f7885819bb4670b65bad

交易⑤:

https://bscscan.com/tx/0xf1368418344e21a1a09a2c1770ea301bf109ca3b387a59a79242a27d709195a7

交易⑥:

https://bscscan.com/tx/0x8eb87423f2d021e3acbe35c07875d1d1b30ab6dff14574a3f71f138c432a40ef

写在最后

攻击发生后,CertiK的推特预警账号以及官方预警系统已于第一时间发布了消息。同时,CertiK也会持续于官方公众号发布与项目预警相关的信息。

CertiK的端到端安全解决方案,从智能合约审计和KYC项目背景调查服务,到Skynet天网动态扫描系统和SkyTrace等区块链分析工具,以及漏洞赏金计划,助力每一个项目充分发挥潜力的同时为Web3.0打造用户和投资者高参与的生态系统。

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

银河链

欧易交易所Tether项目周报(0919-0925)-ODAILY

关于储备金证明的新命令:毫无根据的常规发现昨天在ReTether和Bitfinex加密资产诉讼案中提出的命令是一项常规发现命令,并不能以任何方式证实原告的毫无根据的主张.

[0:0ms0-1:875ms