在2023 年10 月16 日的一封郵件中,比特幣安全研究員Antoine Riard深入探討了閃電網路通道所面臨的資金遺失風險,這些風險主要是由於交易池的問題所引發的。他特別提到了一種影響閃電網路通道的交易中繼幹擾攻擊,這在實踐中是完全可能的,即使沒有網路交易池擁塞也可能發生。 為了應對這些攻擊,多個主要的閃電網路實現在過去幾個月都已經設計、實施並部署了相應的緩解措施。 Riard 也列舉了這些主要實現的版本號:LDK: v0.0.118 - CVE-2023-40231;Eclair: v0.9.0 - CVE-2023-40232;LND: v.0.17.0-beta - CVE-2023-40233 ;Core-Lightning: v.23.08.01 - CVE-2023-40234。 Riard 強調,固定攻擊(Pinning attacks)多年來被視為實際攻擊向量,而現在,替換循環攻擊(Replace-by-Fee Cycle Attack)似乎為攻擊者提供了一種新的手段。 同時Riard 表示,自己將從現在開始停止參與閃電網路的開發,因為這種新的替換循環攻擊會將閃電網路置於非常危險的境地。 在郵件清單中有很多關於這個新發現的漏洞的討論。在講閃電替換循環攻擊如何運作之前,首先我們要先知道的是;HTLC (哈希/時間鎖定合約) 作為有條件的付款工具,從發送方到接收方創建了一個安全的支付路徑。這個路徑要么是接收方通過提供某個哈希值的原像來立即完成付款,要么是在一定時間內未完成,則發送方可以拿回資金。 BitfeedLive 和mempool 的開發者mononaut(@mononautical)做了一個入門圖解: 閃電取代循環攻擊攻擊的核心是,假設鮑伯正在從愛麗絲那裡透過閃電網路支付給卡羅爾。鮑伯有兩個掛起的 HTLC:一個是從愛麗絲那裡來的,另一個是發給卡羅爾的。 但鮑伯不知道的是,愛麗絲和卡羅爾正在串通竊取他的錢。當卡羅爾未能在規定的時間內提供付款的原像,鮑勃嘗試在鏈上超時並回收他的資金。 這時,愛麗絲和卡羅爾串通起來,透過廣播兩筆交易的鏈條來為攻擊做準備,並準備了一系列低成本的交易,偽裝成與閃電網路無關的普通交易,這些交易稱為「循環父」和「循環子」。 當鮑伯的超時交易出現在記憶體池中,攻擊者立即發布一個交易,這個交易使用卡羅爾的哈希原像並引用“循環父”交易。由於這個新交易的費率更高,它在記憶體池中取代了鮑勃的超時交易。 攻擊者繼續這樣操作,每次鮑勃嘗試重新發布他的超時交易時,他們都會阻止它。如果攻擊者成功進行了足夠長的時間,那麼愛麗絲可以利用鮑伯與她之間的通道上的另一個時間鎖來回收資金。 在比特幣閃電網路面臨的替換在循環攻擊問題上,Tether 的CTO Paolo Ardoino 也表達了他的關注,他提到Bitfinex 自2019 年以來一直運營閃電網路的三個主要節點,這意味著這個問題也吸引了其他大公司的注意。 雖然比特幣開發者 Riard 表示他可能會退出閃電網路的開發,因為他認為該網路正面臨風險。他也特別指出,為了解決這種新攻擊方式,可能需要對比特幣網路進行修改。 但事實上,這種攻擊有極大的複雜性,並不容易實現。 慢霧創始人餘弦也有相似的看法,他在社群媒體上指出,為了成功實施這項攻擊,攻擊者需要滿足多個條件,例如在受害者上開啟兩個通道並確保受害者未發現HTLC 預映像交易等。針對這種威脅,餘弦建議專案方與有信譽的方建立通道,降低風險。 雖然實現這種攻擊很複雜,但作為用戶,我們完全避免也相當困難,即使採取一些措施。 在這個問題上,mononaut 指出:Bob 可以主動監控其交易池,以便及時發現 HTLC 逾時。但是,熟練的攻擊者仍然可以繞過這些防禦措施。要真正修復這個問題,我們可能需要進行更深層的調整。我們可以考慮重新設計 HTLC 協議,或修改傳播策略,或引入新的操作來應對此問題。 顯然,閃電替換循環攻擊的手法與以太坊上的MEV 三明治攻擊相似,這些攻擊都是利用前後夾擊來套取目標資金。但以太坊 MEV 三明治攻擊的研究在最近幾年裡,仍然沒有很好的改進。 就在近日,以太坊基金會透過Uniswap V3 出售1700 枚ETH 時,仍遭到MEV Bot 的三明治攻擊,損失9101 美元,該MEV Bot獲利約4,060 美元。 DeFi 專家CHRIS POWERS 在最近的一篇文章中指出:自Flashbots 推出旨在「有效應對MEV 問題」的MEV-Geth 以來,近三年裡的變化頗為劇烈。以太坊見證了市場的起落,並成功地邁向了權益證明(Proof of Stake)的新階段,這是其技術進展的一大里程碑。 然而,鏈上經濟資源的爭奪變得更為激烈,儘管我們已經做出了很大努力,但 MEV 的問題仍然存在。 對於 MEV 的挑戰,有許多潛在的解決方法。但是,有些人錯誤地認為某些方法,如公平排序,可以徹底解決問題。從設計開始,我們就應該考慮如何應對 MEV。儘管許多開發者正在努力減少 MEV 的影響,但他們也需要認識到完全避免損失是不切實際的。 MEV 並非不可避免,因此開發者們應該更積極地與 MEV 生態系統的參與者進行溝通與合作。重要的是,支付流程本身並不是問題的核心,真正的問題在於它的不透明性。 相關閱讀:《消除MEV 的嘗試失敗了?開發者如何應對「MEV 危機」》 以太坊的mev 三明治攻擊的研究在最近幾年裡仍然沒有得到很好的完善。而比特幣的這個類似問題,閃電替換循環攻擊,或許在短時間也很難解決。面對開發者退出和替換循環攻擊風險,比特幣閃電網路又將何去何從? 歡迎加入律動 BlockBeats 官方社群: Telegram 訂閱群:https://t.me/theblockbeats Telegram 交流群:https://t.me/BlockBeats_App Twitter 官方帳號:https://twitter.com/BlockBeatsAsia編輯:Jack,BlockBeats
閃電替換循環攻擊如何運作?

圖源:mononaut blockquote>

圖源:mononaut

圖源:mononaut blockquote>

圖源:mononaut blockquote>
替換循環攻擊:實現和防範都很困難

從三明治攻擊到替換循環