返回博客

并非所有代币都是好的:Paraluni 攻击快速分析

Code Auditing
2022年3月13日
阅读约 3 分钟

Paraluni项目于3月13日上午(UTC+8时间)遭到攻击。攻击者利用了两个漏洞攻击了该协议。第一个漏洞是未对传入的代币进行验证,第二个是传统的重入漏洞。攻击者发起了一系列攻击交易。接下来,我们将使用其中一笔交易 0xf2bba649019ce40a67f0fb74e5e800257d359d9094b6ba6faea14ffa4d3446b1 来说明整个攻击过程。

第一步:向paraRouter添加liquidity

攻击者调用了BTCB-WBNB池(索引=9)的addLiquidity,该池会将lp代币铸造给UBT(攻击者创建的代币)。在此操作之后,UBT代币持有该池的lp代币。请注意,BTCB和WBNB是从闪电贷借来的。

第二步:调用MasterChefdepositByAddLiquidity 攻击者调用了depositByAddLiquidity,将_pid设置为9,并将UGT和UBT代币作为参数。然而,该函数并未检查池子的储备代币是否与传入的代币(UGT和UBT)相等。

然后,该函数调用depositByAddLiquidityInternal,后者又调用了paraRouter的addLiquidity。该函数将调用UGT和UBT代币的transferFrom函数。然而,这两个代币由攻击者控制。在UBT的transferFrom函数中,攻击者调用了MasterChef合约的deposit函数,将第一步获得的LP代币存入MasterChef合约。

不幸的是,由于deposit函数中的余额变化,addLiquidity后的newBalance远大于oldBalance。通过这种方式,攻击者在MasterChef合约中获得了双倍的信用。

第三步:获利

攻击者最终调用了UBT.withdrawAssetMasterChef.withdraw来赎回lptoken以获取BTCB和WBNB。由于流动性的数量超出了攻击者应有的份额,因此攻击者将获得利润。

教训

除了重入问题之外,传入代币未经验证也是根本原因之一。我们已经在Visor案例Coin98案例中看到了类似问题的其他案例。

关于BlockSec

BlockSec是一家领先的区块链安全公司,由一群全球知名的安全专家于2021年创立。公司致力于提高新兴Web3世界的安全性和可用性,以促进其大规模采用。为此,BlockSec提供智能合约和EVM链安全审计服务,用于安全开发和主动拦截威胁的Phalcon平台,用于资金追踪和调查的MetaSleuth平台,以及供Web3构建者在加密世界中高效冲浪的MetaSuites扩展。

迄今为止,该公司已为MetaMask、Uniswap Foundation、Compound、Forta和PancakeSwap等300多家知名客户提供服务,并在两轮融资中获得了来自Matrix Partners、Vitalbridge Capital和Fenbushi Capital等杰出投资者的数千万美元。

官方网站:https://blocksec.com/

官方Twitter账号:https://twitter.com/BlockSecTeam

订阅最新动态
约940万美元损失:Injective、Aquifer遭利用攻击 | BlockSec Weekly
Security Insights

约940万美元损失:Injective、Aquifer遭利用攻击 | BlockSec Weekly

过去一周(2026/08/31-2026/09/06),Injective、Solana、Ethereum和Flow EVM上发生四起安全事件,损失约940万美元。最大的是Injective漏洞,保险基金标识符与二元期权市场标识符冲突,结算路径未比较其面额,损失约480万美元;Solana上的Aquifer因交换路径调用未验证的调用者提供的Token Program,损失约247万美元;Ethereum上的Notional Finance V1因未检查的uint128转换将债务估值为零,损失约173万美元。Flow EVM上的Ankr FLOW因质押入口跳过暂停保护并按过时比率铸币,损失约41万美元。

超越智能合约:Web3中的域名与DNS运营安全
Security Insights

超越智能合约:Web3中的域名与DNS运营安全

合约审计只审合约本身。我们对DefiLlama TVL前100协议背后的100个域名进行了8项基于SEAL的DNS和注册商检查,共800项检查,只有一个域名全部通过。以下是大多数项目缺失的四项关键控制措施,以及它们在用户入口处为何至关重要。

Web3攻击面:渗透测试概览

Web3攻击面:渗透测试概览

加密机构承载所有传统攻击面,并叠加资金处理链。本文提供系统的实用抽象:应用、授权与签名、区块链交互、基础设施四组件模型,说明各自职责、代表实现及继承的攻击面,并将web3特有覆盖细分为五大攻击面:生产与自动化运维、签名意图、审批与提现链、资金逻辑及链上交易与已部署合约。

Web3 最佳安全审计方

在上线之前验证设计、代码与业务逻辑,对标业内最高安全标准。

BlockSec 审计