header-langage
简体中文
繁體中文
English
Tiếng Việt
한국어
日本語
ภาษาไทย
Türkçe
掃碼下載APP
Partnered With:

這份Solana防釣魚指南請收好

閱讀本文需 17 分鐘
騙子利用Solana與EVM的機制不同,從而以不同的「代幣或授權轉移」的方式進行釣魚活動。
原文標題:《GoPlus:Solana 防釣魚指南》
原文來源:GoPlus Security


近期Solana 的市值水漲船高,一度超越BNB 排名全球前三,巨大的財富效應吸引了大量的活躍玩家,更吸引到了大量Wallet Drainer(錢包釣魚)團夥從EVM 的鏈轉入Solana,針對Solana 的釣魚網站、空投詐騙開始被大規模的部署,已造成大量用戶損失慘重。近日GoPlus 安全團隊分析了多筆Solana 的釣魚事件,發現詐騙團夥利用Solana 目前部分錢包的安全基礎設施不完善的情況,快速升級空投誘騙、實施社交帳號竊取,對此GoPlus 總結如下常見的Solana 的釣魚攻擊手法,幫助使用者有效避免相關釣魚事件,減少資產損失。


攻擊型


在近期的幾起釣魚事件中,GoPlus 發現釣魚團夥大多是以「誘騙領取空投」、「假計畫網站」、「免費抽獎」、「透過NFT 空投引導進入」等,這些方式和EVM 常見的幾種釣魚引導方式幾乎一致,主要區別是騙子利用Solana 與EVM的機制不同,從而以不同的“代幣或授權轉移”的方式進行釣魚活動。以下是幾種我們觀察到的不同的轉移攻擊方式。



誘導轉移原生代幣Sol


這種類型的攻擊方式是最簡單的,詐騙團隊在用戶鏈接完錢包後會在前端計算出當前所有$SOL 的餘額,並且利用SystemProgram.transfer 的功能直接完成代幣的轉移,以某個釣魚網站舉例,該網站顯示了一個Swap 的介面UI,用戶往往以為是以低價可以購買到某種代幣


>

但實際上執行的只是單純的$SOL 的轉移




除了盜取原生代幣$SOL 之外,騙子可以在同一筆交易簽章中同時竊取所有目前錢包持有的Token 資產。在 Solana 上的每一筆交易都可以由多個 Instruction 組成,每一個 instruction 可以完成一個單獨的邏輯,例如轉帳、程式的互動以及 Account 的創建等等。這就意味著,釣魚團夥完全有能力可以在同一筆交易中塞入多個操作指令,舉例來講,如果用戶持有三個不同的Token,那麼釣魚網站只需要在代碼中往同一筆交易中塞入三個Token 的分別的轉帳指令即可。這樣一來就不需要單獨騙取某一個資產,而是可以利用這個特性完成一次性的錢包洗劫。就像第一種誘導一樣,駭客也是透過各種手段矇騙用戶點擊按鈕進行交易,我們可以看到,該類型交易將會一次性轉走所有資產,不僅包含原生$SOL 代幣,同時包括NFT 類型資產,也包含代幣類型資產。這裡詐騙團隊主要利用了 Solana SPL Token 的 createTransferCheckedInstruction 完成對非原生資產的轉移 instruction 建構。



Phantom 交易模擬


image/quality,q_50/format,webp">



即使用戶點擊了Ignway依舊可透過交易模擬顯示出餘額的變化



注意


/p>

以上三種類型的攻擊手段目前大部分的主流Solana 都已經透過交易模擬能夠實現對於結果的預測,用戶能夠很清晰的看到點擊後的餘額變化,因此只要用戶耐心仔細的查看每一次的交易變化結果,就可以相對來說規避部分釣魚風險,這是因為Solana 的官方JSON RPC 的介面中就能夠提供「交易模擬」的能力。但是,隨著釣魚詐騙技術的升級,我們也發現了一些非常不易察覺的釣魚手法。


騙取代幣授權


對於熟悉EVM 的使用者而言,代幣授權是一個常見的操作,但在Solana 上,這一操作有所不同。在 Solana 網路中,騙子會利用使用者對 EVM 授權機制的誤解來實施詐騙。釣魚網站透過誘導使用者進行看似正常的互動操作,實際上卻在背後透過 createApproveCheckedInstruction 執行了授權交易 Delegate。這種手法的關鍵在於,它不直接轉移資產,而是透過賦予攻擊者控制使用者資產的權限。這類攻擊通常隱藏在誘人的互動介面後,如假裝進行投票、質押等,實際上卻在悄無聲息地更改帳戶的授權設定。


一旦攻擊者獲得了對使用者資產的控制權限,他們便可以隨時操縱這些資產,包括轉移或交易。這種類型的攻擊往往不易被及時發現,因為它並沒有立即產生資產轉移。這類的攻擊也往往影響面最廣,因為攻擊者會等到上當用戶夠多、金額夠大的時候才開始實施代幣轉移。使用者需要特別注意,任何請求更改授權設定的操作都應引起警惕,尤其是在不熟悉的網站或應用程式上。透過交易模擬能夠看到授權變化,因此不僅需要關注直接的代幣餘額變化,還要小心授權的變化導致的釣魚風險。




騙取交易。 >

Durable Nonce 是Solana 區塊鏈中的一個功能,它允許創建一個特殊的帳戶來儲存一個持久的、不會過期的nonce 值。在 Solana 中,每個交易都需要一個最近的區塊哈希(recent blockhash)作為一部分,這用於確保交易的時效性和唯一性。通常,這個區塊哈希會在大約 150 個區塊之後過期,使得交易無法被處理。 Durable Nonce 機制透過提供一個不會過期的 nonce 值,允許建立可以在更長時間內有效的交易。


在釣魚詐騙中,騙子可能會濫用 Durable Nonce 機制,誘導用戶簽署看似正常但實際上包含惡意操作的交易。由於使用了 Durable Nonce,這些交易不會因為區塊哈希過期而失效,給騙子更長的時間窗口來執行交易。例如,騙子可能會設計一個偽裝成合法操作的交易,例如參與空投或活動,但實際上交易中包含了將用戶資產轉移給騙子的指示。用戶在不知情的情況下簽署了這樣的交易,但用戶會發現在區塊上根本沒有該交易的發生,因為攻擊者只是拿到了該交易的簽名,交易本身並沒有被發送到區塊鏈上,他們可以在之後的時間隨時將交易廣播上鍊。但是,無論交易是否發生,我們發現這種類型的簽名並不會影響交易模擬的結果判斷,幾個主流錢包依舊能夠將交易本身進行模擬和解析並且告知結果,因此我們之前對於交易模擬結果的判斷還是有效的方法論。


但是,我們依舊發現了一種極其隱蔽且複雜的攻擊方法,能夠「瞞天過海」


合約升級逃避交易模擬偵測


這個方法就是結合了Durable Nonce 以及Solana 合約特有的特性- 可升級,這種攻擊手段的潛在危險性因為可升級合約的特性被進一步的加大,Durable Nonce 機制透過創建一個持有長期有效nonce 值的帳戶,允許交易在更長的時間窗口內保持有效。這意味著即使用戶在簽署交易的時候不立即發送到區塊鏈上,交易仍然可以在未來任何時候廣播和執行。攻擊者可以利用這一點,首先讓用戶簽署一個看似正常的合約交易,這個交易在簽名時看起來完全無害,即使是主流的錢包和交易模擬工具也難以在簽名時提前警告用戶。然而,在用戶簽署交易後,攻擊者成功拿到了 Durable Nonce 的簽名。此時,他們並不急著將交易廣播上鍊,而是利用 Solana 的合約升級功能,將原本正常的合約變更為惡意的版本。這種惡意合約能夠執行例如資產轉移等操作。在進行升級後,攻擊者再將簽好的交易發到區塊鏈上,來執行該惡意操作,達到自己的目的。這種類型的攻擊特別隱蔽,對用戶來說構成了極大的隱患,因為即使是經驗豐富的用戶在簽署交易時也可能無法識別出潛在的風險。為了防範這種攻擊,用戶需要對合約的信譽和歷史進行仔細審查,對任何不尋常的交易行為保持懷疑態度,避免與不明來源或新成立的合約互動。同時也希望所有 Solana 的錢包能夠注意該攻擊手段,及時的在錢包側能夠形成有效的提醒和對用戶資產的保護。


防範措施


在面對Solana 網路中的釣魚攻擊時,以下是一些綜合性的防範措施,可以幫助最大限度地減少風險:


提高安全意識: 對於任何加密貨幣相關的交易,始終保持高度警惕。了解 Solana 釣魚攻擊的常見手段,例如誘導轉移代幣、代幣帳戶所有權轉移、騙取交易簽名等。


仔細檢查交易細節: 在進行任何交易之前,請認真檢查交易的具體內容。對於使用 Durable Nonce 或涉及合約互動的交易,應額外小心。


使用交易模擬功能: 利用錢包提供的交易模擬功能,仔細審查交易模擬結果。但要注意,這不是萬無一失的保護措施,因為有部分交易模擬失效的情況。


專注於授權變化: 對於非交易後代幣餘額發生變化的操作,也要保持警惕。在不熟悉的網站或應用程式上,特別要小心授權變更的操作。


定期取消無用授權:透過 Solana Revoke 的工具,定期取消一些無用的授權,保障資產的安全。


定期更新知識: 定期更新自己關於區塊鏈和加密貨幣的知識,特別是關於新出現的釣魚手段和防範策略。


保持軟體更新: 使用的錢包和相關軟體應保持最新狀態,以確保擁有最新的安全特性和修復。


備份和保護私鑰: 保護好自己的私鑰和重要訊息,避免在不安全的地方儲存或分享。


同時,GoPlus 安全團隊呼籲Solana 公鍊及其生態深度關切用戶安全,加速提升用戶安全的基礎設施建設,提供用戶更安全的交易環境,從而實現生態的穩定與繁榮。


原文連結


歡迎加入律動 BlockBeats 官方社群:

Telegram 訂閱群:https://t.me/theblockbeats

Telegram 交流群:https://t.me/BlockBeats_App

Twitter 官方帳號:https://twitter.com/BlockBeatsAsia

選擇文庫
新增文庫
取消
完成
新增文庫
僅自己可見
公開
保存
糾錯/舉報
提交