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就在这样的背景下诞生了。
派盾:跨链聚合器Rubic遭黑客攻击损失近140万美元:12月25日消息,据PeckShield监测,跨链聚合器Rubic遭到黑客攻击,损失近140万美元。目前攻击者已将1100 ETH转入Tornado Cash。[2022/12/25 22:06:36]
在遭到黑客攻击后,Popsicle Finance团队成员立即发推表示,目前仅有 Sorbetto Fragola 一款产品受到影响。团队将在几周内修复漏洞并对用户损失进行赔偿。
攻击者如何得手 Event overview
攻击者地址:
0xf9E3D08196F76f5078882d98941b71C0884BEa52
攻击合约:
BBUEX交易平台跑路,损失近8万人民币:BBUEX交易平台已经跑路,损失近8万人民币。该平台在非小号上依然显示24小时有1.99亿美金的成交额。常规套路是一个模仿火币的UI,通过带单老师“手把手”进行操作,目前带单老师表示“解散”。(吴说区块链)[2021/5/8 21:37:48]
A:
0xdfb6fab7f4bc9512d5620e679e90d1c91c4eade6
B:
0x576Cf5f8BA98E1643A2c93103881D8356C3550cF
C:
0xd282f740Bb0FF5d9e0A861dF024fcBd3c0bD0dc8
攻击交易:
0xcd7dae143a4c0223349c16237ce4cd7696b1638d116a72755231ede872ab70fc
数据:比利时投资者因加密和外汇损失近1200万美元:比利时金融服务和市场管理局(FSMA)报告显示,2019年5月至2020年9月期间,比利时投资者因欺诈平台(包括处理加密货币的平台)损失超1000万欧元(约合1180万美元)的资金。FSMA报告称,这些平台利用社交媒体上的虚假广告受害者,这些广告上有名人的照片,引导他们向其提供信息。“这些平台经常使用非常激进的方法,试图说服你投入更多资金。他们还会试图说服你让他们远程控制你的电脑,以便能够进行某些支付。”(Cointelegraph)[2020/10/12]
攻击者使用相同的攻击方式获利了多种代币,以下以USDT为例分析:
Round 1
攻击者使用合约A通过闪电贷获取USDT和ETH。
以太坊用户遭Gas Price攻击,损失近40万人民币:加密社区用户反映以太坊账户疑遭遇Gas Price攻击,损失115个ETH。该用户从交易所提现115.299个ETH到以太坊账户:0x94E03C64B11e318ecAbDd823289940E54dBCaA2C,到账后被莫名其妙迅速转出到另一个账号:0xCE4f148D7812EFdC9dd2d54167eD4859C79a825f。蹊跷的是对方实际只收到6.46个以太坊,而转账的Gas费用却高达108.83个以太坊,约36万人民币。故怀疑可能遭到Gas Price攻击,查了以太坊浏览器,信息如下:
1- 转出的交易Hash:0x7cf321f641606f960a12136eb6fc0508511a0d8b8508d439045fc5a9b11df678
2- 转出交易的区块高度:10778143
3- 打包矿池:0x84a0d77c693adabe0ebc48f88b3ffff010577051(该矿池排名12位,但无矿池名字)。[2020/9/2]
Round 2
历史上的今天 | EOS DApp损失近30万EOS:1、2018年12月19日,众多EOS DApp遭遇回滚攻击,BetDice损失20万EOS,EOSMax损失超5万EOS,ToBet损失22000EOS,Big.game 损失8000EOS。
2、2017年12月19日,俄罗斯联邦储蓄银行宣布,它正在与俄罗斯联邦反垄断局(FAS)合作,通过区块链实施文件传输和存储管理。据当地消息称,此举意味着政府在区块链技术领域的首次成功尝试。[2019/12/19]
通过合约A调用SorbettoFragola的deposit函数获取凭证代币PLP。
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发送方与接收方的奖励值,避免奖励重复发放。此外,项目的逻辑缺陷一定要得到重视。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。