北京時間06月29日凌晨02時03分起,最近因“借貸即挖礦”模式而備受關注DeFi 平臺 Balancer 上的 STA 和 STONK 兩個 ERC20 通縮代幣池遭到了黑客攻擊,共計損失了超50萬美元。
PeckShield 安全人員介入分析后,迅速定位到問題的本質在于,Balancer 上的通縮型代幣和其智能合約在某些特定場景不兼容,使得攻擊者可以創建價格偏差的 STA/STONK 流通池并從中獲利。
此次黑客實施攻擊共計分了四個步驟,具體而言:
1)攻擊者通過閃電貸從 dYdX 平臺借出了 104,331 個 WETH;
2)攻擊者反復執行 swapexactMountin() 調用,直至 Balancer 擁有的大部分 STA 代幣被消耗殆盡,進而開始下一步攻擊。最終 Balancer 僅僅剩余 0.000000000000000001 個 STA。
多鏈錢包XDEFI即將支持Arbitrum和Fantom:6月5日消息,多鏈錢包XDEFIWallet宣布即將支持Arbitrum和Fantom網絡,目前這兩種集成還在測試中。[2022/6/5 4:03:22]
3)攻擊者利用 STA 代幣和 Balancer 智能合約存在的不兼容性即記賬和余額的不匹配性實施攻擊,將資金池中的其他資產耗盡,最終共計獲利價值 523,616.52 美元的數字資產。
4)攻擊者 償還從 dYdX 借出的閃電貸,并卷走了攻擊所得的數字資產。
接下來的篇幅中,我們將逐步解析黑客在該筆閃電貸交易(http://oko.palkeo.com/0x013be97768b702fe8eccef1a40544d5ecb3c1961ad5f87fee4d16fdc08c78106/) 中實施的攻擊行為。
多服務跨鏈DeFi平臺Stake DAO上線AVAX質押服務:據官方消息,多服務跨鏈DeFi平臺Stake DAO已上線Avalanche。此次擴展允許用戶將他們的AVAX委托(并質押)在Stake DAO上,并立即開始賺取質押獎勵。未來,Stake DAO將新增一系列功能,包括Liquid Staking(流動性質押),這使AVAX持有者能夠交易具備流動性、多用途的衍生品,同時賺取質押獎勵。Stake DAO還將為Avalanche不斷增長的DeFi生態系統構建創新收益生成策略。(Medium)[2021/7/17 0:59:04]
(圖解黑客攻擊全流程)
第一步:閃電貸
從 dYdX 閃電貸 104,331 WETH,這部分熟悉 DeFi 借貸模式的讀者應該都比較清楚,此處不再贅述。
DeFi 概念板塊今日平均跌幅為0.39%:金色財經行情顯示,DeFi 概念板塊今日平均跌幅為0.39%。47個幣種中18個上漲,29個下跌,其中領漲幣種為:FOR(+18.32%)、MKR(+18.15%)、SUSHI(+15.62%)。領跌幣種為:AST(-13.37%)、IDEX(-11.21%)、YFV(-8.89%)。[2021/4/13 20:12:39]
第二步:清空 Balancer 的 STA 資產
攻擊者通過多次 swapExactAmountIn() 調用清空了 Balancer 的 STA 資產,為下一步實施攻擊做準備。值得一提的是,我們發現合約代碼中每次能夠兌換的資產數額其實有上限,然而狡猾的攻擊者預先計算了可兌換的 WETH 最大數額,并巧妙的讓 Balancer 只剩了 0.000000000000000001 STA。
OKEx CEO:沒人喜歡看到DeFi被利用,正采取措施減少風險:針對今日“Yearn Finance v1 yDAI vault被攻擊”事件,OKEx CEO Jay Hao剛剛發推表示:“沒有人喜歡看到DeFi被利用,所以我們正在采取措施減少風險,同時擁抱這個新的革命性的生態系統。我們需要更多的時間在整個空間為用戶提供更豐富的安全體驗。”[2021/2/5 18:59:08]
由于 Balancer 資金池(BPool)各資產間存在“動態平衡”原理,僅剩接近于 0 的 STA 會拉高 STA 的價值,使得任何人都可以用 1 STA 換到大量的其他數字資產。
第三步:攻擊獲利
經過前兩個準備步驟之后,攻擊者是時候展現真正技術了!
CoinW即將于9月5日17:00在DeFi專區上線SWRV:據官方消息,CoinW即將于9月5日17:00在DeFi專區上線SWRV,并開啟“充值送SWRV,-0.1%Maker費率“活動;據悉,SWERVE FINANCE是 Curve的一個分叉項目,總供應量33000000 SWRV,全部由持有人、流動性提供者和社區用戶擁有。[2020/9/5]
(第三步 :攻擊獲利圖示上)
承上所述,攻擊者通過 swapExactAmountIn() 函數將 0.000000000000000001 STA 發送到 BPool,以極高的價值差,立即兌換出了 30,347 個WETH,實現了獲利。而此時,BPool 的內部記賬機制 _records[STA] 在 BPool 真正收到 0.000000000000000001 STA 之前先加了 1(注:此后攻擊者會用gulp()對該數值進行重置)。
(第三步:攻擊獲利圖示下)
另外我們發現,在 swapExactAmountIn() 的底部,_pullUnderlying() 嘗試從攻擊者端收集相應消耗的 STA。然而,由于 STA 轉賬時還會燒掉 1% 的手續費,實際BPool 是收不到任何 STA 的。這樣就使得 BPool 的實際 STA 余額和內部記賬產生不匹配。
接下來是最有趣的一部分,攻擊者調用 gulp() 不斷重置 _records[STA],使得 BPool 中始終保持 0.000000000000000001 個 STA。因此攻擊者可以用極高價的 0.000000000000000001 個 STA 將流通池中的 WETH、SNX、LINK 等其他資產消耗光。
第四步:償還閃電貸
最終,如上圖所示,攻擊者償還了從閃電貸借出的104,331個 WETH。
建議
此次攻擊事件再次暴露了 DeFi 可組合性存在的兼容性風險。此前不久,Uniswap 和 Lendf.Me 兩個平臺就因和 ERC777 標準的兼容性問題,產生了非常嚴重的黑客攻擊事 件。需要警醒的是,在未來 DeFi 行業類似的黑客攻擊行為或許會屢見不鮮。
如果問該怎樣才能規避這類攻擊事件的發生呢?或許有兩個優化調整思路:1)STA/STONK 在執行 transfer() 或 transferFrom() 時,當轉賬數額不足以支付手續費時,應該直接回滾或者返回 False;2) Balancer 應該在每一次 transferFrom() 函數調用后檢查 BPool 的余額。
當然,任何安全事件事后采取措施補救都無法彌補已經產生的損失,我們相信最好的解決方案還是事前防備。DeFi 項目開發者應盡可能利用好的代碼規范,并可尋求第三方安全公司協助其在上線前進行全面的攻防測試,盡可能找出一切潛在的漏洞。最后,盡可能對 ERC20、ERC777 和其它 DeFi 項目的任何組合行為都做好周密排查。
毫無疑問,Balancer 事件的發生勢必也會對 DeFi 社區帶來影響,而且這類事情接下來發生的可能性還會很大,在此提醒廣大 DeFi 項目開發者應務必重視合約的安全問題。
經我們統計發現,Balancer 在此次攻擊事件共計損失了 523,616.52 美元的數字資產,詳情列表如下:
一切跡象表明,Uniswap V3 的腳步聲越來越近。3 月 4 日,Uniswap 創始人 Hayden Adams 在推特上向網友提問:“宣布 Uniswap v3 詳細信息時,您將首先通過.
1900/1/1 0:00:001月26日,由Yearn Finance創始人AC發起的新項目Ve(3,3)宣布即將上線,并更名為Solidly。從命名上看Ve(3,3)可以被拆解為兩部分:Ve&(3,3).
1900/1/1 0:00:002022年4月20日,NBA推出了有史以來第一組基于以太坊的NFT,共計18000個。每個在NBA季后賽中的球員對應75個NFT。后因鑄造漏洞,增發至30000個,每個球員對應125個NFT.
1900/1/1 0:00:00據bitcoin.com消息,墨西哥央行上周五在聯邦公報上發布了一份通知,詳細介紹了加密相關的金融科技機構監管規定.
1900/1/1 0:00:00vEmpire DDAO 是全球最大的去中心化元宇宙投資組織,官方的 vEmpire 協議采用了不同的策略來激勵Metaverse的代b抵押,以資助對抗中心化的斗爭.
1900/1/1 0:00:004月10日,據新華財經中國金融信息網報道,在“2019中國國際區塊鏈技術與應用大會”上,中國電子技術標準化研究院區塊鏈研究室主任李鳴透露,預計國內將于年底發布區塊鏈標準化定義.
1900/1/1 0:00:00