斯巴達陷落—BSC首次閃電貸攻擊事件分析
5月2日,DeFi項目Spartan遭到黑客的閃電貸攻擊,斯巴達協(xié)議(Spartan Protocol)是一個資產(chǎn)流動性項目,旨在解決現(xiàn)有 AMM 協(xié)議以及合成資產(chǎn)所出現(xiàn)的各類問題。斯巴達協(xié)議的流動性池是此協(xié)議的核心,所有一切系統(tǒng)內(nèi)的相關應用都離不開流動性池的支持。SpartanSwap 應用了 THORCHAIN 的 AMM 算法。此算法采用流動性敏感資費(Liquidity-sensitive fee)來解決流動性冷啟動以及滑點問題。
攻擊者利用閃電貸攻擊盜取了項目3000萬美元。其盜取資產(chǎn)的交易如下:
通付盾區(qū)塊鏈安全團隊(SharkTeam)第一時間對此事件進行了攻擊分析和技術分析,并總結(jié)了安全防范手段,希望后續(xù)的區(qū)塊鏈項目可以引以為戒,共筑區(qū)塊鏈行業(yè)的安全防線。
一、事件分析
通過分析交易,該事件中,閃電貸攻擊的流程如下:
(1)攻擊者首先通過閃電貸從PancakeSwap借出1000 WBNB,交易及詳情如下:
(2)攻擊者在出現(xiàn)漏洞的 Spartan 兌換池WBNB-SPT1中,分五次將 WBNB 兌換成 SPARTAN,從而導致兌換池中產(chǎn)生巨大滑點。
交易及詳情如下:
此時攻擊者有
2536,613.206101067206978364 SPARTA和 11853.332738790033677468 WBNB。
(3)攻擊者將這些Token(持有的WBNB與SPARTA)注入WBNB-SPT1交易池中添加流動性,獲得LP憑證,由于滑點修正機制,獲得的LP數(shù)量并不是正常值。
(4)進行多次Swap操作,將WBNB兌換成SPARTA,池中WBNB增多,SPARTA減少。
(5)Swap后將持有的WBNB和SPARTA轉(zhuǎn)移給WBNB-SPT1池,進行移除流動性操作。
移除流動性時會通過池中實時的代幣數(shù)量來計算用戶的LP可獲得多少對應的代幣,由于步驟5,此時會獲得比添加流動性時更多的代幣。
(6)在移除流動性后會更新流動性池中的baseAmount與tokenAmount,由于移除流動性時沒有和添加流動性一樣存在滑點修正機制,移除流動性后兩種代幣的數(shù)量和合約記錄的代幣數(shù)量會存在一定差值。在與實際有差值的情況下,攻擊者繼續(xù)添加流動性獲得LP,然后攻擊者再次移除流動性就獲得了對應代幣。
(7)最后,攻擊者將SPARTA代幣兌換回WBNB,獲得了更多WBNB。黑客通過以上步驟,以很小的成本獲得大量的WBNB,完成閃電貸攻擊。
二、通付盾區(qū)塊鏈安全知識課堂
根據(jù)整個攻擊過程的分析,與SharkTeam之前分析過的閃電貸攻擊的常用手法相同,并已收錄在了《通付盾2021Q1智能合約安全態(tài)勢感知報告》中https://mp.weixin.qq.com/s/I3mv-eZgZg7eTcerjs1Hiw 只不過發(fā)生的平臺從以太坊轉(zhuǎn)移到了幣安智能鏈。本次通付盾區(qū)塊鏈安全知識課堂帶您復習閃電貸攻擊的常見手法與防范手段。
DeFi項目的業(yè)務邏輯設計復雜,利用閃電貸這種新型產(chǎn)品進行攻擊的DeFi事件在過去的一年里層出不窮。這些安全問題的深層次原因在于,在設計業(yè)務邏輯時,未考慮到某些關鍵性因素,如:彈性供應機制、增發(fā)機制、清算機制設計不合理、鏈上價格及其他信息可被低成本操控等,導致了惡意套利、惡意增發(fā)等問題。攻擊者通過操縱 AMM 資產(chǎn)池內(nèi)的資產(chǎn)價格或者資產(chǎn)數(shù)量使關聯(lián)協(xié)議蒙受損失,我們不妨稱之為經(jīng)濟攻擊。至今出現(xiàn)的經(jīng)濟攻擊分為“哄抬套利”和“操縱預言機”兩種手法。
哄抬套利
哄抬套利攻擊的原理與 CeFi 常見的 Pump-and-Dump 市場操縱行為或者鏈上交易容易碰到的front running攻擊本質(zhì)上并無差異,都是先想辦法借助他人的資本抬高自有資產(chǎn)的價格再高價賣出獲利。DeFi 生態(tài)中此類經(jīng)濟攻擊事件之所以能夠成功,都與至少兩個核心模塊——攻擊目標和 AMM 有關。
攻擊目標與 AMM 之間存在資產(chǎn)轉(zhuǎn)移關系,并能由用戶自主觸發(fā)相關智能合約執(zhí)行資產(chǎn)轉(zhuǎn)移。這里的攻擊目標可以是機槍池、借貸平臺、杠桿交易平臺等 DeFi 模塊。機槍池是運行著一定投資策略的智能合約,可以把它類比于一個基金,為用戶提供代理理財業(yè)務,用戶將自有資產(chǎn)存入機槍池以期獲得收益,例如 Yearn 、Harvest ;借貸平臺為出借方和貸方提供服務,賺取利息差,貸方一般要先超額抵押一部分資產(chǎn),例如 Compound 、 Aave ;杠桿交易平臺允許投資者抵押一定資產(chǎn)作為保證金進行杠桿交易,例如 bZx 。AMM 通過一個定價函數(shù)實現(xiàn)自動做市商交易,用戶可兌換資產(chǎn)或作為流動性提供商(LP)參與流動性挖礦。
除了攻擊目標和AMM兩個核心模塊,實際攻擊過程中還要考慮到資金量、手續(xù)費、智能合約在執(zhí)行交易前設置的檢查點等因素。攻擊者可通過建立優(yōu)化模型找到最優(yōu)參數(shù),預測哄抬套利收益來決定是否采取行動。這種攻擊手法的一般操作步驟如下:
哄抬套利攻擊的基礎模型(序號代表攻擊步驟,實線表示必要步驟,虛線代表或有步驟;攻擊目標的凈值計算環(huán)節(jié)和 AMM 的定價函數(shù)在設計上存在被黑客利用的風險)。
一般步驟為:
假設 AMM 資產(chǎn)池里的流動性資產(chǎn)為 X、Y,流動性代幣為 C。
第一步,準備。持有即將被哄抬的初始資產(chǎn) Y 及用于觸發(fā)攻擊目標自動執(zhí)行策略的初始資產(chǎn) A。
第二步,哄抬。將資產(chǎn) A 發(fā)送至攻擊目標的相關智能合約,獲得代幣 B (代表在機槍池、借貸平臺、杠桿交易平臺等攻擊平臺中的頭寸),并觸發(fā)智能合約向 AMM 資產(chǎn)池投入資產(chǎn) X,獲得資產(chǎn) Y 或流動性代幣 C,并抬高 AMM 資產(chǎn)池內(nèi)資產(chǎn) Y 的價格。
第三步,套利。攻擊者將步驟二中的資產(chǎn) Y 投入 AMM 資產(chǎn)池,以抬高后的價格獲得資產(chǎn) X 或流動性代幣 C。需要說明的是,第二、三步中的操作對應于 swap (X、Y 之間交換)或流動性挖礦(X 或 Y 與 C 之間交換)。對于三個及以上幣種的 AMM,這里的 X 或 Y 可視為資產(chǎn)組合。
第四步,收尾。攻擊者根據(jù)代幣 B 的最新凈值及后續(xù)交易計劃決策是否贖回資產(chǎn) D。
對于流動性充足的資產(chǎn)池,為了在 AMM 里制造可觀的價格滑點,往往需要投入很大的資金量,故攻擊者一般會從閃電貸借出初始資產(chǎn)。若閃電貸可供借貸的資產(chǎn)類別不滿足要求,攻擊者會去某些 AMM 或借貸平臺通過 swap、流動性挖礦、借貸等方式獲得;也不排除攻擊者直接去與攻擊目標關聯(lián)的 AMM 獲取。若攻擊者在第一步的準備過程中采用了閃電貸,那么在第四步就還需在同一筆攻擊交易中歸還閃電貸。
操縱預言機
操縱預言機攻擊可以認為是哄抬套利攻擊的一種對稱操作,其攻擊目標依賴 AMM 提供的信息對其內(nèi)部資產(chǎn)進行定價。
操縱預言機攻擊的基礎模型(序號代表攻擊步驟,實線表示必要步驟,虛線代表或有步驟;攻擊目標的凈值計算環(huán)節(jié)和 AMM 的定價函數(shù)在設計上存在被黑客利用的風險)。
這種情況下攻擊者雖然無法利用攻擊目標內(nèi)的資產(chǎn)去哄抬 AMM 內(nèi)某資產(chǎn)的價格,但可以考察 AMM 模塊作為預言機能否被操縱,從而哄抬攻擊目標內(nèi)的資產(chǎn)。
攻擊目標依賴 AMM 提供信息的主要目的有兩種:
(1)對抵押物進行估值;
(2)對頭寸代幣進行定價。
我們也可將其視為凈值計算,而攻擊者則專門尋找在凈值計算中與實際情況出現(xiàn)偏差的合約進行操縱。一般步驟為:
第一步,準備。獲得用于操縱 AMM 預言機的資產(chǎn) Y 及準備存入攻擊目標的資產(chǎn) A。
第二步,抵押。將資產(chǎn) A 抵押至攻擊目標,獲得代表抵押物的頭寸代幣 B,有些情況下,不發(fā)放頭寸代幣 B,只在智能合約內(nèi)部記賬。
第三步,操縱。將資產(chǎn) Y 投入 AMM 兌換資產(chǎn) X,改變 AMM 流動性池內(nèi)資產(chǎn)的比例從而改變報價,更新攻擊目標合約內(nèi)資產(chǎn) A 或頭寸代幣 B 的定價。
第四步,收尾。若為借貸業(yè)務,則通過抬高的抵押物估值借出更多資產(chǎn)并不再歸還;若為機槍池業(yè)務,則通過抬高價格后的頭寸代幣 B 贖回資產(chǎn),獲得增值收益。
三、安全建議
哄抬套利和操縱預言機攻擊模式本質(zhì)上都是對凈值計算環(huán)節(jié)的利用和操縱行為。故而在設計 DeFi 系統(tǒng)的時候,妥善處理這一環(huán)節(jié)至關重要。
(1)最根本的預防措施就是取消用戶自動觸發(fā)交易策略鏈式執(zhí)行或更新凈值的權限,從根本上阻斷攻擊者完成一整套連貫的操縱行為。
(2)安全審計:智能合約安全關系用戶的財產(chǎn)安全,至關重要!區(qū)塊鏈項目開發(fā)者應與專業(yè)的安全審計公司合作,為用戶的數(shù)字資產(chǎn)安全和項目本身安全提供保障。
(3)增加交易延遲:操縱價格預言機是一個對時間敏感的操作,因為套利者總是在觀察,并希望有機會優(yōu)化任何次優(yōu)市場。如果攻擊者想把風險降到最低,他們會希望在單筆交易中完成操縱價格預言機所需的兩筆交易,這樣就不會有套利者夾在中間。作為協(xié)議開發(fā)者,可能只需要將用戶進出系統(tǒng)之間的時間間隔增加1個區(qū)塊的延遲就可以一定程度上防范此類攻擊。
(4)時間加權平均價格(TWAP):Uniswap引入了一個TWAP預言機,供鏈上開發(fā)者使用。有文檔詳細地介紹了該預言機提供的具體安全保障。一般來說,對于長期沒有鏈上擁堵的大型資產(chǎn)池來說,TWAP預言機對預言機操縱攻擊有很強的抵抗力。不過,由于其實施的性質(zhì),在市場波動較大的時刻,它的響應速度可能不夠快,而且只適用于鏈上已經(jīng)有流動性的數(shù)字資產(chǎn)。
(5)M-of-N報告者機制:如今很多項目都在使用這種方法。Maker運行了一組由可信實體運營的喂價來源,Compound創(chuàng)建了Open Oracle,并擁有Coinbase等報告者,Chainlink聚合了Chainlink運營商的價格數(shù)據(jù),并在鏈上公開。此方法也可有效的防范操縱預言機攻擊。
四、通付盾智能合約審計(BitScan)
通付盾作為領先的區(qū)塊鏈安全服務提供商,為開發(fā)者提供智能合約審計服務。智能合約審計服務由自動化審計和人工審計構(gòu)成,滿足不同客戶需求,獨家實現(xiàn)覆蓋高級語言層、虛擬機層、區(qū)塊鏈層、業(yè)務邏輯層四個方面111項審計內(nèi)容,全面保障智能合約安全。
智能合約自動化審計在通付盾云平臺上為用戶提供智能合約進行自動化審計服務。運用符號執(zhí)行、形式化驗證等智能合約分析技術,保障智能合約安全運行。
通付盾也為客戶提供高級別的區(qū)塊鏈安全服務,區(qū)塊鏈安全專家團隊7*24小時為智能合約提供全生命周期的安全保障,服務包括:VIP安全審計服務、VIP合規(guī)審計服務、安全事故應急響應等。
免責聲明:市場有風險,選擇需謹慎!此文僅供參考,不作買賣依據(jù)。
關鍵詞:
您可能也感興趣:
今日熱點
為您推薦
8家險企股權被掛牌轉(zhuǎn)讓,為何險企股權不再被追捧?
深圳最低工資標準調(diào)整為2360元/月 失業(yè)保險金為2124元/月
遼寧實施失業(yè)保險省級統(tǒng)籌 對缺口核定等作出詳細規(guī)定
更多
- 蕪湖釋放創(chuàng)新“N次方”效應 數(shù)字賦能驅(qū)動產(chǎn)業(yè)升級
- 重慶:激發(fā)人才創(chuàng)新活力,到2025年創(chuàng)新要素活躍度顯著增強
- 西寧加快知識產(chǎn)權強市建設步伐 去年兌現(xiàn)資助資金200萬元
- 無錫錫山區(qū)全面啟動實施“雙招雙引” 引進高端創(chuàng)新資源
- 重慶巴南區(qū)落實創(chuàng)新驅(qū)動發(fā)展戰(zhàn)略 以科技創(chuàng)新引領五大產(chǎn)業(yè)集...
- 朝陽北票經(jīng)開區(qū)加快推進數(shù)字經(jīng)濟發(fā)展 推動體制機制創(chuàng)新
- 湖北省先進低碳冶金產(chǎn)業(yè)技術創(chuàng)新聯(lián)合體組建 打造五千億級產(chǎn)...
- 重慶渝北將優(yōu)化創(chuàng)新生態(tài)環(huán)境 培育打造一批引領型的科創(chuàng)載體
排行
- 春運吉途,從臺鈴開始
- 陸金所會員2.0襲來:多元化升級用戶權益,為美好生活賦能
- 嗨學網(wǎng)怎么樣?主流職業(yè)領域課程為核心 業(yè)務體系在國內(nèi)職教界
- 明星主播唐笑應邀參加首屆中國國際消費品博覽會簽約儀式 助...
- UFC冠軍張偉麗成為Hyperice(海博艾斯)全球運動員大使
- 黃河旋風:超硬材料單晶產(chǎn)品支撐行業(yè)下游產(chǎn)業(yè)發(fā)展
- 重塑IP新場景!鄭州絨言絨語走進鄂爾多斯金鼎亨深度探索
- 一家線上美妝店的反向成長之路:話梅的新零售
- 荷蘭佳貝艾特——進口羊奶粉市場的風向標,營養(yǎng)新選擇
- 滴滴出行上市,估值高達千億美金,竟因這個你沒聽過的業(yè)務!
最近更新
- “高速上違停趕報表”警示了誰?
- 離職文書的“坑”不能僅由勞動者填平
- 脫掉K-9包袱節(jié)流減員,新東方在線駛向新“東方”
- 疫情得到控制,防疫仍不可松勁
- ?青海春天一字跌停,2021年預虧超2.65億或?qū)⒈粚嵤┩耸酗L險警示
- 金地集團子公司東莞金展房地產(chǎn)因虛假材料取得商品房預售許可被罰
- 幫助中小企業(yè)紓困解難,工信部明確這些舉措!
- 非學科類培訓班寒假惡意漲價需綜合施治
- 機構(gòu):2021年126家房企參與收并購 交易金額同比增長21.3%
- 北京:買四類藥品實施新政 市場監(jiān)管進店查落實
- 營收凈利雙降,沃華醫(yī)藥用九成利潤給股東“發(fā)紅包”
- 東莞保越實業(yè)因虛假材料取得商品房預售許可被罰 其系保利、...
- 北京:保證春節(jié)群眾需求不脫銷、不斷檔
- 天津積分落戶新政:取消年度落戶數(shù)量限制
- 五糧液集團實現(xiàn)營收1400億元
- 瑞爾集團再遞表港交所:連續(xù)三年虧損 淡馬錫持股10.88% 43...
- 豐臺今天開展第二輪全員核酸篩查
- 發(fā)改委給高耗能企業(yè)定KPI:冬奧會用的神奇綠電,要引入碳交易
- 比亞迪:2021年94名員工因不廉潔、嚴重違規(guī)被查處
- 采購進口冷鏈食品需要做好個人防護
- 特斯拉反訴摩根大通 :想借馬斯克發(fā)布私有化推特獲利益
- 北京市疫情防控形勢總體可控
- 東莞中海嘉樺房地產(chǎn)因虛假材料取得商品房預售許可被罰 其系...
- 騰訊2021年近70人觸犯“高壓線”被辭退,13家企業(yè)進黑名單
- 東莞海逸豪庭項目存在違規(guī)行為東莞冠亞環(huán)崗湖商住區(qū)建造公司...
- 當心!玩雪引發(fā)的婦科危機
- 華夏幸福旗下幸?;鶚I(yè)物業(yè)與捷裎控股(廣州)就住宅、酒店等...
- 里昂上調(diào)華潤萬象生活目標價約11.7%至53.6港元
- 普通癥狀還是心梗預警?一眼識破
- 德銀上調(diào)華潤置地目標價 認為其毛利率不太可能大幅低于20%
今日要聞
- 脫掉K-9包袱節(jié)流減員,新東方在線駛向新“東方”
- ?青海春天一字跌停,2021年預虧超2.65億或?qū)⒈粚嵤┩耸酗L險警示
- 金地集團子公司東莞金展房地產(chǎn)因虛假材料取得商品房預售許可被罰
- 幫助中小企業(yè)紓困解難,工信部明確這些舉措!
- 機構(gòu):2021年126家房企參與收并購 交易金額同比增長21.3%
- 營收凈利雙降,沃華醫(yī)藥用九成利潤給股東“發(fā)紅包”
- 東莞保越實業(yè)因虛假材料取得商品房預售許可被罰 其系保利、卓越合營子公司
- 天津積分落戶新政:取消年度落戶數(shù)量限制
- 五糧液集團實現(xiàn)營收1400億元
- 瑞爾集團再遞表港交所:連續(xù)三年虧損 淡馬錫持股10.88% 43家子公司曾被處以75項行政處罰