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

搶先交易機器人:以太坊黑暗森林中的怪物_以太坊

Author:

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

注:原文作者是Paradigm研究合伙人DanRobinson和GeorgiosKonstantopoulos。

這是一個恐怖且真實發生的故事。

挑戰

像任何正常人一樣,我花了很多時間潛伏在UniswapDiscord的支持頻道里。

周三下午,有人問是否能夠收回意外發送到配對合約的Uniswap流動性代幣。

我最初的想法是,這些代幣將被永遠鎖定,但那天深夜,我突然意識到,如果這些代幣仍在那里,那任何人都可以去恢復它們。

當任何人調用Uniswap核心合約上的burn函數時,該合約會測量自己的流動性代幣余額并將其燒掉,將提取的代幣提供給調用者指定的地址。這是Uniswapv2預期行為的核心部分。

我找到了這個合約,這些流動性代幣仍然在那里,它們的價值大約為12000美元。

福建省政協委員:建議福建搶先布局數字資產交易市場:金色財經報道,福建兩會期間,福建省政協委員陳國平提交了題為《關于加快布局福建數字資產交易市場搶抓產業發展機遇的建議》,建議以福建大數據交易所為依托,在其原有業務版塊基礎上,提前謀劃,在全國搶先布局數字資產交易版塊,并以此為抓手推動元宇宙及數字資產相關產業鏈落戶福建。提案稱,“元宇宙”作為涵蓋算力、算法、通信、硬件、數字資產和應用場景六個層面的產業集成,已成為數字經濟新增長點。NFT和數字藏品作為數字資產的代表,是物品、藝術品的唯一數字憑證,成為體育、文化、營銷等多個領域快速進軍元宇宙的流量入口,引發全國各省市紛紛布局。[2023/1/13 11:10:24]

這意味著三件事:

有一個滴答作響的時鐘,即使沒有其他人注意到這筆免費資金,任何人都可以在任何時候移除自己的流動資金,并意外地從合約中獲得這些代幣;

我可以戴上我的白帽,試著幫失主找回他的代幣,這很簡單,我只需要調用池子的burn函數,將我自己的地址傳遞給它。

只是…我知道這不簡單。

一MEV機器人花費31.06ETH交易費進行搶先交易:11月11日消息,PeckShield在推特上表示,一 MEV 機器人花費 31.06 枚以太坊的交易費用對一筆約 2500 萬美元的交易發動「三明治攻擊」,使得打包該區塊的驗證者總共獲得了 32.09 枚以太坊(價值約 4.08 萬美元)的獎勵。[2022/11/11 12:51:52]

黑暗森林

以太坊區塊鏈是一個高度敵對的環境,這一點已經不是什么秘密。如果一個智能合約可以被用來牟利,那它最終就會被利用。黑客攻擊的頻繁發生表明,一些非常聰明的人花了大量時間來檢查合約中的漏洞。但這種無情的環境與Mempool相比顯得相形見絀。如果說區塊鏈本身就是一個戰場,那么mempool就是更糟糕的東西:一片黑暗的森林。

《黑暗森林》是我最喜歡的科幻小說,它引入了“黑暗森林”的概念,在這種環境中,探測意味著某些高級捕食者的死亡。在這種環境下,公開識別別人的位置和直接摧毀他們一樣好。(這一概念也是以太坊測試網上的

NFT指數基金NFTX發布PUNK事件報告:由搶先交易所致:官方消息,此前NFT指數基金NFTXV2發生了準備轉移至金庫的PUNK代幣被盜事件,經NFTX團隊調查,是由于攻擊者進行搶先交易,導致鑄造的兩個PUNK代幣被轉移到了攻擊者的錢包。NFTX團隊發現該情況后暫停了金庫的功能,并在攻擊者于Sushiswap出售PUNK后以6ETH購回。NFTX團隊表示,本次攻擊是由于鑄造PUNK的合約不在審計范圍內從而導致該漏洞未被發現。[2021/6/30 0:17:01]

DarkForest游戲的靈感來源。)

在以太坊Mempool中,這些頂級捕食者會采取“套利機器人”的形式。套利機器人監控等待中的交易,并試圖利用它們創造盈利機會。對于這些機器人,沒有哪個白帽比PhilDaian更了解這些機器人,他和他的同事一起撰寫了《FlashBoys2.0》論文,并創造了術語“礦工可提取價值”。

Phil曾經告訴了我一個他稱之為“廣義搶跑者”的宇宙恐怖存在。套利機器人通常在Mempool中尋找特定類型的交易,并嘗試按照預先確定的算法進行搶先交易。通用的搶跑者通過復制并用自己的地址替換來尋找任何可使搶跑獲利的交易。

由Lien開發可預防搶先交易的去中心化交易所Fairswap新版本已上線:由去中心化穩定幣協議LienFinance開發的去中心化交易所Fairswap新版本已上線,第一個支持的交易對為LIEN/USDC,初始的流動性為30萬美元。官方同時也在Uniswap中為LIEN/ETH提供了流動性,約10萬美元。FairSwap是一個為了預防搶先交易(Frontrunning)而設計的去中心化交易協議,而交易機制受Uniswap啟發,采用自動交易商(AMM)模式。[2020/11/7 11:57:19]

這就是為什么這次救援行動不會簡單的原因。任何人都可以調用這個burn函數,如果我提交了一筆調用burn函數的交易,它就像一個閃爍的“免費貨幣”標志,直接指向這個有利可圖的機會。如果這些怪物真的在mempool中,它們會看到,復制然后變異,并在我的交易被接受之前搶先完成交易。

請注意,這種環境比以太坊區塊鏈狀態本身更殘酷。這些免費的資金已經在區塊鏈上停留了大約8個小時,它們尚未被發現,等待著被任何一個調用burn函數的人從池子中提取出流動性代幣。但任何試圖撿起它的嘗試,都會在飛行過程中立即遭到阻擊。

BM評論以太坊搶先交易機器人事件:這就是以太坊不適合DeFi的原因:Paradigm研究合伙人Dan Robinson和Georgios Konstantopoulos發布文章《以太坊是黑暗森林》。根據分析,有多個機器人在掃描以太坊Mempool,尋找從其他用戶獲利的方法。有人詢問Dan是否能收回意外發送到配對合約的Uniswap流動性代幣(價值約12000美元)。他最初的想法是這些代幣將被永遠鎖定,但后來意識到,如果這些代幣仍在那里,任何人都可以去恢復。任何人調用Uniswap核心合約上的函數時,該合約會測量自己的流動性代幣余額并將其燒掉,將提取的代幣提供給調用者指定的地址。

他們實施營救行動時遭遇搶先交易機器人:get交易確實被納入,但是出現UniswapV2: INSUFFICIENT_LIQUIDITY_BURNED錯誤,意味著流動性代幣沒了。結果是其get交易進入Mempool后幾秒鐘內,就有人執行調用并掃蕩走資金。

EOS創始人BM評論稱,這就是為何以太坊不適合DeFi。EOS上不存在文章所描述的問題,因為它速度太快,無法搶先交易,而且生產者是已知的,并且可以承擔責任。以太坊上發生的事情太可怕了。(Cryptoticker)[2020/8/30]

營救行動

為了在不通知機器人的情況下提取到資金,我需要混淆這筆交易,這樣機器人就無法檢測到它對Uniswap對的調用,這將涉及編寫和部署定制合約。盡管我是一個專業的DeFi思想領袖,但我以前從未在以太坊上部署過合約。

我需要幫助,而當時已經過了午夜。幸運的是,我認識的一些最好的智能合約工程師生活在歐洲時區。我在Paradigm的同事GeorgiosKonstantopoulos同意幫助部署合約并提交交易。我們另一家投資組合公司Yield的首席工程師AlbertoCuestaCa?ada則自愿執行合約。

一些優秀的以太坊安全工程師幫助我們想出了一個混淆方案。除了將調用隱藏為內部交易外,我們還將交易分為兩部分:一筆是激活我們合約的set交易,另一筆是在合約被激活的情況下拯救資金的get交易。具體實施如下:

部署一個Getter合約,當所有者調用它時,它只在激活時發出burn調用,否則將恢復;

部署一個Setter合約,當所有者調用它時,它將激活Getter合約;

在同一個區塊中提交set交易和get交易;

圖:我們自定義智能合約的代碼

如果攻擊者只嘗試執行

get交易,它將在沒有調用

set交易的情況下恢復。我們希望在攻擊者按順序執行這兩筆交易之前,我們的交易能夠先被區塊納入。

圖:我們的救援腳本

令我們驚訝的是,即使我們手動調高了gas費用,

set交易依舊被Infura拒絕了。在幾次失敗的嘗試和重置之后,時間給了我們壓力,然后我們開始變得草率了。我們讓第二筆交易溜到了之后的一個區塊。

而這成了一個致命錯誤!

我們的get交易確實被納入了,但是出現了一個UniswapV2:INSUFFICIENT_LIQUIDITY_BURNED錯誤,這意味著流動性代幣沒了。結果是,在我們的get交易進入mempool后的幾秒鐘內,就有人執行了調用,并掃蕩走了資金。

怪物吞噬了我們。

教訓

教訓1:怪物是真實存在的!

盡管從理智上,我們知道這些搶先交易機器人普遍存在,但在你真正看到它們的行動之前,你很可能低估了它們。

我們抱著一絲僥幸,通過授權合約將救援作為內部調用,我們原本以為它能保護我們,但現實并不是。

如果你發現自己也處于這樣的情況,我們建議你聯系ScottBigelow,他是一位一直在研究該主題的安全研究人員,而他有一個更好的混淆原型實現。

教訓2:別草率

即使在時間緊迫的情況下,我們也應該堅持原計劃。如果我們花更多的時間在腳本上,調整合約(也許將

Getter合約改為什么都不做,而不是在激活前恢復調用),或者甚至同步我們自己的節點以避免使用Infura,我們可能就能將兩筆交易放入同一個區塊中。

教訓3:不要依賴一般的基礎設施

你所做的事情越奇怪,你就越難通過現有的基礎設施,比如Infura。在我們的案例中,我們試圖提交一筆基于當前區塊鏈狀態看起來會失敗的交易,Infura對此有合理的保護措施。而使用我們自己的節點可以避免這個問題。

或者,如果你碰巧認識一個大礦工,你可以讓他們直接在一個區塊中納入你要提交的交易,完全跳過mempool和怪物。

教訓4:未來只會變得更可怕

這只是發生在我們身上的搶先交易事件的一個例子,而類似的事情每天會發生很多次。今天,搶先交易者只是機器人,而明天,則可能會是礦工。

今天,礦工們并沒有抓住這些機會,把錢留在了原地,但誰也不能保證,他們將來是否會重新排序并提交自己的交易,為其自身利益服務。更糟糕的是,他們可能會重構其他礦工開采的區塊,試圖竊取他們沒有認領的MEV,從而導致區塊鏈的不穩定。

我們認為這種未來是可以避免的。Optimism有一個雄心勃勃的愿景,即如何將MEV重新定向以造福于生態系統,以作為其layer2擴展性解決方案optimisticrollup的一部分。

如果你正在思考關于MEV的事,或在這一領域建設些什么,請聯系我們!

感謝AlbertoCuestaCa?ada、ScottBigelow、PhilDaian、CharlieNoyes以及SamSun對這篇文章提供的幫助。

Tags:SWAP以太坊UniswapUNIZKSwap波場幣在以太坊發布uniswap幣不見了Kambria Yield Tuning Engine

抹茶交易所
美國SEC修訂合格投資者定義,多位加密行業知名人士表示稱贊_SEC

美國證券交易委員會最近修改的“合格投資者”定義,加密社區中的主要參與者對此做出了回應。盡管許多人給出了積極的反饋,但有人說新規定還遠遠不夠.

1900/1/1 0:00:00
昌用:BCH理性和諧分叉的建議_BCH

一生二,二生三,三生萬物。跟生物進化和市場繁榮一樣,去中心化生態的分叉是不可避免的。重大共識分歧,只有通過分叉,才能最大程度保留發展和成功的機會。然而,去中心化的密碼貨幣還沒有學會適應分叉.

1900/1/1 0:00:00
銀行熱衷拿區塊鏈專利,背后有何意圖?_加密貨幣

本文來源:北京商報 北京商報記者岳品瑜宋亦桐國有大行在區塊鏈技術布局方面動作頻頻。8月20日,北京商報記者注意到,近日工商銀行、中國銀行悄然公布了多項區塊鏈相關專利,主要涉及終端數據的升級、文檔.

1900/1/1 0:00:00
如何讓你的數字資產安全保值?你還差這個!_NODE

前段時間,在鏈節點論壇上有用戶發帖表示在某交易所的賬戶被盜,損失了價值好幾萬的USDT。 這不是第一次在交易所發生的數字資產被盜事件,也不會是最后一次.

1900/1/1 0:00:00
觀察 | 本周比特幣值得關注的5件事_比特幣

比特幣在擺脫低位觸及11700美元后,又開始了一周的看漲交易。BTC/USD上周受到美聯儲和期貨結算的影響不大,Cointelegraph對未來幾天可能影響價格走勢的5個因素進行了分析.

1900/1/1 0:00:00
DeFi盛行,熱愛BTC的老韭菜真的不行了嗎?丨2020全球區塊鏈算力大會_EFI

2020年,DeFi引發的“流動性挖礦”熱潮推動了加密貨幣市場的上漲,尤其是眾多的DeFi代幣短短幾天,甚至是幾分鐘就可以出現成倍的上漲.

1900/1/1 0:00:00
ads