宇宙链 宇宙链
Ctrl+D收藏宇宙链
首页 > Coinw > 正文

bHOME重入攻击事件分析

作者:

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

1、前言

北京时间3月5日,知道创宇区块链安全实验室?监测到?BaconProtocol?遭受黑客攻击损失约958,166美元,本次攻击利用重入漏洞,并凭借闪电贷扩大收益额。目前攻击者地址还没有被加入USDC的黑名单中。

2、分析

攻击事件如下图所示,该次攻击事件的问题点在于lend()函数,攻击者利用该函数进行重入攻击。

2.1基础信息

攻击合约:0x580cac65c2620d194371ef29eb887a7d8dcc91bf

攻击者地址:0x7c42f2a7d9ad01294ecef9be1e38272c84607593

Clubhouse安卓版正式上线:5月23日消息,Clubhouse在推特上宣布,Android版Clubhouse已正式上线。[2021/5/24 22:35:57]

攻击tx:0x7d2296bcb936aa5e2397ddf8ccba59f54a178c3901666b49291d880369dbcf31

漏洞合约:0x781ad73f140815763d9A4D4752DAf9203361D07D

2.2流程

1.攻击者通过UniswapV2闪电贷借出6,360,000USDC。

2.用闪电贷借出的6,360,000USDC分成3份,去bHOME中进行2次重入攻击调用了3次lend()函数铸造共8,465,943.180104bHOME。

BHEX完成BHT第九次销毁 累计销毁已超5亿枚:据BHEX交易所公告,BHEX于新加坡时间4月8日19:00完成平台币BHT 2020年第一季度回购销毁。此次销毁包括回购销毁和解锁后销毁,共计销毁74,712,338枚BHT。截至现在,BHT累计销毁536,318,608枚。BHEX交易所是技术驱动的加密资产交易平台,由火币、OKEx等56家资本共同领衔投资。BHT是BHEX平台币,总量21亿枚,未来会减少到10.5亿枚,BHT承载了BHEX生态系统的核心价值。[2020/4/9]

3.将刚才重入获得的bHOME拿去销毁赎回获得7,336,924.998USDC。

4、归还闪电贷借出的6,360,000USDC,并支付19,716的手续费,最后将剩余的957,208.998USDC转入自己的账户。

BHEX交易所BTC永续合约24小时行情播报:截至今日上午10:00,据BHEX交易所永续合约行情:BTC币本位合约报价8648.0美元,预测资金费率为0.0184%(多头付空头);BTCUSDT合约报价8648.1美元,预测资金费率为0.0222%(多头付空头)。

过去24小时BTC合约多空持仓人数比为2.34, BTC币本位合约交易总量7415万张,BTCUSDT合约交易总量6411万张。BTC永续合约主动买入量为3512万张,主动卖出量为3114万张。[2020/3/1]

2.3细节

该次攻击事件重点在于lend()函数,由于合约https://etherscan.io/address/0x781ad73f140815763d9a4d4752daf9203361d07d#code并未验证开源,所以我们只能从交易的Debugger中寻找线索。

公告 | 韩国交易所Bithumb暂停BHPC存提款:2月14日消息,韩国交易所Bithumb发布公告:由于BHPC主网升级,故将于2月15日12:00暂停BHPC存提款服务。[2019/2/14]

1、攻击者通过UniswapV2闪电贷借出6,360,000USDC。

2、用闪电贷借出的6,360,000USDC分成3份,去bHOME中进行重入攻击2次调用?lend()函数铸造共8,465,943.180104bHOME。

3、将刚才重入获得的bHOME拿去销毁赎回获得7,336,924.998USDC。

4、归还闪电贷借出的6,360,000USDC,并支付19,716的手续费,最后将剩余的957,208.998USDC转入自己的账户。

2.3细节

该次攻击事件重点在于?lend()?函数,由于合约?https://etherscan.io/address/0x781ad73f140815763d9a4d4752daf9203361d07d#code?并未验证开源,所以我们只能从交易的Debugger中寻找线索。

分析Debugger可以看到下图是第一次调用函数,接着进行了2次重入。

从重入攻击中可以找到INPUT中调用函数的字节码为?0xa6aa57ce。

通过字节签名可以知道重入攻击调用的是?lend()?函数。

从Debugger中我们可以发现攻击合约的地址?0x781ad73f140815763d9a4d4752daf9203361d07d。

通过反编译合约?0x781ad73f140815763d9a4d4752daf9203361d07d?得到合约伪代码内容,可以找到?lend()?函数。

我们在反编译的代码中可以看到该合约使用的ERC777协议,会查询?recipient?的回调合约并回调?tokensReceived()?函数用以重入攻击。

通过分析可以发现?_index?就是传入的USDC数量。

totalSupply?和?balanceOf?的增量都和?_index?是正比关系,和?stor104?是反比关系,并且这两个变量的更新发生在重入攻击之前,每次都会更新。

stor104?记录的是用户存入的USDC总量,该变量的更新发生在重入之后,那么在重入的过程中?stor104?的值是不变的,而上面的?totalSupply?是在变大,所以最后return的值也会相应的增大,从而使得攻击者通过重入攻击铸造得到比正常逻辑更多的bHOME代币。

除了该次攻击事件,BlockSecTeam还阻断了后面发生的攻击并将金额返还给了项目方。

交易hash:0xf3bd801f5a75ec8177af654374f2901b5ad928abcc0a99432fb5a20981e7bbd1

3、总结

此次攻击事件是由于项目方使用了ERC777协议但没有对回调合约的安全性进行考虑从而导致了重入攻击的发生,当项目合约有涉及资产的转移时,建议使用「检查-生效-交互」模式来保证逻辑代码的安全,当然我们也可以使用OpenZeppelin官方提供的ReentrancyGuard修饰器来防止重入攻击的发生。

标签:USDUSDCSDCBHOUSDXusdc币圈最新消息sdc币交易BHOT

Coinw热门资讯
巴基斯坦央行行长:评估风险是政策制定者的工作,尤其是在使用加密货币方面

据Bitcoin.com3月9日消息,巴基斯坦国家银行行长RezaBaqir在第13届卡拉奇文学节的小组讨论中谈到了加密货币。Baqir断言加密缺乏良好的用例。他表示,“当我们现在查看加密货币提供的价值主张时,提出的用例只是交易所.

1900/1/1 0:00:00
唯客正式上架App Store/Google Play双平台

尊敬的WEEX用户您好!唯客现已正式上架AppStore/GooglePlay双平台:安卓GooglePlay商店下载点:https://play.google.com/store/apps/details?id=com.wake.

1900/1/1 0:00:00
法幣兌U限時福利第二彈,兌換享高額返利!

親愛的AAX用戶: AAX現推出新一期法幣兌U限時福利,最高可享60%的點差返利!您將以更優惠的價格兌換USDT,詳情如下活動時間:2022年3月10日--2022年3月31日活動期間內,用戶首次通過法幣HKD,RUB.

1900/1/1 0:00:00
星球日报 | Ripple预计将在今年11月18日之前结束SEC诉讼案;币安宣布推出支付技术公司Bifinity(3月8日)

头条 币安宣布推出支付技术公司Bifinity,作为其官方法币-加密货币支付提供商据官方消息,币安周一宣布推出支付技术公司Bifinity。Bifinity将成为币安和其他区块链平台的官方法定货币-加密货币支付提供商.

1900/1/1 0:00:00
關於SOL/USDT、LUNA/USDT、ATOM/USDT永續合約上線的公告

尊敬的用戶: 為了向全球用戶提供更多優質的合約產品交易選擇,經過專業篩選多環境測試,PandaFe猫熊於2022年3月10日正式上線SOL/USDT、LUNA/USDT、ATOM/USDT永續合約交易對.

1900/1/1 0:00:00
一文盘点2022年值得关注的9个Web3社交项目

原文作者:J0y 原文来源:Web3Curator 原文编译:DeFi之道 GM! 本期主题是Web3social。我们将探讨当前的Web3社交领域,包括协议、Web3社交网络和NFT社交媒体.

1900/1/1 0:00:00