Beosin:对 Penpie 遭攻击损失约 2700 万美元资产事件的分析

根据 Beosin Alert 的监测,建立在 Pendle 上的 DeFi 协议 Penpie 遭受了黑客攻击,导致约 2700 万美元的加密资产被盗。Beosin 对本次事件进行了如下简析:

攻击者利用 market 合约中的 claimRewards 函数进行重入质押,以增加 staking 合约的余额,然后将 taking 合约中多余的代币和质押资产提取,从而获利。

具体步骤如下:

1. 攻击者首先创建一个攻击合约,并通过官方的 factory 构建相应的 market 合约。

2. 调用 staking 合约的 batchHarvestMarketRewards 函数对该 market 进行奖励更新。

3. 在更新奖励时,会回调攻击合约的 claimRewards 函数,利用此函数进行重入,将闪电贷获取的资产进行质押,导致 staking 合约的资产数量产生差异,并将多余的部分提取出来。

4. 攻击者将质押的资产提取,并归还闪电贷,以此获利。

相关推荐