바이낸스 58억 달러 초대형 절도 사건 전 과정 완전 복기
- 핵심 관점:바이낸스 핫월렛에서 약 58억 달러가 탈취된 것은 스마트 컨트랙트 취약점이 아니라, 기반 HSM/MPC 서명 인프라가 침투당한 것으로, 해커가 "온디맨드 서명" 능력을 획득하여 EIP-7702 메커니즘을 통해 단일 블록에서 초고속 청소를 실현한 것이다.
- 핵심 요소:
- 공격자는 평문 개인키를 획득하지 않았으며, 정책 엔진 또는 서명 인터페이스를 돌파하여 서명 시스템이 온디맨드로 합법적인 서명을 생성하도록 만들었다.
- 결정적 증거 1: Binance 14에 대해 50개의 연속 Nonce를 EIP-7702 서명으로 일괄 제출한 것은 "맹목적 저격"식 조작으로, 개인키 유출 시나리오에서는 이런 필요가 없다.
- 결정적 증거 2: 24초 내에 여러 체인, 서로 다른 서명 알고리즘의 핫월렛이 동시에 함락되었으며, 최상위 통합 스케줄링 엔진을 뚫지 않고서는 실현 불가능하다.
- 공격 전 37시간 잠복: Tornado Cash에서 Gas를 추출하고, 700만 달러 스테이블코인으로 EIP-7702 위임 청소 "실전 리허설"을 진행했다.
- 총공격 순서: BTC가 먼저 움직였고(18,270개), 이더리움 50연발 Nonce 적중 후 단일 거래로 16.7만 ETH와 16억 USDT 등 62종 토큰을 전부 빼냈다.
- EIP-7702 위임이 지속적으로 유효하여, Binance 34는 Binance 14가 관리자이기 때문에 연쇄적으로 전액 비워졌으며, 서명기가 차단될 때까지 자금이 계속 스캔되었다.
原创 | Odaily 星球日报(@OdailyChina)
作者|Azuma(@azuma_eth)

오늘 새벽, 바이낸스(Binance) 핫월렛이 암호화폐 역사상 최대 규모의 보안 사고를 겪었다. 채 1시간도 되지 않는 시간 동안 Ethereum, Bitcoin, Tron은 물론 Arbitrum, Avalanche, Optimism, Base 등 여러 네트워크에 걸쳐 있는 바이낸스 핫월렛이 동시에 뚫렸으며, 누적 유출 자금은 이미 약 58억 달러(비공식 집계)에 달한다.
도난 자금의 흐름, 업계의 추적 및 차단(특히 Tether와 Circle), 그리고 간접적으로 연루된 온체인 프로토콜(예: Aave)에 대해서는 이미 시장에서 실시간 추적이 대량으로 이루어지고 있다. 본 기사는 복잡한 자금 정리를 배제하고 가장 핵심적인 의문에 직접 초점을 맞춘다: 철옹성 같던 바이낸스 핫월렛은 도대체 어떻게 공격당한 것인가?
보안 기관 Blockaid 및 여러 온체인 보안 연구원들의 역추적 복원을 종합하면, 이는 단순한 온체인 스마트 컨트랙트 취약점이 아니라 거래소의 기저 서명 인프라(HSM/MPC 서명기)에 대한 정밀한 침투이며, 이더리움 EIP-7702 메커니즘을 결합해 "단일 블록 초고속 청소"를 실현한 교과서급 공격이다.
핵심 원인: 기저 서명기 장악, 해커가 "주문형 서명" 능력 확보
사건 발생 후, 핵심 피해 월렛인 Binance 14가 이더리움 Pectra 업그레이드로 도입된 EIP-7702 메커니즘을 통해 순식간에 탈탈 털렸기 때문에 커뮤니티에서는 한때 "EIP-7702에 취약점이 있다"는 오해가 퍼졌다.
그러나 암호학 상식으로 볼 때, EIP-7702가 일반 월렛(EOA)에 스마트 컨트랙트 코드를 임시로 탑재하도록 허용하는 전제는 반드시 해당 월렛 자체의 개인키로 적법한 서명을 완료해야 한다는 것이다. 따라서 EIP-7702는 해커가 출금을 가속화하기 위해 사용한 "범행 도구"일 뿐, 취약점 자체가 아니다.
"누가 서명을 완료했는가"라는 핵심 단서를 따라가 보면, 사고 원인은 결국 두 가지 가능성으로 귀결된다 — 날(private) 개인키의 직접 유출, 또는 서명 시스템(인프라)의 조작;
현재의 온체인 특징을 종합해 보면, 후자인 서명 시스템 조작이 거의 유일하게 합리적인 해석이다. 그 이유는 바이낸스급 거래소의 핫월렛은 결코 단일 지점의 평문 "날 개인키"를 사용하지 않을 것이며, 그 기저 표준 아키텍처는 필연적으로 HSM(하드웨어 보안 모듈) + MPC(다자간 보안 계산) + 정책 엔진(Policy Engine)일 수밖에 없다 — 개인키 샤드가 하드웨어 블랙박스에 잠겨 있어任何人(내부 운영자 포함)도 완전한 평문을 얻을 수 없고, 오직 프런트엔드 비즈니스 시스템이 "정책 엔진"을 통해 리스크 관리 규칙을 검증한 후에만 서명기에 서명 생성을 요청할 수 있다.
온체인에는 "서명 시스템 조작"을 직접 가리키는 두 가지 확실한 증거가 있다:
- 확실한 증거 1(50연발 Nonce 저격): 공격자는 Binance 14를 공략할 때 연속 Nonce를 커버하는 유효한 EIP-7702 서명 50개를 한 번에 제출했다. 만약 공격자가 평문 개인키를 직접 훔쳤다면, 로컬에서 거래를 정밀하게 제어할 수 있었을 것이며 이런 "운에 맡기는" 방식으로 Nonce를 추측할 필요가 전혀 없었다. 이는 공격자가 개인키 자체를 얻은 것이 아니라 정책 엔진 또는 서명 인터페이스를 공략하여 바이낸스 서명 시스템이 "주문형으로 적법한 서명을 내뱉게(Sign on demand)" 하는 능력을 갖추었음을 의미한다.
- 확실한 증거 2(멀티체인 이기종 월렛 동시 장악): Binance 14가 비워진 지 불과 24초 후, 독립 핫월렛 Binance 16이 자체 키로 2.8만 ETH를 서명해냈다; 같은 1분 내에 비트코인(18,270.2 BTC)과 트론(6.12억 USDT) 등 서로 다른 서명 알고리즘을 사용하는 핫월렛이 동시에 이체를 개시했다. 최상위 통합 스케줄링/정책 엔진을 뚫지 않고서는 여러 체인의 HSM/MPC 서명기를 동시에 지휘해 함께 출금하는 것이 불가능하다.
온체인 타임라인 복원: 37시간의 잠복과 700만 달러 "실전 리허설"
온체인 데이터에 따르면, 공격자는 서명 경로를 장악한 후에도 섣불리 움직이지 않고, 실행 전 하루 반 동안 정밀한 배치와 실전 훈련을 진행했다.
- 10월 28일 07:39(UTC), 탄약 준비: 공격자 주소(0x7c86...5ca0)가 Tornado Cash의 0.1 ETH 믹서 풀에서 세 차례에 걸쳐 초기 Gas 자금을 인출했다(첫 입금 0.0983 ETH). 이때 "총공격"까지는 꼬박 37시간이 남아 있었다.
- 10월 29일 02:28 – 14:19(UTC), 사전 리허설: 공격자는 먼저 이더리움에 1세대 청소 컨트랙트 Sweeper A(0x19bee2...)를 배포했다; 이어서 13:51에 테스트 월렛 2개를 생성하고, 심지어 700만 달러 상당의 스테이블코인을 입금해 EIP-7702 위임 훈련을 진행했으며, 30분 후 성공적으로 이를 수신 주소(0x24a4ae...)로 원클릭 청소하는 테스트를 완료했다.
- 10월 29일 15:59 – 18:20(UTC), 최종판 확정: 공격자는 최종 악성 청소 컨트랙트 Sweeper B(0x63e8...6fae)를 배포하고, 곧바로 3번째 테스트 월렛을 생성해 1.01 ETH를 주입했으며, 16:30에 2.54 USDT에 대한 청소 테스트를 완료했다; 18:20에 모든 테스트 자금이 자금 풀로 전부 회수되었고, 전쟁 전 훈련이 모두 완료되었다.

치명적 일격: 50연발 Nonce "저격"과 EIP-7702 원클릭 탈탈
베이징 시간 오늘 새벽 04:19(20:19 UTC), 해커가 공식적으로 총공격 신호를 울렸다.
- 20:19:57(UTC): 트론(Tron) 해커 수신 주소 생성 완료;
- 20:20:06(UTC): 비트코인 핫월렛(bc1qm34...)이 가장 먼저 이상 움직임을 보이며 18,270.2 BTC가 단일 거래로 송금됨;
- 20:20:59(UTC): 이더리움 메인넷에서 전체 공격의 가장 핵심적인 기술적 조작인 50연발 Nonce 저격이 시작됨.
해커는 왜 이더리움 메인넷에서 EIP-7702를 사용했는가?
Binance 14 같은 주력 핫월렛에는 수십 종의 ERC-20 토큰이 보관되어 있다. 만약 해커가 비트코인에서처럼 일반 이체를 하나하나 발송했다면, 서명 시스템에 수십 번의 서명을 요청해야 할 뿐만 아니라, 첫 대액 이상 움직임 후 몇 초 안에 거래소의 이상 흐름 모니터링과 자동 서킷브레이커 메커니즘을 촉발했을 것이다.
그러나 EIP-7702를 통해 Binance 14를 그 자리에서 악성 컨트랙트 Sweeper B(0x63e8...6fae)로 업그레이드하면, 해커는 컨트랙트에 내장된 함수(하드코딩되어 해커 주소 0x7c86...5ca0만 호출 가능)를 한 번 호출하는 것만으로, 단일 거래, 동일 블록 내에서 모든 토큰과 ETH를 전부 패키징하여 빨아들일 수 있으며(이후 Gas용으로 1 ETH만 남김), 리스크 관리 시스템의 반응 시간 창을 완전히 없애버린다.
왜 50개의 연속 서명을 집어넣었는가?
EIP-7702 승인에는 매우 엄격한 제한이 있다 — 승인 서명에 포함된 Nonce는 거래가 온체인에 올라가는 순간 해당 월렛의 실시간 Nonce와 완전히 일치해야 한다.
해커가 개연성이 높게는 백엔드 서명 시스템 인터페이스만 조작했기 때문에, 이 시점의 Binance 14는 여전히 전 세계 사용자의 정상 출금을 고빈도로 처리하고 있었고 Nonce는 매초 요동치고 있었다. 해커가 서명기에서 서명을 받아 다시 온체인에 브로드캐스트되어 패키징되기까지 수 초의 네트워크 및 큐 지연이 존재하므로, 온체인에 올라가는 그 순간 Nonce가 어느 숫자에 멈출지 전혀 예측할 수 없었다.
이 사각지대를 극복하기 위해 해커는 장악한 서명 시스템을 이용해 당시의 Nonce 구간에 대해 서명기가 50개의 연속 증가하는 EIP-7702 승인 서명(Nonce 18,914,775부터 18,914,824까지)을 한 번에 생성하도록 강제하고, 이를 모두 동일한 Type-4 거래에 집어넣어 온체인에 발사했다.
이더리움 기저 레이어는 실행 시 49개의 무효 서명을 자동으로 폐기하고, 오직 실시간 창에 걸린 단 1개의 Nonce만 정확히 적중하여 효력을 발휘했다.
거침없는 연쇄 청소와 권한 관통
- 20:22:45(UTC): 트론 핫월렛에서 6.127억 USDT가 단일 거래로 송금됨;
- 20:24:23(UTC): 해커가 Binance 14의 sweep 함수를 호출, 단일 거래로 167,464.25 ETH, 16.15억 USDT 및 기타 62종 토큰을 순식간에 빨아들여 해커 수금 주소 0x5227…2f8c(Etherscan에서 Exploiter 2로 표시)로 입금;
- 20:24:47(UTC): Binance 14 도난 불과 24초 후, 바이낸스의 또 다른 독립 핫월렛 Binance 16이 EIP-7702를 사용하지 않고 자체 개인키로 일반 이체에 서명하여 28,005.6 ETH를 동일한 해커 수금 주소(0x5227…2f8c)로 입금했으며, 15분 후(20:39 UTC) 해커는 이 두 월렛에서 유출된 총 195,470 ETH를 패키징하여 이체했다;
- 20:32 – 20:33(UTC): Arbitrum의 핫월렛 3개(첫 거래 3,478.4 ETH)와 Avalanche의 핫월렛 4개(첫 거래 432,846 AVAX)가 잇따라 약탈됨;
- 20:41(UTC): 7.8억 USDC를 보유한 또 다른 스마트 컨트랙트 월렛 Binance 34가 장악됨(이후 20:59에 다시 4,300만 USDC 유출). Binance 14가 마침 Binance 34의 관리자(Owner)였기 때문에, 해커는 EIP-7702를 통해 Binance 14를 기생 제어한 후 관리자 신분으로 연관 금고까지 손쉽게 빨아들였다.
더 치명적인 것은 EIP-7702의 위임이 일단 발효되면 지속적으로 존재한다는 점이다. 바이낸스가 서명기를 완전히 차단하고 제로 주소 승인을 재전송하여 이를 덮어쓰기 전까지, Binance 14에 이후 입금되는 모든 자금은 계속 빨려나갈 것이다(21:04 UTC까지도 산발적 잔액이 지속적으로 청소됨).
현재 이번 보안 사고의 구체적 침입 경로와 온체인 자금의 후속 추적, 동결 진행 상황은 여전히 계속 진화하고 있으며, Odaily 星球日报는 지속적으로 주시하고 가장 빠르게 최신 보도를 전할 것이다.


