原文標題:《CircumventingLayerZero:WhyIsolatedSecurityisNoSecurity》
作者:KrzysztofUrbański,L2BEAT團隊成員
編譯:Babywhale,ForesightNews
L2BEAT從成立以來就投入了大量精力來分析和理解與Layer2協議相關的風險。我們始終以用戶和生態系統的最大利益為出發點,盡最大的努力成為一個公正、獨立的監督者,不會讓我們對項目或相關團隊的個人偏好影響事實。這就是為什么即使我們尊重項目團隊投入項目的時間和努力,但也會對某些協議存在的潛在風險「拉響警報」或指出我們的擔憂。盡早進行與安全相關的討論可以讓整個生態系統更好地為潛在風險做好準備,并對任何可疑行為更早地做出反應。
今天我們想就跨鏈應用的共享安全模型展開討論。目前有兩種安全模型:共享安全與獨立應用安全。共享安全性就例如所有的Rollup。獨立應用安全性主要由「omnichain」項目使用,這類項目的主要使用的是LayerZero。
共享安全與獨立安全
共享安全性是指在給定基礎架構上運行的特定代幣或應用,而不是自由選擇安全模型,他們必須遵守基礎設施強加的任何安全要求。例如,OptimisticRollups通常會施加一個7天的最終窗口期——在此類Rollups上運行的應用不能簡單地忽略或縮短這個期限。這雖然看起來像是一個障礙,但它是有原因的。這個期限為用戶提供了安全保證,無論應用的內部安全策略是什么,都必須遵守這套安全政策,應用可能只會加強Rollups的安全性,而不會削弱它。
獨立安全是指每個應用都負責定義其安全性,不受基礎設施以任何方式進行的限制。這乍看之下似乎是個好主意,畢竟應用的開發人員最清楚應用可能需要哪些安全措施。但與此同時,它將評估與每個應用安全策略風險相關的責任轉移給了終端用戶。此外,如果應用開發者可以自由選擇他們的安全策略,他們也可以隨時更改。因此,對每個應用評估一次風險是不夠的,每次應用的政策發生變化時都應該對其進行評估。
神魚:下半年關注以太坊升級、L2、MPC技術的錢包以及傳統機構ETF申請:金色財經報道,Cobo聯合創始人兼CEO神魚近日在一次內部活動上回顧了2023上半年行業重大事件及影響,并對未來下半年值得關注的事件進行了分析。下半年關注三件事,首先,以太坊在下半年會有一次升級,提高性能;其次,L2會在未來6-12個月——大概率是6個月內主網上線,包括Scroll、ZKS等一系列的二層網絡都在爭取成為第一個,從而獲得一個比較好的先發優勢。第二個共識是,基于MPC技術的無私鑰錢包和鏈上的AA智能錢包,可能隨著L2上線會逐步形成統一的標準,從而帶來大規模的推廣和應用。第三個重要問題,是傳統機構ETF的申請。[2023/7/11 10:47:55]
存在的問題
我們認為每個應用都可以自由定義其安全策略的獨立安全模型會帶來嚴重的安全問題。首先,它增加了終端用戶的風險,因為他們必須驗證他們打算使用的每個應用的風險。
獨立安全還增加了使用這種模型的應用的風險,例如增加了有關安全策略更改的額外風險——如果攻擊者要更改應用的安全模型,還不如簡單地禁用它,從而耗盡資金或以任何其他方式進行攻擊。應用之上沒有額外的安全層來防止被攻擊。
此外,由于安全策略能夠隨時且即時更改,因此幾乎不可能實時監控應用并告知用戶風險。
我們發現它類似于智能合約的可升級性,我們已經在L2BEAT上發出了警告。我們告知用戶在其智能合約中具有可升級性機制的Rollup和跨鏈橋,以及在每種情況下管理可升級性的確切機制。這已經相當復雜了,加之使用獨立的安全模型更會使得數目成倍增加,幾乎不可能有效跟蹤。
這就是為什么我們認為獨立的安全模型本身就是一種安全風險,并且我們假設默認情況下將使用這種模型的每個應用都應被視為有風險,除非證明并非如此。
數據:過去7天流入以太坊L2穩定幣資金超過20億美元:金色財經報道,DeFillama數據顯示過去7天流入以太坊L2的穩定幣資金超過20億美元,增長超5%。在Arbitrum方面,該網絡二月穩定幣總流入量約為3億美元,日均流入量超1000萬美元,USDC以9.6863億美元占到Arbitrum鏈上所有穩定幣總價值的67%,Tether和DAI合計價值約為3.9481億美元,此外二月Arbitrum網絡交易量達到69萬筆,創下歷史新高。在Optimism方面,自三月初以來網絡穩定幣流入量達到6.6911億美元,增長4.89%,USDC以3.6456億美元占到Optimism鏈上所有穩定幣總價值的67%,sUSD和USDT合計價值約為1.4577億美元。[2023/3/7 12:46:17]
證明安全漏洞存在
我們決定在主網上測試我們的假設。選擇LayerZero框架進行實驗是因為它是最流行的以獨立安全為核心的解決方案之一。我們部署了一個安全的omnichain代幣,之后更新安全配置,允許惡意提取代幣。代幣的代碼基于LayerZero提供的示例,與實際部署的許多其他omnichain代幣和應用程序非常相似或相同。
但在我們深入細節之前,讓我們簡要了解一下LayerZero安全模型是什么樣的。
正如LayerZero在白皮書上指出的,其「無需信任的鏈間通信」依賴于兩個獨立的參與者共同行動以確保協議的安全。
LayerZero在其網站上表示,其核心概念是「運行ULN(UltraLightNode)、可配置鏈上終端的用戶應用」。LayerZero的鏈上組件依賴于兩個外部鏈下組件在鏈之間中繼消息——預言機和中繼器。
每當任何消息M從A鏈發送到B鏈時,都會發生以下兩個操作:
首先,預言機等到在A鏈上發送消息M的交易完成,然后在B鏈上寫入相關信息,例如A鏈包含消息M的區塊頭的哈希值。
然后中繼器向B鏈發送一個「證明」,證明存儲的區塊頭包含消息M。
Optimism:Base將成為OP多鏈L2平臺其中一員,部分收入將歸入OP國庫:金色財經報道,Optimism 發布公告,稱由于 L2 目前分散的用戶與生態,將對 Optimism 進行定位升級,OP 將升級為基于 OP Stack 構建的多鏈 L2 平臺。在與 Coinbase 針對 Base 合作中,Coinbase 既是 OP Stack 代碼庫的核心開發人員,同時 Base 也是基于 OP Stack 構建的一個全新 L2 區塊鏈。
此外,作為一條 OP 平臺的區塊鏈,Base 將把交易費收入的一部分返還給 Optimism Collective 國庫。近期內,這項合作將致力于將 Optimism 主網、Base 和其他 L2 升級為初始的超級鏈結構,并共享橋接和排序。[2023/2/23 12:25:43]
LayerZero假設中繼器和預言機是獨立、誠實的參與者。但LayerZero也在白皮書中表示,如果不滿足該假設,例如中繼器和預言機串通,導致「預言機提供的區塊頭和中繼器提供的交易證明均無效,但仍然匹配」。
LayerZero聲稱「LayerZero的設計消除了合謀的可能性」。但事實上,這種說法是不正確的,因為每個用戶應用程序都可以定義自己的中繼器和預言機。LayerZero不通過設計保證這些組件是獨立的并且無法串通,而是由用戶應用提供這些保證。如果應用選擇破壞它們,LayerZero沒有任何機制可以阻止。
此外,默認情況下,所有用戶應用都可以隨時更改中繼器和預言機,從而完全重新定義安全假設。因此,僅檢查一次給定應用的安全性是不夠的,因為它可能在檢查后隨時更改,正如我們將在實驗中展示的那樣。
實驗設計
在我們的實驗中,我們決定創建一個簡單的omnichain代幣CarpetMoon,同時在以太坊和Optimism上運行,并使用LayerZero在兩個鏈之間進行通信。
我們的代幣最初使用LayerZero提供的默認安全模型,使其與大當前部署的LayerZero應用完全相同。因此,它通常與使用LayerZero的任何其他代幣一樣安全。
首先,我們在以太坊和Optimism上部署我們的代幣合約:
以太坊開發平臺Tenderly宣布集成L2擴容解決方案Arbitrum:12月11日消息,以太坊開發平臺Tenderly宣布已集成L2擴容解決方案Arbitrum,一系列功能將分三階段推出,具體如下:
- 第1階段:現在已經完成并可以使用,包括標準EVM實現,無Arbitrum預編譯和自定義gas表,它支持以下(對于不接觸任何自定義預編譯的交易):交易調試、模擬器、分叉;
- 第2階段:將部署Arbitrum預編譯器,它將擴展可用的功能集:單個合約和項目的交易列表、警示、分析;
- 第3階段:將模擬Arbitrum gas使用,這將確保交易再執行并啟用Gas Profiler。[2021/12/11 7:32:27]
https://ethtx.info/mainnet/0xf4d1cdabb6927c363bb30e7e65febad8b9c0f6f76f1984cd74c7f364e3ab7ca9/
https://optimistic.etherscan.io/tx/0xf41389d71fa3942de5225efb067072728c6c6de56c241574187781db7c73d221
然后我們設置了路由,以便LayerZero知道兩條鏈上哪個合約對應哪個合約。
https://ethtx.info/mainnet/0x19d78abb03179969d6404a7bd503148b4ac14d711f503752495339c96a7776e9/
https://optimistic.etherscan.io/tx/0x037b1bad33faa5607bb5835460a1d5caaf3a147dc3a09762ac7703befcdb3c3c
代幣已部署完成,它看起來與使用LayerZero的所有其他omnichain代幣完全一樣,使用默認配置,沒有任何可疑之處。
EBitfly:希望減少L1的擁堵,Ethermine礦池正在考慮L2支出:Ethermine礦池母公司Bitfly表示,希望保持以太坊盡可能安全和去中心化,并鼓勵小型家庭礦工留在以太坊。但是,交易費用已經超過了臨時礦工的收入,并使其脫離了網絡。Bitfly表示,希望以最安全的方式通往以太坊2.0,并減少L1上的擁堵。所以Ethermine正在考慮L2支出。需要錢包良好的用戶體驗,API以及交易所支持DeFi和CeFi。[2021/2/26 17:56:40]
我們向我們的「測試用戶」Alice提供了10億枚以太坊上的CarpetMoon代幣。
https://ethtx.info/mainnet/0x7e2faa8426dacae92830efbf356ca2da760833eca28e652ff9261fc03042b313/
現在Alice使用LayerZero將這些代幣跨鏈至Optimism。
我們將代幣鎖定在以太坊上的托管合約中:
https://ethtx.info/mainnet/0xe4dc3757b86bfda8e7baddc088fb1a599e083ed77034c29e5dd8bd11f1e17771/。
包含著交易的消息正在通過LayerZero傳遞給Optimism:
https://layerzeroscan.com/101/address/0xc6005ccc1de4b300d538903b74848bff881d5dc5/message/111/address/0x201fe0d843b546f2e24d4c8444318d1c71b7nonced10d/。
跨鏈的代幣正在Optimism上鑄造,Alice現在在Optimism上擁有10億枚MoonCarpet代幣:
https://optimistic.etherscan.io/tx/0x5388ced88cf562acafff82d6798f791b0b38b90ee106df9bf91c0d86306ec302。
一切都按預期進行,Alice將代幣跨鏈,并看到以太坊上的托管合約中有10億枚MoonCarpet代幣,她在Optimism的賬戶上有10億枚MoonCarpet代幣。但為了確保一切正常,她將一半的代幣轉回以太坊。
我們從Optimism上銷毀5億代幣的交易開始:
https://optimistic.etherscan.io/tx/0x118a57106488ad0bae1f3b920b1fd98b187752ad966f3a901fc53cff47f2097f。
有關該交易的信息被傳遞到以太坊:
https://layerzeroscan.com/111/address/0x201fe0d843b546f2e24d4c8444318d1c71b7d10d/message/101/address/0xc6005ccc1de4b300d538903b74848bff881d5dc5/nonce/1。
正如預期的那樣,5億枚MoonCarpet代幣從托管合約返回到Alice的地址:
https://etherscan.io/tx/0x27702e07a65a9c6a7d1917222799ddb13bb3d05159d33bbeff2ca1ed414f6a18。
到目前為止,一切正常,也與假設的完全一致。Alice已經檢查過她可以將代幣從以太坊跨鏈到Optimism并再次跨鏈回來,她沒有理由擔心她的MoonCarpet代幣。
但是假設本身存在問題——例如,我們的代幣背后的團隊遇到問題,壞人Bob獲得了對我們應用的LayerZero配置的訪問權限。
如此,Bob可以將預言機和中繼器從默認的組件更改為由他控制的組件。
需要注意的是,這是為每個使用LayerZero的應用提供的機制,根植于LayerZero的架構中,它不是任何類型的后門,而是一種標準機制。
所以Bob將預言機更改為他控制下的EOA:
https://ethtx.info/mainnet/0x4dc84726da6ca7d750eef3d33710b5f63bf73cbe03746f88dd8375c3f4672f2f/。
中繼器也同樣被更改:
https://ethtx.info/mainnet/0xc1d7ba5032af2817e95ee943018393622bf54eb87e6ff414136f5f7c48c6d19a/。
現在奇怪的事情發生了。由于預言機和中繼器現在在Bob的完全控制之下,他能夠盜取Alice的代幣。即使在Optimism上沒有采取任何行動,Bob也能夠說服以太坊上的MoonCarpet智能合約他在其他鏈上銷毀了代幣并且他能夠提取在以太坊上的MoonCarpet代幣。
首先,他使用由他控制的預言機更新以太坊的區塊哈希:
https://ethtx.info/0xde2edee2cc7f070120e96c9df90d86696970befcfc221e18c6ac4168bb5b1d92/。
現在他可以從托管合約中提取剩余的代幣:
https://ethtx.info/0xda695f374b375d5372efeca37aae4c5a17f114d5a76db1e86edebb0924bcdcc7/。
實驗結果
Alice甚至不知道為什么以及什么時候發生了錯誤。突然之間,她在Optimism上的MoonCarpet代幣不再得到以太坊上代幣的支持。
智能合約不可升級,并且按預期運行。唯一可疑的活動是預言機和中繼器的變化,但這是LayerZero內置的常規機制,因此Alice甚至不知道這種變化是否有意為之。即使Alice知道了這個變化,也已經太晚了——攻擊者可以在她做出反應之前耗盡資金。
LayerZero也無能為力——這些都是他們機制的有效執行,他們無法進行控制。理論上,應用本身可以阻止自己更改預言機和中繼器,但據我們所知,已經部署的應用都沒有這樣做。
我們做了這個實驗來測試是否有人注意到它,但正如我們所料,沒有人注意到。有效地監控所有使用LayerZero構建的應用來檢查它們的安全策略是否發生改變,并在發生這種情況時警告用戶是幾乎不可能的。
即使有人能夠及時發現預言機和中繼器已經發生變化并帶來了安全風險,但為時已晚。由于新的預言機和中繼器現在可以自由選擇傳遞的消息或簡單地禁用鏈間通信,用戶通常對此無能為力。我們的實驗清楚地表明,即使Alice注意到應用配置的變化,她也不能用她的跨鏈代幣做太多事情——新的預言機和中繼器已不再在原始的通信鏈條上接受消息,所以不會將消息返回以太坊。
結論
正如我們所看到的,即使我們的代幣是使用LayerZero構建并按預期使用其機制,我們還是能夠從代幣的托管中竊取資金。當然,這是應用的錯誤,而不是LayerZero本身的錯誤,但這證明LayerZero本身不提供任何安全保證。
當LayerZero描述他們關于預言機和中繼器的安全模型時,他們假設應用所有者不會做任何不合理的事情。但在對抗性的環境中,這種假設是不正確的。此外,它要求用戶將應用開發者作為可信賴的第三方來信任。
因此在實踐中,人們不能對使用LayerZero構建的應用的安全性做出任何假設——每個應用都應該被認為是有風險的,直到證明不是這樣。
實際上,整個故事是從我們計劃在L2BEAT網站上包含所有omnichain代幣的PR開始的——我們很難弄清楚如何評估它們的風險。在分析風險時,我們提出了實驗的想法。
如果在L2BEAT上線,后果是我們必須在使用LayerZero構建的每個應用之上放置警報,警告可能存在的安全風險。但我們想就安全模型展開更廣泛的討論,因為我們認為獨立的安全是一種應該避免的模式,尤其是在我們的領域。
我們相信,隨著LayerZero等獨立安全模型越來越流行,將會有越來越多的項目濫用它們,造成大量破壞并增加整個行業的不確定性。
作者:HashKeyCapital2022是我們聚焦區塊鏈及加密投資的第7年,感謝所有創業者和投資人的信任與支持。目前,HashKeyCapital的資產管理規模已超10億美金.
1900/1/1 0:00:00作者:潤升,ChainCatcher自11月初CoinDesk曝光AlamedaResearch資產負債表以來,FTX暴雷及其衍生危機正在使加密世界迎來史上最黑暗的時期.
1900/1/1 0:00:00由知名Web3.0區塊鏈社交APPBtok戰略投資的一款域名型NFT“.sns”,將于11月28日10時,正式面向全球開放注冊.
1900/1/1 0:00:00作者:CATASTROPHY當NFT的“收藏價值”在熊市中被消耗殆盡、流動性陷入枯竭,CATASTROPHY團隊近期的產品發布,為NFT應用帶來了一個創新范例:通過將NFT作為DID.
1900/1/1 0:00:00阿根廷傳奇球星哈維爾·馬斯切拉諾將使用去中心化Web3SaaS平臺SaaSGo創建自己的NFT交易市場,并和MovetoEarn應用STEPN合作推出世界杯限量球鞋NFT.
1900/1/1 0:00:00作者:FalaBlock在12月8日舉行的以太坊核心開發者會議151中,以太坊核心開發團隊宣布,2023年3月將是以太坊網絡上海硬分叉的最后期限.
1900/1/1 0:00:00