Caloogy 文章
English

假币、蜜罐代币与"只能买不能卖"

日期
2025 年 4 月 21 日
系列
链上
阅读
3 分钟
主题
OnchainHoneypotScam tokenRug pull

一句话版本

在以太坊上发一个代币只需要几分钟和一点手续费,名字、图标都可以随便填。于是出现了三类常见骗局:假币(名字也叫 USDT,合约地址却是骗子的)、蜜罐(合约里藏着"只有特定地址才能卖出"的逻辑,你买得进卖不出)、拉地毯(项目方撤走流动性跑路)。 识别它们的关键不是看名字和价格,而是看合约地址、合约代码里的权限,以及在买之前先模拟一次卖出。

全文分三层:

  1. 通俗理解:只有入口没有出口的商店
  2. 实际用处:Squid Game 代币、空投假币、拉地毯
  3. 原理与工程要点:蜜罐的几种实现、检测方法、钱包怎样展示代币

第一层:通俗理解

1.1 只有入口没有出口的商店

一家商店,门口写着"热门商品,价格天天涨!"。你进去买了,价格确实在涨。可当你想卖回去时,柜台说"系统维护,暂停回收"。后来才发现:这家店从一开始就只设计了入口。

蜜罐代币就是这样:

1.2 假币

你的钱包里突然多了 1000 个 "USDT"。别高兴:任何人都可以部署一个名字叫 USDT 的合约,然后给成千上万个地址"空投"。它们一文不值,目的通常是:


第二层:实际用处


第三层:原理与工程要点

3.1 蜜罐的常见实现

手法 原理
黑名单 / 白名单 transfer 里检查发送方,非白名单地址卖出时 revert
可调手续费 合约所有者可以把卖出手续费调到 99% 或 100%
卖出限额 每次只能卖极小数量,或者有冷却时间
隐藏的所有者 表面上"已放弃所有权",实际通过另一个变量或代理保留控制
欺骗性的 balanceOf 显示的余额和真实可转出的余额不一致
依赖外部合约 关键逻辑放在一个可以随时更换的外部合约里

3.2 检测方法

方法 说明
核对合约地址 只认官方公布的合约地址;同名代币在不同链上地址也不同(如 Arbitrum 上原生 USDC 和桥接的 USDC.e)
代币白名单 钱包只把白名单里的代币当作"真资产"显示,其余标灰
模拟卖出 在买入之前,在主网分叉或用 eth_call 模拟"买入后立即卖出",看能否成功、实际收到多少
读合约代码 源码是否在浏览器上验证?有没有 blacklist、setFee、mint、pause 等所有者函数?所有者是谁?
看流动性 流动性池的 LP 代币是否锁定或销毁?是否集中在少数地址?
看持有分布 前几个地址是否持有绝大部分代币?

第三方的"代币安全检测"服务会自动做上面大部分检查,但它们也会被新的手法绕过,只能作为参考。

3.3 钱包该怎样展示代币

3.4 给用户的规则

  1. 来路不明的代币,不碰、不卖、不去它提到的网站"领取";
  2. 买新代币前先模拟一次卖出;
  3. 看名字不如看合约地址;
  4. 价格涨得越离谱、宣传越急切,越要警惕。

总结

层次 要点
三类骗局 假币(同名不同址)、蜜罐(能买不能卖)、拉地毯(撤流动性)
蜜罐原理 黑名单、可调手续费、隐藏所有者、可替换的外部逻辑
检测 核对地址、白名单、模拟卖出、读合约权限、看流动性和持仓
钱包 默认隐藏未知代币,不显示其价格