撰文:SamSun、AlexWade、ScottBigelow、TinaZhen、少平
2020年9月15日,一個行動小組徹夜合作,從一個脆弱的智能合約中救出960萬美元。下文講述了他們的故事。
SamSunakasamczsun自述
下面我總結一下審閱部分智能合約發生的故事。
當然我沒想到會有什么有趣的事兒。過去的幾周中我看了無數收益耕種克隆項目一模一樣的宣傳模式:把你的代幣放到我們手中,你就可能會成為下一個加密百萬富翁。多數克隆項目只是對經過良好審計的代碼進行分叉,加上些許的調整,而這有時會帶來災難性的結果。
但是在所有的喧囂中,有些代碼我以前從未見過。本文中的主角、這份智能合約持有超過25,000個以太幣Ether,當時價值超過960萬美元,對于那些拼命從邏輯上發現錯誤的人來說,這將是一次收獲滿滿的狩獵。
我迅速看了一下將ETH轉出的代碼,發現了兩個匹配項。其中之一將ETH轉移到了硬編碼的代幣地址,因此可以忽略。第二個是將ETH轉移給發送方的焚毀功能。在跟蹤了此功能的用法之后,我發現任何人可以免費為自己鑄造代幣,然后將其焚毀,換取該智能合約中的所有以太幣都是不費吹灰之力的。我的心跳加速了。突然,問題變得嚴重了。
我那份智能合約是LienFinance協議。不幸的是,他們的團隊是匿名的!唯一的即時訊息支持平臺是Telegram,而我不確定該Telegram頻道的管理員是開發者還僅僅是某些早期支持者。我可萬萬不想將這一漏洞意外透漏給錯誤的人。
在他們的網站又多瀏覽了一段時間,我發現他們曾與ConsenSysDiligence和CertiK合作,接受其代碼審計。這看起來像是很不錯的途徑,ConsenSysDiligence和CertiK在審計期間肯定和開發者進行過互動。我迅速在Telegram上私聊了ConsenSysDiligence的安全工程師JohnMardlin。
巨鯨在這次上漲期間從Coinbase和Gemini購買了價值約7920萬美元的ETH:金色財經報道,據 Lookonchain 監測發現,在這次 ETH 上漲期間,巨鯨從 Coinbase 和 Gemini 購買了總計 47,729 枚 ETH (價值約 7920 萬美元)。在今天ETH價格下跌后,仍然購買了 6,108 枚 ETH(價值約 1010 萬美元)。[2023/2/17 12:13:10]
發起聊天等回復是太煎熬的事兒。不幸的是,時間一分分過去,maurelian沒回應。他好像已經睡了。絕望之下,我向ETHSecurityTelegram頻道發了條消息,詢問ConsenSys有沒有哪位沒有睡,請速聯系。
幾分鐘后,我收到了一位過去有過幾次合作的人的回復——AlexWade,ConsenSysDiligence的另一位安全工程師。
AlexWade自述
我的腦袋剛剛沾上枕頭,聽到我室友敲門。「Sam在ETHSecTelegram頻道問有誰認識ConsenSysDiligence的任何人。」
Sam與Alex對話中說今晚可能會是個漫漫長夜,事實確實如此
一聽說是Sam,我就知道這不會是什么好事。我找到了幾個月前建立的與Lien溝通的頻道以及一個電郵地址。他們團隊可是個匿名團隊,有這些總比什么都沒有強。
分析 | HT再度貼近年度上升趨勢線 這次能否企穩反彈?:分析師K神表示:周線級別,前期HT觸碰19年初筑底上升趨勢線開啟大幅反彈,一直漲至前期周線平臺4美元上方,不過量能并未持續放大,不足以解放前期套盤籌碼,價格沖高遇阻跟隨大盤回落,在跌破下方頸線位3.7支撐后,出現了快速下跌,不過整體仍處于一個大的上升三角形內整理,當前價格再次貼近周線上升趨勢線附近,價格有作技術性反抽的需求,可逢低吸貨做多為主,一旦有效跌破三角支撐,就要反彈減倉,趨勢支撐3.35美金,壓力3.7美金。[2019/11/19]
我當時依然半睡半醒。Sam不想在聊天中具體詳談,要求Zoom對話。我一面后悔干嘛要起床,一面評估事態的嚴重性:
五分鐘后,我清楚了解我得喝咖啡提提神開始干活了。
Sam和我一起審閱了代碼。Sam當時已經準備好一個樣品測試,能在其機器上確認這一問題。我們的對話尋找轉移到討論可行性方案:
我們自己動手拯救這筆錢。
聯絡上Lien團隊,讓他們公開身份,敦促用戶撤資。
兩者都不是很讓人滿意的選擇。第一個舉動極為危險,如果您讀過DanRobinson與Paradigm研究合伙人GeorgiosKonstantopoulos所討論的以太坊?DeFi黑暗森林(
鏈聞中文版)一文,我們的交易被搶跑截胡的概率極高。第二種選擇幾乎同樣危險,因為公開聲明會引發外界對該問題的關注,給攻擊者帶來一個機會窗口。我們需要的是第三種方案。
回想起以太坊DeFi黑暗森林一文中的部分內容,Sam聯絡了Amberdata工程副總裁ScottBigelow:「如果你切實陷入了這種困境,我建議你去找Amberdata工程副總裁ScottBigelow,他是一直研究這一課題的安全研究人員,有一套能更好實現瞞天過海目的的原型實施策略。」
分析 | BTC 3年前似曾相識的一段 這次能否王者歸來?:分析師K神表示:BTC價格在今年初兩次探底MA200周均線不破后,于4月初迎來了強漲行情,并接連突破MA50與MA100周均線壓制,直至漲至19年目前頂點14000美元,隨后價格再大幅下探至MA100周均線測試支撐,不破再度迎來周線級別的大幅反彈并沖至10000美元上方,然后回落至斐波那鍥0.5點位支撐8500美元附近,這一波整體走勢與比特幣2016年初走勢很相似,前面周線也是在突破周線MA100后進行了回踩確認,不破后出現了超跌反彈走勢,接著進入了小區間震蕩調整走勢,最后在MA50上穿MA100均線形成金叉的位置,開啟了減半前的快速拉升行情。目前盤面來看,MA50周均線抬頭上行,MA100均線拐頭向下,兩線形成金叉還需要一段時間,表明價格有止跌企穩的趨勢,接下來BTC處于區間寬幅震蕩的可能性更高,上方周線壓力斐波那鍥0.382點位9750美元,通過反復震蕩洗盤籌碼充分換手后,大概率將再度迎來主升浪。[2019/11/15]
ScottBigelow自述
我參加了?以太坊DeFi黑暗森林?一文中的資金拯救行動,最終敗給黑暗森林狙殺者之后,我非常渴望能重賽一場。我花了一些時間監控搶跑截胡行動,設計了一個簡單的系統,似乎能夠騙過一般的搶跑者,至少我個人投入測試的200美元是成功拯救了出來。當Sam深夜聯絡我,誠懇得說「介意占用你大約一個小時左右時間嗎」,我摩拳擦掌準備嘗試了!我已經設想了那個畫面:我如何做幾個技術調整,需要幾個小時,然后成功拯救用戶數千美元的資產,戴著那種成就感,好好地睡上一晚。
當Sam分享給我這個智能合約后,這些計劃瞬間七零八碎:大約25,000個ETH,價值960萬美元。我雖然非常想進行這種重賽,但我那幾行破代碼可不是給960萬美元這種級別資產設計的。
過去幾個月,我一直試圖與礦工們拉上關系,就為了這一目的:進行這類白帽拯救交易。如果有一個時間點需要礦工們幫忙,在其挖礦中寫入一筆交易,以免被搶跑者偷走這筆錢,那就是現在。幸運的是,Tina?Zhen和我過去幾個月聯手尋求建立這種協作關系。當時這一拯救行動的成功希望渺茫,但值得一試:讓Tina參與這一拯救行動,與一個礦池合作挖出一筆私下交易。
聲音 | 火幣七爺:火幣受到AWS這次事故影響 正在協調恢復:TP-LINK安防服務發布公告稱,由于云服務專用光纖線路被外界不當施工挖斷,導致其部分地區相關云服務受到較大影響。火幣全球站CEO七爺針對此事在朋友圈表示:AWS這次事故影響了一大批企業,火幣也在其中,正協調對方盡快恢復[2019/6/2]
TinaZhen自述
我剛剛因為加州代號「山貓」的森林大火從家撤離,當時正在喝著不知名的沙灘飲料,聽著暗淡的太平洋送來的海浪聲,Sam的Telegram私信使我回到了一個更黑暗的現實:「資金有風險,可能被截胡」。過去的幾周中,我一直與Sam和Scott合作開展有關「礦工可提取價值」MEV的研究項目,并且在他們發送請求之前就已經猜到了:一個直接的渠道,可以保護白帽交易在以太坊內存池mempool這一「黑暗森林」中免遭「搶跑者」掠奪。
由于這是一個冒險的舉動,需要將我們的策略暴露給礦工,因此我們決定首先嘗試從匿名的Lien團隊獲得開綠燈批準。當Alex試圖通過ConsenSys內部頻道進行聯系時,我們也嘗試聯系CertiK。
我意識到,Certik在美國的審計人員得過四個小時才會起床,但時間已經刻不容緩。我對CertiK了解不多,只是知道他們曾審計過幾個亞洲項目,于是試圖聯絡CertiK中國團隊。我在「DeFitheWorld」和「YellowHats」兩個微信群里分別留了一條語音留言。我的私聊里30分鐘內接到四條信息,確認了我微信好友中的這個ID是真正的CertiK首席技術官倪兆中ZhaozhongNi。我被拉進由五位CertiK團隊成員組成的一個微信群中,而當時我依然不能透露相關項目或漏洞。為了將暴露風險和潛在責任降至最低,我們只能邀請一位Certik成員加入我們的白帽行動。經過官方郵件最終確認后,CertiK的工程負責人GeorgiosDelkos加入我們的對話。
比特幣新一波分叉又要到來 這次分叉幣為bitcoin god(比特上帝):據報道,比特幣又將迎來新的分叉,在12月25日也就是圣誕節當天,分叉的比特幣名字為bitcoin god(比特上帝),簡稱GOD.總量2100萬枚,與比特幣的總量一致,據官方解釋稱,本次分叉沒有預挖,所有2100萬枚比特上帝會直接分發給用戶。[2017/11/30]
在Georgios的幫助下,Alex得以迅速聯絡到Lien團隊,并驗證確認其身份。我們讓他們最快速度了解到目前的嚴峻形勢,爭取其同意,直接與一家礦池合作拯救這筆脆弱的資金。在考慮之后,Lien團隊贊同直接拯救資金或發布預警聲明過于危險,同意我們推進這一方案。
現在我們需要找一家基礎設施充分到位、愿意盡快與我們合作的礦池。我們應該找哪家礦池?這家礦池的哪位聯絡人能迅速做出技術決策,幫助我們爭分奪秒執行這一行動?
我們想到了星火礦池SparkPool,我知道了他們一直在打造名為TaichiNetwork的公眾基礎設施,能輕松給予我們所要的支持。我決定私聊星火礦池聯合創始人少平ShaopingZhang,他之前曾幫我調查過mempool安全事件。
半個小時后,少平回復了:「你是說我給交易開白名單?抱歉,我們不能。」好吧,lostintranslation,中文里「白帽」whitehat和「白名單」whitelist看起來有點像。
「現在有1000萬美元危在旦夕。我和Samczsun在線,」我再次試圖在不透露任何具體細節的情況下溝通這一局面。
「你倆在拯救世界?需要礦池幫忙嗎?」有點意外也讓我松了一口氣,少平調侃著表示愿意提供幫助。在經過官方郵件確認后,少平進入我們馬拉松般的Zoom電話會,并由大批星火礦池開發人員給予技術支持。
少平自述
吃過午飯,我正準備小睡一會兒,然后收到了Tina的一條微信:「星火礦池幫忙進行過白帽交易嗎?」我一開始看錯了,當時看成了給交易開白名單。以前沒有人聯系我們進行白帽交易,我們也不熟悉「白帽交易」具體什么情況。Tina更詳細解釋了以后,我意識到他們需要一筆私下交易服務,比如,白帽黑客想發送交易來拯救一個DeFi智能合約,但要防止被別人搶跑截胡,他們需要礦池在不廣播交易的情況下將交易寫入區塊。
我們一直在TaichiNetwork打造私下交易功能,這個功能還在開發中,還沒測試過。我把白帽黑客的請求告訴了我們的開發團隊,并強調了這種緊迫性:我們的私下交易功能需要在幾個小時內順利進入生產階段。我們的開發人員說會盡力完成,然后迅速投入工作。我們在兩個小時內完成了私下交易功能的開發,又花了點時間修復了bug。
我們完成了內部測試后,把hitehat.taichi.network端點發送給ScottBigelow,來完成白帽任務。
ScottBigelow自述
星火礦池加班加點推出了全新的白帽API,Sam和我也完成了腳本編程,生成四個先后銜接的簽名交易。依次處理這些交易本身不會取出25000個ETH,但會把30,000個SBT+LBT代幣轉移給Lien團隊,他們可以將其提交給最終交易,將這些代幣再轉換成ETH。
通過將可以無限鑄造的SBT+LBT代幣轉移給Lien團隊而不是ETH,我們使用了更多交易作為障眼法,迷惑廣義強迫者的攻擊,能夠讓960萬美元的收入一直不會進入我的腰包,片刻也不可以。
我們生成四個簽名交易后,Sam和我花了大量時間、利用各種多方交易模擬工具驗證其連環行動。總數據量不到1.5KB的這四個交易程序,就是拯救960萬美元資產的殺器,保障在星火礦池捕獲這些交易之前不會被任何人先知先覺。
我用一筆無意義的交易測試了星火礦池的白帽端點,其執行過程毫無偏差:該交易不會在mempool中看到,然后突然出現在星火礦池的一個區塊中!就像眼睜睜看著水蒸氣直接變成了冰,中間令人討厭的液化過程完全看不到!
我們調整了交易生成腳本,將交易直接提交給星火礦池的新端點,現在該是行動的時刻了。我猶豫了一會兒,但這絕對是我們能做到的最好的努力。我們可能會損失掉這960萬美元,但不會后悔:我在IntelliJ中點擊了「運行」。我不確定為什么,但我之前預計整個過程會花點時間,就像節點會了解情況的嚴重性,然后在其中消耗一些時間。但實際上它沒有;交易以毫秒為單位發送。
Zoom通話中的每個人都開始瘋狂刷新Etherscan,我懷疑Etherscan團隊是否看到了這3分鐘的流量高峰。由于只有星火礦池有交易,并且星火礦池的哈希率中只有一部分專用于此目的,我們能做的只能冒著冷汗焦急等待。每一個其他礦工挖出的每個區塊都讓我們膽顫心驚。Zoom電話會中會有人伴隨著緊張的笑聲念出挖出區塊的礦工名稱。我們的交易被寫入區塊之前大約會產生15個區塊,我們卻感覺度日如年,像是經歷了幾個小時,但最終,我們完成了完美無缺的交易:依次挖出,沒有回滾。
我們如釋重負地看著越來越多的區塊疊加在我們的區塊之上,對區塊重組的擔憂迅速消失。Lien團隊現在擁有足夠的SBT+LBT代幣來清算整個系統的資金,Sam負責協調救援的最后階段。
SamSun自述
現在我們已經成功地將代幣轉移給了Lien團隊,并沒有發現任何強迫截胡跡象、嘗試或其他跡象,我們很快用私聊告訴了他們這一好消息。他們確認已收到代幣,并立即發送交易,以取出智能合約中鎖定的大部分ETH。幾秒鐘后,Etherscan上出現了這一待處理的交易。
看著進度條轉圈時,我借此機會反思了這一行動。最開始就是看了看智能合約,最終演變成吸引了世界各地專家通力協作的一場「拯救大兵瑞恩」行動。如果沒有Alex和Georgios,我們將無法與Lien開發人員取得聯系。沒有Scott,我們的拯救行動可能早就陷入困境。沒有Tina,我們將無法與CertiK或星火礦池取得聯系。沒有星火礦池,我們注定要重演Dan幾周前文章中寫的悲劇。
然而在周二深夜,我們這個看似完全沒有可能合作的團隊為了同一個目標通力合作,經過不懈努力,最終確保960萬美元物歸原主。我們過去七個小時的努力最終匯成一筆待確認的交易和這個轉圈的進度條。
當進度條最終顯示為綠色對勾,Zoom電話會的緊張氣氛終于煙消云散,大家都長舒了一口氣。
https://etherscan.io/tx/0xe99ccb0b21854b65a2fa283638ab9ef01962b61c3310b596b4597bf22b911a43
我們終于成功殺出黑暗森林。
本文記錄了很多人努力工作的成功。特別感謝拯救危難的AlexWade、ScottBigelow、TinaZhen、GeorgiosDelkos和星火礦池SparkPool,以及審校本文并給予反饋的AlexObadia和DanRobinson。
如果你對這一行動背后的技術細節很感興趣,請?點擊這里?了解更多。如果因為種種原因,你還沒讀過?以太坊DeFi「黑暗森林」?一文,你確實應該讀一下。
轉自:以太坊愛好者 自一周前發布《DeFi中的速成分叉產品》后,我已經與許多創始人和投資者討論過分叉的影響以及如何設計抗分叉協議.
1900/1/1 0:00:00作者:SuZhu&TianTianKullander 翻譯:Olivia 在所有市場中,做市商的目標都是在處理傳入的訂單流時獲利--即做市商針對其流動性進行交易的請求.
1900/1/1 0:00:00多年來,區塊鏈技術作為一種驗證房產銷售的方式一直被廣泛討論。因此,企業家們開始嘗試創建能夠通過區塊鏈技術驗證地產交易的初創公司.
1900/1/1 0:00:00提交給美國證券交易委員會(U.S.SecuritiesandExchangeCommission)的財務文件顯示.
1900/1/1 0:00:00北京時間10月2日凌晨,剛剛進入2020年最后一個季度第一天的美國傳來兩則重磅消息:一是,美國監管層對全球最大加密貨幣交易平臺之一BitMEX的高管和實體公司提起訴訟;二是.
1900/1/1 0:00:00本文來自?Cryptonews,原文作者:SeadFadilpa?i?Odaily星球日報譯者|念銀思唐歐洲央行表示,在三種潛在的穩定幣方案中,有兩種可能導致對歐盟市場一體化和互操作性的擔憂.
1900/1/1 0:00:00