8月4日,链必安-区块链安全态势感知平台(Beosin-Eagle Eye)舆情监测显示,跨链收益率提升平台Popsicle Finance下Sorbetto Fragola产品遭到攻击,导致了约2070万美元的损失,攻击者共获利2.6K WETH,5.4M USDC,5M USDT,160K DAI,10K UNI,和96 WBTC。
攻击如何发生 Event overview
首先,跟我们了解一下Popsicle Finance是什么?
这是一个很有意思的项目,主要做跨链流动性挖矿。在DeFi 大热的时候,大家都在找流动性挖矿的机会,希望让自己的资产收益最大化。但因以太坊主网 gas 费用居高不下,给了二层、侧链、其他区块链迅速发展壮大的机会。在多链时代下,Popsicle Finance就在这样的背景下诞生了。
慢雾:7月3日至7月7日期间?Web3生态因安全问题损失近1.3亿美元:7月10日消息,慢雾发推称,自7月3日至7月7日,Web3生态因安全问题遭遇攻击损失128,419,000美元,包括Encryption AI、AzukiDao、NFT Trader、MIKE&SID、Bryan Pellegrino、Aptos Foundation、Multichain、CivFund。其中,Multichain被攻击损失1.26亿美元。[2023/7/10 10:12:36]
在遭到黑客攻击后,Popsicle Finance团队成员立即发推表示,目前仅有 Sorbetto Fragola 一款产品受到影响。团队将在几周内修复漏洞并对用户损失进行赔偿。
攻击者如何得手 Event overview
数据:比利时投资者因加密和外汇损失近1200万美元:比利时金融服务和市场管理局(FSMA)报告显示,2019年5月至2020年9月期间,比利时投资者因欺诈平台(包括处理加密货币的平台)损失超1000万欧元(约合1180万美元)的资金。FSMA报告称,这些平台利用社交媒体上的虚假广告受害者,这些广告上有名人的照片,引导他们向其提供信息。“这些平台经常使用非常激进的方法,试图说服你投入更多资金。他们还会试图说服你让他们远程控制你的电脑,以便能够进行某些支付。”(Cointelegraph)[2020/10/12]
攻击者地址:
0xf9E3D08196F76f5078882d98941b71C0884BEa52
攻击合约:
A:
0xdfb6fab7f4bc9512d5620e679e90d1c91c4eade6
B:
数据:BitMex不到一个月损失近40%比特币:自从黑色星期四以来,BitMex用户一直在大量的从交易所中提取比特币。3月13日,BitMex持有306,814比特币(BTC),到4月9日,这一数字已降至222,025,这意味着比特币持有量减少了38%。尽管这与最近交易者普遍将比特币从集中交易中转移出去的趋势吻合,但就BitMex而言,这种下降更为明显。(Cointelegraph)[2020/4/13]
0x576Cf5f8BA98E1643A2c93103881D8356C3550cF
C:
0xd282f740Bb0FF5d9e0A861dF024fcBd3c0bD0dc8
攻击交易:
0xcd7dae143a4c0223349c16237ce4cd7696b1638d116a72755231ede872ab70fc
攻击者使用相同的攻击方式获利了多种代币,以下以USDT为例分析:
动态 | 今日 EOS DApp 总损失近 30 万EOS 是目前丢失数量最多的安全事件:据 IMEOS 报道,今日众多 EOS DApp 遭遇回滚攻击,BetDice 损失 20 万 EOS, EOS Max 损失超 5 万 EOS,ToBet 损失 22000 EOS,Big.game 损失 8000 EOS。[2018/12/19]
Round 1
攻击者使用合约A通过闪电贷获取USDT和ETH。
Round 2
通过合约A调用SorbettoFragola的deposit函数获取凭证代币PLP。
分析 | 报告:自2011年至2018年7月全球因区块链安全事件造成损失近30亿美元:据BCSEC统计数据显示,自2011年至2018年7月,全球因区块链安全事件造成损失近30亿美元。[2018/9/17]
Round 3
将PLP发送给合约B并执行SorbettoFragola的collectFee函数,这时输入的amount均为0,更新合约B的奖励参数。之后将PLP发送到合约C,进行同样的操作。合约C完成操作后将PLP发送回合约A。
因为合约B、C持币,所以会计算更新其奖励(不随代币转移清空),更新后的数值如下图所示:
Round 4
合约A执行SorbettoFragola的withdraw函数,销毁PLP代币。取出本金后更新相关参数为最新。
Round 5
接着合约B与合约C再度执行collectfee函数。
输入的amount为上面更新后的数值tokenReward。
这时因为满足此处条件,所以会到pool地址(UNIV3的对应交易对地址)去移除流动性,并将代币发送给合约B、C。
Round 6
合约C再次调用collectfee函数获利。
此时amount如下图所示:
最后,满足调用pay函数的条件,通过pay函数向合约C发送代币。
事件复盘
我们需要注意什么 Case Review
Popsicle Finance最初管理的是跨链流动性,于6月26日推出Sorbetto Fragola 以管理Uniswap v3流动性。
项目方应该也没有预料到,黑客会在今日进行攻击,导致了约2070万美元的损失。可见,安全预判是多么重要。
注意
成都链安在此建议,对于项目方而言,在PLP转移时,应该重新计算并更新PLP发送方与接收方的奖励值,避免奖励重复发放。此外,项目的逻辑缺陷一定要得到重视。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。