Bitget App
交易“智”变
行情交易合约跟单BOT理财Web3
SharkTeam:Hedgey Finance 被攻击事件分析

SharkTeam:Hedgey Finance 被攻击事件分析

TechFlow深潮TechFlow深潮2024/04/23 08:46
作者:TechFlow深潮
本次事件的根本原因是项目方智能合约在实现逻辑上存在代币批准漏洞。

撰文:SharkTeam

2024 年 4 月 19 日,Hedgey Finance 遭受多笔攻击交易,损失超过 200 万美元。

SharkTeam 对此事件第一时间进行了技术分析,并总结了安全防范手段,希望后续项目可以引以为戒,共筑区块链行业的安全防线。

一、攻击交易分析

Hedgey Finance 被过个攻击者发起了多次攻击,利用代币批准漏洞,盗取了 ClaimCampaigns 合约中的大量代币。

以其中涉及金额最大的一笔交易为例,涉及金额约 130 万美元:

攻击交易:0x2606d459a50ca4920722a111745c2eeced1d8a01ff25ee762e22d5d4b1595739

攻击者:0xded2b1a426e1b7d415a40bcad44e98f47181dda2

攻击合约:0xc793113f1548b97e37c409f39244ee44241bf2b3

目标合约:0xbc452fdc8f851d7c5b72e1fe74dfb63bb793d511(ClaimCampaigns)

该交易直接从 ClaimCampaigns 合约中转移走了 1,303,910.12 USDC。交易详情如下:

SharkTeam:Hedgey Finance 被攻击事件分析 image 0

实际发起攻击的交易是

0xa17fdb804728f226fcd10e78eae5247abd984e0f03301312315b89cae25aa517(简记为 0xa17f)

攻击过程如下:

SharkTeam:Hedgey Finance 被攻击事件分析 image 1

1 从 Balancer 中闪电贷 1.305M USDC。

2 调用 ClaimCampaigns 合约中的 createLockedCampaign 函数。在该函数中,攻击合约会将 1.305M USDC 存入 ClaimCampaigns 合约中,然后 laimCampaigns 合约会将转入的 1.305M USDC 批准给攻击合约使用。

3 调用 ClaimCampaigns 合约中的 cancelCampaign 函数。在该函数中,攻击合约将存入的 1.305M USDC 提取出来,但在 createLockedCampaign 函数中批准给攻击合约的 USDC 并没有取消。

4 攻击合约偿还 Balancer 的闪电贷。

在该交易中,攻击合约将保存在 ClaimCampaigns 合约中的 1.305M USDC 提取走后,ClaimCampaigns 合约批准给攻击合约的 1.305M USDC 并没有取消,因此攻击合约可以直接调用 USDC 的 transferFrom 函数再次从 ClaimCampaigns 合约中转移走 1.305M USDC。这也是交易 0xa17fdb804728f226fcd10e78eae5247abd984e0f03301312315b89cae25aa517 实现的功能。

通过以上两笔交易,攻击者从 ClaimCampaigns 合约中盗取了 1.305M USDC。

除了 USDC 外,该攻击者利用此漏洞还从 ClaimCampaigns 合约中盗取了大量的 NOBL Token,加上 USDC,总价值超过 200 万美元。

二、漏洞分析

本次事件的根本原因是项目方智能合约在实现逻辑上存在代币批准漏洞,使得攻击者可以利重复转移目标合约批准给 msg.sender 中的 Token。

智能合约 ClaimCampaigns 的 createLockedCamaign 函数会将 msg.sender 的 Token 存入到目标合约中,并将这些 Token 批准给 msg.sender。

SharkTeam:Hedgey Finance 被攻击事件分析 image 2

cancelCampaign 函数会将存入的 Token 提取出来,但却并没有取消代币的批准。

SharkTeam:Hedgey Finance 被攻击事件分析 image 3

攻击者利用此漏洞,直接调用 Token 的 transferFrom 函数从目标合约中再次转移走批准的代币。

三、安全建议

针对本次攻击事件,我们在开发过程中应遵循以下注意事项:

(1)项目在设计和开发过程中,要保持逻辑的完整性和严谨性,尤其是涉及到资产的转移过程中,在转移 Token 时保证同步代币批准的数量,避免上面转移走了 Token 但没有取消批准的情况。

(2)项目上线前,需要由第三方专业的审计公司进行智能合约审计。

0

免责声明:文章中的所有内容仅代表作者的观点,与本平台无关。用户不应以本文作为投资决策的参考。

PoolX:锁仓获得新代币空投
不要错过热门新币,且APR 高达 10%+
立即参与!

你也可能喜欢

香港的HashKey集团在主网上推出以太坊Layer 2 HashKey Chain

HashKey Group已在主网上推出其以太坊Layer 2 HashKey Chain。HashKey加入了Coinbase和Kraken等其他加密公司,使用OP Stack构建自己的Layer 2网络。

The Block2024/12/18 12:34

【首发上线】EarnM (EARNM) 将上线 Bitget,参与瓜分 5,632,000 EARNM!

我们非常高兴地宣布,EarnM (EARNM) 将上线创新区, Web3 区 和 DePin 区。详情如下: 充值开放时间:已开放 交易时间:2024年12月19日22:00(UTC+8) 提现时间:2024年12月20日22:00(UTC+8) 现货交易链接:EARNM/USDT 活动:PoolX——锁仓 ETH,获得 EARNM 空投 锁仓时间:2024年12月19日22:00至2024年12月24日22:00(UTC+8) 空投总量:5,632,000 EARNM 立即锁仓 ETH 锁仓池详情 EARNM 空投总量 5,632,000 EARNM ETH 锁仓上限 15 ETH ETH

Bitget Announcement2024/12/18 10:20

美国对朝鲜加密货币洗钱网络实施制裁

简要概述 美国财政部对为朝鲜政权筹集资金而洗钱加密货币的个人实施了制裁。朝鲜国家支持的黑客被指控是一些最大加密货币黑客事件的幕后黑手。

The Block2024/12/18 10:01

俄亥俄州议员提议立法创建国家支持的比特币储备

简要概述 俄亥俄州众议员德里克·梅林提出了一项法案,旨在在州财政中建立比特币储备。其他几位州议员也推动建立州级比特币储备,而美国当选总统唐纳德·特朗普则计划建立国家战略比特币储备。

The Block2024/12/18 10:01