2026년 3월 15일, 공격자는 Venus Protocol의 Core Pool(BNB Chain)에서 THE(Thena) 마켓의 공급 한도(supply cap)를 우회하고, 담보 포지션을 의도된 한도의 3.67배로 부풀려 약 1,490만 달러의 자산을 대출했습니다 [1]. 초기 언론 보도는 이를 약 370만 달러 규모의 익스플로잇으로 다루었지만, 온체인 실상은 더 복잡합니다: 프로토콜과 공격자 모두 손실을 입었습니다.
Venus의 자체 사후 분석 보고서 [1]와 여러 선행 분석 [2, 3, 4]은 공급 한도 우회, 기부 공격 벡터(donation attack vector), 기본적인 자금 흐름을 포함해 공격 메커니즘을 상세히 해부했습니다. 이 글은 그 내용을 반복하지 않습니다. 대신, 프로토콜과 공격자 양측의 온체인 손익(P&L) 구조를 살펴보고, 대출 프로토콜 방어 체계에서 드러난 시스템적 리스크에 초점을 맞춥니다.
공격 및 청산 과정을 분석하고 전체 자금 흐름을 추적한 결과, 254개의 청산 봇이 8,048건의 트랜잭션에 걸쳐 포지션 해소를 위해 경쟁했음에도 215만 달러의 부실 채무(bad debt)가 남았습니다 [1]. 청산은 실행되었지만 역부족이었습니다. 공격자는 992만 달러를 투입했으나 모든 청산 이후 약 520만 달러만 보유하게 되어 온체인 순손실은 약 470만 달러에 달합니다. 이러한 결과는 대출 프로토콜의 세 가지 방어선 모두가 실제 스트레스 상황에서 어떻게 무너졌는지 보여주는 동시에, 포착되었던 조기 경보 신호들이 효과적으로 활용되지 못했음을 드러냅니다. 이는 기존 안전장치의 한계를 보여주며, 커뮤니티가 이번 사건에서 교훈을 얻고 모니터링 및 조기 경보 역량을 강화해야 할 필요성을 강조합니다.
배경
공급 한도(supply cap)는 Compound 방식의 대출 마켓에서 표준적인 리스크 통제 수단입니다. 특정 자산이 담보로 예치될 수 있는 양을 제한함으로써, 변동성이 크거나 유동성이 낮은 토큰에 대한 프로토콜의 익스포저(exposure)에 상한선을 설정합니다. Venus는 THE 토큰의 온체인 유동성이 얕다는 점을 반영하여 THE 마켓의 공급 한도를 **1,450만 THE**로 설정했습니다.
공급 한도 이면에는 두 가지 추가적인 안전 레이어가 존재합니다. 오라클 기반 담보 평가는 차입자가 예치물을 기반으로 얼마나 대출할 수 있는지를 결정합니다. 포지션이 담보 부족 상태가 되면, 경쟁적인 청산 시장이 개입할 것으로 기대됩니다: 제3자 봇이 채무를 상환하고 할인된 가격에 담보를 압수하여 프로토콜의 지급 능력을 유지합니다.
이 세 겹의 구조(익스포저 한도, 가치 평가, 청산)는 대부분의 대출 프로토콜에서 리스크 프레임워크를 구성합니다. Venus THE 사건은 세 레이어 모두를 동시에 시험했으며, 세 레이어 모두 불충분한 것으로 드러났습니다. 다음 섹션에서는 각 레이어가 어떻게 시험되었으며 어디서 실패했는지 살펴봅니다.
공격
우회 방법: 기부 공격(Donation Attack)
대부분의 Compound 포크에서 공급 한도는 **민트 경로(mint path)**만을 제한합니다: vToken을 발행하기 전에 한도를 확인하는 표준 예치 함수입니다. 이는 컨트랙트 주소로 직접 전송되는 토큰을 고려하지 않습니다.
공격자는 이 허점을 악용했습니다. vTHE 컨트랙트로의 직접 ERC-20 전송은 새로운 vToken을 발행하지 않고도 컨트랙트의 기초 토큰 잔액을 증가시킵니다. Compound 방식의 회계에서 이는 vToken과 기초 자산 간의 exchangeRate를 부풀립니다. 기존 vToken 보유자는 이득을 얻게 됩니다: 그들의 vToken이 이제 더 많은 기초 토큰에 대한 청구권을 나타내며, 프로토콜이 인식하는 실효 담보 가치가 증가합니다.
이 "기부 공격"은 Compound 포크에서 알려진 취약점 유형입니다. 민트 경로에서만 공급 한도를 적용하는 프로토콜은 모두 취약합니다: 기초 자산에 대한 실효 익스포저가 어떠한 한도 확인도 트리거하지 않고 한도를 훨씬 초과할 수 있습니다.
준비 단계 (2025년 6월 ~ 2026년 3월)
공격은 3월 15일에 시작된 것이 아닙니다. 공격자는 자금 조달 주소(0x7a79...f234)를 통해 Tornado Cash로부터 7,447 ETH를 수령하고, 해당 ETH를 Aave에 담보로 예치한 후 992만 달러의 스테이블코인(USDT, DAI, USDC)을 대출했습니다. 이 자금은 2025년 6월부터 THE 매입을 시작하기 위해 여러 지갑에 배포되었으며, 공격 당일 아침까지 공급 한도의 84%(약 1,220만 THE)에 달하는 복합 포지션을 점진적으로 구축했습니다.

공격자의 누적 vTHE 포지션 (2025년 6월 ~ 2026년 3월). 9개월에 걸친 점진적 축적 후 완전 청산.
이 9개월간의 준비 기간은 온체인에서 내내 가시적이었습니다. 각 예치 이후 프로토콜의 온체인 상태(총 공급량, 공급 한도 대비 포지션 집중도)는 공개적으로 조회 가능했습니다. 그러나 개별 트랜잭션은 모두 일상적이었으며 기존의 알림을 트리거하지 않았을 것입니다. 이런 유형의 리스크를 감지하려면 프로토콜 수준의 상태 변화를 지속적으로 모니터링해야 하며, 이는 프로토콜 보안 프레임워크가 개선이 필요한 영역일 수 있습니다.
공격자는 단일 Tornado Cash 자금 출처로 추적 가능한 여러 주소를 통해 운영했습니다:
| 주소 | 역할 |
|---|---|
| 0x7a79...f234 | 자금 조달: Tornado Cash에서 7,447 ETH 수령, Aave에 예치, 992만 달러 스테이블코인 대출 |
| 0x43c7...2f82 | 공격자 EOA |
| 0x737b...a619 | 공격 컨트랙트: 2-3단계에서 기부 우회 및 대출 실행. 12:04 UTC에 청산됨. |
| 0x1a35...6231 | 공격자 지갑: 민트 경로를 통해 THE 공급, vTHE 보유 |
실행 단계 (2026년 3월 15일)
11:00 UTC, 공격자는 프로토콜 내에 1,220만 THE를 보유하고 있었으며, 이는 1,450만의 한도 내에 있었습니다. 약 11:55 UTC, 공격자는 공격 컨트랙트(0x4f477e...f5663f)를 배포하고 [1], 컨스트럭터에서 기부 우회와 초기 대출을 원자적으로 실행했습니다. 6개의 지갑이 합계 약 3,600만 THE를 vTHE 컨트랙트에 직접 전송하여 환율을 3.81배 부풀렸습니다. 0x1a35의 포지션을 기반으로 대출 권한을 부여받은 공격 컨트랙트는 이후 부풀려진 담보를 기반으로 자산을 대출했습니다.
약 12:00부터 12:42 UTC까지, 두 주소 모두 재귀적 레버리지 루프에서 후속 트랜잭션을 실행했습니다 [1]:
- 부풀려진 담보를 기반으로 자산 대출 (
CAKE,BNB,BTCB,USDC) - 대출 자산을 공개 시장에서
THE로 스왑 THE를vTHE컨트랙트에 기부하여 환율을 추가로 부풀리고 가격 상승 유도- 증가된 대출 능력으로 반복
| 시간 (UTC) | THE 공급량 |
한도 대비 % | 상태 |
|---|---|---|---|
| 11:00 | 1,220만 | 84% | 한도 내 |
| 12:00 | 4,950만 | 341% | 한도 우회됨 |
| 12:42 | 5,320만 | 367% | 청산 전 최고점 |
타임라인 데이터 출처: Venus 사후 분석 보고서 [1].
THE의 온체인 유동성이 극히 얕았기 때문에, 소량의 매수만으로도 상당한 가격 충격이 발생했습니다. THE의 집계 시장 가격은 약 0.26달러에서 0.53달러 이상으로 급등했습니다(CoinMarketCap 기준). Venus의 Resilient Oracle(RedStone이 기본, Binance가 피벗)은 초기에 급등하는 가격을 거부했습니다: 약 11:55 UTC부터 BoundValidator는 Binance 피드가 거의 4달러에 달할 정도로 크게 이탈하면서 약 37분간 되돌림(revert)을 반복했습니다 [1]. 이 기간 동안 오라클은 THE의 가격을 업데이트할 수 없었습니다. 공격자가 RedStone 집계에 포함된 여러 거래소에서 지속적으로 매수 압력을 유지하면서, 두 피드는 결국 약 12:32 UTC에 상승된 수준으로 수렴했습니다. Resilient Oracle은 약 0.51달러에서 가격을 수용하고 [1], 프로토콜은 조작된 환율로 공격자의 담보를 평가하기 시작했습니다.

공격 전후 THE 토큰의 가격 변동.
환율 부풀림(기부를 통한 3.81배)과 가격 조작(0.26달러 → 0.51달러)의 복합 효과로 공격자의 대출 능력이 약 7배 증가했습니다. 그러나 THE의 실제 시장 깊이는 오라클이 보고한 가치의 극히 일부에 불과했습니다.
과도한 확장과 붕괴 (약 12:42 UTC 이후)
첫 번째 라운드의 대출 자산을 추출한 후, 공격자는 멈출 수 있었습니다. 대신 계속해서 대출 자금으로 THE를 매수하며 또 다른 가격 상승을 강제하려 했습니다. 이로 인해 헬스 팩터(health factor)가 1에 근접했습니다 [1]. 12:42 UTC에 포지션은 5,320만 THE로 최고점에 달했습니다.
매수 압력이 멈추자 THE의 부풀려진 가격을 지지할 요인이 없었습니다. 청산 봇과 패닉셀로 인한 매도 압력이 얕은 매수 유동성을 압도했고, THE 가격은 약 0.51달러에서 약 0.22달러로 급락하며 [1], 공격 전 수준인 0.26달러를 밑돌았습니다. 연쇄 청산으로 약 4,200만 THE에 달하는 담보가 해소되었고 [1], 프로토콜의 마지막 방어선인 제3자 청산인들이 손실 제한을 위해 개입했습니다.
청산의 현실
DeFi 대출에서의 가정은 단순합니다: 포지션이 수중에 들어가면, 제3자 청산인들이 개입하여 채무를 상환하고, 할인된 가격에 담보를 압수하여 프로토콜의 지급 능력을 유지합니다. Venus THE 사건은 이 메커니즘을 깨뜨리지 않았습니다. 다만 그 한계를 드러냈습니다.
청산인들은 왔습니다. 하지만 충분하지 않았습니다.
온체인 청산 데이터(Venus의 Dune 대시보드 [5] 출처, 추가 트랜잭션 수준 분석 포함)에 따르면:
| 지표 | 값 |
|---|---|
총 청산 트랜잭션 수 (vTHE, 3월 15일) |
8,048건 |
| 고유 청산 호출자 수 | 254개 |
| 청산 진입 컨트랙트 | 0x0870...cf43 (Venus Core Pool Liquidator) |
| Venus에서 대출된 총 자산 | 약 1,490만 달러 [1] |
| 잔여 부실 채무 | 약 215만 달러 [1] |
Dune 대시보드는 모든 트랜잭션의 청산자로 0x0870...cf43을 기록합니다. 이 주소는 Venus의 Core Pool Liquidator 컨트랙트로, 모든 외부 호출자가 청산을 실행할 수 있는 퍼미션리스(permissionless) 진입점입니다. 실제 트랜잭션 발신자를 조회하면 254개의 고유 주소가 8,048건의 트랜잭션에 걸쳐 청산 기회를 경쟁했음을 알 수 있습니다.
8,048건의 vTHE 청산 트랜잭션 중 8,039건은 공격자의 주 포지션(0x1a35)을 대상으로 했으며, 나머지 9건은 가격 급락에 휘말린 소규모 vTHE 보유자 4명의 무관한 사용자를 청산했습니다.
참여가 완전한 회수를 의미하지는 않았습니다. 봇들은 vTHE를 압수하고 BNB, BTCB, CAKE, USDC, WBNB 표시 채무를 상환했습니다. 수익을 실현하려면 압수한 THE를 공개 시장에서 매도해야 했습니다. 5,300만 THE가 수백만 달러 규모의 시장 깊이를 가진 마켓에 투매되는 상황에서, 압수한 담보를 대규모 슬리피지 없이 안정적인 가치로 전환하는 것은 불가능했습니다. 결과적으로 215만 달러의 채무가 충당되지 못해 Venus의 대차대조표에 부실 채무로 남았습니다.
두 포지션, 두 결과
공격자는 서로 다른 담보 유형을 가진 두 개의 포지션을 운영했습니다 [2]. 두 포지션은 상호 보완적인 역할을 했습니다: 0x1a35는 9개월에 걸쳐 THE를 축적하고 부풀려진 담보를 기반으로 가치 있는 자산을 대출한 주요 포지션이었으며, 0x737b는 기부 우회를 원자적으로 실행하고 환율을 추가로 부풀리기 위해 THE를 대출한(담보로 USDC 사용) 공격 컨트랙트였습니다. 두 포지션의 청산 결과는 시기와 메커니즘 모두에서 달랐습니다:
| 주소 | 담보 | 트랜잭션 수 | 상환된 채무 | 결과 |
|---|---|---|---|---|
| 0x737b (공격 컨트랙트) | vUSDC |
603건 | 72만 9천 달러 | 약 35만 9천 달러 THE 채무 잔존 [1] |
| 0x1a35 (공격자 지갑) | vTHE |
8,039건 | 약 1,200만 달러 회수 | 약 179만 달러 부실 채무 (압수된 THE 유동성 부족) |
0x737b 포지션은 펌프 단계인 12:04 UTC에 먼저 청산되었습니다 [2]. 담보는 고정 가치의 158만 USDC였고, 채무는 THE로 표시되었습니다. 해당 포지션은 THE 가격 약 0.26달러에서 최소 마진으로 생성되었습니다. 공격자가 DEX에서 계속 THE를 매수하며 시장 가격을 약 0.51달러 수준으로 끌어올리자, THE 채무 가치가 USDC 담보를 크게 초과하여 청산이 트리거됐습니다. 청산인들이 USDC를 압수했지만, 603건의 트랜잭션 이후에도 압수된 담보가 THE 채무를 완전히 충당하지 못해 약 185만 THE(약 35만 9천 달러)가 미상환으로 남았습니다 [1]. 이는 설계된 것일 가능성이 높습니다: 0x737b의 목적은 기부 우회를 위한 THE 대출이었으며, 그 임무가 완료되면 USDC 담보 손실은 감수할 수 있는 비용이었습니다.
0x1a35의 청산이 실제 상황을 말해줍니다. 담보는 THE 자체였습니다. 254개의 봇이 8,039건의 트랜잭션에 걸쳐 청산을 경쟁했지만, 압수된 THE는 오라클이 보고한 가치에 근접한 가격으로 매도될 수 없었습니다. 타임라인은 그 역학을 보여줍니다:
| 시간 (UTC) | 트랜잭션 수 | 상환된 채무 | 단계 |
|---|---|---|---|
| 12:00-12:59 | 3,416건 | 약 383만 달러 | THE 가격 급락, 슬리피지 최대 |
| 13:00-13:59 | 4,626건 | 약 1,040만 달러 | 가격 안정화, 청산 대부분 완료 |
두 포지션 모두 프로토콜 손실에 기여했습니다: 0x737b의 미충당 THE 채무 약 35만 9천 달러와 0x1a35의 유동성 부족 THE 담보로 인한 나머지 손실. Venus에서 대출된 총 약 1,490만 달러 중 [1], 청산인들은 대부분을 회수하는 데 성공했습니다. 나머지 약 215만 달러는 Venus의 대차대조표에 부실 채무로 남았습니다.
Dune 파생 수치에 대한 참고: Venus Dune 대시보드 [5]는
daily_market_info테이블의 일일 스냅샷 가격을 사용하여 압수된 담보와 상환된 채무를 평가합니다.THE가격이 당일 약 0.53달러에서 0.22달러로 급락했기 때문에, Dune에서 도출된 달러 수치(위의 시간별 분석 및 다음 섹션의 수익 측면 수치 포함)는 실시간 값과 차이가 있을 수 있습니다. 공식 수치가 있는 경우(총 대출 약 1,490만 달러, 부실 채무 약 215만 달러 [1])를 권위 있는 출처로 사용합니다. 절대 달러 값은 다를 수 있지만, 기본적인 추세와 결론은 일관성을 유지합니다.
자금 추적
청산 데이터는 포지션이 어떻게 해소되었는지 보여줍니다. 공격자의 실제 손익(P&L)을 이해하기 위해서는 개별 트랜잭션을 넘어, 모든 청산이 완료된 후 공격자가 투입한 것과 보유하게 된 것을 비교해야 합니다.
투입된 자금
공격자의 자금 조달 체인: Tornado Cash를 통해 수령한 7,447 ETH를 Aave에 담보로 예치하고, 스테이블코인(USDT, DAI, USDC) 992만 달러를 대출하여 9개월에 걸쳐 THE와 vTHE 매입을 위해 여러 지갑에 배포했습니다. 전체 992만 달러는 Venus의 THE 포지션으로 전환되었습니다. 공격 후 모든 THE 담보가 청산되어 이 투자는 사실상 소멸되었습니다.
Venus에서 대출한 자금
최고점(12:42 UTC) 기준, 공격자는 Venus에서 총 약 1,490만 달러를 대출했습니다 [1]:
| 주소 | 담보 | 대출 자산 |
|---|---|---|
| 0x1a35 (공격자 지갑) | 5,320만 THE |
667만 CAKE + 2,801 BNB + 1,972 WBNB + 158만 USDC + 20 BTCB |
| 0x737b (공격 컨트랙트) | 158만 USDC |
463만 THE |
대출된 자산 전부가 수익으로 추출된 것은 아닙니다. 상당 부분이 공격에 재활용되었습니다:
- 0x1a35는 Venus에서
BNB를 반복적으로 대출하여THE로 스왑하고, 가격 펌프와 환율 부풀림을 유지하기 위해THE를vTHE컨트랙트에 직접 기부했습니다 [1]. - 0x737b는 3단계(함수 시그니처
0x91f38bff)에서 48건의 트랜잭션을 실행했습니다. 이 중 두 건은 가치 있는 자산(CAKE,WBNB)을 대출하여 보유했습니다: 0x4253a8...eca296 및 0xfd64d0...154808. 나머지는 대출-스왑-기부 루프였습니다: Venus에서 자산을 대출하여THE로 스왑하고,THE를vTHE컨트랙트에 기부했습니다. - 0x737b가 대출한 **158만
USDC**는 즉시 자체 담보로 재공급되었습니다 [1]. 이USDC는 이후 청산 시 압수되어 프로토콜을 벗어나지 않았습니다. - 0x737b가 대출한 **463만
THE**는 환율 부풀림을 위해vTHE컨트랙트에 직접 기부되었습니다 [1].
공격자가 보유한 자금
Venus의 두 포지션이 모두 청산된 후, 공격자가 통제하는 모든 주소의 최종 토큰 잔액을 DeBank를 통해 확인했습니다:
| 주소 | 토큰 | 수량 | USD 가치 |
|---|---|---|---|
| 0x1a35 | CAKE |
1,500,000 | 약 224만 달러 |
| 0x1a35 | BTCB |
20 | 약 148만 달러 |
| 0x1a35 | WBNB |
200 | 약 14만 달러 |
| 0x737b | WBNB |
1,972.53 | 약 133만 달러 |
| 0x737b | CAKE |
16,093 | 약 2만 달러 |
| 총 보유액 | 약 521만 달러 |
Aave 포지션(7,447 ETH 담보, 약 992만 달러 채무)은 열린 상태로 변동 없습니다(헬스 팩터 1.45). 992만 달러의 스테이블코인은 BNB 체인으로 출금되어 THE로 전환되었지만, 이것이 Aave 채무를 줄이지는 않습니다. Aave의 관점에서 공격자는 충분한 담보를 가진 단순한 차입자입니다. 공격자는 미상환 채무를 제외한 ETH에 대한 접근권을 유지합니다.
온체인 순 손익
| USD | |
|---|---|
총 투입 (Aave 대출 → THE 전환, 청산으로 전액 손실) |
-992만 달러 |
| 총 보유 (청산 후 보유한 Venus 대출 자산) | +약 521만 달러 |
| 온체인 순손실 | 약 -471만 달러 |
온체인 작업은 명백히 수익성이 없었습니다. Venus에서 대출한 약 1,490만 달러 중 공격자는 약 521만 달러만 보유했습니다. 나머지는 THE 기부 루프에 재활용되거나, 청산 시 압수되거나, 프로토콜 부실 채무로 흡수되었습니다.
프로토콜 손실
모든 청산이 완료된 후, Venus에는 약 215만 달러의 부실 채무가 남았습니다 [1]:
| 자산 | 수량 | USD 가치 |
|---|---|---|
CAKE |
약 118만 | 약 179만 달러 |
THE |
약 185만 | 약 36만 달러 |
| 총 부실 채무 | 약 215만 달러 |
가치 분배
| 당사자 | 순 손익 | 비고 |
|---|---|---|
| 공격자 (온체인) | 약 -471만 달러 | 992만 달러 투입, 약 521만 달러 보유 |
| Venus 프로토콜 | -215만 달러 | 모든 청산 후 부실 채무 [1] |
| 제3자 청산인 | 미상 | 254개 봇 참여; 손익은 THE 매도 가격에 따라 상이 |
| 공격자 (CEX) | 미상 | 퍼프 포지션 가능성 있으나 확인 불가 |
일반적인 DeFi 익스플로잇에서는 프로토콜 또는 LP가 손실을 입고, 공격자가 이익을 얻으며, 양측의 차액은 청산인, 차익 거래자, 블록 빌더 등 제3자가 가져갑니다. 이 사건은 그 패턴을 깨뜨립니다: 공격자도 온체인에서 손실을 입었습니다(약 471만 달러). 이 손실이 오프체인 포지션(예: 중앙화 거래소의 영구 선물 계약 [3, 4])으로 상쇄되었는지는 확인할 수 없습니다.
교훈: 세 가지 방어선
공격은 알려진 취약점을 악용하고, 교과서적인 레버리지 루프를 사용했음에도 215만 달러의 부실 채무를 발생시켰습니다. 진짜 실패는 단일 메커니즘이 아니라 전체 리스크 스택에 걸친 취약점의 복합적 효과였습니다.
첫 번째 방어선: 익스포저 한도
Venus의 공급 한도는 표준 mint 경로만을 제한했습니다. vToken 컨트랙트로의 직접 토큰 전송은 이를 완전히 우회했습니다. 회계적 가정에 의존하는 모든 리스크 통제는 예상되는 예치 흐름만이 아닌, 모든 가능한 상태 변경 작업에 걸쳐 해당 가정을 검증해야 합니다.
두 번째 방어선: 담보 가치 평가
Resilient Oracle의 보고 가격(약 0.51달러)은 집계된 시장 가격에 근접했으며, BoundValidator는 37분간 극단적인 Binance 피드를 올바르게 거부했습니다 [1]. 그러나 기초 시장의 깊이가 수백만 달러에 불과할 때, 수천만 달러 규모의 담보에 대해 "정확한" 시장 가격이라도 무의미합니다 [3]. 이 포지션으로 공격자는 Venus에서 약 1,490만 달러의 자산을 대출할 수 있었지만 [1], THE 담보는 청산 시 오라클이 보고한 가치의 극히 일부만 실현할 수 있었으며, 이는 총 215만 달러의 부실 채무를 야기했습니다. 유동성이 낮은 토큰의 경우, 담보를 오라클 가격에 매도할 수 없을 때 명목상의 과잉 담보는 실질적인 안전 마진을 제공하지 못합니다. 대출 프로토콜은 시장 깊이, 예상 슬리피지, 집중도 리스크를 고려한 유동성 조정 담보 평가를 도입해야 합니다.
세 번째 방어선: 청산
전체 대출 모델은 포지션이 수중에 들어갈 때 청산인들이 개입하여 프로토콜을 정상화할 것을 전제로 합니다. 이 사건에서 254개의 청산 봇이 vTHE 포지션에서만 8,048건의 트랜잭션을 처리했습니다. 청산 시장은 활발하고 경쟁적이었습니다. 그럼에도 충분하지 않았습니다: 215만 달러의 부실 채무가 남았습니다. 문제는 청산인 부족이 아니라 유동성 부족이었습니다. 5,300만 THE가 수백만 달러 규모의 시장 깊이를 가진 마켓에 투하되었을 때, 아무리 많은 봇 경쟁도 압수된 담보를 미상환 채무를 충당하기에 충분한 가치로 전환할 수 없었습니다. 담보의 실현 가능한 가치가 오라클 보고 가치와 크게 괴리될 때, 프로토콜은 청산을 신뢰할 수 있는 안전망으로 취급할 수 없습니다.
모니터링 격차
9개월의 축적 단계는 처음부터 온체인에서 가시적이었습니다: 공급 한도에 근접하는 단일 주체, 유동성이 낮은 자산에서의 증가하는 집중도, 수개월에 걸친 점진적인 포지션 구축. Venus는 "일부 커뮤니티 멤버들이 익스플로잇 이전에 이 주소를 지적했다"고 인정했지만, "해당 주소가 당시 프로토콜 한도 내에서 완전히 운영 중이었으며", 퍼미션리스 프로토콜로서 "의심만으로 주소를 동결하거나 블랙리스트에 올릴 수 없고 그래서도 안 된다"고 밝혔습니다 [1]. 이번 사건의 개선 조치의 일환으로, Venus는 "비정상적인 축적 패턴을 감지하고 거버넌스 수준의 검토를 트리거할 수 있는 온체인 리스크 모니터링 메커니즘을 탐색 중"이라고 밝혔습니다 [1].
놓친 신호는 느린 축적에만 국한되지 않습니다. Venus의 사후 분석 보고서에 따르면 [1], 오라클의 방어 메커니즘은 설계대로 작동했습니다: BoundValidator는 극단적인 Binance 피드를 거부하고 37분간 되돌림을 반복하며 초기 조작 기간 동안 가격 업데이트를 효과적으로 차단했습니다. 그러나 어떠한 모니터링 시스템도 이 이상 징후를 에스컬레이션하지 않았습니다. 단일 주체가 공급 한도의 3배 이상을 보유한 마켓에서 오라클이 지속적으로 되돌림을 반복하는 것은 높은 심각도의 실시간 신호입니다. 37분은 상당한 시간입니다. 이것이 자동화된 서킷 브레이커나 수동 검토를 트리거했더라면, 오라클이 재수렴하기 전에 THE 마켓을 일시 중지하여 대규모 대출의 대부분을 방지할 수 있었을 것입니다. 이는 또한 더 광범위한 격차를 드러냅니다: 활성화된 후 경고나 에스컬레이션 경로 없이 자체적으로 해소되는 프로토콜 방어 메커니즘은 가장 단순한 공격에 대해서만 보호를 제공합니다.
이는 두 가지 뚜렷한 역량 격차를 지적합니다. 첫 번째는 장기 포지션 모니터링: 단일 주체의 저유동성 자산 집중도가 공급 한도, 시장 깊이, 청산 역량 대비 시간에 따라 어떻게 변화하는지 추적하는 것입니다. 9개월의 축적 기간 동안 단 하나의 트랜잭션도 악의적이지 않았고, 어떤 규칙도 위반되지 않았습니다. 두 번째는 실시간 오라클 건전성 모니터링: 비정상적인 집중도를 가진 마켓에서 지속적인 오라클 이상 징후를 감지하고 서킷 브레이커 메커니즘으로 에스컬레이션하는 것입니다. 두 가지 모두 개별 트랜잭션을 넘어, 주소와 시간 창에 걸쳐 온체인 상태 변화를 상관 분석하여 시스템적 리스크가 현실화되기 전에 파악하는 지속적인 모니터링 인프라를 필요로 합니다.
결론
Venus THE 사건은 새로운 취약점을 드러내지 않았습니다. 알려진 공격 벡터가 인내심을 갖고 실행될 때, 각 레이어가 다른 레이어가 버텨줄 것이라고 가정한다면 프로토콜의 전체 리스크 스택을 압도할 수 있음을 보여줬습니다. 경보 신호는 수개월간 온체인에서 가시적이었지만, 감지와 개입 사이의 격차는 여전히 해결되지 않았습니다. 유동성 인식 리스크 파라미터, 자동화된 서킷 브레이커, 포지션 수준 모니터링을 통해 이 격차를 해소하는 것이 이 사건이 DeFi 대출 커뮤니티에 남기는 핵심 교훈입니다.
참고문헌
- [1] Venus Protocol, "$THE Market Incident: Post-Mortem": https://community.venus.io/t/the-market-incident-post-mortem/5712
- [2] AllezLabs, "Venus Protocol THE Incident Timeline": https://x.com/AllezLabs/status/2033239532355858536
- [3] hklst4r, "Venus THE Attack Analysis": https://x.com/hklst4r/status/2033192855443808515
- [4] EmberCN, "Venus THE Attacker Fund Flow": https://x.com/EmberCN/status/2033204517467308144
- [5] Venus Protocol Liquidation Dashboard (Dune): https://dune.com/xvslove_team/venus-liquidations
BlockSec 소개
BlockSec은 풀스택 블록체인 보안 및 암호화폐 컴플라이언스 제공업체입니다. 프로토콜 및 플랫폼의 전체 라이프사이클에 걸쳐 코드 감사(스마트 컨트랙트, 블록체인, 지갑 포함), 실시간 공격 차단, 사고 분석, 불법 자금 추적, AML/CFT 의무 준수를 지원하는 제품과 서비스를 구축합니다.
BlockSec은 권위 있는 학술 컨퍼런스에서 다수의 블록체인 보안 논문을 발표했으며, DeFi 애플리케이션의 여러 제로데이 공격을 보고하고, 복수의 해킹을 차단하여 2,000만 달러 이상을 구제했으며, 수십억 달러 규모의 암호화폐를 보호하고 있습니다.
-
공식 웹사이트: https://blocksec.com/
-
공식 트위터 계정: https://twitter.com/BlockSecTeam
-
🔗 BlockSec 감사 서비스 : 요청 제출



