時間:2023-08-25|瀏覽:236
成都鏈安團(tuán)隊在接到自主獨立研發(fā)的區(qū)塊鏈安全態(tài)勢感知平臺(Beosin-EagleEye)報警后,第一時間對本次攻擊事件進(jìn)行了調(diào)查,結(jié)果發(fā)現(xiàn):
1、Akropolis確實遭到攻擊
2、攻擊合約地址為0xe2307837524db8961c4541f943598654240bd62f
3、攻擊手法為重入攻擊
4、攻擊者獲利約200萬美元
攻擊手法分析
通過對鏈上交易的分析,發(fā)現(xiàn)攻擊者進(jìn)行了兩次鑄幣,如下圖所示:
圖一 圖二
參考鏈接: https://etherscan.io/tx/0xddf8c15880a20efa0f3964207d345ff71fbb9400032b5d33b9346876bd131dc2
但據(jù)oko.palkeo.com交易調(diào)用情況顯示,攻擊者僅調(diào)用了一次deposit函數(shù),如下圖所示:
圖三
通過跟蹤函數(shù)調(diào)用,成都鏈安團(tuán)隊發(fā)現(xiàn),攻擊者在調(diào)用合約的deposit時,將token設(shè)置為自己的攻擊合約地址,在合約進(jìn)行transferFrom時,調(diào)用的是用戶指定的合約地址,如下圖所示:
圖四
通過分析代碼發(fā)現(xiàn),在調(diào)用deposit函數(shù)時,用戶可指定token參數(shù),如下圖所示:
圖五
而deposit函數(shù)調(diào)用中的depositToprotocol函數(shù),存在調(diào)用tkn地址的safeTransferFrom函數(shù)的方法,這就使得攻擊者可以通過構(gòu)造“safeTransferFrom”從而進(jìn)行重入攻擊。
圖六
事件小結(jié)
Akropolis其存儲部分使用的是Curve協(xié)議,這在當(dāng)天早些時候的攻擊中曾被利用。攻擊者從該項目的yCurve和sUSD池中取出了5萬美元的DAI,而在耗盡這些池子前,共計竊取了價值200萬美元的DAI。
在本次攻擊事件中,黑客使用重入攻擊配合dYdX閃電貸對存儲池發(fā)起了侵占。在協(xié)議中,資產(chǎn)存儲池可謂是防守重點,作為項目方,對資金池的安全預(yù)防、保護(hù)措施應(yīng)置于最優(yōu)先級別。特別是,為應(yīng)對黑客不斷變化的攻擊手段,定期全面檢查和代碼升級缺一不可。
最后,成都鏈安強烈呼吁,對于項目方而言,安全審計和定期檢測切勿忘懷;對于投資者而言,應(yīng)時刻不忘安全警戒,注意投資風(fēng)險。