
이더리움 토큰 생태계의 혼란을 파헤치다: 러그풀(Rug Pull) 사례 심층 분석
저자: CertiK
서론
Web3 세계에서는 매일 새로운 토큰이 끊임없이 등장하고 있습니다. 하루에 얼마나 많은 신규 토큰이 발행되는지 궁금해 본 적이 있나요? 그리고 이 신규 토큰들이 모두 안전한지에 대해서도 말입니다.
이러한 의문은 결코 근거 없는 것이 아닙니다. 지난 수개월간 CertiK 보안팀은 다수의 러그풀(Rug Pull) 거래 사례를 포착했습니다. 주목할 점은, 이러한 사례에서 언급된 토큰들은 예외 없이 막 메인넷에 상장된 신생 토큰이라는 점입니다.
CertiK는 이후 이 러그풀 사례들을 심층 조사하여 조직적인 범죄 집단의 존재를 확인했으며, 이들 사기 행위의 패턴화된 특징들을 정리할 수 있었습니다. 이러한 집단의 수법을 분석하면서, 우리는 러그풀 범죄가 한 가지 가능한 확산 경로를 이용하고 있다는 사실을 발견하게 되었습니다. 바로 텔레그램 그룹입니다. 이들은 Banana Gun, Unibot 등의 텔레그램 그룹 내 'New Token Tracer' 기능을 활용해 사용자들이 악성 토큰을 구매하도록 유도하고, 최종적으로 러그풀을 통해 수익을 얻고 있었습니다.
CertiK는 2023년 11월부터 2024년 8월 초까지 해당 텔레그램 그룹들이 전달한 토큰 정보를 통계 분석한 결과, 총 93,930개의 신규 토큰이 홍보되었으며, 그중 러그풀 관련 토큰은 46,526개로 무려 49.53%에 달하는 것을 확인했습니다. 이들의 누적 투입 비용은 149,813.72 ETH였으며, 188.7%의 수익률로 282,699.96 ETH를 획득해 약 8억 달러 규모의 수익을 올렸습니다.
텔레그램 그룹을 통해 홍보된 신규 토큰이 이더리움 메인넷 전체에서 차지하는 비중을 평가하기 위해, 동일 기간 동안 이더리움 메인넷에 상장된 신규 토큰 데이터를 수집했습니다. 그 결과, 해당 기간 동안 총 100,260개의 신규 토큰이 발행되었으며, 이 중 텔레그램 그룹을 통해 홍보된 토큰은 메인넷의 89.99%를 차지했습니다. 하루 평균 약 370개의 신규 토큰이 생성되고 있는 셈으로, 이는 합리적인 예상치를 훨씬 넘는 수준입니다. 지속적인 조사를 통해 밝혀진 진실은 충격적이었습니다. 이더리움 메인넷에 상장된 토큰 중 최소 48,265개가 러그풀 사기에 연루되어 있으며, 비율로는 무려 48.14%에 달합니다. 즉, 이더리움 메인넷에 상장되는 신규 토큰 두 개 중 하나는 사기일 가능성이 있다는 것입니다.
또한 CertiK는 다른 블록체인 네트워크에서도 더 많은 러그풀 사례를 발견했습니다. 이는 단순히 이더리움 메인넷뿐만 아니라, Web3 전체의 신규 토큰 생태계가 우리가 예상했던 것보다 훨씬 더 심각한 보안 문제에 직면해 있음을 의미합니다. 따라서 CertiK는 이번 조사 보고서를 작성하여 Web3 커뮤니티 구성원 모두가 이러한 지속적으로 증가하는 사기 행위에 대해 경각심을 갖고, 필요한 예방 조치를 취함으로써 자신의 자산을 보호할 수 있도록 돕고자 합니다.
ERC-20 토큰(Token)
본 보고서를 본격적으로 시작하기 전, 몇 가지 기본 개념을 먼저 이해해 보겠습니다.
ERC-20 토큰은 현재 블록체인에서 가장 일반적인 토큰 표준 중 하나로, 스마트 계약 및 탈중앙화 애플리케이션(dApp) 간 상호 운용성을 가능하게 하는 일련의 규정을 정의합니다. ERC-20 표준은 송금, 잔액 조회, 제3자에게 토큰 관리 권한 부여 등의 기본 기능을 규정하고 있습니다. 이러한 표준화 덕분에 개발자는 토큰을 더 쉽게 발행하고 관리할 수 있게 되어, 토큰 생성과 사용 과정이 간소화되었습니다. 실제로 개인이나 조직이라면 누구나 ERC-20 표준을 기반으로 자신만의 토큰을 발행하고, 프리세일을 통해 다양한 금융 프로젝트에 초기 자금을 조달할 수 있습니다. ERC-20 토큰의 광범위한 활용은 많은 ICO와 탈중앙화 금융(DeFi) 프로젝트의 기반이 되고 있습니다.
우리가 잘 알고 있는 USDT, PEPE, DOGE 역시 ERC-20 토큰이며, 사용자는 탈중앙화 거래소(DEX)를 통해 이러한 토큰을 구매할 수 있습니다. 그러나 일부 사기 조직은 코드에 후문(backdoor)이 숨겨진 악성 ERC-20 토큰을 자체 발행해 DEX에 상장하고, 사용자가 이를 구매하도록 유도하기도 합니다.
러그풀(Rug Pull) 토큰의 대표적 사기 사례
이제 실제 러그풀 토큰 사기 사례를 살펴보며, 악성 토큰 사기의 운영 방식을 깊이 있게 이해해 보겠습니다. 우선, "러그풀"이란 탈중앙화 금융 프로젝트에서 프로젝트 팀이 갑작스럽게 자금을 회수하거나 프로젝트를 포기해 투자자들에게 막대한 손실을 입히는 사기 행위를 의미합니다. 반면 "러그풀 토큰"은 이러한 사기 행위를 수행하기 위해 특별히 발행된 토큰을 말합니다.
본 문서에서 언급하는 러그풀 토큰은 때때로 "허니팟(Honey Pot)" 또는 "엑싯 스캠(Exit Scam) 토큰"이라고도 불리지만, 이후 설명에서는 일관되게 러그풀 토큰으로 칭하겠습니다.
· 사례
공격자(러그풀 범죄 조직)는 Deployer 주소(0x4bAF)를 통해 TOMMI 토큰을 배포하고, 1.5 ETH와 1억 TOMMI 토큰으로 유동성 풀을 생성합니다. 이후 다른 주소를 통해 TOMMI 토큰을 구매하며 유동성 풀 내 거래량을 조작함으로써, 일반 사용자와 체인 상의 신규 토큰 스니핑 로봇들이 TOMMI 토큰을 구매하도록 유도합니다. 충분한 스니핑 로봇이 유인된 후, 공격자는 Rug Puller 주소(0x43a9)를 사용해 러그풀을 실행합니다. Rug Puller는 악성 approve 권한을 통해 유동성 풀에서 38,739,354개의 TOMMI 토큰을 인출한 뒤 이를 유동성 풀에 투입해 약 3.95 ETH를 교환합니다. 이 권한은 TOMMI 토큰 계약 배포 시 Rug Puller에게 미리 부여된 것으로, 유동성 풀에서 직접 토큰을 전송할 수 있게 합니다.
· 관련 주소
-
Deployer: 0x4bAFd8c32D9a8585af0bb6872482a76150F528b7
-
TOMMI 토큰: 0xe52bDD1fc98cD6c0cd544c0187129c20D4545C7F
-
Rug Puller: 0x43A905f4BF396269e5C559a01C691dF5CbD25a2b
-
Rug Puller가 위장한 사용자(하나): 0x4027F4daBFBB616A8dCb19bb225B3cF17879c9A8
-
Rug Pull 자금 중계 주소: 0x1d3970677aa2324E4822b293e500220958d493d0
-
Rug Pull 자금 보유 주소: 0x28367D2656434b928a6799E0B091045e2ee84722
· 관련 거래
-
Deployer가 거래소에서 초기 자금 확보: 0x428262fb31b1378ea872a59528d3277a292efe7528d9ffa2bd926f8bd4129457
-
TOMMI 토큰 배포: 0xf0389c0fa44f74bca24bc9d53710b21f1c4c8c5fba5b2ebf5a8adfa9b2d851f8
-
유동성 풀 생성: 0x59bb8b69ca3fe2b3bb52825c7a96bf5f92c4dc2a8b9af3a2f1dddda0a79ee78c
-
중계 주소가 위장 사용자에게 자금 송금(하나): 0x972942e97e4952382d4604227ce7b849b9360ba5213f2de6edabb35ebbd20eff
-
위장 사용자가 토큰 구매(하나): 0x814247c4f4362dc15e75c0167efaec8e3a5001ddbda6bc4ace6bd7c451a0b231
-
러그풀 실행: 0xfc2a8e4f192397471ae0eae826dac580d03bcdfcb929c7423e174d1919e1ba9c
-
러그풀 수익을 중계 주소로 송금: 0xf1e789f32b19089ccf3d0b9f7f4779eb00e724bb779d691f19a4a19d6fd15523
-
중계 주소가 자금 보유 주소로 송금: 0xb78cba313021ab060bd1c8b024198a2e5e1abc458ef9070c0d11688506b7e8d7
· 러그풀 과정
1. 공격 자금 준비
공격자는 거래소를 통해 Token Deployer (0x4bAF)에게 2.47309009 ETH를 입금해 러그풀 초기 자금을 마련합니다.

그림1 Deployer가 거래소에서 초기 자금 확보한 거래 정보
2. 후문이 포함된 러그풀 토큰 배포
Deployer는 TOMMI 토큰을 생성하고, 1억 개의 토큰을 사전 채굴하여 자신에게 할당합니다.

그림2 Deployer가 TOMMI 토큰 생성한 거래 정보
3. 초기 유동성 풀 생성
Deployer는 1.5 ETH와 사전 채굴된 모든 토큰을 사용해 유동성 풀을 생성하고, 약 0.387개의 LP 토큰을 받습니다.

그림3 Deployer가 유동성 풀 생성한 거래 흐름
4. 사전 채굴된 토큰 공급량 모두 소각
Token Deployer는 모든 LP 토큰을 0 주소로 전송해 소각합니다. TOMMI 계약에는 민팅(Mint) 기능이 없으므로, 이 시점에서 Deployer는 이론적으로 러그풀 능력을 상실했습니다. (이는 스니핑 로봇을 유인하기 위한 필수 조건 중 하나입니다. 일부 스니핑 로봇은 새롭게 풀에 들어온 토큰의 러그풀 리스크를 평가하는데, Deployer는 또한 오너를 0 주소로 설정해 스니핑 로봇의 사기 탐지 프로그램을 속이기 위해 노력합니다.)

그림4 Deployer가 LP 토큰 소각한 거래 정보
5. 거래량 조작
공격자는 여러 주소를 사용해 유동성 풀에서 TOMMI 토큰을 구매하며 거래량을 부풀립니다. 이를 통해 스니핑 로봇을 추가로 유인합니다. (해당 주소들이 공격자임을 판단하는 근거: 관련 주소들의 자금은 러그풀 조직의 과거 자금 중계 주소에서 유입됨)

그림5 공격자의 다른 주소가 TOMMI 토큰 구매한 거래 정보 및 자금 흐름
6. 공격자는 Rug Puller 주소(0x43A9)를 통해 러그풀을 실행합니다. 토큰의 후문을 이용해 유동성 풀에서 38,739,354개의 토큰을 직접 인출한 후 이를 다시 풀에 투입해 약 3.95 ETH를 회수합니다.

그림6 러그풀 거래 정보 및 자금 흐름
7. 공격자는 러그풀로 얻은 자금을 중계 주소 0xD921로 보냅니다.

그림7 Rug Puller가 수익을 중계 주소로 송금한 거래 정보
8. 중계 주소 0xD921은 자금을 자금 보유 주소 0x2836으로 보냅니다. 여기서 알 수 있듯, 러그풀 완료 후 Rug Puller는 수익을 특정 자금 보유 주소로 전송합니다. 자금 보유 주소는 우리가 다수의 러그풀 사례에서 모니터링한 자금 집합 지점이며, 여기서 수령한 대부분의 자금은 다음 라운드의 러그풀을 위해 분할되며, 일부는 거래소를 통해 인출됩니다. 우리는 여러 개의 자금 보유 주소를 확인했으며, 0x2836도 그중 하나입니다.

그림8 중계 주소의 자금 이동 정보
· 러그풀 코드 후문
공격자는 LP 토큰을 소각함으로써 러그풀이 불가능하다는 인상을 주려 했지만, 실제로는 TOMMI 토큰 계약의 openTrading 함수에 악성 approve 후문을 남겼습니다. 이 후문은 유동성 풀 생성 시 유동성 풀이 Rug Puller 주소에 토큰 전송 권한을 부여하게 만들어, Rug Puller가 유동성 풀에서 직접 토큰을 인출할 수 있게 합니다.

그림9 TOMMI 토큰 계약의 openTrading 함수

그림10 TOMMI 토큰 계약의 onInit 함수
openTrading 함수는 그림9에 표시된 바와 같이 주로 유동성 풀을 생성하지만, 공격자는 이 함수 내에서 그림10에 나온 후문 함수 onInit을 호출하여 uniswapV2Pair가 _chefAddress 주소에 type(uint256)만큼의 토큰 전송 권한을 부여하게 만듭니다. 여기서 uniswapV2Pair는 유동성 풀 주소이며, _chefAddress는 Rug Puller 주소이고, 이 주소는 계약 배포 시 결정됩니다(그림11 참조).

그림11 TOMMI 토큰 계약의 생성자 함수
· 범죄 패턴화
TOMMI 사례를 분석한 결과, 다음과 같은 4가지 특징을 도출할 수 있습니다:
1. 거래소를 통한 자금 확보: 공격자는 먼저 거래소를 통해 Deployer 주소에 자금을 제공합니다.
2. Deployer가 유동성 풀 생성 후 LP 토큰 소각: Deployer는 러그풀 토큰 생성 후 즉시 유동성 풀을 만들고 LP 토큰을 소각해 프로젝트의 신뢰도를 높이며 더 많은 투자자를 유인합니다.
3. Rug Puller가 대량의 토큰으로 유동성 풀 내 ETH 교환: Rug Puller 주소는 일반적으로 토큰 총 공급량을 훨씬 초과하는 대량의 토큰을 사용해 유동성 풀의 ETH를 교환합니다. 다른 사례에서는 유동성 제거를 통해 ETH를 회수하기도 합니다.
4. Rug Puller가 러그풀로 얻은 ETH를 자금 보유 주소로 이체: Rug Puller는 확보한 ETH를 자금 보유 주소로 이전하며, 경우에 따라 중간 주소를 거치기도 합니다.
이러한 특징들은 우리가 포착한 사례들에서 공통적으로 나타나며, 러그풀 행위가 명확한 패턴을 가짐을 보여줍니다. 또한 러그풀 완료 후 자금은 일반적으로 자금 보유 주소로 집결되는 점에서, 일견 서로 독립된 듯 보이는 사례들이 실은 동일한 조직 혹은 단일 범죄 집단에 의해 운영되고 있을 가능성이 높습니다.
이러한 특징을 기반으로 러그풀의 행동 패턴을 추출하고, 이를 활용해 모니터링된 사례들을 스캔 검사함으로써 잠재적 사기 조직의 프로파일을 구성하고자 합니다.
러그풀 범죄 조직
· 자금 보유 주소 탐색
앞서 언급했듯, 러그풀 사례는 마지막 단계에서 자금을 자금 보유 주소로 집결시키는 경향이 있습니다. 이 패턴을 기반으로, 활동이 활발하고 관련 사례의 특징이 뚜렷한 몇 개의 자금 보유 주소를 선별해 심층 분석을 진행했습니다.
분석 대상이 된 자금 보유 주소는 총 7개이며, 이 주소들과 연결된 러그풀 사례는 1,124건입니다. 이 사례들은 CertiK의 체인 상 공격 모니터링 시스템(CertiK Alert)에 의해 성공적으로 포착되었습니다. 러그풀 조직은 사기를 완료한 후 불법 수익을 이러한 자금 보유 주소로 집결시킵니다. 이후 이 주소들은 자금을 분할해 새로운 러그풀 사기에서 신규 토큰 발행, 유동성 조작 등에 사용합니다. 일부 자금은 거래소나 스왑 플랫폼을 통해 현금화됩니다.
자금 보유 주소의 자금 데이터 통계는 표 1과 같습니다:

각 자금 보유 주소와 관련된 모든 러그풀 사기의 비용과 수익을 통계적으로 분석한 결과가 표 1에 정리되어 있습니다.
완전한 러그풀 사기 과정에서, 조직은 일반적으로 한 주소를 토큰 배포자(Deployer)로 사용하고, 거래소에서 자금을 인출해 초기 자금을 마련한 후 토큰과 유동성 풀을 생성합니다. 충분한 사용자나 스니핑 로봇이 ETH로 러그풀 토큰을 구매하면, 조직은 다른 주소(Rug Puller)를 사용해 작업을 수행하고, 수익을 자금 보유 주소로 이전합니다.
이 과정에서 Deployer가 거래소에서 인출한 ETH 또는 유동성 풀 생성 시 투입한 ETH를 러그풀 비용으로 간주합니다(구체적인 계산은 Deployer의 행동에 따라 다름). 반면 Rug Puller가 러그풀 완료 후 자금 보유 주소(또는 기타 중계 주소)로 이체한 ETH는 수익으로 간주하며, 이에 따라 표 1의 수익 및 지출 데이터를 산출했습니다. USD 수익은 ETH/USD 환율(1 ETH = 2,513.56 USD, 2024년 8월 31일 기준)을 적용해 실시간 가격으로 계산했습니다.
참고로, 러그풀 조직은 유동성 풀 활동을 모방하기 위해 직접 ETH로 자신이 만든 토큰을 구매하기도 하며, 이 비용은 계산에 포함되지 않았습니다. 따라서 표 1의 데이터는 실제 수익을 다소 과대평가하고 있으며, 실제 수익은 이보다 낮을 수 있습니다.

그림12 자금 보유 주소별 수익 비중 파이 차트
표 1의 각 주소별 러그풀 수익 데이터를 기반으로 수익 비중 파이 차트를 작성한 결과가 그림12입니다. 수익 비중 상위 3개 주소는 각각 0x1607, 0xDF1a, 0x2836입니다. 이 중 주소 0x1607의 수익이 가장 높아 약 2,668.17 ETH이며, 전체 수익의 27.7%를 차지합니다.
실제로 최종 자금이 서로 다른 자금 보유 주소로 집결되더라도, 관련 사례들 사이에 공통점(예: 러그풀 후문 구현 방식, 현금화 경로 등)이 많다는 점에서, 이들 자금 보유 주소가 실은 동일한 조직에 속해 있을 가능성이 매우 큽니다.
그렇다면 이러한 자금 보유 주소들 사이에는 어떤 연관성이 있을까요?
· 자금 보유 주소 간 연관성 탐색

그림13 자금 보유 주소 간 자금 흐름도
자금 보유 주소 간 연관성을 판단하는 중요한 지표는 주소들 사이에 직접적인 송금 관계가 존재하는지 여부입니다. 이를 검증하기 위해, 해당 주소들의 역사적 거래 기록을 크롤링하고 분석했습니다.
과거 분석 사례에서 대부분의 경우, 각 러그풀 사기의 수익은 단일 자금 보유 주소로만 흐르기 때문에, 수익의 흐름을 추적해 서로 다른 자금 보유 주소를 연결하는 것은 불가능합니다. 따라서 자금 보유 주소 간의 직접적인 자금 이동을 분석해야만 연관성을 확인할 수 있으며, 그 결과가 그림13입니다.
그림13에서 주소 0x1d39와 0x6348은 각 자금 보유 주소들이 공유하는 러그풀 인프라 계약 주소입니다. 자금 보유 주소들은 이 두 계약을 통해 자금을 분할해 다른 주소로 전송하며, 수령 주소들은 이를 활용해 러그풀 토큰의 거래량을 조작합니다.
그림13의 ETH 직접 송금 관계를 기반으로, 이 자금 보유 주소들을 다음의 3개 집합으로 나눌 수 있습니다:
1. 0xDF1a 및 0xDEd0;
2. 0x1607 및 0x4856;
3. 0x2836, 0x0573, 0xF653 및 0x7dd9.
각 집합 내부에는 직접적인 송금 관계가 있으나, 집합 간에는 직접적인 송금이 없습니다. 따라서 이 7개의 자금 보유 주소를 3개의 별개 조직으로 나눌 수 있을 것처럼 보입니다. 그러나 이 세 집합 모두 동일한 인프라 계약을 통해 ETH를 분할하고 후속 러그풀 작업을 수행함으로써, 원래는 느슨하게 연결된 집합들이 하나의 전체로 결합됩니다. 이는 과연 모든 자금 보유 주소가 실은 동일한 조직에 속해 있다는 것을 의미할 수 있을까요?
이 질문에 대한 심층 논의는 여기서 생략하며, 독자 여러분께서 직접 가능성에 대해 고민해 보시길 바랍니다.
· 공용 인프라 탐색
앞서 언급한 자금 보유 주소들이 공유하는 인프라 주소는 주로 두 개입니다:
0x1d3970677aa2324E4822b293e500220958d493d0 및 0x634847D6b650B9f442b3B582971f859E6e65eB53.
이 중 인프라 주소 0x1d39는 주로 두 가지 기능 함수를 포함합니다: "multiSendETH"와 "0x7a860e7e". "multiSendETH"는 자금 분할 전송 기능으로, 자금 보유 주소는 이 함수를 통해 일부 자금을 여러 주소로 분할해 러그풀 토큰의 거래량을 조작합니다. 거래 정보는 그림14와 같습니다.
이러한 분할 작업은 공격자가 토큰의 활성도를 모방해 더 매력적으로 보이게 하며, 더 많은 사용자나 스니핑 로봇을 유인하는 데 기여합니다. 이 방법을 통해 러그풀 조직은 사기의 기만성과 복잡성을 더욱 강화합니다.

그림14 자금 보유 주소가 0x1d39를 통해 자금 분할한 거래 정보
"0x7a860e7e" 함수는 러그풀 토큰 구매용입니다. 일반 사용자로 위장한 주소들은 자금 보유 주소로부터 분할된 자금을 받은 후, Uniswap 라우터와 직접 상호작용해 러그풀 토큰을 구매하거나, 0x1d39의 "0x7a860e7e" 함수를 통해 구매함으로써 거래량을 조작합니다.
인프라 주소 0x6348의 주요 기능 함수는 0x1d39와 유사하나, 러그풀 토큰 구매 함수 이름이 "0x3f8a436c"로 변경되었습니다. 이에 대한 자세한 설명은 생략합니다.
러그풀 조직이 이러한 인프라를 어떻게 사용하는지 더 깊이 이해하기 위해, 0x1d39와 0x6348의 거래 이력을 크롤링 및 분석하고, 외부 주소가 두 기능 함수를 사용한 빈도를 통계적으로 집계한 결과를 표 2와 표 3에 정리했습니다.


표 2와 표 3의 데이터를 보면, 러그풀 조직은 인프라 주소를 사용하는 데 뚜렷한 특징이 있습니다. 즉, 소수의 자금 보유 주소나 중계 주소만을 사용해 자금을 분할하지만, 수천 개의 다른 주소를 통해 러그풀 토큰의 거래량을 조작합니다. 예를 들어, 주소 0x6348을 통해 거래량을 조작한 주소는 무려 6,224개에 달합니다. 이처럼 엄청난 규모의 주소 수는 공격자 주소와 피해자 주소를 구분하는 작업을 크게 어렵게 만듭니다.
특별히 언급할 점은, 러그풀 조직이 거래량을 조작하는 방법이 이러한 인프라 주소에만 국한되지 않는다는 것입니다. 일부 주소는 직접 거래소를 통해 토큰을 스왑해 거래량을 조작하기도 합니다.
또한 앞서 언급한 7개의 자금 보유 주소가 0x1d39와 0x6348의 각 기능 함수를 사용한 빈도와 관련된 ETH 금액을 통계적으로 집계한 결과를 표 4와 표 5에 정리했습니다.


표 4와 표 5의 데이터를 보면, 자금 보유 주소들은 인프라를 통해 총 3,616회 자금을 분할했으며, 총 금액은 9,369.98 ETH에 달합니다. 또한 0xDF1a를 제외한 모든 자금 보유 주소는 인프라를 통해만 자금을 분할했으며, 러그풀 토큰 구매 작업은 분할된 자금을 수령한 주소들이 수행했습니다. 이는 러그풀 조직의 작전 과정에서 명확한 역할 분담이 이루어지고 있음을 보여줍니다.
주소 0x0573는 인프라를 통한 자금 분할을 하지 않았으며, 관련 사례에서 거래량 조작에 사용된 자금은 다른 주소에서 유입되었습니다. 이는 서로 다른 자금 보유 주소들이 범죄 스타일에 있어 일정한 차이를 보임을 의미합니다.
다양한 자금 보유 주소 간의 자금 연관성과 인프라 사용 방식을 분석함으로써, 이들 주소 간의 관계에 대해 보다 포괄적인 이해를 얻을 수 있었습니다. 이러한 러그풀 조직의 수법은 우리의 예상보다 훨씬 더 전문적이고 체계적이며, 이는 범죄 조직이 배후에서 체계적인 사기 활동을 기획하고 있다는 점을 시사합니다.
· 범죄 자금 출처 탐색
러그풀 조직은 일반적으로 새로운 외부 소유 주소(EOA)를 Deployer로 사용해 러그풀 토큰을 배포하며, 이 Deployer 주소는 보통 거래소나 스왑 플랫폼을 통해 초기 자금을 확보합니다. 이에 따라 앞서 언급한 자금 보유 주소들과 연결된 러그풀 사례들의 자금 출처를 분석해 보다 자세한 범죄 자금 출처 정보를 파악하고자 했습니다.
표 6은 각 자금 보유 주소와 관련된 러그풀 사례에서 Deployer의 자금 출처 라벨 수 분포를 보여줍니다.

표 6의 데이터를 보면, 각 자금 보유 주소와 연결된 러그풀 사례에서 Deployer의 자금 대부분은 거래소(CEX)에서 유입되었습니다. 분석한 1,124건의 러그풀 사례 중, 거래소 핫월렛에서 자금을 받은 사례는 1,069건으로, 무려 95.11%에 달합니다. 이는 대부분의 러그풀 사례에서 거래소의 KYC 정보와 출금 기록을 통해 계좌 소유자를 추적할 수 있음을 의미하며, 수사의 핵심 단서를 제공합니다.
심층 연구를 통해, 러그풀 조직은 종종 여러 거래소 핫월렛에서 동시에 자금을 확보하며, 각 월렛의 사용 정도(사용 횟수, 비중)가 비슷하다는 점을 발견했습니다. 이는 러그풀 조직이 각 사례 간 자금 흐름의 독립성을 높여 외부에서의 추적을 어렵게 하고, 조사의 복잡성을 증가시키려는 의도를 보여줍니다.
이러한 자금 보유 주소와 러그풀 사례에 대한 상세 분석을 통해, 러그풀 조직의 프로파일을 도출할 수 있었습니다. 이들은 훈련이 잘 되었으며, 역할 분담이 명확하고, 사전 계획이 철저하며 조직적으로 운영됩니다. 이러한 특징들은 이 조직의 높은 수준의 전문성과 체계적인 사기 활동을 입증합니다.
이처럼 조직화된 불법 조직을 마주하며, 우리는 자연스럽게 이들이 어떤 방식으로 사용자를 유인해 토큰을 구매하게 하는지 궁금해졌습니다. 이러한 의문을 해결하기 위해, 러그풀 사례의 피해자 주소를 집중적으로 분석하고, 이 조직들이 어떻게 사용자를 사기로 유도하는지 밝혀내고자 했습니다.
· 피해자 주소 탐색
자금 연관성 분석을 통해 러그풀 조직의 주소 목록을 확보하고 이를 블랙리스트로 관리하며, 러그풀 토큰의 유동성 풀 거래 기록에서 피해자 주소를 선별했습니다.
이 피해자 주소들을 분석한 결과, 자금 보유 주소와 연결된 피해자 정보(표 7)와 피해자 주소의 계약 호출 현황(표 8)을 도출할 수 있었습니다.

표 7의 데이터를 보면, CertiK Alert가 포착한 러그풀 사례에서 평균 피해자 수는 26.82명입니다. 이 수치는 우리의 초기 예상보다 높아, 러그풀 사기의 피해 규모가 생각보다 크다는 것을 의미합니다.

표 8의 데이터를 보면, 피해자 주소가 러그풀 토큰을 구매할 때 사용한 계약 호출 방식 중, Uniswap, MetaMask Swap 등 일반적인 구매 방식 외에도, Maestro 및 Banana Gun과 같은 유명한 체인 상 스니핑 로봇 플랫폼을 통해 구매한 경우가 30.40%에 달합니다.
이 발견은 체인 상 스니핑 로봇이 러그풀 조직의 중요한 홍보 채널 중 하나일 수 있음을 시사합니다. 이들 스니핑 로봇을 통해 러그풀 조직은 특히 신규 토큰 스니핑에 집중하는 사용자들을 빠르게 유인할 수 있습니다. 따라서 우리는 이러한 체인 상 스니핑 로봇에 주목해, 러그풀 사기에서의 역할과 홍보 메커니즘을 더 깊이 이해하고자 합니다.
러그풀 토큰 홍보 채널
현재 Web3의 신규 토큰 생태계를 조사하고, 체인 상 스니핑 로봇의 운영 방식을 연구하며, 사회공학적 방법을 결합한 결과, 러그풀 조직의 두 가지 가능한 광고 채널을 도출했습니다: 트위터와 텔레그램 그룹입니다.
강조할 점은, 이 트위터 계정과 텔레그램 그룹들이 러그풀 조직에 의해 특별히 생성된 것이 아니라는 점입니다. 오히려 이들은 신규 토큰 생태계의 기반 구성 요소로서, 체인 상 스니핑 로봇 운영 팀이나 전문 스니핑 팀 등 제3자 기관이 운영하며, 신규 토큰 스니퍼들을 대상으로 신규 상장 토큰 정보를 전달합니다. 이러한 그룹들은 러그풀 조직에게 천연적인 광고 채널이 되었으며, 신규 토큰 홍보를 통해 사용자를 유인해 악성 토큰을 구매하게 함으로써 사기를 실행합니다.
· 트위터 광고

그림15 TOMMI 토큰의 트위터 광고
그림15는 앞서 언급한 TOMMI 토큰의 트위터 광고입니다. 러그풀 조직은 Dexed.com의 신규 토큰 홍보 서비스를 활용해 자신들의 러그풀 토큰을 외부에 노출시켜 더 많은 피해자를 유인하고 있음을 알 수 있습니다. 실제 조사에서, 상당수의 러그풀 토큰이 트위터에서 해당 광고를 찾을 수 있었으며, 이 광고들은 다양한 제3자 기관의 트위터 계정을 통해 게시되었습니다.
· 텔레그램 그룹 광고

그림16 Banana Gun 신규 토큰 홍보 텔레그램 그룹
그림16은 체인 상 스니핑 로봇 Banana Gun 팀이 운영하는 신규 토큰 홍보 전용 텔레그램 그룹입니다. 이 그룹은 신규 토큰의 기본 정보를 제공할 뿐만 아니라, 사용자가 간편하게 토큰을 구매할 수 있는 입구도 제공합니다. 사용자가 Banana Gun Sniper Bot의 기본 설정을 완료하면, 그룹 내 토큰 홍보 메시지의 'Snipe' 버튼(그림16의 빨간 박스 부분)을 클릭함으로써 즉시 해당 토큰을 구매할 수 있습니다.
이 그룹에서 홍보된 토큰들을 샘플 검사한 결과, 상당수의 토큰이 러그풀 토큰임을 확인했습니다. 이는 텔레그램 그룹이 러그풀 조직의 중요한 광고 채널일 가능성이 높다는 우리의 추측을 더욱 강화합니다.
문제는, 제3자 기관이 홍보하는 신규 토큰 중 러그풀 토큰이 차지하는 비중이 어느 정도인지, 그리고 러그풀 조직의 범죄 규모가 얼마나 큰지입니다. 이러한 질문에 답하기 위해, 텔레그램 그룹에서 홍보된 신규 토큰 데이터를 체계적으로 스캔하고 분석해, 그 뒤에 숨은 위험 규모와 사기 행위의 영향력을 밝혀내고자 합니다.
이더리움 토큰 생태계 분석
· 텔레그램 그룹에서 홍보된 토큰 분석
텔레그램 그룹에서 홍보된 신규 토큰 중 러그풀 토큰의 비중을 조사하기 위해, Telegram API를 통해 Banana Gun, Unibot 및 기타 제3자 토큰 메시지 그룹이 2023년 10월부터 2024년 8월까지 홍보한 이더리움 신규 토큰 정보를 크롤링했습니다. 이 기간 동안 이 그룹들은 총 93,930개의 토큰을 홍보한 것으로 확인되었습니다.
러그풀 사례 분석 결과, 러그풀 조직은 일반적으로 Uniswap V2에서 러그풀 토큰과 ETH의 유동성 풀을 생성하고 일정량의 ETH를 투입합니다. 사용자나 스니핑 로봇이 해당 풀에서 토큰을 구매하면, 공격자는 대량 매도 또는 유동성 제거를 통해 수익을 얻습니다. 이 과정은 일반적으로 24시간 내에 종료됩니다.
따라서 다음의 러그풀 토큰 탐지 규칙을 정의하고, 이 규칙을 사용해 93,930개의 토큰을 스캔함으로써, 텔레그램 그룹에서 홍보된 신규 토큰 중 러그풀 토큰의 비율을 확인하고자 합니다:
1. 최근 24시간 동안 대상 토큰에 송금 기록이 없음: 러그풀 토큰은 대량 매도 후 일반적으로 활동이 중단됨
2. Uniswap V2에 대상 토큰과 ETH의 유동성 풀 존재: 러그풀 조직은 Uniswap V2에 토큰과 ETH의 유동성 풀을 생성함
3. 토큰 생성 후부터 탐지 시점까지 Transfer 이벤트 총합이 1,000건 이하: 러그풀 토큰은 일반적으로 거래가 적어 송금 횟수가 낮음
4. 대상 토큰과 관련된 최근 5건의 거래 중 대량 유동성 제거 또는 대량 매도 발생: 러그풀 토큰은 사기 종료 시 대량 유동성 제거나 대량 매도를 실행함
이러한 규칙을 텔레그램 그룹에서 홍보된 토큰에 적용한 결과가 표 10입니다.

표 9에 따르면, 텔레그램 그룹에서 홍보된 93,930개의 토큰 중 46,526개가 러그풀 토큰으로 판정되었으며, 비율은 무려 49.53%에 달합니다. 즉, 텔레그램 그룹에서 홍보된 토큰 거의 절반이 러그풀 토큰이라는 의미입니다.
어떤 프로젝트 팀이 프로젝트 실패 후 유동성을 회수하는 경우도 있는데, 이는 본문에서 언급한 러그풀 사기로 단순히 분류될 수 없습니다. 따라서 이러한 경우가 본 분석 결과에 미치는 오진 영향을 고려해야 합니다. 비록 우리의 탐지 규칙 3번이 대부분의 유사 사례를 필터링할 수 있지만, 여전히 오진 가능성이 존재합니다.
잠재적 오진의 영향을 더 잘 이해하기 위해, 46,526개의 러그풀 토큰으로 판정된 토큰들의 활성 시간을 통계적으로 분석한 결과를 표 10에 정리했습니다. 이 활성 시간 분석을 통해 진정한 러그풀 행위와 프로젝트 실패로 인한 유동성 회수를 구분함으로써, 러그풀의 실제 규모를 더 정확하게 평가할 수 있습니다.

활성 시간 통계 분석 결과, 41,801개의 러그풀 토큰(전체의 89.84%)이 활성 시간(토큰 생성 후 러그풀 실행까지)이 72시간 미만이었습니다. 일반적으로 72시간은 프로젝트 성패를 판단하기에 부족한 시간이므로, 본문은 활성 시간이 72시간 미만인 러그풀 행위는 정상적인 프로젝트 팀의 자금 회수 행위가 아니라고 판단합니다.
따라서 가장 비관적인 시나리오에서도, 나머지 4,725개의 활성 시간이 72시간 이상인 토큰이 모두 본문 정의의 러그풀 사기가 아니라고 해도, 여전히 89.84%의 사례가 기대에 부합하므로 본 분석은 높은 참고 가치를 갖습니다. 실제로 72시간의 기준은 다소 보수적이며, 샘플 검사에서 활성 시간이 72시간 이상인 토큰 중에도 상당수가 본문에서 언급한 러그풀 사기 범주에 속한다는 점을 확인했습니다.
특히 주목할 점은, 활성 시간이 3시간 미만인 토큰이 25,622개로, 전체의 55.07%에 달한다는 점입니다. 이는 러그풀 조직이 매우 높은 효율로 반복 범죄를 저지르며, '짧고 빠르며 직접적인' 스타일을 선호하고 있음을 보여줍니다. 자금 회전율이 극도로 높은 것입니다.
또한 46,526개의 러그풀 토큰 사례의 현금화 방법과 계약 호출 방식도 평가해, 러그풀 조직의 범죄 성향을 확인했습니다.
현금화 방법 평가는 주로 유동성 풀에서 ETH를 회수하는 다양한 방법에 따른 사례 수를 통계적으로 집계한 것입니다. 주요 방법은 다음과 같습니다:
1. 대량 매도: 러그풀 조직은 사전 할당 또는 코드 후문을 통해 확보한 토큰을 사용해 유동성 풀의 모든 ETH를 교환함
2. 유동성 제거: 러그풀 조직이 이전에 유동성 풀에 추가한 자금을 전부 인출함
계약 호출 방식 평가는 러그풀 실행 시 호출되는 목표 계약 객체를 확인하는 것입니다. 주요 객체는 다음과 같습니다:
1. 탈중앙화 거래소 라우터 계약: 유동성 직접 조작용
2. 러그풀 조직이 자체 제작한 공격 계약: 복잡한 사기 작업을 위해 커스텀 계약 사용
현금화 방법과 계약 호출 방식을 평가함으로써, 러그풀 조직의 범죄 패턴과 특징을 더 깊이 이해할 수 있으며, 유사한 사기 행위를 효과적으로 예방하고 식별할 수 있습니다.
현금화 방법 관련 평가 데이터는 표 11과 같습니다.

평가 데이터를 보면, 유동성 제거를 통해 현금화한 사례는 32,131건으로, 전체의 69.06%에 달합니다. 이는 러그풀 조직이 유동성 제거를 더 선호한다는 것을 보여주며, 이유는 아마도 이 방법이 더 단순하고 직접적이며, 복잡한 계약 작성이나 추가 작업이 필요 없기 때문일 것입니다. 반면 대량 매도를 통한 현금화는 토큰 계약 코드에 미리 후문을 설정해야 하므로, 공격자가 제로 비용으로 매도용 토큰을 확보할 수 있지만, 이 작업은 번거롭고 리스크가 높아 선택 비중이 상대적으로 낮습니다.
계약 호출 방식 관련 평가 데이터는 표 12와 같습니다.

표 12의 데이터를 보면, 러그풀 조직은 Uniswap 라우터 계약을 통해 러그풀을 실행하는 것을 더 선호하며, 총 40,887건으로 전체 실행 횟수의 76.35%를 차지합니다. 전체 러그풀 실행 횟수는 53,552건으로, 러그풀 토큰 수인 46,526건보다 많습니다. 이는 일부 사례에서 러그풀 조직이 수익 극대화 또는 다양한 피해자에게 분할 현금화를 위해 여러 번의 러그풀 작업을 수행했음을 의미합니다.
다음으로 46,526개의 러그풀 사례에 대한 비용과 수익 데이터를 통계 분석했습니다. 참고로, 러그풀 조직이 토큰 배포 전 거래소나 스왑 서비스에서 확보한 ETH를 비용으로, 러그풀 실행 후 회수한 ETH를 수익으로 간주해 통계를 산출했습니다. 일부 러그풀 조직이 유동성 풀 거래량을 조작할 때 투입한 ETH는 고려하지 않았기 때문에, 실제 비용은 이보다 더 높을 수 있습니다.
비용 및 수익 데이터는 표 13과 같습니다.

46,526개의 러그풀 토큰을 통계 분석한 결과, 최종 총 수익은 282,699.96 ETH이며, 수익률은 188.70%에 달해 약 8억 달러에 이릅니다. 실제 수익은 위 데이터보다 다소 낮을 수 있지만, 전체 자금 규모는 여전히 엄청나며, 러그풀 조직이 사기를 통해 막대한 수익을 얻고 있음을 보여줍니다.
텔레그램 그룹의 토큰 데이터 전체를 분석한 결과, 현재 이더리움 생태계에는 이미 엄청난 수의 러그풀 토큰이 존재하고 있음을 알 수 있습니다. 그러나 다음 중요한 질문이 남아 있습니다: 텔레그램 그룹에서 홍보된 토큰이 이더리움 메인넷에 상장된 모든 토큰을 포함하고 있는가? 그렇지 않다면, 메인넷 토큰에서 차지하는 비중은 얼마인가?
이 질문에 답함으로써 현재 이더리움 토큰 생태계에 대한 포괄적인 이해를 얻을 수 있습니다. 따라서 우리는 이더리움 메인넷 토큰에 대한 심층 분석을 시작해, 텔레그램 그룹에서 홍보된 토큰이 메인넷 전체 토큰에서 차지하는 비중을 확인하고자 합니다. 이를 통해 러그풀 문제가 이더리움 생태계 전반에서 얼마나 심각한지, 그리고 텔레그램 그룹이 토큰 홍보 및 확산에서 얼마나 큰 영향력을 행사하고 있는지를 더 명확히 할 수 있습니다.
· 이더리움 메인넷에서 발행된 토큰 분석
RPC 노드를 통해 위에서 분석한 텔레그램 그룹 토큰 정보와 동일한 기간(2023년 10월 ~ 2024년 8월)의 블록 데이터를 크롤링해, 새로 배포된 토큰 정보를 추출했습니다. (프록시를 통해 비즈니스 로직을 구현하는 토큰은 제외, 왜냐하면 프록시를 통한 배포 토큰은 러그풀 사례가 매우 적기 때문입니다.) 최종적으로 포착된 토큰 수는 154,500개이며, 이 중 Uniswap V2 유동성 풀(LP) 토큰은 54,240개입니다. LP 토큰은 본문의 관찰 대상에서 제외됩니다.
따라서 LP 토큰을 필터링한 후 최종 토큰 수는 100,260개입니다. 관련 정보는 표 14에 정리되어 있습니다.

이 100,260개의 토큰에 대해 러그풀 탐지 규칙을 적용한 결과가 표 15입니다.

총 100,260개의 토큰을 대상으로 러그풀 탐지를 수행한 결과, 48,265개가 러그풀 토큰으로 판정되어 전체의 48.14%를 차지했습니다. 이 비율은 텔레그램 그룹에서 홍보된 토큰의 러그풀 비율과 거의 유사합니다.
텔레그램 그룹에서 홍보된 토큰과 이더리움 메인넷에 상장된 모든 토큰 간의 포함 관계를 더욱 분석하기 위해, 두 그룹의 토큰 정보를 상세히 비교한 결과가 표 16입니다.

표 16의 데이터를 보면, 텔레그램 그룹에서 홍보된 토큰과 메인넷에서 포착된 토큰의 교집합은 90,228개로, 메인넷 토큰의 89.99%를 차지합니다. 텔레그램 그룹에는 3,703개의 토큰이 메인넷에서 포착된 토큰에 포함되지 않는데
TechFlow 공식 커뮤니티에 오신 것을 환영합니다
Telegram 구독 그룹:https://t.me/TechFlowDaily
트위터 공식 계정:https://x.com/TechFlowPost
트위터 영어 계정:https://x.com/BlockFlow_News














