ScamLens
가이드 8분 소요

암호화폐 주소 포이즈닝 공격: 지갑 주소 스푸핑을 탐지하고 예방하는 방법

제로 밸류 전송, 더스트 전송, 가짜 토큰 전송 등 세 가지 일반적인 암호화폐 주소 포이즈닝 기법을 상세히 분석하고, 위조된 유사 주소를 식별하여 디지털 자산을 보호하는 실용적인 방법을 안내합니다.

2024년 5월, 한 암호화폐 사용자가 일상적인 송금을 진행하고 있었습니다. 습관적으로 지갑의 거래 내역을 열어 "완전히 정확해 보이는" 주소를 복사했습니다. 몇 분 후, 71만 달러 상당의 WBTC가 사기꾼이 정교하게 위조한 주소로 전송되었습니다. 주소의 앞 6자리와 뒤 6자리는 실제 주소와 완벽하게 일치했지만, 중간 글자는 완전히 달랐습니다. 사용자가 이상을 발견했을 때 자금은 이미 되찾을 수 없었습니다.

이것은 고립된 사례가 아닙니다. 온체인 데이터 분석에 따르면, 2024년 한 해에만 **주소 포이즈닝 공격(Address Poisoning Attack)**으로 인한 피해액이 수억 달러를 초과했습니다. 이 공격 수법이 이토록 효과적인 이유는 기술적 취약점이 전혀 필요하지 않기 때문입니다. 인간의 습관을 이용하는 것입니다.

주소 포이즈닝 공격이란?

주소 포이즈닝(Crypto Address Poisoning)은 암호화폐 사용자의 거래 습관을 노리는 사회공학적 공격입니다. 공격자는 지갑을 해킹하거나 개인키를 탈취하지 않습니다. 대신, 특수하게 제작된 거래를 지갑에 전송하여 자주 사용하는 주소와 매우 유사한 위조 주소를 거래 내역에 "주입"합니다.

작동 원리는 간단합니다:

  1. 온체인 거래 모니터링: 공격자가 블록체인 탐색기나 전용 스크립트로 활성 지갑 간의 대규모 전송을 추적합니다.
  2. 유사 주소 생성: 주소 생성 도구를 사용해 대상 주소의 앞뒤 문자가 높은 정확도로 일치하는 새 주소를 만듭니다.
  3. 거래 내역 오염: 위조 주소에서 대상 지갑으로 0값 또는 극소액 거래를 보내 거래 내역에 표시되게 합니다.
  4. 피해자가 걸리기를 기다림: 사용자가 다음 송금 시 주소록이 아닌 거래 내역에서 주소를 복사하면 공격자의 주소를 잘못 복사할 수 있습니다.

핵심 포인트: 이 공격은 지갑의 자산을 위협하지 않습니다. 자금, 개인키, 시드 구문은 안전합니다. 공격자는 주소를 복사할 때 전체 문자를 꼼꼼히 확인하지 않을 것에 베팅하는 것입니다.

공격자가 유사 주소를 생성하는 방법

이더리움 주소는 42자("0x" 접두사 포함), 비트코인 주소는 보통 26~35자입니다. 대부분의 사용자는 주소 확인 시 앞 몇 자리와 뒤 몇 자리만 봅니다. 공격자는 바로 이 점을 악용합니다.

Vanity Address 생성기

공격자는 Vanity Address Generator(맞춤 주소 생성기)라는 도구를 사용해 특정 접두사와 접미사 조건을 만족하는 개인키와 주소를 무차별 대입으로 찾습니다. 예:

  • 실제 주소: 0x1a2B...3c4D (중간 30자 생략)
  • 위조 주소: 0x1a2B...3c4D (앞 4자리와 뒤 4자리 완전 일치, 중간은 다름)

일치하는 문자가 많을수록 생성 시간이 늘어나지만, 비용은 여전히 낮습니다:

일치 문자 수 예상 생성 시간 위험 수준
앞 4자리+뒤 4자리 수 분 매우 높음
앞 6자리+뒤 6자리 수 시간 높음
앞 8자리+뒤 8자리 수 일~수 주 보통

오늘날의 GPU 연산력으로 앞 6자리와 뒤 6자리를 맞추는 것은 공격자에게 거의 비용이 들지 않습니다. 주소의 앞뒤 몇 자리만 확인한다면 진짜와 가짜를 구별하는 것은 거의 불가능합니다.

세 가지 일반적인 주소 포이즈닝 기법

1. 제로 밸류 토큰 전송 (Zero-value Transfer)

현재 가장 널리 퍼진 은밀한 포이즈닝 방법입니다. 공격자가 ERC-20 토큰 컨트랙트의 transferFrom 함수 특성을 이용해 토큰을 보유하지 않은 상태에서 0값 전송을 실행합니다.

기술적 설명: ERC-20 표준에서 transferFrom 함수는 전송 금액이 0일 때 잔액과 승인을 확인하지 않습니다. 따라서 누구든 임의의 주소 명의로 0값 전송을 실행할 수 있으며, 소액의 가스비만 지불하면 됩니다.

실제 효과: 지갑 거래 내역에 갑자기 "[특정 주소]에 0 USDT를 보냄"이라는 기록이 나타납니다. 이 주소는 실제 수신자와 앞뒤 문자가 같지만, 실제로는 공격자의 주소입니다.

2023년 제로 밸류 전송 공격은 한때 이더리움 네트워크 전체 거래의 약 10%를 차지하며 온체인 데이터와 사용자의 지갑 인터페이스를 심각하게 오염시켰습니다.

2. 더스트 전송 (Dust Transfer)

제로 밸류 전송과 유사하지만, 공격자가 극소량의 실제 토큰(보통 $0.01 미만)을 대상 주소로 보냅니다.

특징:

  • 금액이 작지만 0은 아니어서 모든 지갑에서 정상 표시됨
  • 거래가 완전히 합법적이어서 쉽게 필터링할 수 없음
  • 공격자가 위조된 유사 주소에서 전송하여 "최근 수신" 목록에 표시됨
  • 피해자가 알려진 거래 상대방의 전송으로 오인할 수 있음

전형적 시나리오: 평소 사용하는 거래소 출금 주소처럼 보이는 곳에서 0.001 USDT가 도착합니다. 다음에 거래소에 입금할 때 최근 거래에서 이 "동일해 보이는" 주소를 복사하면 자금이 공격자의 지갑으로 전송됩니다.

3. 가짜 토큰 전송 (Fake Token Transfer)

더 교활한 기법입니다. 공격자가 유명 토큰과 동일한 이름의 자체 ERC-20 컨트랙트를 배포한 후, 이 가짜 컨트랙트로 대상에게 토큰을 보냅니다.

작동 방식:

  • 공격자가 "USDT" 또는 "USDC"라는 이름의 가짜 토큰 컨트랙트를 생성
  • 위조된 유사 주소에서 대상에게 가짜 토큰을 전송
  • 거래 내역에서는 일반적인 USDT/USDC 전송처럼 보임
  • 토큰 컨트랙트 주소를 자세히 확인해야만 완전히 다른 가짜 컨트랙트임을 발견할 수 있음

위험성: 가짜 토큰 전송은 실제 전송 금액을 표시하므로 제로 밸류 전송보다 시각적으로 더 기만적입니다.

주소 포이즈닝 공격을 식별하는 방법

항상 전체 주소를 확인하세요

가장 중요하고 효과적인 보호 조치입니다. 앞뒤 몇 자리만 보지 마세요. 송금 확인 전 최소 앞 10자리와 뒤 10자리를 확인하세요. 이상적으로는 42자 전체를 확인합니다.

  • 잘못된 방법: 0x1a2B...3c4D를 보고 주소가 맞다고 판단
  • 올바른 방법: 0x1a2B7E8f9D...5A6b3c4D의 각 구간을 한 글자씩 비교

거래 내역에서 주소를 복사하지 마세요

아무리 강조해도 지나치지 않습니다. 지갑의 거래 내역에서 새로운 송금을 위해 주소를 복사하지 마세요. 거래 내역은 포이즈닝 공격의 주요 전장입니다.

올바른 주소 출처:

  • 지갑 내장 주소록/연락처 기능
  • 거래소 공식 웹사이트의 입금 주소 페이지 (매번 새로 가져오기)
  • 이전에 검증되어 안전하게 저장된 주소 기록

비정상적인 소액 수신에 경계하세요

모르는 주소에서 갑자기 극소액의 토큰(특히 USDT, USDC 같은 스테이블코인)을 받았고, 그 주소가 자주 사용하는 거래 주소와 매우 유사하다면 거의 확실히 포이즈닝 공격입니다.

ScamLens 주소 검사 도구를 사용하세요

대규모 송금 전에 ScamLens 암호화폐 주소 검사 도구로 대상 주소의 안전 상태를 확인할 수 있습니다. ScamLens는 GoPlus, Etherscan, OpenSanctions 등 다수의 보안 데이터베이스를 통합하고 있습니다.

또한 ScamLens는 전용 주소 포이즈닝 탐지 기능을 제공하여 주소가 vanity address 생성기로 만들어진 포이즈닝 주소인지 분석합니다.

종합 예방 조치

지갑의 주소록 기능 사용

새 주소로 처음 송금할 때, 주소가 정확한 것을 확인한 후 명확한 라벨과 함께 주소록에 저장하세요. 이후 모든 송금은 주소록에서 실행합니다.

화이트리스트 기능 활성화

Binance, OKX, Coinbase 등 대부분의 중앙화 거래소는 출금 화이트리스트 기능을 제공합니다:

  • 활성화 후 사전 승인된 주소로만 출금 가능
  • 새 주소 추가 시 이메일 및 2FA 인증과 24시간 대기 기간 필요
  • 계정이 탈취되어도 공격자가 즉시 미지의 주소로 출금할 수 없음

테스트 송금 실행

새 주소로 대규모 송금 전에 먼저 극소액(예: 1 USDT)을 테스트로 전송하세요. 수신 확인 후 본 송금을 진행합니다.

하드웨어 지갑의 추가 보호

Ledger, Trezor 등 하드웨어 지갑 사용 시 거래 확인할 때 하드웨어 지갑 화면에서 전체 주소를 한 글자씩 확인하세요.

ENS 등 네임 서비스 활용

이더리움 네임 서비스(ENS)를 통해 42자의 복잡한 주소를 읽기 쉬운 이름(예: alice.eth)으로 매핑할 수 있습니다. 단, 변환된 주소가 정확한지 반드시 확인하세요.

주요 지갑의 보안 기능

MetaMask

  • 2023년 말부터 거래 내역에서 의심스러운 제로 밸류 전송을 자동 표시
  • 사용자의 과거 거래 주소와 유사한 새 주소에 경고 표시
  • 설정에서 "제로 밸류 토큰 전송 숨기기" 기능 활성화 가능

Trust Wallet

  • 거래 내역 필터링 기능 내장으로 의심스러운 소액 및 제로 밸류 전송 숨기기 가능
  • 알려진 악성 컨트랙트의 가짜 토큰 전송 표시 및 필터링

Etherscan

  • 제로 밸류 전송 및 알려진 포이즈닝 거래에 "Warning: Address Poisoning" 라벨 추가
  • 제로 밸류 전송 숨기기 필터 옵션 제공
  • 앞뒤 문자가 유사한 의심스러운 주소 하이라이트

OKX Web3 지갑

  • 주소 위험 탐지 API 통합으로 수신 주소 입력 시 자동 보안 검사
  • 고위험 주소에 대한 눈에 띄는 차단 경고 표시

참고: 지갑에 이러한 보호 기능이 있더라도 전적으로 의존하지 마세요. 올바른 운영 습관을 기르는 것이 가장 근본적인 방어선입니다.

피해를 입었을 때 대처 방법

1. 피해 범위 확인

  • 블록체인 탐색기(Etherscan, BscScan 등)에서 거래 세부 정보 확인
  • 자금 흐름 추적
  • 모든 관련 트랜잭션 해시 기록

2. 거래소에 즉시 연락

자금이 중앙화 거래소 주소로 전송된 경우, 즉시 고객 지원 및 보안 팀에 연락하여 완전한 거래 증거를 제공하고 자금 동결을 요청하세요.

3. ScamLens 자금 추적 활용

ScamLens 암호화폐 자금 추적 서비스는 이더리움, BSC, Tron 등 18개 블록체인을 지원하는 전문 온체인 자금 흐름 분석과 법 집행기관에 제출 가능한 포렌식 보고서를 제공합니다.

4. 커뮤니티에 신고

  • ScamLens에서 악성 주소 신고
  • 관련 커뮤니티(Twitter/X, Discord, Telegram)에 경고 게시
  • 지갑 개발팀에 주소 신고

5. 수사 기관에 신고

  • 관할 사이버범죄 수사 부서에 신고
  • 완전한 증거 체인 준비: 거래 기록 스크린샷, 블록체인 탐색기 링크, 자금 흐름도

핵심 요약

주소 포이즈닝은 인간의 습관을 이용한 저비용 고수익 사기입니다. 방어에 깊은 기술 지식은 필요 없으며, 몇 가지 간단하지만 중요한 운영 습관만 갖추면 됩니다:

  1. 거래 내역에서 주소를 복사하지 마세요 — 포이즈닝 공격의 유일한 진입점
  2. 검증된 주소를 주소록에 저장하세요 — 모든 송금은 주소록에서 실행
  3. 대규모 송금 전 테스트 송금을 하세요 — 추가 가스비는 전액 손실보다 훨씬 저렴
  4. 앞뒤만이 아닌 전체 주소를 확인하세요 — 최소 앞 10자리와 뒤 10자리
  5. 거래소 화이트리스트를 활성화하세요 — 미지의 주소로의 송금 가능성을 체계적으로 차단
  6. 보안 도구를 활용하세요ScamLens로 송금 전 주소 안전성을 빠르게 확인

암호화폐 세계에서 모든 거래는 되돌릴 수 없습니다. 주소를 신중하게 확인하는 30초가 수만 또는 수십만 달러의 손실을 방지할 수 있습니다. 좋은 보안 습관은 부담이 아니라 탈중앙화 세계에서 가장 중요한 방패입니다.

관련 기사

Chrome AI 북마크

AI 기반 북마크 관리자 + 웹사이트 안전 감지. 자동 요약, 스마트 분류, 클라우드 동기화. 의심스러운 사이트 방문 시 자동 경고.

무료 확장 프로그램 받기

Chrome 웹 스토어에서 다운로드 가능. 모든 Chromium 브라우저 지원.