
原文來源: Buidler DAO
隨著美聯儲不斷加息縮表,加密市場流動性不斷減少,市場活躍度持續低迷進入熊市。作為市場上僅剩的這些「流動性」也就是我們這些韭菜的錢包也成為了騙子們虎視眈眈的對象。加密世界是個黑暗森林,Crypto 帶來財產所有權的同時也意味著一旦財產丟失或私鑰洩露是幾乎沒有任何法律途徑或方法可以挽回。
為什麼寫這篇文章呢?
因為菠菜的錢包被盜了,資產幾乎被洗劫一空,諷刺的是,作為一個寫過錢包安全相關的科普文章的老韭菜也翻車了。
雖然失去了陪伴許久的錢包和內部資產,但遭遇這件事情后菠菜真真切切感受到了社區的溫暖,並且得到了許多「家人們」的關心和幫助,甚至在社區一位小伙伴的幫助下在黑客手裡搶救回來了近30 個僥倖存活下來的NFT(不是已經被盜走的NFT)。雖然損失的資產無法找回了,但在本次「菠菜錢包被盜事件」中,有許多經歷是可以科普的,希望這篇文章可以給行業提供一個受害活案例並給其他小伙伴敲響警鐘,防止「慘案」再次發生。
文章速覽:
01/ 我的錢包是如何被盜的?
02/ 黑客是如何拿到我私鑰的?
03/ 我是如何在黑客手裡搶救NFT 的?
04/ 如何實現同一區塊完成所有操作?
一級標題
一級標題
我的錢包是如何被盜的?
某天,推特上有一個人私信我,起初我並沒有提起警覺,因為騙子的Twitter 賬號看起來像是一個正常用戶。開始只是進行了一些閒聊,之後他開始問我是否願意為cheelee 這個項目輸出內容並支付我報酬,且索要了一些我的作品進行驗證,於是我把我的telegram 給到了他,之後便在telegram 上給我發了關於如何輸出內容的一些細節和兩個文件。下載並點擊文件後什麼都沒有發生便意識到不對勁,於是打開小狐狸查看,不出所料,錢包被盜,所有的資產都被盜走,NFT 也被直接賣給offer 換成ETH 轉移。一級標題
一級標題
黑客是如何拿到我私鑰的?
我的私鑰加密保存在Chrome 的小狐狸中,黑客是如何獲取到我的私鑰的?這得從Chrome 這個瀏覽器說起:你敢想像嗎?這個佔據著全球66% 市場份額的Chrome 瀏覽器居然存在一個巨大的安全漏洞!這個漏洞是什麼呢?如果你在下圖路徑打開你的Chrome 瀏覽器的Default 文件夾,你會發現一個叫Login Data 的文件,這個文件存儲著你在Chrome 上保存的每一個密碼,但如果你想直接打開去讀它的話你會發現它是不可讀的,顯示的是一堆亂碼,因為這個文件被AES 算法加密過,暴力破解需要破到天荒地老,那麼其實你在Chrome 上保存的密碼都是十分安全的,但問題出在哪?
如果你再往前翻一個目錄在User Data 中你會發現這樣一個文件叫Local State,如果你打開他之後在裡面搜索「encrypted」,你會發現後面有一串密鑰,這個密鑰是什麼?就是需要暴力破解幾百年才能破解的Login Data AES 算法解密的密鑰串!這真是離譜他媽給離譜開門,離譜到家了!這相當於什麼?
相當於你用世界上最堅固的材料做了一個牢不可破的保險櫃存放密碼但你卻把保險櫃鑰匙放在保險櫃旁邊,賊進來就直接拿著鑰匙打開保險櫃了!並且這串密鑰串還是通過Windows 系統本身的密碼生成工俱生成的,與生成的電腦ID 是唯一綁定關係,也就是說加密解密都只能在這台電腦上進行,Chrome 把解密的密鑰串就這麼明文保存在了本地,這樣黑客只需要拿著密鑰串進行解密就可以拿到我的所有密碼。
MetaMask 的密碼並不保存在Chrome 的密碼文件中,為什麼我的私鑰會洩露呢?一級標題一級標題
我是如何在黑客手裡搶救NFT 的?
在錢包被盜後,黑客在OpenSea 上賣出了所有帶有offer 的NFT 並轉移走了所有的資金,萬幸的是有一些NFT 倖存了下來,其中除了ENS 和一些沒offer 的NFT 外,有一個剛mint 不久的DeBox 小蛇沒有被賣掉,可能因為Opensea 上存在一些BUG,這個NFT 是我另外一個白單地址mint 完後轉過去的,不知道什麼原因沒有被顯示出來,這使得它逃過了一劫,於是乎當我嘗試往錢包中轉gas 的時候,我發現我的錢包遭遇了「清道夫攻擊」,也可以稱為搶gas 機器人,我轉進去的Gas 費被瞬間轉走了!
什麼是搶Gas 機器人?就是一旦你往錢包中轉Gas 費,機器人就會立馬檢測到並將gas 立馬轉移走,這類機器人通常活躍在被洩露私鑰的錢包中。這個機器人也活躍在一種故意洩露私鑰的騙局,就是騙子會故意洩露一個錢包裡面有U 的錢包私鑰,但這個U 是被合約拉黑了的無法轉走,騙子盯上的就是你企圖轉走而往裡面轉的Gas,下圖就是一個案例(在Tron 鏈上),感興趣的小伙伴可以進去看看,但別往裡面打Gas 噢。
我的錢包在被搶gas 機器人盯上之後就意味著我無法轉移走我倖存的那些NFT,因為我沒辦法在錢包中轉入gas 去支付我轉移走NFT 的操作,難道說我的NFT 要永遠被困在錢包裡了嗎?就在這一籌莫展之時,社區的力量體現出來了,Buidler DAO 社區中有一位小伙伴站了出來幫助我在搶gas 機器人手中把倖存的NFT 給搶回來了!
人間有真情人間有真愛!
那麼這位小伙伴到底是怎麼做到的呢?
在以太坊中,
在以太坊中,一筆交易的處理速度取決於你支付了多少Gas 費,如果你想交易被更快的處理就需要支付更多的Gas 費,Gas 費的均價會隨著以太坊的交易需求量而變化,如果按照正常情況下的Gas 費用來算的話,處理一筆交易所需要的時間大概為30 秒,這就意味著我如果想在搶Gas 機器人搶走Gas 之前把NFT 搶救走就需要在36-30 = 6 秒之內完成我的操作,這幾乎是一個不可能完成的事情,一級標題
一級標題
如何實現同一區塊完成所有操作?
這就需要使用到Flashbots 的searcher-sponsored-tx 功能,這個功能大部分都被用在私鑰洩露被機器人監控的錢包上。
懂技術的小伙伴可以直接在Github 上查看:https://github.com/flashbots/searcher-sponsored-tx
一級標題
一級標題
什麼是MEV? MEV 給以太坊帶來了什麼影?
最大可提取價值(MEV) 是指通過在區塊中添加和排除交易並更改區塊中的交易順序,可以從區塊生產中提取的超過標準區塊獎勵和燃料費用的最大值。怎麼理解呢?舉個例子,首先我們要知道在以太坊中一個交易發起後,這筆交易會被放在mempool(一個保存待執行交易的池子)中等待被礦工打包,那麼礦工就可以看到mempool 中的所有交易,而礦工的權利是很大的,礦工掌握了交易的包含、排除和順序。如果有人通過支付更多的Gas 費賄賂礦工調整了交易池中的交易順序而獲利,這就屬於一種最大可提取價值MEV。
你可能在想礦工換一個交易順序怎麼就可以獲利了呢?
有一種MEV 手段叫「三明治攻擊」或「夾子攻擊」,這種提取MEV 的手段是通過在鏈上監控大額的DEX 交易,比如有人想在Uniswap 上購買價值100 萬美金的山寨幣,而這一筆交易會將這個山寨幣的價格拉高很多,在這筆交易被放入mempool 的時候,監控機器人就可以檢測到這一筆交易,這時機器人就賄賂打包這個區塊的礦工將一筆買入這個山寨幣的操作插隊在這個人前面,隨後在這個人的購買操作之後進行一個賣出的操作,就像一個三明治一樣把這個進行大額DEX 交易的人夾在中間,圖片描述
圖片描述
數據來源:https://explore.flashbots.net/
Flashbots 的出現照亮了MEV 這個黑暗森林,Flashbots 在MEV 上做了許多的研究並開發了一些產品在一定程度上減少了MEV 給以太坊帶來的負面影響,雖然Flashbots 無法解決MEV 帶來的問題,但在以太坊的新分片方案Danksharding 中以太坊提出了一種新的機制來解決MEV 問題(預告一下這也是我下一篇文章會寫的內容),如果對Flashbots 和MEV 感興趣的小夥伴可以查看以下鏈接。
最後有什麼想說的嗎?
錢包被盜後看到所有的加密資產和喜歡的NFT 都沒了之後心裡十分難受的,身子最喜歡的DeBox 一家子都沒了。感謝社區的小伙伴在知道後一直陪著我幫我出謀劃策,甚至搶救完NFT 後DeBox 項目方空投給菠菜一個NFT 作為安慰,DeBox 真的是一個有溫度的團隊,瘋狂打Call。
關於錢包安全問題真的不可以大意,在此之前我也從未想過自己會成為被盜者之一。文章臨近截稿時看到一個KOL NFT GOD 的錢包也遭遇到了黑客攻擊失去了所有的資產,並且所有的社交帳戶都洩露被利用發了詐騙信息,原因是下載了谷歌廣告鏈接中的虛假軟件,類似於曾經的假TP 錢包騙局,所以,原文鏈接
原文鏈接