比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads

從技術角度解析:為什么通縮機制的代幣易受攻擊_TOT

Author:

Time:1900/1/1 0:00:00

概述

在區塊鏈上具有通縮機制的代幣最近經常受到攻擊。本文將討論并分析通縮機制代幣受到攻擊的原因,并給出相應的防御方案。

在代幣中實現通縮機制通常有兩種方式,一種是燃燒機制,另一種是反射機制。下面我們將分析這兩種實現方式以及可能存在的問題。

燃燒機制

通常,具有燃燒機制的代幣將在其_transfer函數中實現燃燒的邏輯。有時候會存在發送者承擔手續費的情況。在這種情況下,接收方收到的代幣數量不會發生變化,但發送方需要支付更多代幣,因為其需要承擔手續費。下面是一個簡單的例子:

然后我們討論這種情況下可能存在的風險。

工信部電子五所相里朋:從技術角度看 區塊鏈監管需從三個方面實現:工信部電子第五研究所區塊鏈創新團隊負責人、高級工程師相里朋表示,關于區塊鏈的有效監管,應形成區塊鏈系統柔性監管平臺,實現對各類區塊鏈系統的實時態勢感知,監控非法交易、欺詐行為、非法信息發布等各類非法行為。從技術角度看,區塊鏈監管需從以下三個方面實現:一是整合鏈上鏈下數據,以及不同區塊鏈系統的數據,形成統一的綜合性區塊鏈信息庫,并實現高效智能的信息檢索查詢管理;二是實現對區塊鏈系統中各種交易模式的識別,進一步分析識別出非法的交易行為;三是分析區塊鏈鏈上數據中的非法輿情信息,以及鏈下的互聯網和現實中的區塊鏈相關輿情信息,實現全面的區塊鏈輿情感知。(證券日報)[2021/3/26 19:19:11]

如果單看代幣合約,我們會發現這種寫法其實沒有什么問題,但是區塊鏈中有很多復雜的情況,需要我們考慮很多方面。

IBM區塊鏈總經理:區塊鏈正在從技術演變為真正的業務工具:10月3日消息,IBM區塊鏈總經理Alistair Lenny在接受采訪時表示,區塊鏈越來越適合企業架構,因為它允許公司與其他公司數字化其業務流程。這意味著區塊鏈正在從技術演變為真正的業務工具,這表明采用可能將會非常迅速。(JP.Cointelegraph)[2020/10/3]

通常,為了讓代幣有價格,項目方會在Uniswap、Pancakeswap等去中心化交易所為代幣添加流動性。

其中,在Uniswap中,有一個函數skim,它會將流動性池中兩種代幣的余額和儲備金的差值轉移給調用方,以平衡余額和儲備金:

分析師:從技術上講比特幣可能需要數月才能修復:Fundstrat Global Advisors LLC的技術策略師Rob Sluymer表示,比特幣已經跌破了2015年至2020年的上升趨勢,其價格走勢“嚴重受損”。就目前而言,從技術上講,比特幣可能需要數月才能修復。(彭博社)[2020/3/20]

此時發送方變成了流動性池,當調用_transfer時,流動性池中的代幣將被部分銷毀,導致代幣價格部分上漲。

攻擊者利用此特性將代幣直接轉入流動性池中,然后調用skim函數轉出,然后多次重復此操作,導致流動性池中大量代幣被燃燒,價格也隨之飆升,最后賣出代幣獲利。

現場丨胡繼曄:規范區塊鏈發展可從技術標準,行業準入和投資者管理三方面入手:金色財經現場報道,12月28日,在由中國信息通信研究院和人民政協報文化傳媒有限責任公司主辦的“區塊鏈技術應用與發展主題座談會”上,中國政法大學法和經濟研究中心教授胡繼曄針對區塊鏈監管提出了三點看法:第一,區塊鏈技術領域應提高準入門檻,應像諸如土木工程領域一樣,設立相關資格證書;第二,區塊鏈天然具備金融基因,故做區塊鏈金融應該具備相關資質牌照;第三,區塊鏈領域投資者在參與區塊鏈領域前通過如股票期貨領域的“投資者適當性管理辦法”之后,再參與相關投資。[2019/12/28]

一個真實的攻擊案例,winnerdoge(WDOGE):

在WDOGE合約的_transfer函數中,當block.timestamp>closingTime時,進入else循環。在代碼第21行中,轉賬金額從發送方的余額中扣除,在代碼第31行中,發送方又被燃燒了tokensToBurn數量的代幣。攻擊者利用這種手續費的機制,通過上述的攻擊方式竊取流動性池中的所有價值代幣(WBNB)。

反射機制

在反射機制中,用戶每次交易都會收取手續費,用于獎勵持有代幣的用戶,但不會觸發轉賬,只是單純修改一個系數。

在這個機制中,用戶有兩種類型的代幣數量,tAmount和rAmount。tAmount為實際代幣數量,rAmount為反映后的代幣數量,比率為tTotal/rTotal,一般的代碼實現如下:

反射機制的代幣中一般有一個叫做deliver的函數,會銷毀調用者的代幣,降低rTotal的值,所以比率會增加,其他用戶反射后的代幣數量也會增加:

攻擊者注意到這個函數,并用它來攻擊相應的Uniswap的流動性池。

那他該如何進行利用呢?同樣從Uniswap的skim函數開始:

Uniswap中reserve是儲備金,與token.balanceOf(address(this))不同。

攻擊者先調用deliver函數銷毀自己的代幣,導致rTotal的值減少,比率隨之增加,所以反射后的代幣的值也會增加,token.balanceOf(address(this))也會相應變大,與reserve的值出現了差距。

因此,攻擊者可以通過調用skim函數轉出數量為兩者之間差值的代幣從而進行獲利。

一個真實的攻擊案例,BEVONFTArtToken(BEVO):

而當代幣合約中存在burn函數時,存在了另外一種相似的攻擊手法:

當用戶調用burn函數時,自己的代幣會被銷毀,同時tTotal的值會減少,所以比率會降低,對應的反射后的代幣數量也會減少,所以在此時流動性池的代幣的數量也會減少,從而代幣的價格會上漲。

攻擊者利用這個特性通過多次調用burn函數來減少tTotal的值,然后調用流動性池的sync函數同步reserve和balances。最后,流動性池中的代幣大幅減少,價格飆升。然后攻擊者出售代幣以獲取利潤。

一個真實的攻擊案例,SheepToken(SHEEP):

防御方案

通過解讀針對燃燒機制和反射機制代幣的攻擊手法,不難發現攻擊者攻擊的核心點是操縱流動性池的價格,因此將流動性池的地址加入白名單,不涉及代幣的銷毀,不參與代幣的反射機制,可以避免此類攻擊。

總結

本文分析了通縮機制代幣的兩種實現機制以及針對這兩種機制的攻擊手段,最后給出了相應的解決方案。在編寫合約時,項目方必須考慮代幣與去中心化交易所結合的情況,以避免此類攻擊。

Tags:區塊鏈SWAPTOTTAL區塊鏈工程專業學什么課程比較好Tacoswaptot幣交易所MetaLaunchPad

比特幣價格
Balancer:約 1190 萬美元資金受 Euler 攻擊事件影響,其他流動性池安全_BEU

ForesightNews消息,去中心化交易協議Balancer?發推表示,在EulerFinance攻擊事件中,約1190萬美元從bbeUSD流動性池中被發送給Eule.

1900/1/1 0:00:00
透過最新上線的zkRouter,看Multichain理想中的跨鏈未來_TER

2月22日,跨鏈路由協議Multichain宣布已在測試網上推出了基于零知識證明的跨鏈基礎設施zkRouter,并實現了從以太坊到Fantom的測試網跨鏈轉賬.

1900/1/1 0:00:00
VCS全球首發上線,三重空投豪禮狂撒16,000枚VCS_COIN

尊敬的用戶:為慶祝VCS成功上線,VCS將舉辦“上線好禮,領取VCS”三重福利活動,參與可獲得VCS獎勵.

1900/1/1 0:00:00
隨著LUNC飆升10%,下一個目標在哪里?_RAL

在以披露對倒閉的美國銀行的敞口為特征的多事事件之后,加密貨幣多頭開始進攻。由于投資者對圍繞硅谷銀行(SVB)和紐約簽名銀行的混亂事件做出反應,TerraLunaClassic價格在周末大幅上漲.

1900/1/1 0:00:00
歐易關于 USDC/USD 和 USDC/USDT 指數規則調整的公告_USDT

尊敬的歐易用戶: 為進一步提升杠桿、交割、永續各業務線的市場流動性和指數穩定性,防范市場風險,歐易計劃于2023年3月12日15:30-16:00(UTC8)調整USDC/USD和USDC/US.

1900/1/1 0:00:00
USDC 會進入死亡螺旋嗎?_CLE

USDC價格出現脫錨,Binance、Coinbase等宣布關閉USDC兌換服務。面臨恐慌和擠兌,USDC會進入死亡螺旋嗎?本文作者:Jack、Logicrw、FYJ,BlockBeats.

1900/1/1 0:00:00
ads