首页 > 观点 > 正文
欧意交易所

欧意交易所

全球前三大交易所之一,新用户注册最高可得230USDT奖励,同时可拆数字盲盒,100%可以获得数字货币,最高价值60000元

点击注册 进入官网

AZvLVBueS8dPHk3YIbziS3gpLnKyfry9IYBrqrSW.jpeg

背景介绍

2024年11月25日,我们监控到 BNB Smart Chain 上的一起攻击事件,被攻击的项目为 DCF 。攻击交易为

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

本次攻击共造成约 440,000 USD 的损失。 

攻击及事件分析

首先,攻击者从一系列的 PancakeSwapV3 Pool 中利用 flashloan 贷了大量 BUSD。

图片

随后,攻击者利用 PancakeSwap 的 swap 功能的先转兑换后的 token 然后在 callback 函数中支付token ,通过一系列的递归 swap 又拿到了大量的 BUSD 。

图片

接着,在攻击者拿到用来实施攻击的本金后,开始针对 DCF 项目的攻击。 

第一步:

攻击者将持有的所有 DCF 转给攻击合约,

图片

第二步:

攻击者使用 80,435,691 BUSD 兑换了 4,039 DCF 给0x16600100b04d17451a03575436b4090f6ff8f404 ,

图片

第三步:

攻击者用剩下的 29,919,679 BUSD 兑换了 1,062,693 DCT 给攻击合约,

图片

第四步:

攻击者利用 transfer 将 82 DCF 转给了 PancakeSwap Pair BUSD-DCF ,我们看一下 DCF的 transfer 的具体实现,

图片

图片

可以看到,当 to 为 PancakeSwap Pair 的地址时执行红框里的代码,漏洞就出现在这。由于 deadcfg 为 2 ,所以该代码会将 transfer 的 amount 约一半的 DCF 从 PancakeSwap Pair 中销毁,最后再 sync 。该操作会造成 PancakeSwap Pair BUSD-DCF 中 DCF 的数量大幅减少,DCF 的价格大幅拉升。通过此次操作,导致 DCF 的价格由 171 BUSD 拉升到了 1,708,540,682,977,674 BUSD ,拉升了 9,991,465,982,325 倍。由于 DCF 的 transfer 函数中的代码 liquidHepler.addLiquidity 又将 PancakeSwap Pair BUSDDCT 中的一部分 DCT 消耗掉了,所以同样也拉升了 DCT 的价格。

图片

最后,攻击者利用手中剩余的 DCF 将 PancakeSwap Pair BUSD-DCF 中的 72,612,978 BUSD 掏空。由于上述操作同样也拉升了 DCT 的价格,所以攻击者之前使用 29,919,679 BUSD 兑换的 DCT 价值变为 38,302,987 BUSD 。最后,在攻击者归还了 flashloan 中借贷的 BUSD 后,获利 442,028 BUSD 。

总结

本次漏洞的成因是项目方在实现 DCF 的 transfer 函数时,编写了错误的逻辑。导致攻击者通过transfer 给 swap pair 后,销毁 pair 中的 DCF ,从而可以轻易操纵 DCF 的价格。最后完成套利。建议项目方在合约上线前审计时尽量选择多个审计公司交叉审计。

白话区块链|同步全球区块链资讯、区块链快讯、区块链新闻
本站所有文章数据来源:金色财经
本站不对内容真实性负责,如需转载请联系原作者
如需删除该文章,请发送本文链接至oem1012@qq.com

更多交易所入口

一站式注册各大交易所、点击进入加密世界、永不失联,币安Binance/欧易OKX/GATE.IO芝麻开门/Bitget/抹茶MEXC/火币Huobi

点击进入 永不失联
picture loss