2022年1月18日,我們的異常交易監測系統檢測到了針對AnySwap項目的攻擊。由于anySwapOutUnderlyingWithPermit()函數未能正確地實現相關校驗機制,導致用戶授權給該項目的token可被攻擊者取出,關于漏洞細節和相關處置詳情可參考項目方的官方說明。盡管項目方嘗試了多種方法試圖提醒受影響的用戶,仍然有很多用戶未能及時響應,攻擊者得以持續地實施攻擊獲利。
由于攻擊持續進行,為了保護潛在的受害者,BlockSec團隊決定采取應急響應措施。本次救援特別針對以太坊上受到影響的賬戶,與之關聯的項目方合約地址為0x6b7a87899490EcE95443e979cA9485CBE7E71522,我們將相關的賬戶資金轉移到我們專門設立的多簽白帽賬戶中(0xd186540FbCc460f6a3A9e705DC6d2406cBcc1C47)。為了保證行動的透明性,我們將相關行動計劃在pdf文件中做了說明,并立即將文件hash向社區公開。這樣既能夠保證將我們的行為與攻擊者行為做區分,也不會泄漏任何細節。我們的救援行動從2022年1月21日正式開始,到2022年3月11日正式結束,相關的公開聲明分別如圖2、圖3所示。
應急救援并非是一件容易達成的任務,有各種技術和非技術方面的挑戰需要克服。由于行動已經結束,我們得以重新復盤整個過程,并將相關心得與體會與社區分享。我們希望也相信這樣的分享對社區,以及DeFi生態的安全會有所幫助。簡要總結
比特幣法律辯護基金正支持核心開發者對澳本聰提起訴訟:金色財經報道,由Block(原Square)首席執行官Jack Dorsey支持的比特幣法律辯護基金(BLDF)支持核心開發人員對澳本聰(Craig Wright)提起訴訟,比特幣法律辯護基金的首席法律官Jessica Jonas表示,比特幣法律辯護基金站出來是為了捍衛自由、開源軟件的權利。(decrypt.co)[2023/4/27 14:30:03]
不同陣營的參與者對Flashbots的廣泛使用產生了激烈競爭,包括白帽和攻擊者兩個群體之間,乃至各自群體內部,向Flashbots支付的費用也隨著時間的推移迅速增長。Flashbots不是萬靈丹,并非總是有效。有些攻擊者轉而使用mempool,通過巧妙的策略安排了攻擊交易,成功實施了攻擊。某些攻擊者與項目方達成協議,歸還部分攻擊所得,保留部分攻擊所得作為獎賞,得以成功洗白。這種現象不是第一次出現,其激勵的公平性也在社區內部引起了很大的爭議和討論。從透明性考量,白帽可以在不泄露敏感信息的同時向社區公開宣告自己的行為,這樣取信于社區的方式在實踐中表現良好。社區的各方力量可以攜手合作,使得救援行動更為迅速和有效。比如可以在白帽之間開展協同,減少或避免無效競爭。以下我們將從四個方面展開。首先是對本次事件的總體性回顧,而后介紹我們實施救援的方法以及在整個過程中面臨的挑戰,接下來討論我們在本次行動中的一些心得和體會,最后提出一些想法和建議。0x1攻擊和救援情況概覽
0x1.1總體結果
在我們觀察范圍內,總體的攻擊和救援情況如表1所示,按照參與攻擊或救援的以太坊賬戶地址統計。具體來說,一個賬戶地址或者是救援賬戶,或者是攻擊賬戶,而類型是根據Etherscan.io的標簽和資金轉移地址來確定的。此外,在攻擊和救援的過程中,白帽和攻擊者均大量使用了Flashbots來發送交易,因而需要額外向礦工支付費用,我們稱之為Flashbots費用。總體而言,有9個救援賬戶保護了483.027693ETH,其中需扣除支付給Flashbots費用為295.970554ETH;有21個攻擊賬戶獲利1433.092224ETH,其中需扣除給Flashbots的費用為148.903707ETH。值得注意的是,由于存在一些復雜的交互情況,表格中列出的只是大概的統計。
1kx創始合伙人:1kx自去年第三季度以來一直以瘋狂的速度進行部署:金色財經報道,投資公司 1kx 創始合伙人 Lasse Clausen 稱,在 2021 年和 2022 年初的牛市狂熱期間處于觀望狀態后,1kx 自去年第三季度以來一直以“瘋狂”的速度進行部署。Clausen表示,我們真的很喜歡熊市,我們知道現在是非常好的投資時機。1kx的政策是持有其加密貨幣投資至少三年,鑒于該行業的快速發展,Clausen認為這是一個很好的準則。[2023/2/22 12:22:49]
0x1.2Flashbots費用的變化趨勢
如前所述,白帽們需要和攻擊者競爭發送Flashbots交易來實施救援,支付給Flashbots的費用的變化趨勢可以反映競爭的激烈程度。為了對其作定量的評估,我們按照交易區塊,對攻擊和救援交易分別統計了各自Flashbots費用的占比。圖4給出了我們觀察范圍內的占比趨勢。剛開始的一些攻擊交易的Flashbots費用為0,表示在那段時間攻擊者尚未使用Flashbots,在早期其他人對漏洞尚未有了解,因此競爭并不激烈。在高度為14029765的區塊中,出現了第一筆使用Flashbots的攻擊交易,Flashbots費用占了獲利的10%。在這之后,Flashbots費用占比隨著參與競爭者數量的增加而快速上升,比如在區塊高度14072385時Flashbots費用占比達到80%,隨后在區塊高度14129449費用占比即達到91%。簡而言之,這樣的趨勢表明這業已成為由于Flashbots上鏈權之爭而導致的費用軍備競賽。
俄羅斯央行行長:俄羅斯”準備允許\"比特幣和加密貨幣的國際貿易:金色財經報道,俄羅斯中央銀行行長稱,俄羅斯”準備允許\"比特幣和加密貨幣的國際貿易。[2023/2/11 12:00:22]
0x2我們實施的救援行動和面臨的挑戰
0x2.1我們如何開展救援行動?
救援的基本思路是簡單而直接的。具體而言,我們需要監控一批潛在的受害者賬戶,這些賬戶已將WETH授權給有問題的項目方合約使用。當有任何的WETH轉賬進入該賬戶,我們利用合約漏洞直接將其轉出至我們的白帽多簽錢包。這里的關鍵是要滿足以下三個要求:R1:有效地定位轉賬給受害者賬戶的交易,為方便敘述,以下我們將這些交易命名為轉賬交易。R2:正確地構造交易實施拯救,為方便敘述,以下我們將這些交易命名為拯救交易。R3:成功地搶跑攻擊者交易,為方便敘述,以下我們將這些交易命名為攻擊交易。R1和R2對我們而言并不構成阻礙。因為我們已經構建了一套內部系統來監控mempool,得以及時定位到轉賬交易;與此同時,我們也研發了一套工具用以自動化地構造拯救交易。然而R3仍然是一個挑戰。雖然在理論上Flashbots可被用來贏得搶跑,然而這并不是一個容易達成的目標。首先,攻擊者也可能采用Flashbots,作為一個采用費用競拍模式的系統,成功率取決于費用的高低,而費用設置的策略需要額外考量。其次,由于上述競拍模式導致的競爭存在,使用Flashbots并不總是一個好的選擇。因此,我們也使用mempool發送普通交易。為了確保成功,交易在mempool中的位置和順序是關鍵因素,其設置策略也需納入考量。最后,我們也與其它的一些“白帽”產生了競爭,而在某些情況下這些所謂“白帽”的行為其實是較為可疑的。0x2.2我們卷入的競爭
總體而言,我們嘗試保護171個獨立的潛在受害者賬戶。其中有10個通過及時撤銷了授權做了自我保護,而在余下的161個賬戶中,由于前述各類競爭的存在,我們僅成功救援了14個。我們將失敗的情況總結在下面的表格中,涉及3個救援賬戶和16個攻擊賬戶。
RENGA Black Box系列NFT近24小時交易額增幅超1000%:金色財經消息,OpenSea數據顯示,RENGA Black Box系列NFT近24小時交易額為188 ETH,24小時交易額增幅達1041%。近24小時交易額排名位列OpenSea第6。[2022/9/13 13:25:25]
從這些失敗的案例中,我們也總結了一些經驗教訓,以下將逐一與大家分享。0x3我們的經驗教訓
0x3.1如何確定Flashbots費用?
在整個救援過程中,我們先后被12個同樣利用Flashbots的競爭者擊敗,包括2個救援賬戶和10個攻擊賬戶。我們設置Flashbots費用的策略相對而言是較為保守的。具體而言,為了保護受害者的利益,我們總是傾向于盡可能較少地設置Flashbots費用。因此除非已經有成功地使用Flashbots的攻擊交易出現,我們并不會主動地使用Flashbots或增加Flashbots費用。比如一個成功的攻擊交易設置的Flashbots費用比例為10%,我們可能會在下一次救援交易中將之設置為11%。但是,結果證明這樣的策略并不太成功,攻擊者通常會采用較為激進的策略設置費用以贏得競爭,例如:圖5展示了區塊高度為14071986的一筆攻擊交易,攻擊者0x5738**將比例設置為70%。圖6展示了區塊高度為14072255的一筆攻擊交易,白帽0x14ca**將比例設置為79%。圖7展示了區塊高度為14072385的一筆攻擊交易,白帽0x14ca**將比例設置為80%。圖8展示了區塊高度為14072417的一筆攻擊交易,白帽0x9117**將比例設置為81%。圖9展示了區塊高度為14073395的一筆攻擊交易,攻擊者0x5738**將比例設置為86%。
NHL與NFT平臺Sweet將合作推出系列NFT及市場:6月23日消息,由北美冰球隊伍所組成的國家冰球聯盟(NHL)宣布與NFT平臺Sweet建立合作關系,將創建一個NFT系列及市場,NFT包括過去和現在的NHL球員。相關NFT市場將具有游戲化元素,允許粉絲彼此互動。[2022/6/23 1:27:39]
簡而言之,這似乎是一個零和游戲,可以通過建模來探索各參與方的行為模式。但在具體實踐中這是一項頗具挑戰的任務:一方面需要盡可能降低代價,另一方面要找到較優/最優的策略贏得競爭。0x3.2如何在mempool中正確地安排交易位置?
目前看起來救援成功與否依賴于Flashbots費用的軍備競賽。然而我們確實發現,由于多個參與方引發的激烈競爭的存在,使得Flashbots并非總是有效,這里的激烈競爭來自于和攻擊/救援無關的其它交易發送方,比如套利等。在這種情況下,即便某個攻擊交易所設置的最高Flashbots費用,都無法保證贏得Flashbots競爭。另一個可行的方法是使用通過mempool發送正常交易,如果交易被安排在合適的位置,也有可能實現目標。這里合適的位置指的是攻擊/救援交易位于轉賬交易之后,且非常接近轉賬交易。事實上,攻擊者0x48e9**運用這樣的策略成功的收割了312.014657ETH,且并沒有付出任何Flashbots費用的成本。以下四幅圖展示了該攻擊者獲利最高的兩次攻擊:圖10和圖11分別展示了在區塊高度14051020,受害者0x3acb**的轉賬交易位于65,而攻擊交易位于66。圖12和圖13分別展示了在區塊高度14052155,受害者0xbea9**的轉賬交易位于161,而攻擊交易位于164。
顯然,這樣巧妙的策略兼具實用性和啟發性,值得關注和學習。0x4一些其它的思考
0x4.1如何區分白帽和攻擊者?
識別白帽及其行為可能并不像一般人認為的那樣簡單直白。舉例來說,賬戶地址0xfa27被Etherscan.io標記為白帽:MultichainExploiter4(Whitehat)。然而在一開始的時候,這個地址被標記為攻擊者:MultichainExploiter4。這里的變化來自于項目方和攻擊者的互動,在若干輪協商之后,攻擊者同意保留50ETH的獲利作為獎賞,返還其它獲利:在交易0x3c3d**中,項目方聯系該攻擊者:
在交易0xd360**中,攻擊者回復:
在交易0x354f**中,項目方在受到返還的資金后表示感謝:
毫無疑問,該攻擊者通過這樣的方式不僅獲利也成功洗白了自己。這種現象不是第一次出現,其激勵的公平性也在社區內部引起了很大的爭議和討論。0x4.2白帽之間的競爭
社區有必要建立一個溝通協調機制來降低/避免白帽之間的競爭。一方面,這樣的競爭會浪費救援資源。比如在本次救援中,我們和其它三個白帽試圖同時保護54個受害者。另一方面,這樣的競爭也提高了救援成本。這些競爭會不可避免地加劇Flashbots費用比例的提高。如之前的圖7和圖8所示,不同白帽先后設置了80%和81%的Flashbots費用比例。然而可以想見的是,如果沒有相應的協調機制,白帽們是無法放棄/停止這樣的競爭的。0x4.3如何更好地開展救援行動?
一方面,從透明性考量,白帽可以在不泄露敏感信息的同時向社區公開宣告自己的行為,這樣取信于社區的方式在實踐中表現良好。與針對某個特別攻擊的阻斷任務相比,這樣的救援行動通常是拉鋸戰,白帽和攻擊者之間會在一段時間內交手多次,因此會有充足的時間做宣告。當然,在剛開始行動的時候,漏洞相關的細節信息并不需要披露,以免造成不必要的危害;在行動結束后,這些信息應該向社區充分公開。另一方面,社區的各方力量可以攜手合作,使得救援行動更為迅速和有效,包括但不限于:Flashbots/Miners向認證過且可信的白帽提供綠色通道,既可用于搶跑攻擊交易,也能避免白帽間的競爭。被攻擊的項目方負責Flashbots費用的成本。項目方采用更為方便和快捷的機制及時向用戶預警。項目方在代碼中采用一些必要的應急措施。
頭條 以太坊開發者:正在以太坊上測試PoS,并將進行首次主網影子分叉以太坊開發者MariusvanderWijden表示,目前正在以太坊上測試PoS,并將進行首次主網影子分叉.
1900/1/1 0:00:00研究機構:SeerLabs作者:Luka 前言 無論你是不是區塊鏈技術方面的專家,只要你待在Crypto的世界里夠久。以太坊擴容,layer2,Rollup這些詞語對于你來說都不會陌生.
1900/1/1 0:00:00隨著烏俄局勢漸趨冷靜、美國加息政策落地、全球疫情防控能力加強等宏觀條件變化,加密市場也從去年年底的急跌之后逐漸反彈回溫.
1900/1/1 0:00:00作者|秦曉峰編輯|郝方舟出品|Odaily星球日報 一、整體概述 以太坊核心開發者TimBeiko發布最新核心開發者會議內容.
1900/1/1 0:00:00北京時間3月29日0:30,著名加密藝術家PAK參與的NFT項目AshChapterTwo:Metamorphosis*開放鑄造,在鑄造開始后,該項目引發了Gas費飆升.
1900/1/1 0:00:00什么事情正在發生?ETH正在成為數字時代的債券。雖然我們很早之前就預測到了這樣的趨勢,但直到最近以太坊共識機制的合并,該項ETH需求才正式加入我們的認知框架.
1900/1/1 0:00:00