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

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

攻击步骤

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

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

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

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

Starknet alpha v0.12已在测试网上线,7月12日将上线主网:7月5日消息,Starknet已经在Georli测试网上线Starknet alpha v0.12,新版本使用Rust blockifier和LambdaClass的Cairo VM来加快排序器处理事务的时间,支持Cairo编译器v2.0.0版本,将PENDING状态变更为ACCEPTED_ON_L2( 一旦交易处于该状态,这意味着将被包含在区块中),并添加了实验性系统调用。

根据Starknet治理促进者此前发布的Starknet v0.12.0部署时间线,7月12日Starknet v0.12.0将部署至主网。[2023/7/5 22:19:09]

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

英国《金融时报》:银行业对加密货币日趋谨慎:金色财经报道,《金融时报》认为,美国监管部门已采取行动加大了对金融机构涉加密币业务的管制。今年1月,美联储和其他相关监管机构警告银行业在同加密币企业打交道时“严防欺诈活动”。与此同时,监管部门也开始对其他大型加密币平台出手。3月27日,美国商品期货委员会起诉币安平台非法从事加密币衍生品交易。此外,Coinbase平台近期亦被警告可能面临证券违法指控。[2023/4/1 13:39:01]

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

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

合约漏洞

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

数字收藏品平台Candy Digital完成A1轮融资,Galaxy和Consen Sys Mesh领投:1月6日消息,数字收藏品平台Candy Digital宣布其已完成A1轮融资,由Galaxy和Consen Sys Mesh领投,10T Holdings和ConsenSys等跟投。具体融资条款暂未披露。据悉,Candy Digital于2021年推出,其使命是通过开发数字收藏品和体验来发展粉丝经济,它将继续扩展旗舰数字产品业务,包括ICON交易卡、门票等。通过与ConsenSys Mesh和ConsenSys建立新的合作伙伴关系,Candy将加速其平台、工具和体验能力的发展。[2023/1/6 10:24:57]

法国财政部长:将于明年探索加密货币的税务处理方法:金色财经报道,法国财政部长Bruno Le Maire在周一的一次采访中表示,法国希望成为世界领先的区块链中心,因此,法国将于明年审查其加密税收规则、探索加密货币的税务处理方法,并且不会简单地复制现有股票规范。Le Maire还对加密行业产生的能源消耗表示担心,以及区块链技术挤占欧元地位的潜在可能。(CoinDesk)[2022/10/18 17:29:49]

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

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

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

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

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

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

交易①:

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打造用户和投资者高参与的生态系统。

CertiK中文社区

企业专栏

阅读更多

金色早8点

财经法学

成都链安

PANews

Bress

链捕手

Odaily星球日报

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

地球链

[0:0ms0-1:144ms