火星链 火星链
Ctrl+D收藏火星链
首页 > SOL > 正文

AIR:我竟了我自己?|BurgerSwap 被黑分析

作者:

时间:1900/1/1 0:00:00

By:yudan@慢雾安全团队

据慢雾区消息,2021年05月28日,币安智能链(BSC)DeFi项目BurgerSwap被黑,损失达330万美元。慢雾安全团队第一时间介入分析,并将结果分享如下:攻击细节分析

BurgerSwap是一个仿UniswapAMM项目,但是和Uniswap架构有所区别。BurgerSwap架构总体分成。其中Delegate层管理了所有的Pair的信息,并负责创建lpPlatForm层。然后lpPlatForm层再往下创建对应的Pair合约。在整个架构中,lpPlatForm层充当了Uniswap中Router的角色,负责将计算交易数据和要兑换的代币转发到Pair合约中,完成兑换。本次事件的根本正是出在这种架构的问题上。通过一步步分析攻击者的交易行为,我们来还原整个攻击过程的核心:

Gitcoin Grants Beta轮总收到约10.7万笔捐款,筹集资金达60.7万美元:7月4日消息,Gitcoin发推宣布Gitcoin Grants Beta轮次捐款结果,其于5月结束的Beta轮次总计收到约10.7万笔捐款,筹集资金达60.7万美元。目前其最终结果正在进行快照投票,要求社区多重签名的密钥持有者根据终支付金额支付资金,投票持续至7月8日。[2023/7/5 22:18:07]

本次攻击开始于Pancake的闪电贷,攻击者从Pancake中借出了大量的WBNB,然后将这些WBNB通过BurgerSwap兑换成Burger代币。在完成以上的操作后,攻击者使用自己控制的代币(攻击合约本身)和Burger代币通过Delegate层创建了一个交易对并添加流动性,为后续攻击做准备。

网络安全初创公司Cyvers完成800万美元种子轮融资:金色财经报道,以色列的网络安全初创公司Cyvers完成800万美元种子轮融资,Elron Ventures 领投,Crescendo Venture Partners、Differential Ventures 和 HDI参投。??

Cyvers 通过利用领域专业知识和几何机器学习技术为一系列 web3 公司提供即插即用的安全解决方案,以实现安全问题的实时检测。???[2022/12/1 21:16:19]

英国立法者周四就稳定币的新规则达成一致:金色财经报道,英国立法者周四就稳定币的新规则达成共识,一致投票支持新的加密措施,政府承诺在未来几周内就进一步的加密货币法规和数字英镑进行磋商。该法案还必须得到议会上议院的批准,然后才能通过成为法律。Rishi Sunak 政府表示,希望在准备扩大监管网络时“暂时抓住”加密机会。

昨日报道,英国下议院投票赞成将加密资产纳入该国受监管的金融服务范围。[2022/10/27 11:49:08]

在完成代币的创建和准备之后,攻击者立马通过PaltForm层的swapExactTokensForTokens函数发起了兑换,兑换路径为

美元指数DXY继续走高,短线涨30点:行情显示,美元指数DXY继续走高,短线涨30点,欧元兑美元EUR/USD和英镑兑美元GBP/USD均下挫40点。(金十)[2022/7/5 1:51:57]

接下来进行了最关键的一次操作。由于先前攻击者在创建交易对的时候使用的是自己控制的代币,在代币兑换过程中,_innerTransferFrom函数会调用攻击者控制的代币合约,于是攻击者可以_innerTransferFrom函数中重入swapExactTokensForTokens函数。为什么攻击者要这样做呢?

通过对PlatForm层的swapExactTokensForTokens函数进行代码分析,我们不难发现,合约在调用_innerTransferFrom函数时首先计算了用户的兑换数据,然后在_innerTransferFrom函数的操作后使用预先计算的数据来转发到底层进行真正的代币兑换。从这个函数层面来看,就算攻击者重入了swapExactTokensForTokens函数,底层调用的swap函数也是独立的,咋一看并没有什么问题,但是链上的一个行为引起了慢雾安全团队的注意:我们惊讶地发现,在重入的兑换过程中,兑换的数量竟然没有因为滑点的关系而导致兑换数量的减少。这究竟是什么原因呢?看来关键是底层的Pair合约的问题了。我们又进一步分析了底层调用的Pair合约,代码如下:通过分析Pair的代码,我们再次惊讶地发现在swap的过程中,合约竟然没有在兑换后根据恒定乘积公式检查兑换后的数值!!也就是说,Pair合约完全依赖了PlatForm层的数据进行兑换,导致了本次事件的发生。由于Pair层本身并不做恒定乘积的检查,在重入的过程中,PlatForm层的兑换数据预先进行了计算,在_innerTransferFrom函数完成后,Pair的更新数据也没有反映到PlatForm层中,导致重入交易中的兑换产生的滑点并不影响下一次的兑换,从而造成了损失。用图来看的话大概如下:

总结

本次攻击属于BurgerSwap架构上的问题,由于Pair层完全信任PaltForm层的数据,并没有自己再做一次检查,导致攻击的发生。最近DeFi安全事件频发,针对越来越密集的DApp攻击事件,慢雾安全团队建议DApp开发者在移植其他协议的代码时,需充分了解移植协议的架构,并充分考虑移植协议和自身项目的兼容性,且需通过专业安全审计机构的审计后才上线,防止资金损失情况的发生。攻击交易参考:https://bscscan.com/tx/0xac8a739c1f668b13d065d56a03c37a686e0aa1c9339e79fcbc5a2d0a6311e333

标签:SWAPFORPAIAIRSokuSwapRun For LifePAID价格Cairo Finance

SOL热门资讯
比特币:美联储加息预期增强,加密市场真的会形成双顶牛市?

根据美国劳工部近期数据,4月份,美国CPI同比大增4.2%,超出3.6%的市场预期水平,增速创2008年9月以来新高;环比增长0.8%,亦创2008年6月以来最高.

1900/1/1 0:00:00
PAR:纵观NFT历史发展,在新时代中探索更多的可能性

十二年前,比特币和区块链的诞生让人们第一次真正拥有了自己的资产,让无边界的价值传递成为了可能。如果说互联网是信息文明时代的基础设施,那么区块链则是对未来价值社会的一次探索,让人类文明从信息和内容.

1900/1/1 0:00:00
ITT:埃隆·马斯克已成为黑客组织 Anonymous 攻击目标

本文来自比推Bitpush.News;作者:ChenZou;星球日报经授权转载在周六晚间,黑客组织Anonymous对马斯克进行了一波舆论轰炸.

1900/1/1 0:00:00
GON:Polygon崛起奥秘是什么? 「以太坊守护者」还是昙花一现?

吴说作者|Kafka;本期编辑|ColinWuPolygon的Tokenmatic在5月18日最高价达到$2.70,近一个月内暴涨超过10倍,总市值排名最高跃进前十五.

1900/1/1 0:00:00
以太坊:为什么「桥」对 Layer 2 很重要?

撰文:PatrickMcCorry,PISAResearch首席执行官编译:PerryWang从社区角度而言,我们对以链下协议作为区块链网络的扩容方式感到无比兴奋.

1900/1/1 0:00:00
以太坊:一文详解一条稳定的区块链——波卡

在提到波卡时,人们总是会看到类似“异构跨链与万链互联”这样的字眼,事实上,这词汇都是对波卡技术的高度概括,技术之外,还可以站在更高的维度理解波卡,例如思考一下.

1900/1/1 0:00:00