月亮链 月亮链
Ctrl+D收藏月亮链

USD:bHOME重入攻击事件分析-ODAILY_LEND

作者:

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

1、前言

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

2、分析

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

2.1基础信息

攻击合约:0x580cac65c2620d194371ef29eb887a7d8dcc91bf

攻击者地址:0x7c42f2a7d9ad01294ecef9be1e38272c84607593

攻击tx:0x7d2296bcb936aa5e2397ddf8ccba59f54a178c3901666b49291d880369dbcf31

Polygon聘请前Airbnb人力资源主管Bhumika Srivastava:金色财经消息,Polygon任命Airbnb的人力资源总监Bhumika Srivastava来领导其全球分布式办公的员工队伍(Cointelegraph)[2022/6/9 4:14:35]

漏洞合约:0x781ad73f140815763d9A4D4752DAf9203361D07D

2.2流程

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

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

德国公司aaurelion GMBH加入Elrond网络成为质押提供商:据官方消息,分片项目Elrond宣布德国公司aaurelion GMBH加入了Elrond网络,成为质押提供商。随着Elrond质押第三阶段即将到来,从4月5日开始,验证器节点的数量将从2169个增加到3200个,质押提供商将能够为其客户提供非托管的质押服务。目前验证者和委托者质押的eGold数量一直在950万左右,这意味着有800万eGold基数(2500 eGoldx 3200个验证者节点)可能会质押额外的eGold。据悉,aaurelion GMBH是一家德国质押提供商,从事与Elrond区块链有关的研发活动。[2021/3/20 19:03:50]

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

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

金色热搜榜:BHD居于榜首:根据金色财经排行榜数据显示,过去24小时内,BHD搜索量高居榜首。具体前五名单如下:BHD、OKB、ONT、DASH、BNB。[2020/11/3 11:33:33]

2.3细节

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

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

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

聚币JT生态之BHD折扣申购已于15:00开启:据官方消息,聚币Jubi “JT生态”之BHD折扣申购于新加坡时间6月25日15:00开启,限时24小时。持聚币Jubi平台通证JT的用户均可参与此次活动,享BHD 8折申购折扣。具体规则见聚币官网。

BHD是基于 Conditioned Proof Of Capacity 的新型加密货币,其主要创新点是采用新型的条件化容量证明共识机制,使用硬盘作为共识的参与者,让人人都能开采加密货币。[2020/6/25]

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

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

BHEX实盘正式接入合约帝 永续合约实盘大赛今日启动:今日,BHEX交易所携合约帝联合举办的永续合约实盘大赛正式启动,首日冠军收益率90.83%,获150USDT奖励。据悉,本次BHEX永续合约实盘赛共举办6天。

据悉,为方便用户实盘操作,BHEX交易所永续合约实盘帐户数据已于今日正式接入合约帝实盘API。[2020/3/2]

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修饰器来防止重入攻击的发生。

标签:USDUSDCSDCLEND泰达币USDT发行usdc币是什么币USDCYfilend

比特币交易所热门资讯
USD:USDD相关交易对全面上线P网Poloniex-ODAILY_usdc币暴雷

据最新消息,BTC/USDD、ETH/USDD、TRX/USDD、BTT/USDD、NFT/USDD、JST/USDD、WIN/USDD、SUN/USDD、TUSD/USDD、ELON/USDD.

1900/1/1 0:00:00
DOT:波卡生态周报:XCM启动,生态项目为DOT提供新的价值捕获 -ODAILY_ADO

Polkadot生态研究院出品,必属精品波卡一周观察,是我们针对波卡整个生态在上一周所发生的事情的一个梳理,同时也会以白话的形式分享一些我们对这些事件的观察.

1900/1/1 0:00:00
MIX:MixMarvel 3月月报:MixMarvel DAO Venture建立,DeHero表现强劲-ODAILY_mixin币圈

三月总结MixMarvelDAOVenture3月,MixMarvel成立了去中心化投资组织MixMarvelDAOVenture,已准备好进入专业投资和孵化高质量Web3项目和团队的阶段.

1900/1/1 0:00:00
EDO:Qredo已获得SOC2 1类合规性认证-ODAILY_COMA

伦敦,2022年3月17日—Qredo是用于数字资产托管和结算的分散式第2层基础设施,已获得服务机构控制类型1类的认证.

1900/1/1 0:00:00
NFT:JZL Capital区块链行业周报第18期-ODAILY_Ethereum Privacy Machine

本周摘要:-随着BAYCMetaverse的宣布和Moonbirds的持续升温,NFT市场继续上涨.

1900/1/1 0:00:00
比特币:从比特币极简主义到现实主义的转变-ODAILY_比特币钱包哪个最安全可靠

曾经有一段时间,所有加密货币都与比特币(BTC)进行交易。当投机者看到可靠的代币经济学或有希望的炒作时,他们会冒险进入其他代币,但比特币是他们选择的结算代币。事情变了.

1900/1/1 0:00:00