明暗交织:揭秘以太坊代币生态乱象
2025-01-08 15:44
CertiK
2025-01-08 15:44
订阅此专栏
收藏此文章
本文深入调查 Rug Pull 案例,发现背后存在组织化的作案团伙,并总结了这些骗局的模式化特征。希望能够帮助所有 Web3 成员提升防范意识,在面对层出不穷的骗局时保持警惕,并及时采取必要的预防措施,保护好自己的资产安全。


撰文:CertiK


简介


在 Web3 世界中,新代币不断涌现。你是否想过,每天究竟有多少新代币在发行?这些新代币都安全吗?


这些疑问的产生并非无的放矢。在过去数月里,CertiK 安全团队捕捉到了大量的 Rug Pull 交易案例。值得注意的是,这些案例中所涉及的代币无一例外都是刚刚上链的新代币。


随后,CertiK 对这些 Rug Pull 案例进行了深入调查,发现背后存在组织化的作案团伙,并总结了这些骗局的模式化特征。通过深入分析这些团伙的作案手法,CertiK 发现了 Rug Pull 团伙一种可能的诈骗推广途径:Telegram 群组。这些团伙利用 Banana Gun、Unibot 等群组中的「New Token Tracer」功能吸引用户购买诈骗代币并最终通过 Rug Pull 牟利。


CertiK 统计了从 2023 年 11 月至 2024 年 8 月初期间这些 Telegram 群组的代币推送信息,发现共推送了 93,930 种新代币,其中涉及 Rug Pull 的代币共有 46,526 种,占比高达 49.53%。据统计,这些 Rug Pull 代币背后团伙的累计投入成本为 149,813.72 ETH,并以高达 188.7% 的回报率牟利 282,699.96 ETH,折合约 8 亿美元。


为了评估 Telegram 群组推送的新代币在以太坊主网中的占比,CertiK 统计了相同时间段内以太坊主网上发行的新代币数据。数据显示,在此期间共有 100,260 种新代币发行,其中通过 Telegram 群组推送的代币占主网的 89.99%。平均每天约有 370 种新代币诞生,远超合理预期。在经过不断深入地调查之后,我们发现的真相令人不安——其中至少 48,265 种代币涉及 Rug Pull 诈骗,占比高达 48.14%。换句话说,以太坊主网上几乎每两个新代币中就有一个涉及诈骗。


此外,CertiK 还在其他区块链网络中发现了更多的 Rug Pull 案例。这意味着不仅是以太坊主网,整个 Web3 新发代币生态的安全状况远比预期更加严峻。因此,CertiK 撰写了这份调研报告,希望能够帮助所有 Web3 成员提升防范意识,在面对层出不穷的骗局时保持警惕,并及时采取必要的预防措施,保护好自己的资产安全。


ERC-20 代币(Token)


在正式开始本报告之前,我们先来了解一些基础概念。


ERC-20 代币是目前区块链上最常见的代币标准之一,它定义了一组规范,使得代币可以在不同的智能合约和去中心化应用程序(dApp)之间进行互操作。ERC-20 标准规定了代币的基本功能,例如转账、查询余额、授权第三方管理代币等。由于这一标准化的协议,开发者可以更轻松地发行和管理代币,从而简化了代币的创建和使用。实际上,任何个人或组织都可以基于 ERC-20 标准发行自己的代币,并通过预售代币为各种金融项目筹集启动资金。正因为 ERC-20 代币的广泛应用,它成为了许多 ICO 和去中心化金融项目的基础。


我们熟悉的 USDT、PEPE、DOGE 都属于 ERC-20 代币,用户可以通过去中心化交易所购买这些代币。然而,某些诈骗团伙也可能自行发行带有代码后门的恶意 ERC-20 代币,将其上架到去中心化交易所,再诱导用户进行购买。


Rug Pull 代币的典型诈骗案例


在这里,我们借用一个 Rug Pull 代币的诈骗案例,深入了解恶意代币诈骗的运营模式。首先需要说明的是,Rug Pull 是指项目方在去中心化金融项目中,突然抽走资金或放弃项目,导致投资者蒙受巨大损失的欺诈行为。而 Rug Pull 代币则是专门为实施这种诈骗行为而发行的代币。


本文中提到的 Rug Pull 代币,有时也被称为「蜜罐(Honey Pot)代币」或「退出骗局(Exit Scam)代币」,但在下文中我们将统一称其为 Rug Pull 代币。


案例


攻击者(Rug Pull 团伙)用 Deployer 地址(0x4bAF)部署 TOMMI 代币,然后用 1.5 个 ETH 和 100,000,000 个 TOMMI 创建流动性池,并通过其他地址主动购买 TOMMI 代币来伪造流动性池交易量以吸引用户和链上的打新机器人购买 TOMMI 代币。当有一定数量的打新机器人上当后,攻击者用 Rug Puller 地址(0x43a9)来执行 Rug Pull,Rug Puller 用 38,739,354TOMMI 代币砸流动性池,兑换出约 3.95 个 ETH。Rug Puller 的代币来源于 TOMMI 代币合约的恶意 Approve 授权,TOMMI 代币合约部署时会为 Rug Puller 授予流动性池的 approve 权限,这使得 Rug Puller 可以直接从流动性池里转出 TOMMI 代币然后进行 Rug Pull。


相关地址


  • Deployer:0x4bAFd8c32D9a8585af0bb6872482a76150F528b7
  • TOMMI 代币:0xe52bDD1fc98cD6c0cd544c0187129c20D4545C7F
  • Rug Puller:0x43A905f4BF396269e5C559a01C691dF5CbD25a2b
  • Rug Puller 伪装的用户(其中之一):0x4027F4daBFBB616A8dCb19bb225B3cF17879c9A8
  • Rug Pull 资金中转地址:0x1d3970677aa2324E4822b293e500220958d493d0
  • Rug Pull 资金留存地址:0x28367D2656434b928a6799E0B091045e2ee84722


相关交易


  • Deployer 从中心化交易所获取启动资金:0x428262fb31b1378ea872a59528d3277a292efe7528d9ffa2bd926f8bd4129457
  • 部署 TOMMI 代币:0xf0389c0fa44f74bca24bc9d53710b21f1c4c8c5fba5b2ebf5a8adfa9b2d851f8
  • 创建流动性池:0x59bb8b69ca3fe2b3bb52825c7a96bf5f92c4dc2a8b9af3a2f1dddda0a79ee78c
  • 资金中转地址发送资金给伪装用户(其中之一):0x972942e97e4952382d4604227ce7b849b9360ba5213f2de6edabb35ebbd20eff
  • 伪装用户购买代币(其中之一):0x814247c4f4362dc15e75c0167efaec8e3a5001ddbda6bc4ace6bd7c451a0b231
  • Rug Pull:0xfc2a8e4f192397471ae0eae826dac580d03bcdfcb929c7423e174d1919e1ba9c
  • Rug Pull 将所得资金发送至中转地址:0xf1e789f32b19089ccf3d0b9f7f4779eb00e724bb779d691f19a4a19d6fd15523
  • 中转地址将资金发送至资金留存地址:0xb78cba313021ab060bd1c8b024198a2e5e1abc458ef9070c0d11688506b7e8d7


Rug Pull 过程


1. 准备攻击资金。


攻击者通过中心化交易所,向 Token Deployer(0x4bAF)充值 2.47309009ETH 作为 Rug Pull 的启动资金。


图 1 Deployer 从交易所获取启动资金交易信息


2. 部署带后门的 Rug Pull 代币。


Deployer 创建 TOMMI 代币,预挖 100,000,000 个代币并分配给自身。


图 2 Deployer 创建 TOMMI 代币交易信息


3. 创建初始流动性池。


Deployer 用 1.5 个 ETH 和预挖的所有代币创建流动性池,获得了约 0.387 个 LP 代币。


图 3 Deployer 创建流动性池交易资金流动


4. 销毁所有预挖的 Token 供应量。


Token Deployer 将所有 LP 代币发送至 0 地址销毁,由于 TOMMI 合约中没有 Mint 功能,因此此时 Token Deployer 理论上已经失去了 Rug Pull 能力。(这也是吸引打新机器人入场的必要条件之一,部分打新机器人会评估新入池的代币是否存在 Rug Pull 风险,Deployer 还将合约的 Owner 设置为 0 地址,都是为了骗过打新机器人的反诈程序)。


图 4 Deployer 销毁 LP 代币交易信息


5. 伪造交易量。


攻击者用多个地址主动从流动性池中购买 TOMMI 代币,炒高池子的交易量,进一步吸引打新机器人入场(判断这些地址是攻击者伪装的依据:相关地址的资金来自 Rug Pull 团伙的历史资金中转地址)。


图 5 攻击者其他地址购买 TOMMI 代币交易信息和资金流动


6. 攻击者通过 Rug Puller 地址(0x43A9)发起 Rug Pull,通过 token 的后门直接从流动性池中转出 38,739,354 个代币,然后再用这些代币砸池子,套出约 3.95 个 ETH。


图 6 Rug Pull 交易信息和资金流动


7. 攻击者将 Rug Pull 所得资金发送至中转地址 0xD921。


图 7 Rug Puller 将攻击收益发送至中转地址交易信息


8. 中转地址 0xD921 将资金发送至资金留存地址 0x2836。从这里我们可以看出,当 Rug Pull 完成后,Rug Puller 会将资金发送至某个资金留存地址。资金留存地址是我们监控到的大量 Rug Pull 案例的资金归集处,资金留存地址会将收到的大部分资金进行拆分以开始新一轮的 Rug Pull,而其余少量资金会经由中心化交易所提现。我们发现了资金留存地址若干,0x2836 是其中之一。


图 8 中转地址资金转移信息


Rug Pull 代码后门


攻击者虽然已经通过销毁 LP 代币来试图向外界证明他们没办法进行 Rug Pull,但是实际上攻击者却在 TOMMI 代币合约的 openTrading 函数中留下一个恶意 approve 的后门,这个后门会在创建流动性池时让流动性池向 Rug Puller 地址 approve 代币的转移权限,使得 Rug Puller 地址可以直接从流动性池中转走代币。


图 9 TOMMI 代币合约中 openTrading 函数


图 10 TOMMI 代币合约中 onInit 函数


openTrading 函数的实现如图 9 所示,其主要功能是创建新的流动性池,但攻击者却在该函数内调用了后门函数 onInit(图 10 所示),让 uniswapV2Pair 向_chefAddress 地址 approve 数量为 type(uint256) 的代币转移权限。其中 uniswapV2Pair 为流动性池地址,_chefAddress 为 Rug Puller 地址,_chefAddress 在合约部署时指定(图 11 所示)。


图 11 TOMMI 代币合约中构造函数


作案模式化


通过分析 TOMMI 案例,我们可以总结出以下 4 个特点:


  1. Deployer 通过中心化交易所获取资金:攻击者首先通过中心化交易所为部署者地址(Deployer)提供资金来源。
  2. Deployer 创建流动性池并销毁 LP 代币:部署者在创建完 Rug Pull 代币后,会立刻为其创建流动性池,并销毁 LP 代币,以增加项目的可信度,吸引更多投资者。
  3. Rug Puller 用大量代币兑换流动性池中的 ETH:Rug Pull 地址(Rug Puller)使用大量代币(通常数量远超代币总供应量)来兑换流动性池中的 ETH。其他案例中,Rug Puller 也有通过移除流动性来获取池中 ETH 的情况。
  4. Rug Puller 将 Rug Pull 获得的 ETH 转移至资金留存地址:Rug Puller 会将获取到的 ETH 转移到资金留存地址,有时通过中间地址进行过渡。


上述这些特点普遍存在于我们捕获的案例中,这表明 Rug Pull 行为有着明显的模式化特征。此外,在完成 Rug Pull 后,资金通常会被汇集到一个资金留存地址,这暗示这些看似独立的 Rug Pull 案例背后可能涉及同一批甚至同一个诈骗团伙。


基于这些特点,我们提取了一个 Rug Pull 的行为模式,并利用此模式对监控到的案例进行扫描检测,以期构建出可能的诈骗团伙画像。


Rug Pull 作案团伙


挖掘资金留存地址


如前文所述,Rug Pull 案例通常会在最后将资金汇聚到资金留存地址。基于这一模式,我们挑选了其中几个高度活跃且其关联案例作案手法特征明显的资金留存地址进行深入分析。


进入我们视野的共有 7 个资金留存地址,这些地址关联的 Rug Pull 案例共有 1,124 个,被我们的链上攻击监控系统(CertiK Alert)成功捕获。Rug Pull 团伙在成功实施骗局后,会将非法获利汇集至这些资金留存地址。而这些资金留存地址会将沉淀资金进行拆分,用于未来新的 Rug Pull 骗局中创建新代币、操纵流动性池等活动。此外,一小部分沉淀资金则通过中心化交易所或闪兑平台进行套现。


关于资金留存地址的资金数据统计如表 1 所示:



通过统计每个资金留存地址中所有 Rug Pull 骗局的成本和收入,我们得到了表 1 中的数据。


在一次完整的 Rug Pull 骗局中,Rug Pull 团伙通常使用一个地址作为 Rug Pull 代币的部署者(Deployer),并通过中心化交易所提款获取启动资金来创建 Rug Pull 代币及相应的流动性池。当吸引到足够数量的用户或打新机器人使用 ETH 购买 Rug Pull 代币后,Rug Pull 团伙会使用另一个地址作为 Rug Pull 执行者(Rug Puller)进行操作,将所得资金转移至资金留存地址。


在上述过程中,我们将 Deployer 通过交易所获取的 ETH,或 Deployer 在创建流动性池时投入的 ETH,视为 Rug Pull 的成本(具体如何计算取决于 Deployer 的行为)。而 Rug Puller 在完成 Rug Pull 后转至资金留存地址(或其他中转地址)的 ETH 则被视为该次 Rug Pull 的收入,最终得到了表 1 中关于收入和支出的数据,其中 USD 利润换算所使用的 ETH/USD 价格(1 ETH = 2,513.56 USD,价格获取时间为 2024 年 8 月 31 日),按照数据整合时的实时价格进行计算。


需要说明的是,Rug Pull 团伙在实施骗局时,也会主动使用 ETH 购买自己创建的 Rug Pull 代币,以模拟正常的流动性池活动,从而吸引打新机器人购买。但这部分成本未被纳入计算,因此表 1 中的数据高估了 Rug Pull 团伙的实际利润,真实的利润会相对较低。


图 12 资金留存地址获利占比饼状图


用表 1 中各地址 Rug Pull 利润数据来生成利润占比饼状图,如图 12 所示。利润占比排名前三的地址分别是 0x1607,0xDF1a 及 0x2836。地址 0x1607 获得的利润最高,约 2,668.17 ETH,占所有地址利润的 27.7%。


实际上,即便最终资金被汇聚到了不同的资金留存地址,但由于这些地址所关联的案例之间存在大量共性(如 Rug Pull 的后门实现方式、套现路径等),我们仍然高度怀疑这些资金留存地址背后可能属于同一个团伙。


那么,这些资金留存地址之间是否可能存在某种联系呢?


挖掘资金留存地址间关联


图 13 资金留存地址的资金流向图


判断资金留存地址之间是否存在关联性的一个重要指标,是查看这些地址之间是否存在直接的转账关系。为验证资金留存地址之间的关联性,我们爬取并分析了这些地址的历史交易记录。


在我们过去分析的案例中的大多数情况下,每一次 Rug Pull 骗局的收益最终只会流向某一个资金留存地址,想要通过追踪收益资金的走向,从而去关联不同的资金留存地址是无法做到的,因此,我们需要检测这些资金留存地址之间的资金流动情况,才可以获得资金留存地址之间的直接关联,检测结果如图 13 所示。


需要说明的是,图 13 中的地址 0x1d39 和 0x6348 是各资金留存地址共用的 Rug Pull 基础设施合约地址。资金留存地址通过这两个合约将资金拆分并发送给其他地址,而这些收到拆分资金的地址则利用这些资金伪造 Rug Pull 代币的交易量。


根据图 13 中 ETH 的直接转账关系,我们可以将这些资金留存地址划分为 3 个地址集合:


1. 0xDF1a 和 0xDEd0;

2. 0x1607 和 0x4856;

3. 0x2836、0x0573、0xF653 和 0x7dd9。


地址集合内部存在直接的转账关系,但集合之间并没有直接的转账行为。因此,似乎可以将这 7 个资金留存地址划分为 3 个不同的团伙。然而,这 3 个地址集合却都通过同样的基础设施合约拆分 ETH 进行后续的 Rug Pull 操作,这使得原本看似松散的 3 个地址集合联系在一起,形成一个整体。因此,这是否可以表明这些资金留存地址背后实际上属于同一个团伙?


这个问题在此不做深入讨论,大家可以自行思考其中的可能性。


挖掘共用基础设施


前文提到的资金留存地址共用的基础设施地址主要有两个,分别是

0x1d3970677aa2324E4822b293e500220958d493d0 和 0x634847D6b650B9f442b3B582971f859E6e65eB53。


其中,基础设施地址 0x1d39 主要包含两个功能函数:「multiSendETH」和「0x7a860e7e」。「multiSendETH」的主要功能是进行拆分转账,资金留存地址通过 0x1d39 的「Multi Send ETH」函数将部分资金拆分至多个地址,用于伪造 Rug Pull 代币的交易量,其交易信息如图 14 所示。


这种拆分操作帮助攻击者伪造代币的活跃度,使得这些代币看起来更具吸引力,从而诱导更多用户或打新机器人进行购买。通过这一手法,Rug Pull 团伙能够进一步增加骗局的欺骗性和复杂度。


图 14 资金留存地址通过 0x1d39 拆分资金交易信息图


「0x7a860e7e」函数的功能是用于购买 Rug Pull 代币,其他伪装成普通用户的地址在收到资金留存地址的拆分资金后,要么直接与 Uniswap 的 Router 进行交互购买 Rug Pull 代币,要么通过 0x1d39 的「0x7a860e7e」函数购买 Rug Pull 代币,以伪造活跃的交易量。


基础设施地址 0x6348 的主要功能函数与 0x1d39 相似,只是购买 Rug Pull 代币的函数名称更换为「0x3f8a436c」,这里不再详细展开。


为了进一步了解 Rug Pull 团伙对这些基础设施的使用情况,我们爬取并分析了 0x1d39 和 0x6348 的交易历史,统计了外部地址对 0x1d39 和 0x6348 中两个功能函数的使用频率,结果如表 2 和表 3 所示。




从表 2 和表 3 中的数据可以看出,Rug Pull 团伙对基础设施地址的使用具有明显的特点:他们仅用少量的资金留存地址或中转地址来拆分资金,但通过大量其他地址伪造 Rug Pull 代币的交易量。例如,通过地址 0x6348 伪造交易量的地址甚至多达 6,224 个。如此规模的地址数量大大增加了我们区分攻击者地址与受害者地址的难度。


需要特别说明的是,Rug Pull 团伙伪造交易量的方式并不仅限于利用这些基础设施地址,有些地址也会直接通过交易所兑换代币进行交易量伪造。


此外,我们还统计了前文提到的 7 个资金留存地址对 0x1d39 和 0x6348 这两个地址中各功能函数的使用情况,以及每个函数涉及的 ETH 数量,最终得到的数据如表 4 和表 5 所示。




从表 4 和表 5 的数据可以看出,资金留存地址通过基础设施总计拆分了 3,616 次资金,总金额达到 9,369.98 ETH。此外,除了地址 0xDF1a 以外,所有资金留存地址都仅通过基础设施进行拆分转账,而购买 Rug Pull 代币的操作则由接收这些拆分资金的地址完成。这说明在这些 Rug Pull 团伙的作案过程中,思路清晰,分工明确。


地址 0x0573 则没有通过基础设施进行资金拆分,其关联的 Rug Pull 案例中用于伪造交易量的资金来源于其他地址,这表明不同的资金留存地址在作案风格上存在一定的差异化。


通过对不同资金留存地址之间的资金联系及其对基础设施的使用情况进行分析,我们对这些资金留存地址之间的关联有了更加全面的了解。这些 Rug Pull 团伙的作案方式比我们想象得更加专业和规范,这进一步说明有犯罪集团在背后精心策划和操作这一切,以进行系统化的诈骗活动。


挖掘作案资金来源


Rug Pull 团伙在进行 Rug Pull 时,通常会使用一个新的外部账户地址(EOA)作为 Deployer 来部署 Rug Pull 代币,而这些 Deployer 地址通常通过中心化交易所或闪兑平台获取启动资金。为此,我们对前文提到的资金留存地址所关联的 Rug Pull 案例进行了资金来源分析,旨在掌握更详细的作案资金来源信息。


表 6 展示了各资金留存地址中关联 Rug Pull 案例的 Deployer 资金来源标签的数量分布情况。



从表 6 中的数据可以看出,在各资金留存地址关联的 Rug Pull 案例中,Rug Pull 代币的 Deployer 资金大部分来源于中心化交易所(CEX)。在我们分析的所有 1,124 个 Rug Pull 案例中,资金来源于中心化交易所热钱包的案例数量达到了 1,069 个,占比高达 95.11%。这意味着对于绝大多数 Rug Pull 案例,我们可以通过中心化交易所的账户 kyc 信息和提款历史记录追溯到具体的账户持有人,从而获得破案的关键线索。


随着深入研究,我们发现这些 Rug Pull 团伙往往同时从多个交易所热钱包获取作案资金,且各钱包的使用程度(使用次数、占比)大致相当。这表明 Rug Pull 团伙有意增加各个 Rug Pull 案例在资金流上的独立性,以此提高外界对其溯源的难度,增加追踪的复杂性。


通过对这些资金留存地址和 Rug Pull 案例的详细分析,我们可以得出这些 Rug Pull 团伙的画像:他们训练有素、分工明确、有预谋且组织严密。这些特征显示出该团伙的高水平专业化及其诈骗活动的系统性。


面对如此严密组织的不法分子,我们不禁对其推广途径产生了疑问和好奇:这些 Rug Pull 团伙是通过什么方式让用户发现并购买这些 Rug Pull 代币的呢?为了回答这个问题,我们开始关注这些 Rug Pull 案例中的受害地址,并试图揭示这些团伙是如何诱导用户参与其骗局的。


挖掘受害者地址


通过资金关联的分析,我们维护了一份 Rug Pull 团伙的地址名单,并将其作为黑名单,从 Rug Pull 代币对应的流动性池交易记录中筛选出受害者地址集合。


对这些受害地址进行分析后,我们得到了与资金留存地址关联的受害地址信息(表 7)以及受害地址的合约调用情况信息(表 8)。



从表 7 中的数据可以看出,在我们分析的链上监控系统(CertiK Alert)捕获到的 Rug Pull 案例中,平均每个案例的受害地址数量为 26.82 个。这个数字实际上高于我们最初的预期,这也意味着这些 Rug Pull 案例造成的危害比我们之前设想的要大。



从表 8 的数据中可以看出,在受害地址购买 Rug Pull 代币的合约调用情况中,除了通过 Uniswap 和 MetaMask Swap 等较为常规的购买方式外,还有 30.40% 的 Rug Pull 代币是通过 Maestro 和 Banana Gun 等知名的链上狙击机器人平台进行购买的。


这一发现提醒我们,链上狙击机器人可能是 Rug Pull 团伙重要的推广渠道之一。通过这些狙击机器人,Rug Pull 团伙能够快速吸引参与者,尤其是专注于代币打新的人。因此,我们将注意力集中在这些链上狙击机器人上,以进一步了解其在 Rug Pull 诈骗中的作用及其推广机制。


Rug Pull 代币推广渠道


我们调研了当前 Web3 的打新生态,研究了链上狙击机器人的运作模式,并结合一定的社会工程学手段,最终锁定了两种可能的 Rug Pull 团伙广告渠道:Twitter 和 Telegram 群组。


需要强调的是,这些 Twitter 和 Telegram 群组并非 Rug Pull 团伙特意创建,而是作为打新生态中的基础组件而存在的。它们由链上狙击机器人运营团队或职业打新团队等第三方机构维护,专门面向打新者推送新上线的代币。这些群组成为 Rug Pull 团伙的天然广告途径,通过推送新代币的方式吸引用户购买恶意代币,从而实施诈骗。


Twitter 广告


图 15 TOMMI 代币的推特广告


图 15 展示了前文提到的 TOMMI 代币在 Twitter 上的广告。可以看到,Rug Pull 团伙利用了 Dexed.com 的新币推送服务来向外界曝光其 Rug Pull 代币,以吸引更多的受害者。在实际调研中,我们发现相当一部分 Rug Pull 代币都能在 Twitter 上找到其对应的广告,而这些广告往往来自不同第三方机构的 Twitter 账户。


Telegram 群组广告


图 16 Banana Gun 新币推送群组


图 16 展示了由链上狙击机器人 Banana Gun 团队维护的专门用于推送新上线代币的 Telegram 群组。该群组不仅推送新代币的基本信息,还为用户提供了便捷的购买入口。当用户配置好 Banana Gun Sniper Bot 的基本设置后,点击群组中对应代币推送信息的「Snipe」按钮(如图 16 中的红框部分),即可快速购买该代币。


我们对该群组内推送的代币进行了人工抽检,发现其中相当大比例的代币均为 Rug Pull 代币。这一发现进一步加深了我们的猜测,即 Telegram 群组很可能是 Rug Pull 团伙的一个重要广告渠道。


现在的问题是,第三方机构推送的新代币中,Rug Pull 代币的占比到底有多大?这些 Rug Pull 团伙的作案规模又有多大?为了弄清这些问题,我们决定对 Telegram 群组中推送的新代币数据进行系统的扫描和分析,以揭示其背后的风险规模和诈骗行为的影响力。


以太坊代币生态分析


分析 Telegram 群组中推送的代币


为了研究这些 Telegram 群组中推送的新代币的 Rug Pull 占比情况,我们通过 Telegram 的 API 爬取了 Banana Gun、Unibot 及其他第三方 Token 消息群组在 2023 年 10 月至 2024 年 8 月期间推送的以太坊新代币信息,发现这段时间内这些群组共推送了 93,930 个代币。


根据我们对 Rug Pull 案例的分析,Rug Pull 团伙在作案时通常会用 Rug Pull 代币在 Uniswap V2 中创建流动性池,并投入一定量的 ETH。待有用户或打新机器人在该池子中购买 Rug Pull 代币后,攻击者通过砸盘或移除流动性的方式获利。整个过程一般会在 24 小时内结束。


因此,我们总结出了以下 Rug Pull 代币的检测规则,并使用这些规则扫描这 93,930 个代币,目的是确定这些 Telegram 群组中推送的新代币中 Rug Pull 代币的比例:


  1. 近 24 小时目标代币没有转账行为:Rug Pull 代币在砸盘完成后通常不再有任何活动;
  2. 在 Uniswap V2 中存在目标代币与 ETH 的流动性池:Rug Pull 团伙会在 Uniswap V2 中创建代币与 ETH 的流动性池;
  3. 代币自创建以来到检测时的 Transfer 事件总数不超过 1,000:Rug Pull 代币普遍交易较少,因此转账次数相对较少;
  4. 涉及该代币的最后 5 笔交易中有大额流动性池撤出或砸盘行为:Rug Pull 代币在骗局结束时会进行大额的流动性撤出或砸盘操作。


利用这些规则对 Telegram 群组推送的代币进行了检测,结果如表 10 所示。



如表 9 所示,在 Telegram 群组推送的 93,930 个代币中,共检测出 Rug Pull 代币 46,526 个,占比高达 49.53%。这意味着在 Telegram 群组中推送的代币中,几乎有一半是 Rug Pull 代币。


考虑到某些项目方在项目失败后也会进行撤回流动性的操作,这种行为不应被简单归类为本文提到的 Rug Pull 欺诈。因此,我们需要考虑这种情况可能造成的误报对本文分析结果的影响。尽管我们的检测规则第 3 条已经能够过滤掉绝大部分类似情况,但仍可能存在误判。


为了更好地理解这些潜在误报的影响,我们对这 46,526 个被检测为 Rug Pull 的代币的活跃时间进行了统计,结果如表 10 所示。通过分析这些代币的活跃时间,我们可以进一步区分真正的 Rug Pull 行为与因项目失败而导致的流动性撤回行为,从而对 Rug Pull 的实际规模进行更准确地评估。



通过对活跃时间的统计,我们发现有 41,801 个 Rug Pull 代币的活跃时间(从代币创建到最后执行 Rug Pull 的时间)小于 72 小时,占比高达 89.84%。在正常情况下,72 小时的时间并不足以判断一个项目是否失败,因此本文认为活跃时间小于 72 小时的 Rug Pull 行为不是正常的项目方撤回资金行为。


所以,即使最不理想的情况下,剩下的 4,725 个活跃时间大于 72 小时的 Rug Pull 代币均不属于本文定义的 Rug Pull 欺诈案例,我们的分析依然具有较高的参考价值,因为仍有 89.84% 的案例符合预期。而实际上,72 小时的时间设定仍较为保守,因为在实际的抽样检测中,活跃时间大于 72 小时的代币中仍有相当一部分属于本文提及的 Rug Pull 欺诈范畴。


值得一提的是,活跃时间小于 3 小时的代币数量为 25,622 个,占比高达 55.07%。这表明 Rug Pull 团伙在以非常高的效率循环作案,作案风格倾向于「短平快」,资金周转率极高。


我们还对这 46,526 个 Rug Pull 代币案例的套现方法和合约调用方式进行了评估,目的是确认这些 Rug Pull 团伙的作案倾向。


套现方法的评估主要是统计 Rug Pull 团伙从流动性池中获取 ETH 的各种方法对应的案例数量。主要的方法有:


  1. 砸盘:Rug Pull 团伙使用通过预分配或代码后门获得的代币,兑换出流动性池中的所有 ETH。
  2. 移除流动性:Rug Pull 团伙将自己原先添加进流动性池中的资金全部取出。


合约调用方式的评估则是查看 Rug Pull 团伙在执行 Rug Pull 时所调用的目标合约对象。主要对象有:


  1. 去中心化交易所 Router 合约:用于直接操作流动性。
  2. Rug Pull 团伙自建的攻击合约:自定义合约,用于执行复杂的诈骗操作。


通过对套现方法和合约调用方式的评估,我们能够进一步理解 Rug Pull 团伙的作案模式和特点,从而更好地防范和识别类似的诈骗行为。


套现方法的相关评估数据如表 11 所示。



从评估数据中可以看出,Rug Pull 团伙通过移除流动性进行套现的案例数量为 32,131,占比高达 69.06%。这表明这些 Rug Pull 团伙更倾向于通过移除流动性来进行套现,可能的原因在于这种方式更为简单直接,无须复杂的合约编写或额外操作。相比之下,通过砸盘套现的方式需要 Rug Pull 团伙在代币的合约代码中预先设置后门,使得他们能够零成本获得砸盘所需的代币,这种操作流程较为繁琐且可能增加风险,因此选择这种方式的案例相对较少。


合约调用方式的相关评估数据如表 12 所示。



从表 12 的数据中可以清晰地看到,Rug Pull 团伙更倾向于通过 Uniswap 的 Router 合约执行 Rug Pull 操作,共执行了 40,887 次,占总执行次数的 76.35%。而总的 Rug Pull 执行次数为 53,552,高于 Rug Pull 代币数量 46,526,这说明在部分案例中,Rug Pull 团伙会执行多次 Rug Pull 操作,可能是为了最大化获利或者针对不同的受害者分批进行套现。


接下来,我们对 46,526 个 Rug Pull 案例的成本和收益数据做了统计分析。需要说明的是,我们将 Rug Pull 团伙在部署代币前从中心化交易所或闪兑服务中获取的 ETH 视为成本,而在最后进行 Rug Pull 时将回收的 ETH 视为收入来进行相关统计。由于没有考虑部分 Rug Pull 团伙自己伪造流动性池交易量时所投入的 ETH,因此实际的成本数据可能会更高。


成本和收益数据如表 13 所示。



在对这 46,526 个 Rug Pull 代币的统计中,最后的总利润为 282,699.96 ETH,利润率高达 188.70%,折合约 8 亿美元。虽然实际获利可能比上述数据略低,但整体的资金规模依然非常惊人,显示出这些 Rug Pull 团伙通过诈骗获取了巨额收益。


从整个 Telegram 群组的代币数据分析来看,当前的以太坊生态中已经充斥着大量的 Rug Pull 代币。然而,我们还需要确认一个重要问题:这些 Telegram 群组中推送的代币是否涵盖了以太坊主网上线的所有代币?如果不是,它们在以太坊主网上线代币中的占比是多少?


回答这个问题将使我们对当前以太坊的代币生态有一个全面的了解。因此,我们开始着手对以太坊主网的代币进行深入分析,以确定 Telegram 群组推送的代币在整个主网代币中的覆盖情况。通过这种分析,我们可以进一步明确 Rug Pull 问题在整个以太坊生态中的严重程度,以及这些 Telegram 群组在代币推送和推广中的影响力。


分析以太坊主网发行的代币


我们通过 RPC 节点爬取了与上述分析 Telegram 群组代币信息相同时间段(2023 年 10 月至 2024 年 8 月)的区块数据,从这些区块中获取了新部署的代币(未包含通过代理实现业务逻辑的 Token,因为通过代理部署的代币涉及 Rug Pull 的案例非常少)。最终捕获到的代币数量为 154,500,其中 Uniswap V2 的流动性池(LP)代币数量为 54,240,而 LP 代币不在本文的观察范围内。


因此,我们对 LP 代币进行了过滤,最后得到的代币数量为 100,260。相关信息如表 14 所示。



我们对这 100,260 个代币进行了 Rug Pull 规则检测,结果如表 15 所示。



我们在进行 Rug Pull 检测的 100,260 个代币中,发现有 48,265 个代币为 Rug Pull 代币,占总数的 48.14%,这一比例与在 Telegram 群组推送的代币中 Rug Pull 代币的比例大致相当。


为了进一步分析 Telegram 群组推送的代币与以太坊主网上线的所有代币之间的包含关系,我们对这两组代币的信息进行了详细对比,结果如表 16 所示。



从表 16 中的数据可以看出,Telegram 群组推送的代币和主网捕获的代币之间的交集共有 90,228 个,占主网代币的 89.99%。而 Telegram 群组中有 3,703 个代币不包含在主网捕获的代币中,经抽样检测,这些代币均为实现了合约代理的代币,而我们在捕获主网代币时并未包含实现代理的代币。


至于主网代币中未被 Telegram 群组推送的代币有 10,032 个,原因可能是这些代币被 Telegram 群组的推送规则所过滤掉,被过滤的原因则可能是由于缺乏足够的吸引力或未达到某些推送标准。


为了进一步分析,我们单独对这 3,703 个实现了合约代理的代币进行了 Rug Pull 检测,最后仅发现了 10 个 Rug Pull 代币。因此,这些合约代理代币对 Telegram 群组中代币的 Rug Pull 检测结果不会造成太多干扰,这表明 Telegram 群组推送的代币和主网代币的 Rug Pull 检测结果高度一致。


这 10 个实现了代理的 Rug Pull 代币地址列在表 17 中,若感兴趣的话,大家可以自行查看这些地址的相关细节,本文在此不做进一步展开。


通过这种分析,我们确认 Telegram 群组推送的代币在 Rug Pull 代币比例上与主网代币有很高的重合度,进一步验证了这些推送渠道在当前 Rug Pull 生态中的重要性和影响力。



现在我们可以回答这个问题,即 Telegram 群组中推送的代币是否涵盖了以太坊主网上线的所有代币,以及如果不是,它们占据多大的比例?


答案是,Telegram 群组推送的代币占了主网约 90%,且其 Rug Pull 检测结果与主网代币的 Rug Pull 检测结果高度一致。因此,前文对 Telegram 群组推送代币的 Rug Pull 检测和数据分析基本能够反映当前以太坊主网的代币生态现状。


前文提到,以太坊主网上的 Rug Pull 代币占比约为 48.14%,但对于剩下的 51.86% 的非 Rug Pull 代币,我们同样感兴趣。即使排除 Rug Pull 代币,仍然有 51,995 个代币处于未知状态,而这个数量远远超过我们对合理代币数量的预期。因此,我们对主网上所有代币从创建到最后停止活动的时间进行了统计,结果如表 18 所示。



从表 18 中的数据可以看到,当我们将视野扩展至整个以太坊主网,代币生命周期小于 72 小时的代币数量将有 78,018 个,占总量的 77.82%。这个数量显著高于我们检测出的 Rug Pull 代币数量,这说明本文提及的 Rug Pull 检测规则并不能完全覆盖所有的 Rug Pull 案例。事实上,通过抽样检测,我们确实发现有未被检测到的 Rug Pull 代币。同时,这也可能意味着存在一些其他的诈骗形式未被覆盖,例如钓鱼攻击、貔貅盘等,这些仍需要我们进一步挖掘和探索。


此外,生命周期大于 72 小时的代币数量也高达 22,242 个。然而,这部分代币并不是本文的重点挖掘对象,因此仍可能存在其他细节等待被发现。也许其中有些代币代表了失败的项目,或者是具备一定用户基础但未能获得长期发展支持的项目,这些代币背后的故事和原因可能隐藏了更多复杂的市场动态。


以太坊主网的代币生态比我们预先想象的要复杂得多,各种短期和长期项目交织,潜在的诈骗行为也层出不穷。本文主要是为了引发大家的关注,希望大家能意识到,在我们未知的角落,不法分子一直在悄然行动。我们希望通过这样的分析抛砖引玉,促使更多的人去关注、研究,以提高整个区块链生态的安全性。


思考


当前以太坊主网上新发行的代币中,Rug Pull 代币的占比高达 48.14%,这个比例极具警示意义。它意味着在以太坊上,平均每上线两个代币,其中就有一个是用于诈骗的,这反映了当前以太坊生态在某种程度上的混乱与无序。然而,真正令人担忧的远不止以太坊代币生态的现状。我们发现,在链上监控程序捕获的 Rug Pull 案例中,其他区块链网络的案例数量甚至比以太坊还多,那么其他网络的代币生态究竟是怎样的?同样值得进一步深入研究。


此外,即使除去占比达 48.14% 的 Rug Pull 代币,以太坊每天仍然有约 140 个新代币上线,其日发行范围仍远高于合理范围,这些未涉及的代币中是否隐藏着其他未被揭露的秘密?这些问题都值得我们深入思考和研究。


同时,本文中还有许多需要进一步探讨的关键要点:


1. 如何快速高效地确定以太坊生态中的 Rug Pull 团伙数量及其联系?


针对目前检测到的大量 Rug Pull 案例,如何有效地确定这些案例背后隐藏了多少个独立的 Rug Pull 团伙,且这些团伙之间是否存在联系?这种分析可能需要结合资金流向和地址共用情况。


2. 如何更准确地区分 Rug Pull 案例中的受害人地址与攻击者地址?


区分受害者和攻击者是识别诈骗行为的重要步骤,但受害人地址与攻击者地址之间的界限在很多情况下是模糊的,如何更精确地进行区分是一个值得深入研究的问题。


3. 如何将 Rug Pull 检测前移至事中甚至事前?


目前的 Rug Pull 检测方法主要基于事后分析,是否能开发一种事中或事前检测的方法来提前识别当前活跃代币中可能存在的 Rug Pull 风险?这种能力将有助于减少投资者的损失并及时干预。


4. Rug Pull 团伙的获利策略是怎么样的?


研究 Rug Pull 团伙在什么样的获利条件下会进行 Rug Pull(例如平均获利多少时选择跑路,可参考本文表 13 部分),以及他们是否通过某些机制或手段来确保自己的获利。这些信息有助于预测 Rug Pull 行为的发生并加强防范。


5. 除了 Twitter 和 Telegram 外,还有没有其他推广渠道?


本文提到的 Rug Pull 团伙主要通过 Twitter 和 Telegram 等渠道推广其诈骗代币,但是否还有其他可能被利用的推广渠道?例如论坛、社交媒体、广告平台等,这些渠道是否也存在类似的风险?


这些问题都值得我们深入探讨和思考,这里不再展开,留作大家的研究与讨论。Web3 生态在迅速发展,保障其安全性不仅依赖于技术的进步,也需要更全面的监控和更深入的研究,以应对不断变化的风险和挑战。


建议


如前文所述,当前代币打新生态中充斥着大量的骗局,作为 Web3 投资者,稍有不慎便可能蒙受损失。而随着 Rug Pull 团伙与反诈团队的攻防对抗日益升级,投资者识别诈骗代币或项目的难度也在不断增加。


因此,针对想要接触打新市场的投资者,我们的安全专家团队提供以下几点建议供参考:


  1. 尽量通过知名中心化交易所购买新代币:优先选择知名中心化交易所进行新代币的购买,这些平台在项目审核上更加严格,相对安全性较高。
  2. 通过去中心化交易所购买新代币时需认准其官网及链上地址:确保购买的代币来源于官方发布的合约地址,避免误买到诈骗代币。
  3. 购买新代币前,核实项目是否有官网和社区:没有官网或活跃社区的项目往往风险较高。尤其注意第三方 Twitter 和 Telegram 群组推送的新代币,这些推送大多没有经过安全性验证。
  4. 查看代币的创建时间,避免购买创建时间低于 3 天的代币:如果具备一定技术基础,可以通过区块浏览器查看代币的创建时间,尽量避免购买刚创建不足 3 天的代币,因为 Rug Pull 代币的活跃时间通常很短。
  5. 使用第三方安全机构的代币扫描服务:如果条件允许,可以借助第三方安全机构提供的代币扫描服务来检测目标代币的安全性。


呼吁


除了本文重点研究的 Rug Pull 诈骗团伙外,越来越多的类似违法犯罪分子正在利用 Web3 行业各领域或平台的基础设施及机制进行非法牟利,使得当前 Web3 生态的安全状况日益严峻。我们需要开始重视一些平时容易忽视的问题,不让犯罪分子有机可乘。


前文提到,Rug Pull 团伙的资金流入和流出最终都会流经各大交易所,但我们认为 Rug Pull 诈骗的资金流只是冰山一角,流经交易所的恶意资金规模可能远超我们的想象。因此,我们强烈呼吁各大交易所针对这些恶意资金流采取更严格的监管措施,积极打击违法欺诈行为,以确保用户的资金安全。


类似于项目推广和链上狙击 Bot 等第三方服务提供商,其基础设施事实上已经成为诈骗团伙牟利的工具。因此,我们呼吁所有第三方服务提供商加强对产品或内容的安全审查,避免被不法分子恶意利用。


同时,我们也呼吁所有受害者,包括 MEV 套利者和普通用户,在投资未知项目前,积极使用安全扫描工具检测目标项目,参考权威安全机构的项目评级,并积极主动披露犯罪分子的恶意行为,揭露行业中的不法现象。


作为专业的安全团队,我们也呼吁所有的安全从业者积极主动去发现、甄别、对抗不法行为,勤于发声,为用户的财产安全保驾护航。


在 Web3 领域,用户、项目方、交易所、MEV 套利者和 Bot 等第三方服务商都扮演着至关重要的角色。我们希望每一个参与者都能为 Web3 生态的持续发展贡献自己的一份力量,共同创建一个更安全、透明的区块链环境。

【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。

CertiK
数据请求中
查看更多

推荐专栏

数据请求中
在 App 打开