你會從交易紀錄複製地址嗎?這就是攻擊者要的
下面這個動作,超過半數的加密用戶每週都會做:你打開區塊鏈瀏覽器或錢包介面,看到「最近交易」清單,從上次成功的轉帳裡複製收款地址貼到新的交易。表面上很合理 — 既然上次轉成功了,那個地址就是對的。
但這正是 2024 年至今最快速成長的鏈上詐騙手法。
地址投毒(Address Poisoning,又稱 Address Spoofing)的核心在於:攻擊者不需要入侵你的電腦、不需要釣到助記詞、不需要任何惡意程式。他們只需要在你的交易歷史裡「埋」一筆看起來很像你常用收款方的假交易,等你下次想轉錢時,自己把毒餌複製出來。
根據 Web3 安全公司 Scam Sniffer 的統計,2023 年底到 2024 年間,地址投毒在以太坊主網單一最大損失案件高達 6,900 萬美元 USDT(受害者誤把 1,155 顆 WBTC 等值的穩定幣轉到攻擊者地址),緊接著 2024 年 8 月又出現一筆 2,000 萬美元 的類似案件。這還只是個案 — Etherscan 每天都會記錄到上百萬筆「0 金額」的投毒交易。
為什麼這篇文章值得你慢慢讀
地址投毒是「使用者直覺」與「攻擊者社交工程」的完美交集。它不需要你犯任何「明顯的錯」 — 它只需要你「相信你的眼睛」。本文目標:讓你看完之後,再也不會從歷史紀錄裡複製地址,並且把每一筆轉帳都當成第一次轉帳來核對。
攻擊原理:用「克隆地址」污染你的鏈上歷史
地址投毒並不是一個技術突破,而是一個對「使用者怎麼複製地址」這個習慣的深度濫用。攻擊鏈分四步:
1. 鎖定目標:監控大額錢包的轉帳行為
攻擊者用爬蟲掃描鏈上所有大額地址(通常是 USDT/USDC 餘額超過 5 位數美元的錢包),記錄它們最近 30 天的交易對象。重點關注「重複出現」的收款方 — 例如某個交易所充值地址、做市商熱錢包、團隊 multisig 等。這些就是「值得投毒」的高頻路徑。
2. 產生克隆地址:用 GPU 暴力算 Vanity 前後綴
攻擊者拿到你常用收款地址(例如 0x5754284f345afc66a98fbB0a0Afe71e0F007B949)後,用一台或一群 GPU 跑 Vanity Address 生成器,目標:生成一個前 4–6 字、後 4–6 字都跟原地址一樣的新地址。以 4+4 字相似來說,現代消費級 GPU 約 1–5 分鐘可算出一個;6+6 字則需數小時到一兩天。
對攻擊者來說,這是一筆非常划算的固定成本 — 一個克隆地址可以重複用在很多受害者身上(只要他們有同一個收款方)。
3. 送出毒餌交易:0 金額或微金額
攻擊者用克隆地址向你的錢包發送一筆「看起來像你寄出去的」交易。常見三種變體:
- 零金額 USDT 轉出:呼叫 USDT 合約的
transferFrom,從你的地址轉 0 顆 USDT 到克隆地址。因為金額是 0,不需要你的授權也能成功上鏈,但 Etherscan 仍會把這筆紀錄掛在你的歷史裡。 - 代幣空投到你的地址:從克隆地址直接
transfer1 顆假代幣(命名為 USDT 但合約地址是攻擊者的)給你。這筆交易在「Transactions」分頁裡顯示為「Out: 你 → 克隆地址」(因為事件是攻擊者觸發但 from 欄位被偽造)。 - 微金額 ETH 反向轉入:直接從克隆地址轉 0.0001 ETH 給你,金額很小你不會在意,但這筆交易把克隆地址永遠地寫進你的歷史。
4. 等待:你下次手忙腳亂時自己上鉤
幾天到幾週後,你某天忙著轉一大筆錢。你打開錢包或 Etherscan,往下滑到「最近交易」,看到熟悉的前後 4 字,直接複製貼上。你的眼睛跳過了中間 32 個字元的差異,按下確認。資產在 12 秒內進入攻擊者口袋,鏈上交易不可逆。
Vanity Address:你眼睛盲點的數學基礎
EVM 地址是 160 bit(40 個十六進位字元)。要讓「前 N 字 + 後 N 字」與目標相同,平均需嘗試 16^(2N) 次。
| 比對位數 | 嘗試次數 | RTX 4090 估算時間 | 攻擊者成本 |
|---|---|---|---|
| 前 4 + 後 4 | 約 4.3 億 | < 1 分鐘 | 幾乎免費 |
| 前 5 + 後 5 | 約 1.1 兆 | 1–3 小時 | < 1 美元電費 |
| 前 6 + 後 6 | 約 2.8 千萬億 | 約 5 天 | 數美元 |
| 前 8 + 後 8 | 約 1.8 京(10^16) | 數年 | 不切實際 |
因此攻擊者的甜蜜點是 5+5 或 6+6 — 既能讓人眼難以分辨,又能在合理電費內生成大量克隆地址。
真實案例:億美元損失的鏈上紀錄
地址投毒在 2024 年起進入主流意識,因為連續發生多起破紀錄案件:
| 時間 | 受害者 | 損失金額 | 攻擊手法 |
|---|---|---|---|
| 2024-05 | 匿名 ETH 巨鯨 | 6,900 萬美元 USDT | 巨鯨原本要轉 1,155 顆 WBTC 等值的 USDT 給合作方,從歷史紀錄複製到克隆地址 |
| 2024-08 | DeFi 機構帳戶 | 2,000 萬美元 USDT | 0 USDT 投毒,前 6 後 4 字克隆 |
| 2024-10 | 個人交易者 | 約 300 萬美元 | 多鏈投毒(Ethereum + Polygon),同一個受害者在兩條鏈被分別坑 |
| 2025-02 | 中小型基金會 | 890 萬美元 | 攻擊者甚至模擬了「交易所通知信」要求改用新地址 |
| 2025-Q4 | 機構級彙整 | 月均 2,500–4,000 萬美元 | Scam Sniffer 數據 — 已成持續性背景威脅 |
最值得注意的是 2024-05 那筆 6,900 萬。受害者後來透過鏈上談判(攻擊者要求 10% 留下作為「報酬」)拿回約 6,200 萬,但這是極罕見的幸運案例 — 攻擊者承擔了被鏈上鑑識公司追蹤的風險,僅僅因為金額太大、太顯眼。絕大多數中小型受害案件根本不會出現在新聞裡,因為攻擊者不會還錢。
同類威脅延伸閱讀
地址投毒和剪貼簿劫持攻擊經常被混為一談,但兩者不同:剪貼簿劫持是「你電腦上的木馬」改你貼上的內容;地址投毒是「鏈上的假交易」改你看到的歷史。前者需要先感染裝置,後者完全在鏈上完成。建議兩篇都讀,因為防禦邏輯互補。同時也可以參考 釣魚攻擊防護 與 社交工程詐騙。
為什麼這種攻擊難以察覺?
地址投毒之所以有效,是因為它精準地打中了使用者的三個認知盲點:
1. 縮寫地址介面:UI 設計反而成了幫凶
幾乎所有錢包、區塊鏈瀏覽器、交易所都把長地址縮寫為「前 N 字…後 N 字」格式。這原本是為了介面整潔,但對地址投毒攻擊者來說,這等於官方背書了他們只需要對齊前後字元。Etherscan 的標準顯示是「前 4 + 後 4」,而 Vanity Address 只需 1 分鐘就能匹配。
2.「上次成功過」的心理錨定
人類大腦對「重複出現的東西」有強烈的信任偏誤。當你看到自己錢包的歷史裡有一筆「Out: 你 → 0x9aFb…4D2c」,你的下意識會把這個地址登錄為「我用過、安全」。克隆地址正是利用了這個錨定 — 它不需要假冒陌生人,它假冒的是「你過去的自己」。
3. 急著轉帳的時間壓力
地址投毒的受害者,幾乎都是在「忙的時候」中招。要趕在 DeFi 機會關閉前轉錢、要在交易所充值截止前轉錢、要在會議開始前付款。時間壓力是攻擊者最好的盟友 — 它讓你把「逐字比對地址」這個 30 秒的動作,省略成「滑到歷史紀錄、複製、貼上」的 3 秒。
6 層防禦:從鏈上習慣到簽名前的最後一道牆
對抗地址投毒,沒有單一銀彈,但有多層可疊加的習慣與工具:
| 層級 | 做法 | 難度 | 抵禦效果 |
|---|---|---|---|
| L1 來源紀律 | 永遠從「原始來源」(對方提供、官方文件)複製地址,不從歷史紀錄複製 | 最簡單 | 阻擋 95% 投毒 |
| L2 地址簿 | 把所有常用地址加入錢包 Address Book 並命名 | 中 | 完全跳過複製流程 |
| L3 全字比對 | 每次轉帳前逐字比對全 40 字(不只看前 4 後 4) | 中 | 最後一道人為防線 |
| L4 ENS / 域名 | 用 ENS(.eth)或同類域名代替 0x 地址 | 中 | 域名 + 解析驗證 |
| L5 測試交易 | 大額前先送 0.001 並等對方確認收到 | 中 | 阻擋大多數投毒 |
| L6 冷錢包二次驗證 | 用 ArcSign 等冷錢包在簽名前顯示目的地、要求你刻意確認才簽 | 已內建 | 最終防線 |
L1 來源紀律:把「從歷史複製」變成禁忌
這是最重要、也最被忽視的一條原則:永遠不要從交易歷史複製地址。即使那筆交易確實是你自己過去送出的,也請從原始來源(例如對方傳給你的訊息、交易所的「充值地址」頁面、合約的官方文件)重新取得地址。
這個習慣可以單獨擋下 95% 以上的投毒攻擊,因為攻擊者的整套手法都假設你會從歷史複製。
L2 地址簿:常用地址一次設定終身受用
如果你常匯款給同一個交易所、同一個合作方、同一個自己的另一個錢包,請立刻把它們加入錢包的 Address Book 並命名。ArcSign 的地址簿支援多鏈、支援標籤、支援匯入匯出。下次轉帳時直接從清單選「Binance 充值」、「同事 Alice」,整個複製貼上流程都不會發生。
L4 ENS:用人話地址代替亂碼
ENS(Ethereum Name Service)讓你能用 alice.eth 取代 0x5754...B949。地址投毒者沒辦法假冒 ENS 域名 — 域名所有權在合約上鎖死,攻擊者頂多註冊一個 alice-eth.eth 之類的相近域名,但與 0x 假冒相比視覺辨識度高得多。對於常用對象,建議讓對方提供 ENS 並使用它。
L5 測試交易:用 0.001 美元換取安心
對於 1 萬美元以上的轉帳,永遠先送 0.001 並等收款方確認收到。攻擊者的克隆地址雖然在你的紀錄裡,但它沒有人在後面接收 — 你的測試交易會被永遠鎖在攻擊者地址裡,金額太小不值得他們動。當你下次發起 0.001 測試,沒收到對方「OK 收到」的回應時,你就知道地址有問題。
ArcSign 如何幫你擋下這類攻擊
ArcSign 的整個簽名流程被設計成「即使你的視覺被欺騙,最後簽名那一刻仍有機會察覺」:
1. 簽名時會顯示目的地 — 請拿它去跟原始來源核對
簽名確認頁會顯示目的地地址(以 0x1234...5678 縮寫呈現,跟所有錢包一樣)。ArcSign 沒辦法知道你「想」轉去哪個地址 — 所以真正關鍵的紀律在你身上:按下確認前,拿完整地址去跟原始來源(對方傳的訊息、交易所的充值頁面)逐字核對,而不是對著一個縮寫預覽核對。簽名那一刻是你最後的檢查點,但前提是你真的去檢查。
2. USB 離線確認 + 你的手指
ArcSign 是 USB 冷錢包,私鑰永不離開裝置,且每次簽名都需要插入 USB 並輸入密碼。即使你的瀏覽器或交易所介面已經被投毒地址污染,簽名仍然只在 ArcSign 桌面應用程式裡發生,並要求你親手按下確認。看到的地址跟你「以為要送去的」對不上,就拒簽。
3. 地址簿(名稱 + 備註)
每個你驗證過的對象,都可以存進 ArcSign 的地址簿並加上名稱與備註。存好之後,下次轉帳就從清單選「Binance 充值」、「同事 Alice」,而不是從歷史複製貼上 — 這正好移除了投毒攻擊所依賴的那個步驟。這是一個你自己整理的地址簿,不是自動辨識提示。
4. 已知詐騙目的地的黑名單檢查(免費)
ArcSign 在放行簽名前,會把目的地比對離線黑名單(OFAC + ScamSniffer + MetaMask 釣魚清單)。如果某個投毒克隆地址已經被通報並列入這些清單,後端會拒簽,除非你明確知情同意。這個檢查對所有人免費、離線可用。(注意:一個剛生成的 vanity 克隆地址可能還沒進任何清單 — 所以第 1 點的「從來源核對」習慣仍是你的主要防線。)對 EVM 交易,ArcSign Pro 也能在你確認前模擬轉帳、預覽資產變化。
深度防禦哲學
ArcSign 把「零信任」延伸進簽名流程 — 但它對自己的極限很誠實:沒有任何錢包能知道你「想」轉去哪個地址。它能做的是把私鑰以 XOR 三分片形式、mlock 鎖在記憶體裡,讓私鑰即使在作業系統淪陷時也不外流,給你一個地址簿讓你不必從歷史複製,並擋下已知的詐騙目的地。對投毒最決定性的防禦,仍是上游那個習慣:永遠從原始來源重新取得地址。
已經被投毒、甚至已經轉錯了?緊急應變流程
地址投毒造成的損失通常很大(因為攻擊者鎖定的就是高頻、大金額路徑),鏈上交易也不可逆,但頭幾分鐘到幾小時的反應仍會決定你的挽回幅度:
1. 立即在 Etherscan 標記攻擊者地址
到 Etherscan / BscScan / Polygonscan 等瀏覽器,找到該攻擊者地址,按「Update Address Tag」標記為「Reported Scam – Address Poisoning」。雖然這不會凍結資產,但會警示其他可能的受害者,也讓鏈上鑑識公司更快留意到這個地址。
2. 通報穩定幣發行商與交易所
若你損失的是 USDT / USDC,立即聯繫 Tether(lawenforcement@tether.to)與 Circle(compliance@circle.com)的執法窗口。提供 TX hash、受害金額、警方報案編號。Tether 在 2024 年配合鏈上鑑識凍結的 USDT 已超過 20 億美元,雖然個案處理時間長(數週到數月),但仍有相當機率能凍結尚未洗出的部分。
若攻擊者把資產轉入中心化交易所,立即通報該交易所的 compliance 信箱(Binance compliance@binance.com、Coinbase compliance@coinbase.com、OKX、Bybit 都有專用通報窗口)。
3. 報案 + 鏈上追蹤委託
在台灣,可向刑事局 165 反詐騙專線報案,並向地檢署提告竊盜/詐欺。國外建議向當地警政與 IC3(美國 FBI 網路犯罪舉報中心)報案。同時可聯繫 Chainalysis / TRM Labs / Elliptic 等鏈上鑑識公司 — 個案通常需要先有警方立案或律師代為提交。
4. 從歷史紀錄移除毒餌(介面層)
雖然鏈上紀錄無法移除,但你可以把克隆地址從日常視野裡隱藏。許多錢包與瀏覽器提供「隱藏代幣」與「過濾 0 金額交易」的選項 — 打開它們,讓 dust 與 0 金額的投毒交易不再出現在你的歷史裡。更根本的解法是:乾脆不要再把交易歷史當成地址來源,改用地址簿與原始來源。
不要嘗試「贖回」
事件發生後,常見的二次詐騙是有人冒充「資產追蹤偵探」、「鏈上鑑識顧問」在 Telegram、Discord 主動聯繫你,宣稱可以幫你拿回但要先付費。合法鑑識服務從來不會在私訊主動聯繫你。任何要求預付款 / 提供助記詞 / 安裝其他軟體的「協助」都是二次詐騙。
常見問題 FAQ
Q:地址投毒(Address Poisoning)和剪貼簿劫持有什麼不同?
剪貼簿劫持發生在「你的電腦」 — 木馬監控剪貼簿,在你 Ctrl+V 的瞬間替換成攻擊者地址。地址投毒發生在「鏈上」 — 攻擊者送一筆假交易污染你的歷史紀錄,誘導你下次自己從歷史複製錯誤地址。兩者的最後手段都是「讓你把錢送到外觀類似的地址」,但攻擊面不同,防禦方法也不同(防剪貼簿劫持要清乾淨裝置,防地址投毒要改掉從歷史複製的習慣)。
Q:攻擊者送 0 USDT 的假交易,怎麼會出現在我的紀錄裡?
ERC-20 標準的 transfer 事件允許任何人觸發,事件裡的 from 與 to 是合約寫死的,並不一定代表那筆轉帳真的得到 from 地址的同意。攻擊者呼叫 USDT 合約傳 0 顆代幣,因為金額為 0 所以不需要授權即可通過,但 Etherscan 等瀏覽器仍會把這筆紀錄掛在事件的 from 與 to 地址下。這是 ERC-20 標準的設計漏洞 — 2024 年起多個錢包與瀏覽器開始預設過濾「0 金額」交易,但目前仍不普及。
Q:我用冷錢包還會中招嗎?
冷錢包保護的是「私鑰不外洩」,但它無法判斷「你想轉去的地址」是否正確。如果你被地址投毒,從歷史複製了克隆地址,冷錢包仍會老實地用你的私鑰簽下一筆把資產送往攻擊者的交易。ArcSign 會在簽名時顯示目的地、讓你把驗證過的對象存進地址簿(這樣就不必從歷史複製),並做免費的黑名單檢查來擋下已被通報為詐騙的目的地。但這些都無法得知你的本意 — 所以最好的防禦永遠是養成「從原始來源取得地址」的習慣。
Q:如何在 Etherscan 上分辨真實交易與投毒交易?
幾個信號可以幫你辨識:(1) 看「Method」欄位 — 投毒交易常顯示為 Transfer 但合約地址不是真的 USDT;(2) 看「Value」欄位 — 0 金額或極小金額(< 0.0001)幾乎都是投毒;(3) 點進交易詳情看 from 與 to 是否與你印象中的對象一致;(4) 看時間戳記 — 投毒交易通常剛好發生在你某筆真實交易之後 1–5 分鐘(攻擊者爬蟲偵測到你動作後才送毒餌)。最穩定的方法是用 Etherscan 的「Show Filtered Transactions」功能隱藏 0 金額交易。