损失850万美金!Platypus Finance 攻击事件分析

区块链安全 2年前 (2023) admin
375 0 0

损失850万美金!Platypus Finance 攻击事件分析

Numen实验室根据链上监控显示, Feb-16-2023 07:16:54 PM +UTC,Avalanche上的 Platypus Finance 项目遭到闪电贷攻击,因为MasterPlatypusV4合约中的emergencyWithdraw函数存在逻辑问题,共计损失850W美金。当前被盗资金还在黑客合约地址中。 

黑客地址:https://snowtrace.io/address/0xeff003d64046a6f521ba31f39405cb720e953958

黑客合约地址:https://snowtrace.io/address/0x67afdd6489d40a01dae65f709367e1b1d18a5322

攻击交易:https://snowtrace.io/tx/0x1266a937c2ccd970e5d7929021eed3ec593a95c68a99b4920c2efa226679b430 

攻击分析: 

攻击者先从Aave通过闪电贷借了4400W个USDC,并且将借来的USDC调用 Pool合约的deposit函数进行了质押,质押后获得44000100592104个lp。 

损失850万美金!Platypus Finance 攻击事件分析

攻击者将获得的lp通调用MasterPlatypusV4的deposit又进行了质押,然后又通过 PlatypusTreasure合约的borrow函数进行借贷, PlatypusTreasure 的借贷额度最高为质押的95%,借出了41794533641783253909672000个USP。 

损失850万美金!Platypus Finance 攻击事件分析

黑客借贷完成后调用 MasterPlatypusV4的 emergencyWithdraw函数将抵押的lp提走,因为代码中借贷的额度没有超过最高限制, isSolvent 函数返回为true,黑客便可以将抵押提取。

损失850万美金!Platypus Finance 攻击事件分析

损失850万美金!Platypus Finance 攻击事件分析

黑客的资金当前还留在自己的攻击合约中,目前没有进行转移

损失850万美金!Platypus Finance 攻击事件分析

核心漏洞: 

Proxy:https://snowtrace.io/address/0xff6934aac9c94e1c39358d4fdcf70aeca77d0ab0 

MasterPlatypusV4: https://snowtrace.io/address/0xc007f27b757a782c833c568f5851ae1dfe0e6ec7 

漏洞主要是 emergencyWithdraw 函数,用户在紧急提取时,并没有对用户偿还借贷的状态做判断,导致黑客可以直接提取抵押。 

损失850万美金!Platypus Finance 攻击事件分析

POC复现: 

Link:https://github.com/numencyber/SmartContractHack_PoC/tree/main/PlatypusDefiHack

复现结果: 

损失850万美金!Platypus Finance 攻击事件分析

总结: 

NUMEN实验室提醒项目方,合约在进行抵押和借贷时,要对借贷的偿还状态以及借贷金额做严格的检查。合约上线前进行多家安全审计,保障合约风险尽可能被消除在链下,NUMEN专注于为web3生态安全保驾护航。 

损失850万美金!Platypus Finance 攻击事件分析

Numen 官网
https://numencyber.com/ 
GitHub
https://github.com/NumenCyber
Twitter
https://twitter.com/@numencyber
Medium
https://medium.com/@numencyberlabs
LinkedIn
https://www.linkedin.com/company/numencyber/

原文始发于微信公众号(Numen Cyber Labs):损失850万美金!Platypus Finance 攻击事件分析

版权声明:admin 发表于 2023年2月17日 下午2:29。
转载请注明:损失850万美金!Platypus Finance 攻击事件分析 | CTF导航

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...