時間:2023-07-29|瀏覽:233
中國北京時間2023年2月17日零晨,Avalanche里的DeFi服務(wù)平臺PlatypusFinance遭受閃電貸攻擊,失竊約850萬美元。SharkTeam第一時間對事件進(jìn)行了技術(shù)指標(biāo)分析,并總結(jié)了安全防護(hù)方式,希望新項(xiàng)目能以此為戒,共同打造區(qū)塊鏈行業(yè)的安全防線。
攻擊者詳細(xì)地址:0x67AfDD6489D40a01DaE65f709367E1b1D18a5322
Avalanche攻擊交易:0x1266a937c2ccd970e5d7929021eed3ec593a95c68a99b4920c2efa226679b430
攻擊步驟:
1. 首先,攻擊者(0x67AfDD64)使用閃電貸從Aave借入了4400萬個USDC。然后,將要借入的USDC全部存入USDC池,并獲得相同數(shù)量的LP-USDC代幣。
2. 攻擊者(0x67AfDD64)將4400萬個LP-USDC代幣存入MasterPlatypusV4合約,合約詳細(xì)地址為:0xc007f27b757a782c833c568f5851ae1dfe0e6ec7。
3. 此時,PlatypusFinance服務(wù)平臺的抵押比例為4.92%,攻擊者(0x67AfDD64)抵押了4400萬個LP-USDC代幣并借入了4179.45萬個USP代幣。
4. 因?yàn)楣粽撸?x67AfDD64)借入的USP數(shù)量沒有超過平臺的額度(95%),MasterPlatypusV4合約中的emergencyWithdraw函數(shù)中的isSolvent參數(shù)始終為true。因此,攻擊者(0x67AfDD64)能夠取回抵押的LP-USDC代幣。
5. 攻擊者(0x67AfDD64)清空了流動性,成功取回了4399.99萬個LP-USDC代幣。
6. 攻擊者利用swap方式獲得了多種穩(wěn)定幣。
7. 最終,攻擊者償還了閃電貸,并獲得了約850萬美元的利潤。
系統(tǒng)漏洞原因:
(1)MasterPlatypusV4合約中的emergencyWithdraw函數(shù)中的isSolvent參數(shù)始終為true。
(2)在PlatypusTreasure(0xbcd6796177ab8071f6a9ba2c3e2e0301ee91bef5)合約中,isSolvent函數(shù)進(jìn)一步調(diào)用了內(nèi)部封裝形式的函數(shù)_isSolvent。
(3)在_isSolvent函數(shù)中,solvent的值取決于debtAmount是否小于等于_borrowLimitUSP(_user,_token)。其中,debtAmount指借款額度,_borrowLimitUSP指借款額度。因此,solvent始終為true。
截至2023年2月17日16時,攻擊者錢包中持有多種穩(wěn)定幣,金額約為850萬美元。
事情總結(jié):
此次事件的直接原因在于MasterPlatypusV4合約中的emergencyWithdraw函數(shù),在核對償還時并未考慮用戶借款債務(wù)的具體情況,而是通過檢查用戶負(fù)債是否達(dá)到借款額度。只要滿足條件,攻擊者就能獲取所有資產(chǎn)。
針對此類情況,合約開發(fā)者在研發(fā)時很可能未能充分考慮領(lǐng)域模型的安全性。為了構(gòu)建安全的智能合約,我們應(yīng)該考慮以下實(shí)際操作規(guī)定:
(1)當(dāng)調(diào)用低級別的方法時,請確保對傳入?yún)?shù)進(jìn)行檢查以處理調(diào)用失敗的可能性。
(2)在接收主要參數(shù)時,驗(yàn)證輸入數(shù)據(jù)屬性的可靠性和準(zhǔn)確性。
(3)在業(yè)務(wù)設(shè)計(jì)過程中,確保業(yè)務(wù)的精確性、完整性和投資模型的正確性。
(4)如有需要,可尋求第三方專業(yè)的財務(wù)審計(jì)團(tuán)隊(duì)提供技術(shù)協(xié)助。
SharkTeam致力于維護(hù)Web3全球的安全性。我們的精英團(tuán)隊(duì)由來自全國各地的資深安全專業(yè)人員和高級科研人員組成,熟悉區(qū)塊鏈智能合約的底層基礎(chǔ)理論,提供專業(yè)的智能合約財務(wù)審計(jì)、鏈上分析、應(yīng)急處理等服務(wù)。我們已與Polkadot、Moonbeam、polygon、OKC、HuobiGlobal、imToken、ChainIDE等區(qū)塊鏈生態(tài)系統(tǒng)的重要參與者建立了長期合作伙伴關(guān)系。
Twitter:https://twitter.com/sharkteamorg
Discord:https://discord.gg/jGH9xXCjDZ
Telegram:https://t.me/sharkteamorg
大量區(qū)塊鏈安全咨詢和分析,請點(diǎn)擊以下鏈接查詢
鏈上風(fēng)險審查:https://app.chainaegis.com
轉(zhuǎn)載:駝鳥區(qū)塊鏈