용어2024년 4월 20일

Sandwich Attack

두 개의 공격자 트랜잭션 사이에 트레이드를 샌드위치하는 MEV 공격 — 적절한 슬리피지 설정으로 방어할 수 있는 DeFi의 조용한 포식자입니다.

defimarket-manipulationrisk-management

정의

두 개의 공격자 트랜잭션 사이에 트레이드를 샌드위치하는 MEV 공격 — 적절한 슬리피지 설정으로 방어할 수 있는 DeFi의 조용한 포식자입니다.

Sandwich Attack

쉽게 설명하면: 샌드위치 공격은 봇이 mempool에서 트레이드를 발견하고, 가격을 올리기 위해 앞서 거래를 실행하고, 당신의 거래가 더 나쁜 가격에 체결되도록 한 후, 즉시 매도하는 것입니다 — 당신은 매우 비싼 샌드위치의 고기입니다.

샌드위치 공격은 MEV(최대 추출 가능 가치) 익스플로잇의 한 유형으로, 공격자가 블록체인의 mempool에서 대기 중인 트랜잭션을 감지하고, 그 직전에 매수 주문을 배치하고(선행 실행), 피해자의 트랜잭션이 부풀려진 가격에 체결되도록 한 후, 즉시 매도하여(후행 실행) 차액을 챙깁니다. 피해자의 트랜잭션은 예상보다 나쁜 가격에 체결되고, 공격자는 무위험 이익을 포착합니다.

AMM 기반 DeFi(Uniswap, PancakeSwap 등)에서 샌드위치 공격은 mempool에서 수익성 있는 기회를 스캔하는 MEV 봇에 의해 자동화됩니다. 트랜잭션이 블록에 포함되기 전에 공개 mempool에 대기하기 때문에 봇이 관찰, 시뮬레이션 및 자체 트랜잭션을 삽입할 시간을 가질 수 있어 공격이 가능합니다. 중앙화 거래소(CEX)의 암호화폐 무기한 선물은 CEX가 AMM이 아닌 시간 우선 매칭의 중앙 지정가 오더북을 사용하기 때문에 고전적 샌드위치 공격에 덜 취약합니다. 그러나 CEX 트레이더는 유사한 위험에 직면합니다: 더 빠른 연결을 가진 거래소 내부자 또는 마켓 메이커의 선행 실행, 그리고 시장이 이미 움직인 후 주문이 오더북에 도달하는 레이턴시 차익 거래. Kingfisher 사용자는 주로 CEX 기반이지만, 샌드위치 메커니즘을 이해하는 것은 더 넓은 암호화폐 생태계와 통합되는 DeFi 프로토콜을 탐색하는 데 가치가 있습니다.

작동 원리

샌드위치 공격 단계:

  1. 피해자가 트랜잭션 제출: 트레이더가 DEX에 1% 슬리피지 허용으로 토큰 X 대량 매수 주문 제출
  2. 공격자 감지: MEV 봇이 공개 mempool에서 대기 중인 트랜잭션 발견
  3. 선행 실행: 공격자가 더 높은 가스 수수료로 매수 트랜잭션을 제출하여 먼저 처리되도록 함. 이는 토큰 X의 가격을 올림(AMM 상수 곱 공식)
  4. 피해자 실행: 피해자의 트랜잭션이 부풀려진 가격에 체결되어 예상보다 적은 토큰을 매수. 슬리피지 허용이 이를 가능하게 함 — 피해자는 사실상 초과 지불
  5. 후행 실행: 공격자가 즉시 부풀려진 가격(자신의 진입가보다 높음)에 토큰 X를 매도하여 차액을 이익으로 포착
  6. 가격 복귀: 두 트랜잭션 후 AMM 풀이 리밸런싱되고 가격이 원래 수준 근처로 복귀

피해자는 다음을 통해 가치를 잃습니다:

  • 더 나쁜 체결 가격(공격자 선행 실행의 가격 영향)
  • 슬리피지 허용이 최대로 사용됨
  • 공격자의 이익이 피해자의 트레이드에서 직접 나옴

CEX 선물(덜 취약하지만 유사한 위험 존재):

  • 레이턴시 차익 거래: 더 빠른 참가자가 가격 변화를 보고 당신보다 먼저 실행(선행 실행과 유사)
  • 오더북 선행 실행: 공동 위치 서버를 가진 마켓 메이커가 주문을 보고 체결 전에 호가를 조정
  • 정보 누출: CEX의 대량 주문은 오더북 변화 모니터링을 통해 감지되어 예상 포지셔닝 가능

트레이더에게 중요한 이유

  1. 슬리피지 허용이 DeFi에서 주요 방어 수단입니다. 슬리피지를 0.1-0.5%로 설정하면 공격자가 가스 비용을 충당할 만한 가치를 추출할 수 없어 샌드위치 공격이 수익성이 없어집니다. 트레이드오프: 변동성 기간 중 트랜잭션이 실패할 수 있습니다. 0.5%가 실용적 최적점입니다.
  2. 프라이빗 mempool(Flashbots, MEV-Boost)은 샌드위치 공격을 방어합니다. 공개 mempool 대신 블록 빌더에 직접 트랜잭션을 제출함으로써 트레이드가 관찰되고 샌드위치될 수 없습니다. $10K 이상의 모든 DeFi 트레이드에서 표준 관행입니다.
  3. CEX 트레이더는 다르지만 관련된 위험에 직면합니다. 중앙화 거래소의 Kingfisher 사용자는 온체인 샌드위치 공격에 직면하지 않지만 대량 주문은 오더북 모니터링을 통해 여전히 감지될 수 있습니다. Iceberg 주문 사용, 대량 주문 분할, 주요 수준에서의 명확한 지정가 주문 배치 회피로 이 위험을 줄일 수 있습니다.

흔한 실수

  • DEX 트레이드에서 슬리피지 허용을 너무 높게 설정하기. 3-5% 슬리피지는 샌드위치 봇에 대한 공개 초대장입니다. 극도로 비유동적인 토큰을 거래하지 않는 한 슬리피지를 최대 0.5-1%로 유지하세요.
  • 혼잡 시간에 AMM에서 대량 거래하기. 가스 가격이 급등하면 샌드위치 봇은 더 선택적이 되지만 대량 트레이드는 여전히 수익성 있는 대상입니다. DEX에서 규모를 거래해야 한다면 여러 풀을 통해 라우팅하고 MEV 보호를 제공하는 DEX 수집기(1inch, Matcha)를 사용하세요.
  • CEX가 모든 형태의 선행 실행에 면역이라고 가정하기. 온체인 샌드위치 공격은 적용되지 않지만, 대량 주문을 가진 CEX 트레이더는 더 빠른 인프라를 가진 시장 참가자에 의해 감지되고 선행 실행될 수 있습니다. 알고리즘 실행을 사용하거나 대량 주문을 더 작은 조각으로 나누세요.

관련 용어

트레이딩을 시작할 준비가 되셨나요?

The Kingfisher 커뮤니티에 가입하여 프로급 트레이딩 도구와 인사이트를 이용하세요.