黑色星期三:Popsicle和Wault被掳走的2000多万美元

현재 언어 번역이 없어 원문을 표시합니다.
8月4日,去中心化做市商 Popsicle Finance 和收益聚合平台 Wault Finance 接连遭到攻击,分别损失 2,070 万美元和 88.8 万美元。

8月4日,去中心化做市商 Popsicle Finance 和收益聚合平台 Wault Finance 接连遭到攻击,分别损失 2,070 万美元和 88.8 万美元。

PeckShield「派盾」安全人员第一时间定位分析,发现在 Popsicle Finance 的安全事件中,攻击者创建了 3 个合约,即合约 A、B、C,并在 8 个流动池中重复调用 A.deposit()、A.transfer(B)、B.collectFees()、B.transfer(C)、C.collectFees() 进行攻击。

PeckShield「派盾」简述攻击过程:

第一步,攻击者从 Aave 中通过闪电贷借出 3,000 万 USDT、1,300 WETH、1,400 BTC, 3,000 万 USDC、3,000 万 DAI 和 200,000 UNI;

第二步,调用合约 A 的 deposit() 函数,在 USDT-WETH PLP 流动池中添加 3,000 万 USDT 和 5,460 WETH,同时获得 10.52 PLP tokens;

第三步,A 将 10.52 PLP tokens 转给 B;

第四步,调用合约 B 的 collectFees() 函数,旨在更新 tokenRewards;

第五步,B 将 10.52 PLP tokens 转给 C;

第六步,调用合约 C 的 collectFees() 函数,旨在更新 tokenRewards;

第七步,C 将 10.52 PLP tokens 转给 A,便于 A 移除流动性;

第八步,调用合约 A 的 withdraw() 函数,移除流动性,A 获得 3,000 万 USDT 和 5,460 WETH;

第九步,调用合约 B 的 collectFees() 函数,获得奖励 215 万 USDT 和 392 WETH;

第十步,调用合约 C 的 collectFees() 函数,获得奖励 215 万 USDT 和 402 WETH;

最后,攻击者重复操作二至十的步骤,归还闪电贷完成攻击。

 Peck Shield

PeckShield「派盾」安全人员第一时间定位分析,发现 Wault Finance 的攻击手段和此前损失 1,000 多万美元的 yDAI 相似,即使在 USDT-WEX 交易对的价格被操纵的情况下,stake() 函数仍可通过相关的 USDT-WEX 交易对强制将 USDT 兑换为 WEX。

PeckShield「派盾」简述攻击过程:

第一步,攻击者通过闪电贷从 WUSD-USDT 池中借出 1,683 万 WUSD,

第二步,调用 WUSDMaster 赎回 1,503 万 USDT (90%)和 1.065 亿 WEX(10%),此时 WEX 的价格为 0.015 USDT;

第三步,攻击者从 PancakeSwap 通过闪电贷借出 4,000 万 USDT,并将其中 2,300 万 USDT 兑换为 WEX,此时 WEX 的价格上升至 0.044 USDT,攻击者获得 5.179 亿 WEX;

第四步,攻击者重复调用 stake() 函数,质押 68 次 25 万 USDT(总计 1,700 万 USDT),每次质押 WUSDMaster 都会将其中 10% 的 USDT 强制兑换为 WEX,此时 WEX 的价格为 0.14 USDT;

第五步,攻击者归还 1,688 万 WUSD 闪电贷;

第六步,攻击者用 6.24 亿 WEX 兑换为 USDT, 获得 2,593 万 USDT,随后归还 4,012 万 USDT 的闪电贷;此时攻击者获利 11 万 WUSD 和 84 万 USDT,并将这些代币在 PancakeSwap 上兑换为 370 ETH,并通过 AnySwap 跨链到以太坊上。

受到安全事件的影响,WEX 短时腰斩,从 0.012 美元跌至 0.006 美元。


공유하기:

작성자: PeckShield

이 글은 PANews 입주 칼럼니스트의 관점으로, PANews의 입장을 대표하지 않으며 법적 책임을 지지 않습니다.

글 및 관점은 투자 조언을 구성하지 않습니다

이미지 출처: PeckShield. 권리 침해가 있을 경우 저자에게 삭제를 요청해 주세요.

PANews 공식 계정을 팔로우하고 함께 상승장과 하락장을 헤쳐나가세요