摘要:內鬥?烏龍?根源或是內部管理的混亂。北京時間11 月23 日晚,魚池F2Pool 創始人神魚於微博轉發安全組織Rugdoc 的風險提示稱:“有在Celo 鏈上挖礦的請注意,跨鏈橋(Optics)的多簽被人換了,疑似有問題,降低風險的辦法是把Celo 鏈上的其他資產賣成Celo,目前賣…
內鬥?烏龍?根源或是內部管理的混亂。
北京時間11 月23 日晚,魚池F2Pool 創始人神魚於微博轉發安全組織Rugdoc 的風險提示稱:“有在Celo 鏈上挖礦的請注意,跨鏈橋(Optics)的多簽被人換了,疑似有問題,降低風險的辦法是把Celo 鏈上的其他資產賣成Celo,目前賣的人還不多,虧幾個點。大家自行判斷風險,是賭一賭還是止損,全憑實力,膽子大的還可以套利。”
作為Celo 官方牽頭構建的跨鏈橋協議,Optics(合約地址:0x6a39909e805A3eaDd2b61fFf61147796ca6aBB47)是當前資金從外部生態流入Celo 的主要渠道,該橋出現問題,無疑會對整個Celo 生態的資金流通造成影響。因此,在Optics 的問題被爆出之後,恐慌情緒也開始在社區之內瀰漫。
根據來自Celo 背後開發團隊cLabs 的首席執行官Tim Moreton 的事件解釋聲明,多簽權限被替換是因為有人單方面激活了GovernanceRouter 合約上的Optics 修復模式(recovery mode),雖然橋樑服務一切正常,但這一操作導致Optics 協議被修復管理賬戶(recovery manager account )完全控制,原本的多簽權限也被覆蓋。不過,Tim 認為鎖定在橋上的資金(當前鎖定資金量超4000 萬美元)當前沒有風險。
而從Tim 披露的鏈上事務記錄可以看出,該事件實際發生於25 天之前的10 月29 日,也就是說,在10 月29 日後,Optics 一直處於修復模式之中,但cLabs 團隊直到11 月22 日才向社區公開披露了事態情況。
最值得注意的是,除了解釋多簽權限被替換的技術原理之外,Tim 還提到了一位已被cLabs 開除的前高級開發者James Prestwich。 Tim 聲稱,修復模式被激活就發生在James 因行為不當而被解僱後的15 分鐘,且在Optics 的部署過程中,James 曾為配置創建過一個包括修復地址的pull request,且曾請求確認過這個地址並要求報銷費用。 Tim 還表示,自從發現問題後,cLabs 曾想盡了一切辦法與James 接洽以解決問題,但迄今並未成功。
不過,對於Tim 的“指控”,James 本人卻回應稱:“我從來都不是Optics 修復模式的密鑰持有者;我很失望cLabs 和Celo 選擇將他們的欺凌公開化,他們正通過撒謊來攻擊我的聲譽;根據律師的建議,我現在什麼都不會說。”
顯然,Tim 與James 的說法存在矛盾,如果二人都沒有說謊,那麼究竟是誰激活了修復模式呢?
在事件發生之後,社區之內也通過鏈上記錄展開了調查,社區成員@diwu1989 指出,在激活修復模式的最後一筆交易(交易哈希:0x8b1e0ca5f32c08e0afe64f0ab42204e3519712fe3bba0eeedeece56ccbf49461)中,修復管理地址從「0x3d9330014952bf0a3863feb7a657bffa5c9d40b9」被修改成了「0xdcbf2088b7a6ef91f954be9ca658ea5b8e9b62d4」,而後者係由「0x2f4bea4cb44d0956ce4980e76a20a8928e00399a」創建(創建交易哈希:0xd224025870298fea9877880b89b24ed0569c41d3dd147e6afec5ac41da4d098e),所以問題的關鍵就是要找到0x2f 開頭地址的所屬。
另一位社區成員@Ryan 沿著這一思路繼續調查發現,該地址與另一家項目PartyDAO 存在關聯,因其是當前少數持有PARTY 代幣的地址之一,如果可以聯繫到該項目,或可知曉其身份。
社區成員@Deepcryptodive 也指出, 0x2f 開頭地址的資金來自於0x2a98 開頭的Kucoin 地址,通過Kucoin 的KYC 系統,應該也可查出此人的身份。
在多人的共同調查之下,真相最終水落石出,由去中心化內容平台Mirror 的地址備註中可知,0x2f 開頭地址的資金歸屬於一名叫做Anna 的人,那麼Anna 會是激活了修復模式的那個人嗎?
答案似乎是肯定的,社區用戶從Github 記錄上查到,正是在26 天之前,一名頭像和姓名(Anna)都相同的社區開發者,在Github 上報告了一個關於Optics 修復模式時間鎖的漏洞,為了補上漏洞,需要激活修復模式並更換為一個更加安全的多簽地址。此外,從歷史提交代碼上看,Anna 也的確參與了PartyDAO 的開發工作。
至此,真相基本水落石出,鏈上地址對的上,報告中提及的漏洞與解決方案與此次事件也相吻合,所以基本可以判斷正是Anna 激活了Optics 的修復模式,修復管理賬戶大概率也在Anna 的控制之下。
不過,雖然事態脈絡已然釐清,但部分社區成員對於CELO 以及cLabs 在此事中的處理方式卻很不滿意。作為Celo 的開發團隊,cLabs 理應比任何外部調查者都更清楚事情的來龍去脈,但在Tim 的聲明中卻並沒有給出一個清晰的解釋,反而是做了一些毫無根據的猜測,將矛頭引向一個已被解僱的開發者James。
除此之外,另一些社區成員也對Tim 在聲明中提到的“橋上資金沒有風險”相當不滿,因為單從Tim 的描述推斷,合約當前的控制權顯然並不在cLabs 或其他已知社區成員的掌握之中,所以單方面聲稱“資金沒有風險”是極其不負責任的。
推特大V @Monet Supply 就此事總結了該團隊所範的三個錯誤:
-
沒人在應用上線前檢查已部署的合約;
-
遲遲25 天沒有向社區做任何披露;
-
Tim 那則詭異的聲明(我們失去了合約控制權,但資金很安全……)。
Monet Supply 最後將這一切歸因於Celo 內部管理的混亂,並表示自己將因此看跌CELO。
昨日晚間,為了為了平息社區內的恐慌及不滿情緒,Celo 官方組織了一場AMA 對話,並就此事在官方論壇再次發聲加以解釋。這一次,代表cLabs 發聲的不再是首席執行官Tim,而是換成了另外兩名開發者Eric 和Marek。
新的聲明披露了一些關鍵信息,包括將對Optics 合約進行一定審計並向社區披露,以及通過發布Optics V2 來遷移用戶資金。 Marek 還提到:“我們肯定會從這次事件中吸取教訓,我們將繼續分析哪裡出了問題,以及為什麼會出問題。為此,我們計劃盡快發布一份完整的事件回顧報告。”
事已至此,雖然很多細節問題仍需等待Marek 提到的報告發布後才可進一步明晰(比如Anna 和cLabs 之間為何看起來毫無溝通?修復管理賬戶是否還在Anna 的控制之下?),但事態基本情況已大體明了。
整體來看,此次的“ Optics 安全事件”多少存在一定的“虛驚”成分,作為社區開發者,Anna 替換多籤的目的更像是在修復bug 而非作惡,這也是為什麼過去25 天Optics 沒有出現任何資金流失。不過,凡事也不能太過樂觀,在事件徹底收官之前,建議大家短期內盡量減少Optics 的使用頻率,如有跨鏈需求,可盡量選擇同樣支持Celo 生態的Anyswap,或如神魚建議的那樣將橋接資產兌換為CELO,再利用中心化交易所出入。
跨鏈賽道一直都是安全事故的高發領域,雖然暫時沒有造成任何資金損失,但此次事件所敲響的警示同樣不容忽視,希望Celo 開發團隊以及其他項目方能夠以此為戒,改善內部管理秩序,提高透明度,帶給用戶更安全、更放心的跨鏈體驗。
添加一名作者