知名白帽SamSun與TinaZhen、星火礦池等人徹夜合作,幫助DeFi穩定幣協議Lien免受漏洞攻擊,保護了960萬美元的資金。
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溝通的頻道以及一個電郵地址。他們團隊可是個匿名團隊,有這些總比什么都沒有強。
我當時依然半睡半醒。Sam不想在聊天中具體詳談,要求Zoom對話。我一面后悔干嘛要起床,一面評估事態的嚴重性:
五分鐘后,我清楚了解我得喝咖啡提提神開始干活了。
Sam和我一起審閱了代碼。Sam當時已經準備好一個樣品測試,能在其機器上確認這一問題。我們的對話尋找轉移到討論可行性方案:
Martin Leinweber:與2017年上一次熊市不同的是,這次熊市主流幣遭到拋售:金色財經報道,VanEck指數制造商MarketVector的數字資產產品策略師 Martin Leinweber 表示,我認為,與 2017 年上一次熊市不同的是,主流幣遭到拋售,這讓投資者感到困惑,尤其是在機構方面。通常在拋售中,山寨幣的表現比 BTC 和 ETH 差。這一次,隨著市場崩盤,BTC 的主導地位正在下降,大多數山寨幣已經貶值了 90%。[2022/6/21 4:41:33]
我們自己動手拯救這筆錢。聯絡上Lien團隊,讓他們公開身份,敦促用戶撤資。兩者都不是很讓人滿意的選擇。第一個舉動極為危險,如果您讀過DanRobinson與Paradigm研究合伙人GeorgiosKonstantopoulos所討論的以太坊DeFi黑暗森林一文,我們的交易被搶跑截胡的概率極高。第二種選擇幾乎同樣危險,因為公開聲明會引發外界對該問題的關注,給攻擊者帶來一個機會窗口。我們需要的是第三種方案。
回想起以太坊DeFi黑暗森林一文中的部分內容,Sam聯絡了Amberdata工程副總裁ScottBigelow:「如果你切實陷入了這種困境,我建議你去找Amberdata工程副總裁ScottBigelow,他是一直研究這一課題的安全研究人員,有一套能更好實現瞞天過海目的的原型實施策略。」
ScottBigelow自述
我參加了以太坊DeFi黑暗森林一文中的資金拯救行動,最終敗給黑暗森林狙殺者之后,我非常渴望能重賽一場。我花了一些時間監控搶跑截胡行動,設計了一個簡單的系統,似乎能夠騙過一般的搶跑者,至少我個人投入測試的200美元是成功拯救了出來。當Sam深夜聯絡我,誠懇得說「介意占用你大約一個小時左右時間嗎」,我摩拳擦掌準備嘗試了!我已經設想了那個畫面:我如何做幾個技術調整,需要幾個小時,然后成功拯救用戶數千美元的資產,戴著那種成就感,好好地睡上一晚。
分析 | 19年初3000-4000區間筑底似曾相識的一段 這次BTC能否王者歸來?:分析師K神表示:下面為BTC18年末與19年初3000-4000美金區間震蕩筑底走勢,與目前BTC從7300拉高至10350在持續回落至當前8100走勢對比圖,從盤面走勢能看出兩者有其相似之處,兩者前期都是先拉高至高位箱體區間盤整,接著出現破位開始震蕩回落,后面再出現快速上拉又快速回落的上下插針走勢,清洗市場合約多空單后,再回落至目前相對底部區域震蕩,這與19年初筑底走勢很相似,前期BTC位于3300-3500區間反復洗盤籌碼換手充分后,開始逐步拉升并一路震蕩上行至頂點14000美金,成就了19年上半年的小牛行情,歷史當然不會簡單重復,可以利用數據推測未來大概走勢,當前BTC持續位于8000一線弱勢整理,有可能也是主力慣用的洗盤手法,后面將會通過區間寬幅震蕩的方式逐步消磨持幣者的耐心,構筑牢固上漲中繼底部結構后,并在明年減半預期的刺激下,有望再度迎來主升浪。[2019/11/21]
當Sam分享給我這個智能合約后,這些計劃瞬間七零八碎:大約25,000個ETH,價值960萬美元。我雖然非常想進行這種重賽,但我那幾行破代碼可不是給960萬美元這種級別資產設計的。
過去幾個月,我一直試圖與礦工們拉上關系,就為了這一目的:進行這類白帽拯救交易。如果有一個時間點需要礦工們幫忙,在其挖礦中寫入一筆交易,以免被搶跑者偷走這筆錢,那就是現在。幸運的是,Tina?Zhen和我過去幾個月聯手尋求建立這種協作關系。當時這一拯救行動的成功希望渺茫,但值得一試:讓Tina參與這一拯救行動,與一個礦池合作挖出一筆私下交易。
TinaZhen自述
我剛剛因為加州代號「山貓」的森林大火從家撤離,當時正在喝著不知名的沙灘飲料,聽著暗淡的太平洋送來的海浪聲,Sam的Telegram私信使我回到了一個更黑暗的現實:「資金有風險,可能被截胡」。過去的幾周中,我一直與Sam和Scott合作開展有關「礦工可提取價值」MEV的研究項目,并且在他們發送請求之前就已經猜到了:一個直接的渠道,可以保護白帽交易在以太坊內存池mempool這一「黑暗森林」中免遭「搶跑者」掠奪。
分析 | 虛擬貨幣這次崩盤像一場被人攻擊的真正貨幣危機:據彭博消息,虛擬貨幣自今年初以來的表現并不僅僅像是泡沫破裂,看起來更像是一種受到攻擊的貨幣。比特幣沒有央行來作為支撐,對比特幣這種運動的一種寬容的解釋:比特幣將一個緊密聯系的社區團結在一起,保護自己的投資。對沖基金GLG Partners前經理Raoul Pal表示,比特幣在跌破6000美元之前的匯率掛鉤走勢。如果這種防御被打破,監管機構的調查又發現了價格操縱的證據,那么今年的拋售將不僅僅是周期性的熊市。[2018/11/28]
由于這是一個冒險的舉動,需要將我們的策略暴露給礦工,因此我們決定首先嘗試從匿名的Lien團隊獲得開綠燈批準。當Alex試圖通過ConsenSys內部頻道進行聯系時,我們也嘗試聯系CertiK。
我意識到,Certik在美國的審計人員得過四個小時才會起床,但時間已經刻不容緩。我對CertiK了解不多,只是知道他們曾審計過幾個亞洲項目,于是試圖聯絡CertiK中國團隊。我在「DeFitheWorld」和「YellowHats」兩個微信群里分別留了一條語音留言。我的私聊里30分鐘內接到四條信息,確認了我微信好友中的這個ID是真正的CertiK首席技術官倪兆中ZhaozhongNi。我被拉進由五位CertiK團隊成員組成的一個微信群中,而當時我依然不能透露相關項目或漏洞。為了將暴露風險和潛在責任降至最低,我們只能邀請一位Certik成員加入我們的白帽行動。經過官方郵件最終確認后,CertiK的工程負責人GeorgiosDelkos加入我們的對話。
在Georgios的幫助下,Alex得以迅速聯絡到Lien團隊,并驗證確認其身份。我們讓他們最快速度了解到目前的嚴峻形勢,爭取其同意,直接與一家礦池合作拯救這筆脆弱的資金。在考慮之后,Lien團隊贊同直接拯救資金或發布預警聲明過于危險,同意我們推進這一方案。
CoinDesk發表2018年區塊鏈產業報告:這次的泡沫與以往不同:2017 年比特幣以1278%的瘋狂漲幅閉幕。隨之而來的卻是一個大家都在問的問題:“這款最大的加密貨幣是否是個泡沫?”CoinDesk 的讀者對此問題的答案十分分裂:49% 回答“是”,39% 回答“否”,11% 回答“中立”。但在分裂的意見背后,卻是大量可以用來分析關于“泡沫論”的數據。在 3000 多名回答者中,只有 19% 為了購買加密貨幣而負債。而在這 19% 中間,已有超過一半把負債全部還清了。這一點很重要,因為如果比特幣確實是泡沫,它是一個很罕見的沒有被杠桿或借來的錢吹大的泡沫。[2018/2/11]
現在我們需要找一家基礎設施充分到位、愿意盡快與我們合作的礦池。我們應該找哪家礦池?這家礦池的哪位聯絡人能迅速做出技術決策,幫助我們爭分奪秒執行這一行動?
我們想到了星火礦池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個SBTLBT代幣轉移給Lien團隊,他們可以將其提交給最終交易,將這些代幣再轉換成ETH。
通過將可以無限鑄造的SBTLBT代幣轉移給Lien團隊而不是ETH,我們使用了更多交易作為障眼法,迷惑廣義強迫者的攻擊,能夠讓960萬美元的收入一直不會進入我的腰包,片刻也不可以。
我們生成四個簽名交易后,Sam和我花了大量時間、利用各種多方交易模擬工具驗證其連環行動。總數據量不到1.5KB的這四個交易程序,就是拯救960萬美元資產的殺器,保障在星火礦池捕獲這些交易之前不會被任何人先知先覺。
我用一筆無意義的交易測試了星火礦池的白帽端點,其執行過程毫無偏差:該交易不會在mempool中看到,然后突然出現在星火礦池的一個區塊中!就像眼睜睜看著水蒸氣直接變成了冰,中間令人討厭的液化過程完全看不到!
我們調整了交易生成腳本,將交易直接提交給星火礦池的新端點,現在該是行動的時刻了。我猶豫了一會兒,但這絕對是我們能做到的最好的努力。我們可能會損失掉這960萬美元,但不會后悔:我在IntelliJ中點擊了「運行」。我不確定為什么,但我之前預計整個過程會花點時間,就像節點會了解情況的嚴重性,然后在其中消耗一些時間。但實際上它沒有;交易以毫秒為單位發送。
Zoom通話中的每個人都開始瘋狂刷新Etherscan,我懷疑Etherscan團隊是否看到了這3分鐘的流量高峰。由于只有星火礦池有交易,并且星火礦池的哈希率中只有一部分專用于此目的,我們能做的只能冒著冷汗焦急等待。每一個其他礦工挖出的每個區塊都讓我們膽顫心驚。Zoom電話會中會有人伴隨著緊張的笑聲念出挖出區塊的礦工名稱。我們的交易被寫入區塊之前大約會產生15個區塊,我們卻感覺度日如年,像是經歷了幾個小時,但最終,我們完成了完美無缺的交易:依次挖出,沒有回滾。
我們如釋重負地看著越來越多的區塊疊加在我們的區塊之上,對區塊重組的擔憂迅速消失。Lien團隊現在擁有足夠的SBTLBT代幣來清算整個系統的資金,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「黑暗森林」一文,你確實應該讀一下。
來源鏈接:samczsun.com
DeFi有泡沫嗎?有,但誰又沒有呢?如果有泡沫,DeFi的泡沫肯定不是最大的那個!截止到藍狐筆記寫稿時,按照Coingecko的統計,DeFi市值大約是135億美元,XRP市值大約104億美元.
1900/1/1 0:00:00親愛的BKEXer:?? ??? BKEXGlobal即將上線DIP,詳情如下:上線交易對:DIP/USDT??充值功能開放時間:已開放交易功能開放時間:2020年9月28日11:30提現功能開.
1900/1/1 0:00:00尊敬的EXX用戶: ????EXX將于香港時間2020年9月29日11:30首發上線世界共識鏈WSC項目,并于2020年9月29日16:00開放WSC/USDT交易市場.
1900/1/1 0:00:00且聽風吟,靜待花開,流年已亡,夏日未到,種花的人變成了看花的人,觀望的人變成了交易的人,行情就像倒在掌心的水,不論你攤開還是緊握,終究還是會從指縫間流逝,利潤沒有等你,是我忘了帶你走.
1900/1/1 0:00:009月17日Uniswap發行UNI,成了圈內最為轟動的大事,我們也在隔天發文《Uniswap發萬元“紅包”:一個篩選你當前投資水平的大事件》.
1900/1/1 0:00:002020年最大的看點,毫無疑問是Filecoin,這個逆勢募資2.57億美元的項目被公認為是行業里的下一個藍海,IPFS已火爆幾年,遲遲未上線,十足引爆了投資者的眼球.
1900/1/1 0:00:00