Paraluni攻击事件分析_PAR:Farming Paradise

1.前言

北京时间2022年03月13日,知道创宇区块链安全实验室监测到BSC上Paraluni项目遭到攻击,黑客获利约170万美金。知道创宇区块链安全实验室将对本次事件深入跟踪并进行分析。

2.分析

2.1基础信息

攻击者地址:0x94bc1d555e63eea23fe7fdbf937ef3f9ac5fcf8f

攻击者合约:0x4770b5cb9d51ecb7ad5b14f0d4f2cee8e5563645

攻击交易哈希:0x70f367b9420ac2654a5223cc311c7f9c361736a39fd4e7dff9ed1b85bab7ad54

ParaSpace创始人:将为本次夺权事件中的忠实用户发放奖励:5月24日消息,ParaSpace创始人Yubo在社交媒体上发文暗示ParaSpace将为此前两位顾问夺权事件中的忠实用户发放相关奖励。该推文表示,对于那些在混乱中留下来的人,很快就会有适合你的东西,同时配有ParaSpace标记礼物图示。[2023/5/24 15:22:43]

Masterchef合约:0xa386f30853a7eb7e6a25ec8389337a5c6973421d

UBT代币合约:0xca2ca459ec6e4f58ad88aeb7285d2e41747b9134

Fractional更名为Tesser并完成2000万美元A轮融资,Paradigm领投:金色财经报道,NFT碎片化协议Fractional宣布已更名为Tesser,并完成2000万美元A轮融资,Paradigm领投,Uniswap Labs Ventures、Focus Labs、eGirl Capital、Yunt Capital等参投。

随着V2协议的即将推出,新改名的Tessera将为用户提供一个NFT,代表他们购买的更有价值的NFT的所有权份额。

Tessera计划在10月左右推出更广泛的协议之前,开始推出其v2平台,重点是以太坊NFT项目Nonnons。Tessera还将探索潜在的第二层扩展解决方案,以降低交易费用。(Decrypt)[2022/8/18 12:32:17]

UGT代币合约:0xbc5db89ce5ab8035a71c6cd1cd0f0721ad28b508

知情人士:BSN计划8月份在海外推出开源国际版本“BSN Spartan Network”:5月23日消息,区块链服务网络(BSN)正在计划其首次重大国际扩张,将在8月份在海外推出一个名为“BSN Spartan Network”的开源国际版本。BSN创始成员Red Date Technology的首席执行官表示,Spartan网络最终将由6个不使用加密货币的公共区块链组成,其中一个将是8月份项目启动时的以太坊非加密版本,对应费用将以美元而不是ETH进行支付。(CNBC)[2022/5/23 3:35:14]

2.2项目背景

Paraluni项目是新加坡ParallelUniverse基金会发布的一个基于币安智能链的匿名项目,用户可以通过与masterChef合约交互进行质押代币获取流动性收益。

Nuri获得1070万美元融资,Coparion、DIPcapital参投:6月30日消息,加密友好型银行Nuri获得900万欧元(1070万美元)融资,Coparion、DIPcapital参投。

Nuri是一家创立于2015年位于德国的银行,旨为用户提供传统银行业务的同时支持便捷的加密货币交易。用户可使用账户资产在移动端App直接地交易法币与加密货币。[2021/6/30 0:17:12]

2.3攻击流程

为了使得攻击流程更加清晰,我们将本次攻击分为两个阶段进行分析。

USDT和BUSD向对应的ParaPair添加流动性,获得155,935枚ParaluniLP代币到UBT合约中。此时获取的Lp代币为后续的攻击提供重要支持。

核心攻击阶段

1.调用MasterChef合约中的depositByAddLiquidity函数,传入参数为_pid:18,_token:,_amounts:,表示向18号池子添加1个UGT和1个UBT的流动性。?

2.然后内部调用depositByAddLiquidityInternal函数,该函数的主要作用是调用addLiquidityInternal函数去铸造LP代币,然后调用_deposit函数存入LP代币到用户地址。但是函数并未校验用户传入的_tokens和池子编号为_pid的tokens是否匹配,这就造成攻击者能够利用自己创建部署的恶意代币进行后面重要操作。

3.depositByAddLiquidityInternal再内部调用addLiquidityInternal函数,该函数通过合约中LP代币余额变化计算出需要deposit的数量。

4.其中当addLiquidityInternal函数调用到paraRouter.addLiquidity时,会调用攻击者在预攻击阶段部署的UBT代币合约中的transferFrom函数完成添加流动性操作。

但该恶意合约改写transferFrom后会调用MasterChef的deposit()函数将预攻击阶段第三步获取的LP代币转入masterChef中,此时的masterChef中LP余额已经变化,然后会调用_deposit函数存入LP代币到用户地址,此时获取第一份LP代币。

然后加上恶意合约的transferFrom调用deposit()时也会调用_deposit函数存入LP代币到用户地址,就相当于获取了两份LP代币。

5.攻击者分别调用UBT合约中的withdrawAsset函数和利用攻击合约调用Mastechef合约中的withdraw函数提取两份相同的LP到攻击合约中;

6.最后移除流动性获取31万枚BSC-USD和31万枚BUSD,然后归还闪电贷完成攻击。

3.漏洞核心

本次的攻击主要是MasterCheif合约中的depositByAddLiquidity函数并未校验用户传入的_tokens和池子编号为_pid的tokens是否一致,且外部调用时并未考虑到重入问题添加重入锁,最终导致攻击者能够传入外部恶意代币合约进行重入攻击。

4.总结

知道创宇区块链安全实验室在此提醒,任何有关deposit等操作都需要慎重考虑,合约审计、风控措施、应急计划等都有必要切实落实。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

水星链

UNIAltrucoin? (ALTRU)_ALT:FGPT

一、项目简介? Altrucoin是一种去中心化金融代币,旨在将去中心defi借贷、代币返还、慈善捐赠和去中心化治理结合起来.

[0:0ms0-1:298ms