原文來自Rick Maeda
編譯|Odaily星球日報Golem( @web3_golem )
一個事實是,大多數加密用戶並非透過複雜的漏洞被駭,而是透過點擊、簽署或信任錯誤的事物而遭受攻擊,本報告將詳細分析這些日常發生在用戶身邊的安全攻擊。
從釣魚工具包和錢包竊取工具到惡意軟體和虛假客服詐騙,加密行業大多數攻擊都是直接針對用戶而非協議,這使得常見的攻擊集中在人為因素而非代碼層面。因此本報告概述了針對個人用戶的加密貨幣漏洞,不僅涵蓋一系列常見漏洞,還有實際案例解析和用戶日常需要警惕的事項。
須知:你就是被攻擊對象
加密貨幣在設計上具有自架的特性。但這種基礎屬性和核心產業價值觀卻常常會讓你(使用者)成為單點故障。在許多個人加密貨幣資金損失的案例中,問題並非是協議漏洞,而是一次點擊、一封私訊、一次簽名。一個看似無關緊要的日常任務,一時的信任或疏忽,都有可能改變一個人的加密貨幣體驗。
因此,本報告並非針對智慧合約邏輯問題,而是針對個人的威脅模型,剖析使用者在實務上如何被利用,以及如何因應。報告將聚焦在個人層面的漏洞攻擊:網路釣魚、錢包授權、社會工程、惡意軟體。報告最後也將簡要介紹協議層面的風險,以概述加密貨幣領域中可能發生的各種漏洞。
個人面臨的漏洞攻擊方式解析
在無需許可的環境中發生的交易具有永久性和不可逆性,通常沒有中介機構的介入,再加上個人用戶需要在持有金融資產的設備和瀏覽器上與匿名交易對手進行交互,這使得加密貨幣成為黑客和其他犯罪分子饞涎的狩獵場。
以下是個人可能面臨的各種漏洞攻擊類型,但讀者應注意,雖然本節涵蓋了大多數漏洞攻擊類型,但並非詳盡無遺。對於不熟悉加密貨幣的人來說,這份漏洞攻擊清單可能令人眼花撩亂,但其中很大一部分都是網路時代已經發生過的「常規」漏洞攻擊,並非加密貨幣產業獨有。
社會工程學攻擊
依靠心理操縱來欺騙用戶,使其危及個人安全的攻擊。
網路釣魚:虛假電子郵件、訊息或網站模仿真實平台竊取憑證或助記詞。
冒充詐騙:攻擊者冒充 KOL、專案負責人或客服人員,以獲取信任並竊取資金或敏感資訊。
助記詞詐騙:使用者被誘騙透過虛假的復原工具或贈品洩漏恢復助記詞。
假空投:用免費代幣誘騙用戶,引發不安全的錢包互動或私鑰分享。
虛假工作機會:偽裝成就業機會,但旨在安裝惡意軟體或竊取敏感資料。
拉高出貨騙局:透過社群媒體炒作,向毫無戒心的散戶投資者拋售代幣。
電信和帳戶接管
利用電信基礎設施或帳戶級漏洞繞過身份驗證。
SIM 卡交換:攻擊者劫持受害者的手機號碼以攔截雙重身分驗證(2FA) 代碼並重設帳戶憑證。
憑證填充:重複使用洩漏的憑證存取錢包或交易所帳戶。
繞過雙重身分驗證:利用弱身份驗證或基於簡訊的身份驗證來取得未經授權的存取權限。
會話劫持:透過惡意軟體或不安全的網路竊取瀏覽器會話,從而接管已登入的帳戶。
駭客曾利用 SIM 卡交換掌握了美 SEC 推特並發布虛假推文
惡意軟體和裝置漏洞
入侵用戶設備以取得錢包存取權限或篡改交易。
鍵盤記錄器:記錄鍵盤輸入以竊取密碼、PIN 碼和助記詞。
剪貼簿劫持程式:將貼上的錢包位址替換為攻擊者控制的位址。
遠端存取木馬(RAT):允許攻擊者完全控制受害者的設備,包括錢包。
惡意瀏覽器擴充功能:被入侵或偽造的擴充功能會竊取資料或操縱交易。
假錢包或應用程式:使用時會盜取資金的假冒應用程式(App 或瀏覽器)。
中間人(MITM) 攻擊:攔截並修改使用者與服務提供者之間的通信,尤其是在不安全的網路上。
不安全的WiFi 攻擊:公共或受感染的WiFi 可在登入或傳輸過程中攔截敏感資料。
假錢包是針對加密貨幣新手的常見騙局
錢包級漏洞
針對用戶如何管理或與錢包互動以及簽署的攻擊。
資金惡意授權耗盡:惡意智能合約利用先前的代幣授權來耗盡代幣。
盲簽名攻擊:用戶簽署模糊的交易條件,導致資金損失(例如,從硬體錢包)。
助記詞竊盜:透過惡意軟體、網路釣魚或因不良儲存習慣洩露助記詞。
私鑰洩漏:不安全的儲存(例如,在雲端硬碟或純文字筆記中)導致金鑰洩漏。
硬體錢包洩漏:被篡改或偽造的設備將私鑰洩漏給攻擊者。
智能合約與協定級風險
源自於與惡意或易受攻擊的鏈上程式碼互動的風險。
流氓智能合約:互動時會觸發隱藏的惡意程式碼邏輯,導致資金被竊取。
閃電貸攻擊:利用無抵押貸款來操縱價格或協議邏輯。
預言機操縱:攻擊者篡改價格訊息,利用依賴錯誤資料的協定進行攻擊。
退出流動性騙局:創建者設計只有他們才能提取資金的代幣/池,讓用戶陷入困境。
女巫攻擊:利用多個假身分擾亂去中心化系統,尤其是治理或空投資格。
項目和市場操縱騙局
與代幣、DeFi 項目或NFT 相關的騙局。
Rug 騙局:專案創始人在籌集資金後消失,留下毫無價值的代幣。
虛假項目:虛假 NFT 合集誘使用戶進行詐騙或簽署有害交易。
粉塵攻擊:利用微小的代幣轉帳來使錢包匿名化,並識別網路釣魚或詐騙目標。
網路和基礎設施攻擊
利用使用者所依賴的前端或DNS 級基礎架構。
前端劫持/DNS 欺騙:攻擊者將使用者重定向到惡意接口,以竊取憑證或觸發不安全的交易。
跨鏈橋漏洞:在跨鏈橋傳輸過程中竊取用戶資金。
物理威脅
現實世界中的風險,包括脅迫、竊盜或監視。
人身攻擊:受害者被脅迫轉移資金或洩漏助記詞。
實體竊盜:竊取裝置或備份(例如硬體錢包、筆記本)以取得存取權限。
肩窺:在公開或私人場合觀察或拍攝使用者輸入敏感資料。
需要注意的關鍵漏洞
雖然用戶被黑的方式有很多種,但有些漏洞更常見。以下是持有或使用加密貨幣的個人最應該了解的三種漏洞攻擊,以及如何預防它們。
網路釣魚(包括假錢包和空投)
網路釣魚比加密貨幣早誕生幾十年,這個術語出現於20 世紀90 年代,用來描述攻擊者透過虛假電子郵件和網站「釣魚」來獲取敏感資訊(通常是登入憑證)。隨著加密貨幣作為一種平行金融系統出現,網路釣魚自然演變為以助記詞、私鑰和錢包授權為目標。
加密貨幣網路釣魚尤其危險,因為它沒有追索權:沒有退款,沒有詐欺保護,也沒有可以撤銷交易的客服。一旦你的金鑰被盜,你的資金就等於沒了。同樣重要的是要記住,網路釣魚有時只是更大範圍攻擊的第一步,真正的風險並非最初的損失,而是隨之而來的一系列損害,例如,被盜用的憑證可以讓攻擊者冒充受害者並欺騙他人。
網路釣魚是如何運作的?
網路釣魚的核心是利用人類的信任,透過呈現虛假的可信介面或冒充權威人士來誘騙用戶自願交出敏感資訊或批准惡意操作。主要的傳播途徑有以下幾種:
網路釣魚網站
錢包(例如MetaMask、Phantom)、交易所(例如Binance)或dApp 的虛假版本
通常透過Google 廣告推廣或透過Discord/X 群組分享,旨在使其看起來與真實網站一致
用戶可能會被提示“導入錢包”或“恢復資金”,從而竊取他們的助記詞或私鑰
釣魚郵件和訊息
假官方通訊(例如,「緊急安全更新」或「帳戶被盜」)
包含指向虛假登錄門戶的鏈接,或引導你與惡意代幣或智能合約進行交互
有些釣魚甚至允許你轉入資金,但幾分鐘後資金就會被偷走
空投詐騙,向錢包(尤其是在EVM 鏈上)發送虛假代幣空投
點擊代幣或嘗試交易代幣觸發惡意合約交互
秘密請求無限代幣批准,或透過簽名的有效載荷竊取用戶原生代幣
網路釣魚案例
2023 年6 月,北韓Lazarus 集團攻擊了Atomic Wallet,這是加密貨幣歷史上最具破壞性的純網路釣魚攻擊之一。該攻擊入侵了超過5, 500 個非託管錢包,導致超過1 億美元的加密貨幣被盜,且無需用戶簽署任何惡意交易或與智能合約互動。這次攻擊僅透過欺騙性介面和惡意軟體提取助記詞和私鑰——這是基於網路釣魚的憑證竊取的典型案例。
Atomic Wallet 是一款支援500 多種加密貨幣的多鏈非託管錢包。在此次事件中,攻擊者發起了一場協同式網路釣魚活動,利用了用戶對該錢包的支援基礎設施、更新流程和品牌形象的信任。受害者被電子郵件、虛假網站和木馬軟體更新所誘惑,所有這些攻擊都旨在模仿Atomic Wallet 的合法通訊。
駭客採取的網路釣魚方式包括:
偽裝Atomic Wallet 客戶支援或安全警報的虛假電子郵件,敦促用戶採取緊急行動
模仿錢包恢復或空投領取介面的欺騙性網站(例如`atomic-wallet[.]co`)
透過Discord、電子郵件和受感染的論壇分發惡意更新,這些更新要么將用戶引導至釣魚頁面,要么透過本地惡意軟體提取登入憑證
一旦使用者在這些詐騙介面中輸入12 或24 個單字的助記詞,攻擊者便獲得了對其錢包的完全存取權。此漏洞無需受害者進行任何鏈上互動:無需錢包連接、無需簽名請求,也無需智能合約參與。相反,它完全依賴社會工程學以及用戶在看似可信的平台上恢復或驗證錢包的意願。
錢包竊取器和惡意授權
錢包竊取器是一種惡意智慧合約或dApp,其目的是從用戶錢包中提取資產,方式並非竊取私鑰,而是誘騙用戶授權存取代幣或簽署危險交易。與釣魚攻擊(即竊取使用者憑證)不同,錢包竊取器利用的是權限-而權限正是Web3 信任機制的核心。
隨著DeFi 和Web3 應用成為主流,像MetaMask 和Phantom 這樣的錢包推廣了「連接」 dApp 的概念。這帶來了便利,但也帶來了巨大的攻擊漏洞。 2021-2023 年,NFT 鑄幣、虛假空投以及一些dApp 開始將惡意合約嵌入到原本熟悉的用戶界面中,用戶通常會因興奮或分心,連接錢包並點擊“批准”,卻渾然不知自己授權了什麼。
攻擊機制
惡意授權利用區塊鏈標準(例如ERC-20 和ERC-721/ERC-1155)中的權限系統。它們誘騙使用者授予攻擊者對其資產的持續存取權限。
如 ERC-20 代幣中的 approve(addressspender, uint 256 amount) 函數允許「支出者」(例如,DApp 或攻擊者)從使用者的錢包中轉移指定數量的代幣。 NFT 中的 setApprovalForAll(addressoperator, bool approved) 函數授予「操作者」轉移集合中所有NFT 的權限。
這些批准是DApp 的標準配置(例如,Uniswap 需要獲得批准才能兌換代幣),但攻擊者會惡意利用它們。
攻擊者授權的方式
欺騙性提示:釣魚網站或受感染的DApp 會提示用戶簽署一項標記為「錢包連線」、「代幣兌換」或「NFT 認領」的交易。該交易實際上會呼叫攻擊者位址的approve 或setApprovalForAll 方法。
無限批准:攻擊者通常會要求無限的代幣授權(例如,uint 256.max)或setApprovalForAll(true),從而完全控制用戶的代幣或NFT。
盲簽:某些DApp 讓使用者對不透明資料進行簽名,這使得惡意行為難以被發現。即使是像Ledger 這樣的硬體錢包,顯示的詳細資訊可能看似無害(例如「批准代幣」),但卻隱藏了攻擊者的意圖。
攻擊者在獲得授權後可能會立即利用授權資訊將代幣/NFT 轉入其錢包,也可能等待(有時數週或數月)才盜取資產,以降低懷疑度。
錢包耗盡程式/惡意授權案例
Monkey Drainer 騙局主要發生於2022 年和2023 年初,它是一個臭名昭著的「耗盡程式即服務」網路釣魚工具包,負責透過欺騙性網站和惡意智慧合約竊取數百萬加密貨幣(包括NFT)。與依賴於收集用戶助記詞或密碼的傳統網路釣魚不同,Monkey Drainer 透過惡意交易簽名和智慧合約濫用進行操作,使攻擊者無需直接竊取憑證即可提取代幣和NFT。透過誘騙用戶簽署危險的鏈上批准,Monkey Drainer 在2023 年初關閉之前,已在數百個錢包中竊取了超過430 萬美元的資金。
著名鏈上偵探ZachXBT 揭露Monkey Drainer 騙局
該工具包在低技能攻擊者中頗受歡迎,並在地下Telegram 和暗網社群中大力推廣。它允許關聯方複製虛假的鑄幣網站,冒充真實項目,並配置後端以將已簽署的交易轉發到中心化提款合約。這些合約旨在利用代幣權限,在用戶不知情的情況下簽署訊息,透過setApprovalForAll()(NFT)或permit()(ERC-20 代幣)等函數授予攻擊者地址存取資產的權限。
值得注意的是,該互動流程避免了直接的網路釣魚,受害者不會被要求提供私鑰或助記詞。相反,他們會與看似合法的dApp 進行交互,通常是在帶有倒數計時或熱門品牌宣傳的鑄幣頁面上。一旦連接成功,用戶就會被提示簽署一筆他們並不完全理解的交易,這些交易通常被通用的授權語言或錢包用戶介面混淆掩蓋。這些簽名並非直接轉移資金,而是授權攻擊者隨時進行轉移。獲得權限後,耗盡器合約可以在單一區塊內執行批量提現。
Monkey Drainer 方法的一大特點是其延遲執行,而被盜資產通常會在數小時或數天後被提取,以避免引起懷疑並最大化收益。這使得它對擁有大額錢包或活躍交易活動的用戶尤其有效,因為他們的授權會混入正常的使用模式中。一些知名受害者包括 CloneX、Bored Apes 和Azuki 等項目的NFT 收藏家。
儘管Monkey Drainer 已於2023 年停止運營,但大概是為了“低調行事”,錢包耗盡器時代仍在不斷發展,對那些誤解或低估鏈上盲目授權威力的用戶構成持續威脅。
惡意軟體和裝置漏洞
最後,「惡意軟體和裝置漏洞」指的是更廣泛且多樣化的攻擊,涵蓋各種傳播媒介,旨在入侵使用者的電腦、手機或瀏覽器,透過欺騙方式安裝惡意軟體。其目標通常是竊取敏感資訊(例如助記詞、私鑰)、攔截錢包互動或讓攻擊者遠端控制受害者的設備。在加密貨幣領域,這些攻擊通常始於社會工程學,例如虛假的工作機會、虛假的應用程式更新或透過Discord 發送的文件,但很快就會升級為全面的系統入侵。
惡意軟體自個人電腦誕生之初就已存在。在傳統情況下,它被用於竊取信用卡資訊、收集登入資訊或劫持系統以發送垃圾郵件或勒索軟體。隨著加密貨幣的興起,攻擊者也發生了轉變,他們不再瞄準網路銀行,而是瞄準竊取交易不可逆的加密資產。
大多數惡意軟體並非隨機傳播,它需要受害者被誘騙執行。這就是社會工程學發揮作用的地方。常見的傳播方式已於本文第一節列出。
惡意軟體與裝置漏洞案例: 2022 年Axie Infinity 招募騙局
2022 年的Axie Infinity 招募騙局導致了大規模的Ronin Bridge 駭客攻擊,這是加密貨幣領域惡意軟體和裝置漏洞利用的典型案例,背後是複雜的社會工程手段。這次攻擊被歸咎於北韓駭客組織Lazarus 集團,導致約6.2 億美元的加密貨幣被盜,成為迄今規模最大的去中心化金融(DeFi) 駭客攻擊事件之一。
Axie Infinity 漏洞被傳統金融媒體通報
這次駭客攻擊是一個多階段行動,結合了社交工程、惡意軟體部署和區塊鏈基礎設施漏洞利用。
駭客冒充虛構公司的招募人員,透過領英(LinkedIn) 鎖定Sky Mavis 的員工,Sky Mavis 是Ronin Network 的營運公司。 Ronin Network 是一個與以太坊相關的側鏈,為熱門的「邊玩邊賺」區塊鏈遊戲Axie Infinity 提供支援。當時,Ronin 和Axis Infinity 的市值分別約為3 億美元和40 億美元。
攻擊者接觸了多名員工,但主要目標是一位資深工程師。為了建立信任,攻擊者進行了多輪虛假的求職面試,並以極其豐厚的薪資待遇來吸引這位工程師。攻擊者向這位工程師發送了一份偽裝成正式工作邀約的 PDF 文件。這位工程師誤以為這是招募流程的一部分,於是在公司電腦上下載並開啟了該檔案。該 PDF 文件包含一個 RAT(遠控木馬病毒),開啟後會入侵工程師的系統,使駭客能夠存取 Sky Mavis 的內部系統。此次入侵為攻擊 Ronin 網路的基礎設施提供了條件。
這次駭客攻擊導致價值 6.2 億美元的竊盜(17.36 萬 ETH 和 2,550 萬美元 USDC),最終僅追回了 3,000 萬美元。
我們該如何保護自己
雖然漏洞攻擊越來越複雜,但仍依賴一些明顯的跡象。常見的危險訊號包括:
「導入您的錢包以領取X」:任何合法服務都不會要求你提供助記詞。
未經請求的私訊:尤其指那些聲稱提供支持、資金或解決您未曾詢問的問題的幫助。
網域拼字略有錯誤:例如,metamusk.io 與metarnask.io。
Google廣告:釣魚連結經常出現在搜尋結果中的真實連結上方。
好得令人難以置信的優惠:例如“領取5 ETH”或“雙倍代幣獎勵”活動。
緊急或恐嚇策略:「您的帳戶已被鎖定」、「立即領取,否則資金損失」。
無限代幣批准:用戶應自行設定代幣數量。
盲簽名請求:十六進制有效載荷,缺乏可讀性解釋。
未經驗證或模糊的合約:如果代幣或dApp 是新的,請檢查你正在批准的內容。
緊急UI 提示:典型的施壓策略,例如「您必須立即簽署,否則將錯失良機」。
MetaMask 莫名簽名彈跳窗:尤其是在需求不明確、無gas 交易或包含您不理解的函式呼叫的情況下。
個人保護法則
為了保護自己,我們可以遵守以下黃金法則:
切勿以任何理由與任何人分享助記詞。
收藏官方網站:永遠直接導航,切勿使用搜尋引擎搜尋錢包或交易所。
不要點擊隨機空投代幣:尤其是對沒有參與過的項目。
避免未經授權的私訊:合法項目很少會先私訊……(除非他們確實會這樣做)。
使用硬體錢包:它們可以降低盲簽的風險並防止金鑰洩漏。
啟用網路釣魚防護工具:使用PhishFort、Revoke.cash 和廣告攔截器等擴充功能。
使用唯讀瀏覽器:Etherscan Token Approvals 或Revoke.cash 等工具可以顯示您的錢包擁有哪些權限。
使用一次性錢包:創建一個新的錢包,其中包含零或少量資金,先測試鑄幣或連結。這將最大限度地減少損失。
分散資產:不要將所有資產放在一個錢包。
如果你已經是經驗豐富的加密貨幣用戶,可以遵循以下更高級的法則:
使用專用設備或瀏覽器設定檔進行加密貨幣活動,此外還可以使用專用設備開啟連結和私訊。
查看Etherscan 的代幣警告標籤,許多詐騙代幣已被標記。
將合約地址與官方專案公告進行交叉驗證。
仔細檢查URL:尤其是在電子郵件和聊天中,細微的拼字錯誤很常見。許多即時通訊應用程序,當然還有網站,都允許使用超連結——這使得有人可以直接點擊 www.google.com 這樣的連結。
注意簽名:在確認之前,請務必先解碼交易(例如,透過MetaMask、Rabby 或模擬器)。
結語
大多數用戶認為加密貨幣中的漏洞是技術性的,不可避免的,尤其是那些剛進入該行業的用戶。雖然複雜的攻擊方法可能確實如此,但很多時候最初的步驟是以非技術方式針對個人,這使得後續的攻擊可以預防。
這個領域絕大多數的個人損失並非源於某些新奇的代碼漏洞或晦澀難懂的協議漏洞,而是源於人們在未讀文件的情況下簽名,將錢包導入虛假應用程序,或輕信一個看似合理的 DM。這些工具或許很新,但其伎倆卻源遠流長:欺騙、催促、誤導。
自主託管和無需許可的特性是加密貨幣的優勢,但使用者需要記住,這樣的特性也使風險變高。在傳統金融領域,你被騙了,可以打電話給銀行;而在加密貨幣領域,你被騙了,遊戲大概就結束了。