当黑客瞄準你的「習慣」,如何從源頭降低地址投毒風險?
- 核心觀點:地址投毒攻擊並非利用技術漏洞,而是利用用戶複製地址時的操作習慣,透過偽裝地址和極小額交易污染帳單記錄,誘導用戶誤轉資產。這種攻擊因 Fusaka 升級後 Gas 費降低而激增,需要錢包將安全防護從「事後提醒」前置到「操作節點」。
- 關鍵要素:
- 攻擊機制:攻擊者生成與用戶常用地址高度相似的偽裝地址,透過 0 金額或極小額交易將其混入用戶歷史記錄,誘導用戶在未來轉帳時誤複製。
- 攻擊規模:據 Blockaid 統計,2026 年 1 月鏈上投毒嘗試量達 340 萬次,較 2025 年 11 月(62.8 萬次)增長 5.5 倍,因 Fusaka 升級大幅降低 Gas 費。
- 脆弱性根源:用戶難以逐位核對 42 位地址,且惡意交易混入正常帳單噪聲中,傳統安全提醒往往出現在「確認轉帳」晚期,而非複製地址的風險節點。
- 核心防護手段:imToken 2.19.0 透過三層防護:隱藏高風險交易減少帳單污染、在複製地址時前置提醒、在關鍵鏈路持續標記風險地址。
- 技術關鍵:採用動態感知風控能力,綜合相似性證據、成本形態證據、行為時序證據進行多因子判斷,而非依賴靜態黑名單或事後提醒。
在 Web3 世界裡,很多人對安全的第一反應,是保護好私鑰、助記詞和授權權限。
這些當然重要,但在實際使用過程中,還有一類風險並不來自私鑰洩露,也不依賴合約漏洞,而是發生在一次再普通不過的操作裡:複製地址。
地址投毒,正是利用了這一點。它不是透過破解系統獲利,而是透過偽裝、干擾和誘導,讓用戶在看似正常的轉帳流程中,把資產轉給錯誤的地址。
這類攻擊之所以棘手,不在於技術門檻有多高,而在於它精準利用了用戶在日常操作中的視覺習慣和路徑依賴。
什麼是地址投毒?
所謂地址投毒,是指攻擊者生成一個與用戶常用地址在視覺上高度相似的偽裝地址,再透過 0 金額或極小額交易,把這個地址混入用戶的歷史記錄中。
當用戶下一次需要轉帳時,如果是從歷史交易中「順手複製」地址,而沒有逐位核對完整字元,就可能誤把資產轉給攻擊者準備好的偽裝地址。
這類攻擊並不罕見。過去兩年裡,鏈上已經出現多起公開案例,證明地址投毒不僅會造成實際損失,甚至連「小額測試後再正式轉帳」這樣的習慣動作,也未必足以避免風險。
更為嚴峻的是,由於 Fusaka 升級大幅降低 Gas 費,間接導致地址投毒攻擊的邊際成本顯著下移。據 Blockaid 統計,2026 年 1 月鏈上投毒嘗試量達 340 萬次,較去年 11 月(62.8 萬次)增長了 5.5 倍,投毒頻率呈現爆發式增長。
為什麼地址投毒容易讓人中招?
從原理上看,地址投毒並不複雜;真正讓它難防的,是它擊中了用戶操作中的幾個天然弱點。
1. 地址本身不適合人工核對
一串鏈上地址通常由 42 位字元組成。對大多數用戶來說,逐位核對完整地址並不是一個現實、穩定、可持續的操作方式。很多時候,人們只會看前幾位和後幾位,確認「像是那個地址」就繼續下一步。而攻擊者正是圍繞這種習慣來設計偽裝。
2. 惡意交易會混進正常交易噪音裡
地址投毒交易往往以極低金額甚至 0 金額出現,形式上和普通鏈上轉帳沒有本質區別。當它混入真實帳單記錄後,用戶很難僅憑肉眼從一長串歷史記錄中快速分辨哪些是正常往來,哪些是刻意投放的干擾項。
3. 傳統提醒常常出現在太晚的時點
很多安全提醒發生在「確認轉帳」之前。但對於地址投毒來說,真正關鍵的風險節點,通常更早——是在用戶決定從歷史記錄中複製地址的那一刻。
如果風險識別和提醒只出現在最後一步,那麼前面的誤操作路徑其實已經形成。
面對地址投毒,錢包需要做的不只是「提醒」
這類風險的特殊之處在於,它並不是單靠用戶多看一眼、再謹慎一點就能徹底解決。
錢包作為用戶與鏈上互動的入口,應該承擔更多前置判斷與主動防護的工作,把風險盡量攔在更早的接觸點上,而不是把全部壓力都留給用戶自己。
在 imToken 2.19.0 中,我們針對地址投毒相關風險,對安全風控能力做了進一步升級。整體思路不是增加單一提示,而是在用戶實際操作鏈路中,把識別、過濾、提醒和校驗前置到更合適的位置。
圍繞地址投毒的三層防護
1. 隱藏高風險交易,減少帳單污染
針對惡意地址透過小額或 0 金額交易污染帳單記錄的情況,新版本預設開啟了「隱藏風險交易」能力。
當系統識別到高風險投毒交易後,會優先在交易記錄和相關通知中進行過濾,盡量減少這類干擾資訊直接進入用戶視野。
這樣做的目的,不只是讓介面更清爽,更重要的是從源頭降低用戶誤從歷史記錄中複製到風險地址的機率。
2. 把提醒前置到複製動作發生時
地址投毒最關鍵的突破口,不是轉帳按鈕本身,而是複製地址這一步。
因此,在用戶從交易詳情頁執行複製操作時,系統會增加更明確的互動提醒,引導用戶對地址進行更完整的核對,而不是只依賴首尾字元進行判斷。
相比只在轉帳前做提示,這種方式更接近真實風險發生的節點,也更有助於打斷「順手複製」的慣性路徑。
3. 在關鍵鏈路中持續標記風險
除了記錄列表和複製場景之外,系統也會在交易詳情、轉帳前校驗等關鍵接觸點,對疑似風險地址給出明顯標識和相應提醒。
這樣做並不是為了增加打擾,而是希望在用戶真正做出下一步操作前,給出更及時、更一致的風險反饋。
技術解讀:為什麼地址投毒需要「動態感知」的風控能力
地址投毒並不是利用鏈上協議漏洞,而是利用用戶的操作習慣與視覺慣性。攻擊者透過製造與真實地址高度相似的偽裝地址,再借助小額或 0 值交易將其混入歷史記錄,誘導用戶在後續操作中誤複製、誤轉帳。
它之所以難治理,一個重要原因在於:從鏈上執行結果看,這類交易往往是「正常」的。沒有明顯的協議異常,也沒有傳統意義上的攻擊簽名,因此單純依賴靜態黑名單或事後提醒,往往不足以覆蓋真實風險。
imToken 對這類風險的應對,不是簡單給地址貼上永久性的「好」或「壞」標籤,而是在用戶刷新交易記錄、查看詳情、複製地址或發起轉帳等關鍵接觸點,結合即時鏈上數據和當前互動上下文,對可疑交易進行動態識別,並驅動客戶端執行過濾、標記、強提醒或前置校驗等動作。
風險識別不是只看「像不像」
投毒識別的關鍵,不只是字串是否相似,而是在複雜噪音環境中如何組合多類證據進行判斷。當前的識別邏輯,主要會綜合考慮以下幾類訊號:
相似性證據
攻擊要成立,偽裝地址首先需要在視覺上「足夠像」。系統會對地址偽裝的結構特徵進行量化,用於識別這類高相似風險。
成本形態證據
地址投毒為了低成本擴散,往往會表現出特定的金額分佈和交易形態。金額訊號本身不是決定性依據,但可以與其他證據共同使用,減少單因子帶來的誤判。
行為時序證據
一些投毒交易會緊隨用戶真實轉帳行為出現,試圖借助用戶剛完成操作後的慣性,把偽裝地址迅速塞進交易記錄中。系統會在特定時間窗口與上下文條件下,對這類行為進行綜合判斷。
為什麼要做統一風險決策?
單一訊號往往不足以支撐高可信的風險判斷。因此,系統會將多類證據綜合評估,輸出統一的風險結果,再映射到不同接觸點上的處理策略。
這樣的設計主要帶來三點收益:
- 減少誤報噪音:弱訊號不會單獨觸發高等級處置。
- 保證體驗一致:同一筆交易在不同頁面獲得一致的風險判斷。
- 支援復盤最佳化:每次命中都可以回溯判斷依據,便於持續迭代。
對非託管錢包來說,這類風控能力尤其具有挑戰性。
因為地址投毒利用的是用戶行為路徑,而不是明顯的鏈上異常;攻擊方式又會隨著鏈、資產、節奏和偽裝方式持續變化。在缺少中心化控制點的前提下,防護效果更依賴識別品質、產品接觸點設計和策略迭代能力之間的協同。
因此,imToken 將這類能力建設為一套可持續演進的安全工程體系,支援策略更新、版本化管理,以及效果觀測與復盤,讓防護能力能夠持續跟上攻擊方式的變化。
如何升級防護能力
如果你已經在使用 imToken,建議盡快升級至 2.19.0。
針對地址投毒相關風險,新版本已預設開啟相應防護能力,無需額外設定,即可獲得更前置的風險識別與提醒體驗。
寫在最後
地址投毒提醒我們,Web3 安全並不只發生在「最危險」的時刻,也可能藏在最日常、最熟悉的操作裡。
當風險開始利用人的習慣,安全能力也需要從「結果提醒」進一步走向「過程防護」。對錢包來說,更重要的不只是把交易執行出去,而是在關鍵節點幫助用戶減少誤判、降低誤操作風險。
這也是 imToken 持續升級安全風控能力的原因:讓用戶在保持自我掌控的同時,獲得更及時、更實際的安全保護。


