简短回答
地址投毒是一种骗局:攻击者在你的交易记录里植入一个相似地址——首尾字符相同、中间不同——等你下次转账时误复制。它本身拿不走你的钱,只有你粘贴了错误地址并确认发送才会造成损失。防御很简单:永远不要从交易记录里复制收款地址;核对完整地址(尤其是中间部分);使用已核实的地址簿;大额转账在硬件钱包屏幕上确认。
攻击如何进行
Etherscan 总结了三种常被组合使用的手法(Etherscan:地址投毒):
- 地址伪造:用靓号生成器造出首尾字符与你常用地址相同的地址。钱包把地址中间省略显示时,两者看起来一模一样。
- 代币伪造:用与真币同名同符号的假代币(例如「USDT」)给你转账,让植入的记录看起来像真的。
- 事件伪造:伪造转账事件,让记录显示你曾向攻击者地址转过账。
MetaMask 帮助中心描述了典型流程:你正常转了一笔账;监控稳定币转账的程序发现后,攻击者生成相似地址,从该地址给你转一笔零金额或极小金额;之后你从记录里误复制了这个地址(MetaMask:地址投毒骗局)。链上已确认的转账无法撤回。
各链地址格式
了解每条链的有效地址长什么样,既能发现伪造地址,也能发现选错网络。
| 链类别 | 格式 | 开头 | 内置纠错 |
|---|---|---|---|
| 以太坊及 EVM L2、BNB 智能链、Polygon | 0x + 40 位十六进制 | 0x… | 可选大小写校验(EIP-55) |
| 波场 | Base58Check | T… | 编码内含校验 |
| Solana | Base58 编码的 Ed25519 公钥,通常 44 位 | 无固定前缀 | 有效公钥内部的错字无法发现 |
来源:ethereum.org:账户、ERC-55、NEAR Intents:支持的链。
由此有两点结论。所有 EVM 链共用一种格式,看起来正确的 0x 地址并不能说明网络对不对——见 USDT 网络选择指南。校验和只能发现打字错误,挡不住投毒:伪造地址本身就是完全合法的地址。
发送前核对清单
- 从源头取地址,不从记录复制。 使用收款方自己的收款页面、二维码,或你之前核实过的地址簿条目。
- 比对完整字符串。 检查开头、结尾,以及中间至少两组字符。MetaMask 特别提醒要注意中间部分。
- 核对网络名称:收款页面写的网络与钱包里选中的网络是否一致。
- 看代币合约地址,不要只看符号。假币会照抄名称和符号,合约地址才是关键。
- 在设备上确认。 使用硬件钱包时,比对设备屏幕显示的地址。见硬件钱包跨链流程。
- 新地址先小额测试。 Trezor 建议大额转账前先发一笔小额测试,但这意味着要付两次 gas(Trezor:地址投毒)。
跨链时的特别注意
跨链转账的目标地址是在源链上填写、在另一条链上使用的,填错了在目标钱包里看不到,等发现已经太晚。签名前:
- 在桥的确认页面上核对目标地址,而不只是看输入框;
- 如果桥要求填写退款地址,确认它是你在源链上的地址(见退款去向);
- 对 USDT、USDC,确认目标代币是你预期的那一种。
已经发到投毒地址怎么办
发到攻击者地址的资金由攻击者控制。记下交易哈希,向区块浏览器和钱包服务商举报该地址,并警惕任何收费「找回」服务。本站的安全事件列表记录的是协议层面的损失,不收录个人骗局。
常见问题
地址投毒不需要我签名就能偷钱吗?
不能。植入的转账不会让攻击者获得你钱包的权限。只有你自己把钱发到相似地址才会造成损失。
要不要隐藏交易记录里的零金额转账?
隐藏有帮助,但最重要的防护是永远不从交易记录中复制收款地址。
EIP-55 校验和能保护我吗?
它能发现大小写混合地址中的打字错误,但无法识别你粘贴进来的另一个合法地址。
资料来源
- Etherscan 信息中心:地址投毒攻击(访问于 2026-10-24)
- MetaMask 帮助中心:地址投毒骗局(访问于 2026-10-24)
- Trezor:什么是地址投毒攻击(访问于 2026-10-24)
- ERC-55:大小写混合校验地址编码(访问于 2026-10-24)
- ethereum.org:以太坊账户(访问于 2026-10-24)
- NEAR Intents 文档:支持的链(地址格式)(访问于 2026-10-24)
