作者:Liam Frost
翻譯:BeeX∣旋旋
一個白帽駭客發現了一個價值近1000萬美元的ETHEREUM智慧合約的漏洞。 圖片來源: SHUTTERSTOCK
概要
一名白帽駭客發現了Ethereum智慧合約的漏洞,使近千萬美元的ETH處於危險之中。
一夜之間,組織了一個救援團隊,將資金帶離了險境。
這項工作聯合了來自世界各地的區塊鏈安全專家和礦工團隊。
一名區塊鏈安全研究者和白帽駭客,也就是samczsun,今天公佈了一份詳細的 "事後報告",這次臥底行動拯救了2.5萬ETH,當時價值超過960萬美元。這筆資金是從一個脆弱的Ethereum智慧合約中拯救出來的。
9月15日,samczsun正在檢視Ethereum智慧合約,尋找漏洞(就像他經常做的那樣)。最終,他發現了後來被證明是Lien Finance協議的一部分:一個包含超過25000個ETH的智慧合約。
只不過這些資金可能被任何人拿走了。
根據帖子,該智慧合約包含了一個 "燒錢 "功能。本質上,這允許任何使用者給自己鑄造大量無價值的代幣,並將其換成合約上儲存的所有ETH,從而逃過了價值近1000萬美元的快取。為了DeFi,Samczsun決定介入。
由於Lien Finance的團隊是匿名的,所以白帽子透過一堆潛在的關係去找任何相關人員。ConsenSys(審計智慧合約的兩家公司之一,同時也資助了一個編輯部獨立的Decrypt)的安全研究員Alexander Wade和Ethereum安全專家Scott Bigelow很快加入了救援行動。
現實中,有兩種方式可以解決這種情況。首先,Lien Finance可以公開披露這個漏洞,但這將為駭客創造一個完美的機會來搶奪資金,就像放置一個 "免費資金 "的牌子。
其次,白帽團隊可以利用智慧合約本身,然後將資金歸還給他們的合法主人。但這肯定會引來所謂的通用領跑者機器人--Ethereum的礦池的頂級掠奪者。
礦池被表述為 "Ethereum的黑暗森林",是一個特殊的 "中轉區",在交易被礦工接受並納入下一個區塊之前,交易都會聚集在這裡。而這個區域不斷有前鋒者--特殊的機器人巡邏,他們正在尋找任何可利用的交易來劫持。
基本上,前鋒者可以自動複製礦池中的任何交易,將其地址替換為自己的地址,並確保重複的操作首先被礦工接收。在目前的情況下,這意味著1000萬美金可以在幾秒鐘內被前鋒們輕鬆偷走。保密是必不可少的。
在區塊鏈研究者Tina Zhen的幫助下,團隊加入了第二家稽覈智慧合約的公司CertiK以及Ethereum礦池SparkPool的成員,並最終聯絡到了Lien Finance。
在經過短暫的入職培訓後,SparkPool的編碼人員在接下來的幾個小時裡開發並測試了一個專門的 "白帽API",該API將允許礦工在不顯示在礦池中的情況下接取交易。輪到白帽團隊的成員,他們完成了指令碼,生成了四筆連續的簽名交易,最終拯救了25000個ETH。