被盗约2700万美元的加密资产,Penpie为何被黑客“血洗”?

链得得Опубликовано 2024-09-04Обновлено 2024-09-04

2024年09月04日,据Beosin Alert监测显示,建立在 Pendle 上的 DeFi 协议 Penpie 遭到黑客攻击,被盗取约 2700 万美元的加密资产。Beosin安全团队第一时间对事件进行了分析,结果如下。

Penpie 是一个与 Pendle Finance 集成的 DeFi 平台,专注于锁定 PENDLE 代币以获得 Pendle Finance 内的治理权和增强的收益收益。Penpie 旨在为 Pendle Finance 用户提供收益和 veTokenomics 提升服务。

事件相关信息


●攻击交易0x56e09abb35ff12271fdb38ff8a23e4d4a7396844426a94c4d3af2e8b7a0a2813●攻击者地址0xc0Eb7e6E2b94aA43BDD0c60E645fe915d5c6eb84●攻击合约0x4aF4C234B8CB6e060797e87AFB724cfb1d320Bb7●被攻击合约0x6e799758cee75dae3d84e09d40dc416ecf713652

漏洞分析


本次事件主要是攻击者利用market合约中claimRewards函数重入质押以提高staking合约余额,再将staking合约中多余的代币和质押资产提取以获利。

攻击流程

攻击准备阶段:

1. 攻击者通过攻击合约调用用Penpie协议中的Factory合约创建了新的market以及Yield,其中将SY设置为攻击合约。
0xfda0dde38fa4c5b0e13c506782527a039d3a87f93f9208c104ee569a642172d2

2.攻击者进行闪电贷了四种代币,为后续抵押资金作储备。并调用staking合约中的batchHarvestMarketRewards函数对新创建的market进行奖励更新。 

3.在batchHarvestMarketRewards函数中,对market进行奖励更新时,会调用market合约中的redeemRewards函数。并且合约记录了redeemRewards函数前后的余额变化。 

4.在market的redeemRewards函数中,会调用到SY合约中的claimReward函数。然而SY合约是攻击合约,攻击合约通过这个函数完成了对Staking合约的重入,将闪电贷的资金抵押到Staking合约,共4次。 

5.这时回到Staking,由于redeemRewards函数前后余额差明显,触发了_sendRewards函数,_sendRewards函数最后调用的_queueRewarder会将多余的代币授权给market合约并记录为奖励。

6.攻击者领取记录的奖励。 

7.攻击者将质押的资产通过withdraw函数提取,并归还闪电贷进行获利。 

Pendle随后发布攻击分析报告:发现漏洞后立即暂停合约,使1.05亿美元资产免受进一步损失。

资金追踪

截止发文时,被盗资金约2700万美元,Beosin Trace追踪发现攻击者已将被盗资金全部转换为ETH,资金先存放在0x2f2dDE668e5426463E05D795f5297dB334f61C39地址。



截止发文,Penpie攻击者地址向Tornado Cash陆续转移了2900枚ETH(价值约690万美元)。
目前,Penpie 项目方也通过链上向黑客喊话,希望与黑客进行沟通返还被盗资金,如果返还可以支付赏金。并附上了联系方式。

总结

针对本次事件,Beosin安全团队建议:1.对合约的相关函数增加防重入修饰器;2.不使用白名单对传入代币进行校验的话,最好使用统一的包装合约重新生成代币;3.项目上线前,强烈建议选择专业的安全审计公司进行全面的安全审计,规避安全风险。

链得得仅提供相关信息展示,不构成任何投资建议

Похожее

Торговля

Спот
Фьючерсы

Популярные статьи

Как купить PENDLE

Добро пожаловать на HTX.com! Мы сделали приобретение Pendle (PENDLE) простым и удобным. Следуйте нашему пошаговому руководству и отправляйтесь в свое крипто-путешествие.Шаг 1: Создайте аккаунт на HTXИспользуйте свой адрес электронной почты или номер телефона, чтобы зарегистрироваться и бесплатно создать аккаунт на HTX. Пройдите удобную регистрацию и откройте для себя весь функционал.Создать аккаунтШаг 2: Перейдите в Купить криптовалюту и выберите свой способ оплатыКредитная/Дебетовая Карта: Используйте свою карту Visa или Mastercard для мгновенной покупки Pendle (PENDLE).Баланс: Используйте средства с баланса вашего аккаунта HTX для простой торговли.Третьи Лица: Мы добавили популярные способы оплаты, такие как Google Pay и Apple Pay, для повышения удобства.P2P: Торгуйте напрямую с другими пользователями на HTX.Внебиржевая Торговля (OTC): Мы предлагаем индивидуальные услуги и конкурентоспособные обменные курсы для трейдеров.Шаг 3: Хранение Pendle (PENDLE)После приобретения вами Pendle (PENDLE) храните их в своем аккаунте на HTX. В качестве альтернативы вы можете отправить их куда-либо с помощью перевода в блокчейне или использовать для торговли с другими криптовалютами.Шаг 4: Торговля Pendle (PENDLE)С легкостью торгуйте Pendle (PENDLE) на спотовом рынке HTX. Просто зайдите в свой аккаунт, выберите торговую пару, совершайте сделки и следите за ними в режиме реального времени. Мы предлагаем удобный интерфейс как для начинающих, так и для опытных трейдеров.

828 просмотров всегоОпубликовано 2024.03.29Обновлено 2025.03.21

Как купить PENDLE

Обсуждения

Добро пожаловать в Сообщество HTX. Здесь вы сможете быть в курсе последних новостей о развитии платформы и получить доступ к профессиональной аналитической информации о рынке. Мнения пользователей о цене на PENDLE (PENDLE) представлены ниже.

活动图片