최근 암호화폐 업계는 탈중앙화 금융의 취약성을 다시 한 번 보여주는 또 다른 devastating lesson을 목격했다.
BunniDEX는 Uniswap v4의 혁신적인 훅(hooks) 아키텍처 위에 구축된 유망한 탈중앙화 거래소였지만, 공격자들이 이더리움과 유니체인 전역의 유동성 풀에서 840만 달러를 빼내는 모습을 속수무책으로 지켜볼 수밖에 없었다. 불과 몇 시간 만에, 총 예치 자산(TVL) 6,000만 달러를 끌어모았던 이 프로토콜은 사실상 지급불능 상태가 되었고, 단 하나의 논리 수준 취약점으로 성장 궤도가 산산조각 났다.
공격은 정밀 수술에 가까운 수준으로 치밀하게 이뤄졌다. 블록체인 보안업체 Halborn에 따르면, 공격자는 플래시론과 Bunni의 Liquidity Distribution Function(유동성 분포 함수)을 정교하게 조작하는 기법을 결합했다. 공격자는 USDT를 빌린 뒤, 이를 USDC로 스왑해 스폿 가격 틱을 이동시키고, 이후 풀의 반올림 오류를 이용해 유동성을 과도하게 감소시키면서 자신이 원래 인출할 수 있는 것보다 훨씬 많은 자산을 빼냈다. 한 풀에서는 사용 가능한 유동성이 28 wei에서 4 wei로 줄어들었는데, 이는 85.7% 감소로, 대규모 무단 인출을 가능하게 만든 수치다.
이 사건이 특히 충격적인 이유는 Bunni가 겉보기에는 ‘할 일을 다 한’ 프로젝트였기 때문이다. 이 프로토콜은 신뢰받는 두 보안 업체 Trail of Bits와 Cyfrin의 감사를 거쳤다. 그러나 두 곳 모두 치명적인 결함을 발견하지 못했다. 이후 Bunni 팀이 인정했듯이, 이 버그는 “구현상의 실수가 아닌 논리 수준의 결함”이었고, 전통적인 코드 감사에서는 잘 드러나지 않지만 실제 운영 환경에서는 치명적인 결과를 낳았다. withdraw 함수의 반올림 오류는 개발자들의 기대와 정반대로 동작했다. 유휴 잔고를 늘리려던 의도와 달리 이를 감소시키며, 결국 공격에 악용될 수 있는 조건을 만들어냈다.
2025년 10월 23일, Bunni는 영구 셧다운을 발표했다. 팀은 재출시를 위해 요구되는 6~7자리(달러) 규모의 비용, 즉 광범위한 재감사와 모니터링 시스템 구축 비용을 감당할 수 없었다. 셧다운 성명에서 팀은 이렇게 적었다. “이번 익스플로잇으로 인해 Bunni의 성장은 완전히 멈췄으며, 안전하게 재출시하기 위해서는 감시 및 감사 비용만으로도 6~7자리 금액이 필요합니다. 이는 현재 저희가 보유하지 못한 자본입니다.”
이는 2025년 디파이 생태계 전체를 따라다니는 근본적인 질문을 제기한다. 열정적인 개발자들이 구축하고, 여러 차례 감사를 통과한 기술적으로 정교한 프로토콜이 단 하나의 논리 오류로 붕괴될 수 있다면, 과연 ‘진정으로 안전한’ 탈중앙화 금융은 실현 가능한가? 그리고 수년간의 파괴적인 해킹과 수십억 달러 손실에도 불구하고, 왜 이러한 공격은 계속 반복되는가?
위기의 규모
Bunni의 몰락은 고립된 사고가 아니라, 2025년을 암호화폐 역사상 가장 위험한 해로 만들고 있는 불길한 패턴의 일부다. Hacken의 2025 Web3 Security Report에 따르면, 암호화폐 산업은 2025년 상반기에만 해킹과 사기로 31억 달러 이상을 잃었다. 이 어마어마한 수치는 2024년 한 해 동안 발생한 총 손실액 28.5억 달러를 이미 넘어섰다.
특히 탈중앙화 거래소를 겨냥한 공격의 집중도는 눈에 띈다. CertiK의 2025년 3분기 분석에 따르면, 3분기 전체 암호화폐 손실액은 5억 900만 달러로 37% 감소했음에도, 디파이 프로젝트와 거래소는 여전히 주요 표적이었다. 중앙화 거래소는 1억 8,200만 달러를 도난당하며 가장 큰 피해를 입었지만, 디파이 프로토콜 역시 3분기 한 분기 동안만 8,600만 달러의 손실을 기록했다.
통계는 공격에 포위된 생태계의 불안한 모습을 보여준다. Hacken 연구진은 2025년 상반기 전체 손실의 약 59%가 접근 제어(access-control) 취약점에서 비롯되었으며, 이는 약 18.3억 달러에 해당한다고 분석했다. 스마트 컨트랙트 취약점은 여기에 8%인 2억 6,300만 달러를 추가했다. 이는 2025년 상반기가 2023년 초 이후 스마트 컨트랙트 공격으로는 가장 비용이 많이 든 기간이라는 의미다.
아마 가장 우려스러운 점은 사건 발생 빈도의 가속화일 것이다. 2025년 9월에는 100만 달러 이상 규모의 해킹 사건이 사상 최대인 16건 발생했다. 월별 기록으로는 역대 최다다. 일부 프로토콜이 보안을 개선했음에도, 공격자들은 여전히 놀라운 속도로 새로운 취약점을 찾아내고 있다.
이전 연도와 비교해보면, 2025년은 진전과 지속적인 위험이 공존하는 해다. 디파이 해킹 피해액이 정점을 찍은 해는 여전히 2022년으로, 당시에는 37억 달러 이상이 도난당했다. 이후 2023년과 2024년에는 연간 손실액이 20억~30억 달러 수준으로 줄며 개선세를 보였다. 하지만 2025년 상반기의 31억 달러는 이 추세가 다시 역전될 수 있음을 시사한다.
이 추상적인 숫자 뒤에는 인간적 피해가 존재한다. 각 해킹 사건은 실제 유동성 제공자, 트레이더, 투자자들의 자산 손실을 의미한다. KyberSwap 해킹에서 피해를 본 2,367명의 사용자만 봐도, 대형 공격 한 번이 어떻게 커뮤니티 전체에 파급되며 신뢰와 생계를 파괴하는지 알 수 있다.
익스플로잇의 해부: 코드 실패의 사례 연구
디파이 보안이 왜 여전히 그렇게 어려운지 이해하려면, 프로토콜이 실제로 어떤 메커니즘을 통해 실패하는지 살펴봐야 한다. 다음 사례 연구들은 플래시론, 오라클 조작, 재진입 공격, 접근 제어 실패, 논리 오류 등 취약성 지형을 규정하는 반복 패턴을 보여준다.
Bunni DEX(840만 달러, 2025년 9월)
앞서 설명했듯이, Bunni 익스플로잇은 출금 로직에서의 반올림 방향 버그에서 비롯되었다. 공격자는 플래시론, 소액 단위의 반복 출금, 샌드위치 공격을 조합해 사용했다. 유동성 제공자의 수익을 최적화하기 위해 설계된 프로토콜의 혁신적인 Liquidity Distribution Function은 결과적으로 아킬레스건이 되었다. 이 익스플로잇은, 수학적 가정이 잘못되었을 때 최첨단 디파이 혁신이 어떻게 예상치 못한 공격 벡터를 만들어낼 수 있는지를 보여준다.
Curve 파이낸스(6,900만 달러, 2023년 7월)
Curve 파이낸스 익스플로잇은 디파이 역사상 기술적으로 가장 흥미로운 공격 중 하나다. 취약점은 Curve 코드 자체가 아니라 Vyper 컴파일러에 존재했다. Vyper 0.2.15, 0.2.16, 0.3.0 버전에는 재진입 락이 제대로 동작하지 않는 치명적인 버그가 있어, 공격자가 여러 함수를 동시에 호출할 수 있었다.
아이러니는 깊다. Vyper는 Solidity보다 더 안전한 언어를 목표로 만들어졌다. 그러나 Hacken의 분석이 설명하듯, 이 컴파일러 수준 버그는 2021년 7월 도입 이후 거의 2년 동안 발견되지 않았다. 취약점은 2021년 12월에 출시된 Vyper 0.3.1에서야 패치되었지만, 2023년 7월 공격이 발생할 때까지 이전 버전이 치명적인 위험을 안고 있다는 사실은 아무도 깨닫지 못했다.
이 공격은 JPEG'd, Metronome, Alchemix 등 여러 디파이 프로토콜에 영향을 미쳤다. 보안업체 CertiK는 총 6,900만 달러가 다양한 풀에서 유출되었으며, 2023년 재진입 공격 손실의 78.6%가 이 사고 한 건에서 발생했다고 지적했다. 사건 직후 Curve의 TVL은 하루 만에 거의 50% 하락해 15억 달러 수준으로 떨어졌다.
이 익스플로잇이 특히 교훈적인 점은, “언어 특화(Language Specific)” 취약성으로 분류된다는 사실이다. 개발자 실수가 아닌, 프로그래밍 언어 자체의 결함에서 비롯된 취약점이다. 이는 무시무시한 가능성을 제기한다. 구현이 이론적으로 ‘완벽한’ 코드라 해도, 그 아래에서 돌아가는 도구의 결함 때문에 무너질 수 있다는 점이다.
KyberSwap(4,800만 달러, 2023년 11월)
Ambient 거래소 창립자 Doug Colkitt는 KyberSwap 익스플로잇을 두고 “지금까지 본 것 중 가장 복잡하고 정교하게 설계된 스마트 컨트랙트 익스플로잇”이라고 표현했다. 공격은 KyberSwap Elastic의 집중 유동성(concentrated liquidity) 기능을 악용해, Colkitt가 “무한 돈 버그(infinite money glitch)”라고 부른 상황을 만들어냈다.
취약점은 KyberSwap 스왑 메커니즘에서 교차 틱(cross-tick) 예측 값과 최종 가격 계산 값 사이의 불일치에 있었다. Halborn의 분석에 따르면, 스왑 금액이 amountSwapToCrossTick에서 1을 뺀 값과 같을 때, 반올림 오류로 인해 풀이 잘못된 가격을 산출했다. 이로 인해 nextPrice가 targetPrice보다 작거나 같아야 한다는 가정이 깨지면서, 예상치 못한 유동성 ‘두 배 증가’ 현상이 발생했다.
공격자는 먼저 ETH/wstETH 풀의 가격을 사실상 유동성이 거의 없는 구간으로 조작했다. 그런 뒤 매우 좁은 가격 범위에 극소량의 유동성을 예치하고, 두 번의 핵심 스왑을 실행했다. 첫 번째 스왑에서는 1,056 wstETH를 소량의 ETH로 매도해 가격을 폭락시켰고, 두 번째 스왑에서는 이를 반대로 되돌리며 3,911 wstETH를 다시 매수했다. 이는 처음에 매도한 양보다 훨씬 많은 물량이었다. 풀은 원래 LP 포지션의 유동성을 이중 계산하는 오류를 저질렀고, 이로 인해 이러한 탈취가 가능해졌다.
KyberSwap은 computeSwapStep 함수 안에 이런 유형의 익스플로잇을 방지하기 위한 페일세이프(failsafe) 메커니즘을 도입해 두었다. 하지만 블록체인 보안 연구자들이 밝혔듯이, 공격자는 해당 페일세이프가 발동되는 기준값 바로 바깥에서 작동하도록 트랜잭션을 정교하게 설계했다. 이러한 방어 장치. 이러한 정밀한 설계는 공격자들이 얼마나 고도화되었는지를 잘 보여준다.
Euler Finance (1억 9,700만 달러, 2023년 3월)
Euler Finance 플래시 론 공격은 2023년 최대 DeFi 익스플로잇 사례로 꼽힌다. 이더리움 기반의 퍼미션리스 대출 프로토콜인 Euler는 donateToReserves 함수에 유동성 검증이 제대로 구현되지 않은 취약점 때문에 공격을 받았다.
공격 시나리오는 매우 정교했다. 공격자는 먼저 Aave에서 플래시 론을 통해 3,000만 DAI를 차입했다. 이 중 2,000만 DAI를 Euler에 예치하고 약 1,960만 개의 eDAI 토큰을 받았다. 이후 Euler의 mint 함수를 이용해 예치금의 10배에 해당하는 금액을 반복 차입했는데, 이는 레버리지를 효율적으로 활용하도록 설계된 기능이었지만, 기부 메커니즘과 결합되자 악용이 가능해졌다.
핵심 단계는 1억 eDAI를 Euler의 리저브로 기부(donate)하는 과정이었다. 이때 프로토콜이 이를 통해 과도 담보부 부채가 생성됐는지 제대로 검증하지 않았다. 공격자가 스스로의 포지션을 청산했을 때, 3억 1,000만 dDAI와 2억 5,900만 eDAI를 획득했다. 이후 3,890만 DAI를 인출하고 플래시 론 원금과 이자를 상환한 뒤, DAI 풀에서만 약 890만 달러의 이익을 거두었다. 이 패턴은 여러 풀에 걸쳐 반복되었고, 총 1억 9,700만 달러를 탈취하는 결과로 이어졌다.
CertiK의 사고 분석은 두 가지 핵심 실패를 지적했다. donateToReserves 내 유동성 검증 부재로 지분 토큰과 부채 토큰 조작이 가능해졌다는 점, 그리고 계정이 실제로는 지급불능 상태임에도 부채를 상환하지 않고 담보를 가져갈 수 있게 만든 헬스 스코어링 메커니즘이다. 코드를 감사했던 Sherlock은 책임을 인정하고, 해당 취약점을 발견하지 못한 대가로 Euler에 450만 달러를 보상하기로 합의했다.
의외의 전개로, 공격자는 결국 모든 자금을 반환하고 온체인 암호화 메시지를 통해 사과했다. 이 이례적인 결말에도 불구하고, 이러한 익스플로잇을 가능하게 한 근본적인 보안 실패가 사라지는 것은 아니다.
GMX v1 (4,000만 달러, 2025년 7월)
GMX v1 익스플로잇은 2025년 7월, 출시 이후 수년이 지난 1세대 프로토콜조차 여전히 취약하다는 사실을 보여줬다. 공격은 Arbitrum 상의 GMX 유동성 풀을 겨냥했고, GLP 토큰 가치 계산 방식의 설계 결함을 악용했다.
SlowMist의 분석에 따르면, 근본 원인은 GMX v1의 설계에서 숏 포지션이 열릴 때마다 글로벌 숏 평균 가격을 즉시 갱신한다는 점이었다. 이는 AUM(총 운용 자산) 계산에 직접적인 영향을 주며, 조작 가능성을 열어두었다. 재진입(reentrancy) 공격을 통해 공격자는 막대한 숏 포지션을 열어 글로벌 평균 가격을 조작했고, 단일 트랜잭션 내에서 GLP 가격을 인위적으로 끌어올린 뒤, 상환을 통해 차익을 실현했다.
블록체인 전문가 Suhail Kakar가 “가장 오래된 수법”이라고 부른 재진입 취약점은 표면적인 문제가 아니라 근본적인 설계상의 허점이었다. 공격자는 실제 인출이 일어나지 않은 것처럼 컨트랙트를 속여, 적절한 담보 없이 반복적으로 토큰을 발행할 수 있었다.
GMX는 대응에서도 혁신적인 접근을 보였다. 법적 조치만을 추구하는 대신, 공격자에게 탈취 자금의 90%를 48시간 내에 반환하는 조건으로 10%의 화이트햇 바운티(500만 달러)를 제시했다. 이 전략은 성공했다. 공격자는 온체인 메시지로 “Ok, funds will be returned later.”라고 응답했고, 몇 시간 내로 자금 반환이 시작되었다. 사건 종료 시점에는 비트코인과 이더리움 가격 상승 덕분에 초기 피해액보다 약간 더 많은 금액을 회수할 수 있었다.
이 사례는 점점 더 뚜렷해지는 경향을 보여준다. 프로토콜들은 고도화된 공격자를 순수한 범죄자라기보다 잠재적 화이트햇으로 간주하며, 법적 위협보다 경제적 인센티브를 활용하는 방향으로 움직이고 있다.
Balancer (2023년 8월, 280만 달러 위험 노출)
2023년 8월 Balancer 사태는 대규모 손실이 아닌 ‘아슬아슬한 회피’ 사례로 다른 관점을 제공한다. Balancer가 치명적 취약점을 발견했을 때, 개발자들은 즉시 사용자들에게 경고하고 리스크 완화에 나섰다. 그 결과 영향을 받은 유동성 풀의 95%를 보호하는 데 성공했지만, 전체 예치 자산의 0.42%에 해당하는 280만 달러는 여전히 위험에 노출됐다.
공격자는 강력한 경고와 상세한 출금 안내에도 불구하고 결국 해당 취약점을 악용하여 약 90만 달러를 탈취했다. 공격은 플래시 론을 이용해 완전히 보완되지 않은 풀을 노렸다. PeckShield의 지적에 따르면, 모든 영향을 받은 주소를 합산할 경우 손실액은 210만 달러를 초과했다.
Balancer의 대응은 크립토 커뮤니티에서 높은 평가를 받았다. 암호화폐 연구자 Laurence Day는 이를 “중대한 취약점 공개의 모범 사례”라고 칭했다. 그럼에도 이번 사건은 불편한 진실을 보여줬다. 취약점이 존재하는 한, 아무리 모범적인 커뮤니케이션과 신속한 대응을 하더라도 완전한 보호는 불가능하다는 점이다.
추가로 주목할 만한 익스플로잇들
비슷한 패턴은 다른 수많은 사건에서도 반복된다.
Cetus (2억 2,300만 달러, 2025년): Hacken의 보고에 따르면, Cetus는 2025년 단일 DeFi 익스플로잇 중 최대 규모인 2억 2,300만 달러를 단 15분 만에 탈취당했다. 유동성 계산 과정의 오버플로 검증 취약점이 원인이었으며, 이 공격 하나만으로도 2분기 DeFi 손실 3억 달러 중 상당 부분을 차지했다.
Cork Protocol (1,200만 달러, 2025년): 동일한 Hacken 분석에 따르면, Cork 익스플로잇은 개발팀이 Uniswap V4의 beforeSwap 훅 기본 권한 설정을 수정한 데서 비롯됐다. 공격자는 불충분한 접근 권한 검증을 악용해 악성 데이터를 주입하고 1,200만 달러를 탈취했다.
Orbit Chain (8,000만 달러, 2023년 12월): 이 크로스체인 브리지 및 DEX 연동 실패 사례는 다중 블록체인에 걸친 프로토콜이 직면하는 복합적인 위험을 부각시켰다. 다중 서명 지갑이 탈취되면서 대규모 자금이 도난당했다.
SushiSwap Router (330만 달러, 2023년 4월): 퍼블릭 함수의 오용으로 라우팅 로직에 무단 접근이 가능해졌고, 접근 제어의 작은 허점조차 막대한 비용을 초래할 수 있음을 보여줬다.
Uranium Finance, Radiate Capital, KokonutSwap: 이들 비교적 작은 프로토콜 역시 비슷한 결말을 맞았다. 유동성 관리 로직의 결함, 불충분한 입력 검증, 부적절한 접근 제어 등이 결합되어 수백만 달러에 달하는 누적 손실을 야기했다.
왜 감사는 여전히 진짜 위협을 놓치는가
Bunni 익스플로잇은 DeFi에서 가장 짜증스러운 역설 중 하나를 극명하게 드러낸다. 복수의 전문 감사를 거친 프로토콜이 여전히 치명적으로 실패하는 이유를 이해하려면, 감사가 실제로 무엇을 하는지, 그리고 더 중요한 것은 무엇을 할 수 없는지를 살펴봐야 한다.
전통적인 스마트 컨트랙트 감사는 주로 문법적(syntactic) 취약점에 초점을 맞춘다. 재진입 위험, 정수 오버플로/언더플로, 보호되지 않은 함수, 가스 최적화, 모범 사례 준수 등이 대표적이다. 감사자는 코드베이스를 줄 단위로 검토하며, Smart Contract Weakness Classification Registry와 같은 데이터베이스에 정리된 일반적인 취약점 패턴을 탐지한다. 이 과정은 분명 가치 있지만, 구현(implementation) 레벨에서 작동한다.
반면, Bunni의 반올림 오류처럼 의미론적(semantic) 취약점은 그보다 더 높은 개념적 층위에 존재한다. 이 유형의 버그는 코드가 명세대로 정확히 실행되지만, 특정 상황에서 의도치 않은 경제적 결과를 낳을 때 발생한다. Bunni의 withdraw 함수에 사용된 반올림 로직은 코드 실행 관점에서는 완벽하게 동작하고 있었다. 다만, 개발자들이 가정한 경제 모델과는 정반대로 작동했을 뿐이다.
Bunni를 감사했던 Trail of Bits와 Cyfrin은 블록체인 보안 분야에서 존경받는 선두 주자다. Trail of Bits는 Uniswap, Compound, Maker와 같은 주요 프로토콜을 다수 감사해왔다. 이들이 Bunni의 결함을 잡아내지 못한 것은 무능 때문이 아니라, 현행 감사 방법론의 근본적 한계를 반영한다.
감사 효율을 제한하는 요인은 여러 가지다.
시간 및 리소스 제약: 포괄적인 감사에는 보통 4만~10만 달러가 들고 2~4주가 소요된다. Bunni처럼 복잡하고 혁신적인 기능을 가진 프로토콜의 모든 엣지 케이스를 완전히 테스트하려면 수개월과 대부분 프로젝트 예산을 초과하는 비용이 필요하다. 감사자는 현실적인 비용 제약 속에서 깊이와 범위 사이에서 타협할 수밖에 없다.
혁신적 아키텍처의 난제: Bunni는 2024년 말 도입된 Uniswap v4의 새 훅(hooks) 시스템 위에 구축되었다. 훅 기반 프로토콜에 대한 실전 데이터가 부족한 상황에서 감사자는 참고할 수 있는 확립된 취약점 패턴이 거의 없었다. 새로운 설계는 본질적으로 미지의 영역으로 나아가는 것이며, 이는 곧 리스크 증가로 이어진다.
명세(specification)의 모호성: 감사자는 코드가 명세와 일치하는지 검증할 수 있을 뿐이다. 명세 자체에 논리 오류나 엣지 케이스 누락이 존재하면, 감사는 근본적으로 잘못된 설계를 통과시킬 수 있다. Bunni의 유동성 분배 함수는 수익을 최적화하도록 설계됐지만, 극단적 조건에서의 반올림 동작을 충분히 고려하지 못한 명세였던 것으로 보인다.
조합성(composability) 문제: DeFi 프로토콜은 가격 오라클, 기타 프로토콜, 거버넌스 메커니즘 등 수많은 외부 시스템과 통합되어 있다. 감사는 일반적으로 컨트랙트를 개별적으로 평가할 뿐, 모든 상호작용 시나리오를 전부 검증하지 않는다. 취약점은 합법적인 기능들이 예상치 못한 방식으로 조합될 때 종종 드러난다.
이 한계는 업계 내부에서 이른바 “감사 쇼(audit theatre)”라고 불리는 현상으로 이어진다. 프로젝트는 홍보 목적으로 감사 배지를 전면에 내세우지만, 실제로는 익스플로잇 가능한 결함을 그대로 품은 채 운영되는 경우가 많다. Immunefi 데이터에 따르면, 주요 익스플로잇의 약 60%는 최소 한 번 이상의 감사를 받은 프로토콜에서 발생한다. 감사가 존재한다는 사실은 실제 보안이 아니라, 거짓된 안도감만 제공하는 경우가 많다.
경제적 인센티브 구조는 이러한 문제를 더욱 악화시킨다. DeFi는 극도로 경쟁적인 환경에서 운영되며…"시장 선점 경쟁(race to market)" 환경. 프로젝트들은 경쟁자보다 더 빨리 출시해야 한다는 강한 압박에 직면해 있다. 개발이 한 주 지연될 때마다 잠재적인 시장 점유율과 락업 자산 규모(TVL, Total Value Locked)를 잃게 된다. 길고 포괄적인 보안 검토는 이러한 긴급성과 충돌한다.
인센티브 비대칭을 고려해 보자. 감사 비용은 10만 달러일 수 있지만, 평균 익스플로잇(해킹) 손실은 1,000만~3,000만 달러를 넘는다. 합리적 행위자 관점에서라면, 프로젝트는 보안에 막대한 투자를 해야 한다. 그러나 행동경제학은 다른 이야기를 들려준다. 파운더들은 낙관 편향을 보이며, 자신의 코드가 특별하다거나, 공격자들이 자신들을 노리지 않을 것이라거나, 철저한 준비보다 빠른 반복(iteration)이 더 낫다고 스스로를 설득한다.
Curve를 무너뜨린 Vyper 취약점은 또 다른 차원을 보여준다: 공급망 보안(supply chain security). 프로토콜 개발자가 완벽한 코드를 작성하고 감사인이 철저히 검토하더라도, 컴파일러, 라이브러리, 개발 도구의 취약점이 이런 모든 노력을 무력화할 수 있다. 이로 인해 개발자와 감사인 모두 “자신들의 영역”은 문제없다고 믿기 때문에 전체 코드가 안전하다는 잘못된 안도감을 가지게 된다.
불안정성의 경제학
DeFi에서 보안 실패가 지속되는 이유를 이해하려면, 위험한 개발 관행을 부추기는 기저 경제적 힘을 살펴봐야 한다.
“빠르게 움직여 TVL을 농사 짓자(move fast and farm TVL)”는 사고방식이 DeFi 문화를 지배한다. TVL은 프로토콜 성공의 핵심 지표로, 토큰 가격, 사용자 신뢰, 경쟁적 포지셔닝에 직접적인 영향을 미친다. 프로토콜들은 높은 수익률, 새로운 기능, 공격적인 마케팅으로 유동성을 끌어오기 위해 경쟁한다. 반면 보안은 치명적인 실패가 일어나기 전까지는 보이지 않는다. 경쟁자가 먼저 출시해 시장을 장악하는 동안 6개월 동안 혹독한 테스트를 진행한 프로젝트는 안전을 포기하라는 실존적 압박에 직면한다.
이런 역학은 역선택(perverse selection) 효과를 만든다. 보안을 우선시하는 보수적인 프로토콜은 장기 생존에 필요한 TVL에 도달하지 못할 수 있는 반면, “빠르게 움직이고, 깨뜨려 보자(move fast and break things)”는 위험한 프로젝트들은 초기 수용자의 열광을 흡수한다. 시장은 신중함을 처벌하고, 무모함을 보상한다 — 적어도 익스플로잇이 발생하기 전까지는 그렇다.
조합성(composability)은 DeFi의 가장 큰 강점이지만, 이런 환경에서는 아킬레스건이 된다. 현대 프로토콜은 Chainlink 같은 외부 가격 오라클을 통합하고, Aave나 Compound에서 유동성을 차입하며, Uniswap을 경유하고, 수십 개의 다른 시스템과 상호작용한다. 통합 지점마다 잠재적 공격 표면이 늘어난다. 연결된 어느 하나의 프로토콜에 있는 취약점도 전체 생태계로 연쇄적으로 번질 수 있다.
Euler exploit's impact on Balancer, Angle, and Idle Finance는 이런 전염(contagion) 위험을 보여주었다. Balancer의 Euler Boosted USD 풀은 자체 코드에는 문제가 없었음에도 1,190만 달러, 즉 TVL의 65%를 잃었다. Angle은 1,760만 달러 상당의 USDC가 Euler에 묶였고, Idle Finance는 460만 달러를 손실했다. 하나의 프로토콜 취약점이 전체 DeFi 그래프를 감염시킨 것이다.
개발자들은 불가능한 트레이드오프에 직면한다. 고립된 상태에서 개발하면 조합성의 이점을 포기하고 기능성을 제한해야 한다. 폭넓게 통합하면 연결된 모든 프로토콜로부터의 리스크를 떠안게 된다. 안전한 길은 없고, 위험의 정도만 다를 뿐이다.
수비자(방어자)와 공격자 사이의 경제적 비대칭은 극명하다. 프로토콜은 수백만 줄의 코드와 복잡한 상호작용 전반에 걸친 모든 가능한 공격 벡터를 방어해야 한다. 공격자는 익스플로잇 가능한 단 하나의 약점만 찾으면 된다. 수비자는 상당한 비용(개발 시간, 감사 비용, 모니터링 시스템)을 지속적으로 부담한다. 공격자는 한 번의 노력으로 막대한 보상을 얻을 수 있다.
Aave와 dYdX 같은 플랫폼에서 제공되는 플래시 론(flash loan)은 공격을 위한 자본 장벽을 극적으로 낮춘다. 과거의 익스플로잇은 공격자가 사전에 막대한 암호화폐를 보유하거나 차입해야 했다. 플래시 론은 한 트랜잭션 내에서 수백만 달러 상당의 자본을 거의 비용 없이 제공한다. 트랜잭션이 완료되기 전까지 대출이 상환되기만 하면 되므로, 공격 시도는 사실상 “무료”가 된다.
According to Halborn's Top 100 DeFi Hacks Report, 2024년에는 플래시 론 공격이 폭증해, 분석 대상 익스플로잇의 83.3%를 차지했다. 2025년에도 이 추세는 이어지고 있다. 이 기술은 원래 자본 집약적인 전문 해킹을, 영리한 취약점만 찾으면 실력 있는 개발자 누구나 시도할 수 있는 것으로 변모시켰다.
기대값 계산은 압도적으로 공격자에게 유리하다. 예를 들어, 감사 비용은 평균 4만~10만 달러다. 평균 익스플로잇 손실은 1,000만~3,000만 달러다. 그럼에도 많은 프로토콜은 기본적인 감사 비용조차 부담하기 힘들어한다. 반면 성공한 공격자는 거의 초기 투자 없이 몇 분 만에 수천만 달러를 훔쳐 갈 수 있다.
이 불균형은 더 넓은 시장 실패를 반영한다. 보안은 공공재(public good)다 — 견고한 프로토콜의 혜택은 모두가 누리지만, 개별 행위자가 집단적 안전을 위해 돈을 지불해야 할 인센티브는 제한적이다. 보안에 막대한 투자를 하는 프로토콜은, 그 코드만 베끼고 같은 비용은 들이지 않는 무임승차자를 사실상 보조하게 된다. 이로 인해 집단적으로는 참혹한 피해를 겪고 있음에도, 체계적인 보안 투자 부족이라는 ‘공유지의 비극(tragedy of the commons)’이 지속된다.
플래시 론 패러독스
플래시 론은 DeFi 보안에서 아마 가장 역설적인 요소일 것이다. 생태계 기능에 필수적인 동시에, 최악의 익스플로잇 상당수를 가능하게 하는 기술이기 때문이다.
플래시 론의 핵심은 담보 없이 빌리고, 단일 블록체인 트랜잭션 안에서 상환해야 하는 대출이라는 점이다. 상환이 실패하면 전체 트랜잭션이, 대출이 아예 없었던 것처럼 롤백된다. 이는 대출자에게 디폴트 리스크를 없애는 동시에, 차입자에게는 막대한 자본에 대한 일시적 접근을 제공한다.
합법적이고 유익한 사용 사례도 설득력이 있다. 차익거래자는 플래시 론을 사용해 거래소 간 가격 비효율성을 교정함으로써 시장 효율성을 개선한다. 트레이더는 한 대출 플랫폼에서 다른 더 나은 조건의 플랫폼으로 담보를 이동시키며 포지션을 재융자(refinance)할 수 있다. 개발자는 개인 자금을 위험에 노출시키지 않고도 청산 메커니즘을 테스트하거나, 프로토콜을 스트레스 테스트할 수 있다. 이러한 활용은 DeFi의 조합성과 자본 효율성을 강화한다.
그러나 플래시 론을 유용하게 만드는 바로 그 특성이, 익스플로잇에도 완벽하게 적합하다. 전형적인 플래시 론 공격 시퀀스를 보자:
1단계 - 차입(Borrow): 공격자는 Aave나 dYdX에서 수백만 달러 상당 토큰을 플래시 론으로 빌리며, 통상 0.09% 이하의 작은 수수료만 낸다.
2단계 - 조작(Manipulate): 빌린 자본을 사용해 목표 프로토콜을 조작한다 — 예를 들어 가격 오라클을 왜곡하거나, 유동성 풀을 고갈시키거나, 재진입(reentrancy) 버그를 악용할 수 있다.
3단계 - 추출(Extract): 조작을 통해 무단 인출이나, 공격자에게 유리한 스왑이 가능해져 이익을 얻는다.
4단계 - 상환(Repay): 공격자는 원금과 수수료를 상환하고, 익스플로잇으로 챙긴 차액을 가져간다.
총 소요 시간: 이 모든 것은 하나의 트랜잭션에서, 종종 몇 초 안에 완료된다. 어느 단계에서든 실패하면 전체 시퀀스가 롤백되므로, 공격자는 아무런 손실도 입지 않는다.
Bunni 익스플로잇은 이 패턴을 전형적으로 보여준다. attacker used flash loans to borrow tokens 후, 스왑을 실행해 풀 가격을 조작하고, 반올림 오차를 악용한 수많은 소액 인출을 수행한 다음, 대출을 상환하고 840만 달러를 챙겼다. 전통 금융에는 이에 상응하는 사례가 없다 — 3,000만 달러를 공짜로 빌려 은행 강도를 시도하되, 잡히면 그 시도 전체가 “없었던 일”이 되는 상황을 상상해 보라.
Chainalysis research가 Euler 공격을 분석한 내용은, 플래시 론이 없었다면 불가능했을 익스플로잇이 어떻게 가능해졌는지를 보여준다. 공격자는 Euler의 대출 비율을 조작하기 위해 일시적으로 3,000만 달러의 자본이 필요했다. 플래시 론이 없었다면, 그러한 자본을 확보하려면 막대한 개인 자산이 필요하거나, 과거 해킹 수익을 복잡하게 세탁해야 했을 것이다. 플래시 론은 진입 장벽을 거의 0으로 낮췄다.
역설은 이렇다. 플래시 론을 금지하거나 강하게 제한하면 DeFi의 핵심 원칙을 훼손하고, 정당한 사용 사례를 없애게 된다. 플래시 론은 원자적(arbitrage) 차익거래를 가능하게 해 DeFi 시장을 효율적으로 유지한다. 자본이 즉각적으로 가장 생산적인 용도로 이동하게 해 준다. 이를 제거하면 유동성이 단절되고 조합성이 떨어지는데, 이는 DeFi 혁신의 핵심 특징을 약화시키는 일이다.
그러나 플래시 론을 허용하는 것은, 자본 집약적인 어떤 취약점이든, 충분한 기술력을 가진 누구나 공격할 수 있게 되는 것을 의미한다. 이 기술은 혁신과 공격 능력을 똑같은 비율로 민주화한다.
일부 프로토콜은 중간 지대를 모색하고 있다. 플래시 론에 시간 지연을 두어 차입자가 여러 블록 동안 자금을 보유하도록 요구하면 원자적 공격은 막을 수 있지만, 차익거래 기회도 사라진다. 거버넌스 승인 화이트리스트로 차입자를 제한하면, 신원 확인된 참여자에게는 기능을 보장하지만 DeFi의 퍼미션리스(permissionless) 정신에 반한다. 극단적 변동성 시 풀을 일시 중지하는 서킷 브레이커는 피해를 줄일 수 있지만, 오탐으로 인해 사용자 경험을 해칠 수 있다.
Aave's documentation은 플래시 론을 “강력한 도구”이자 “주의해서 사용해야 할” 것으로 설명한다. 이 신중한 표현은 딜레마를 인정한다. 도구 자체는 중립적이지만, 그 활용은 사용자의 의도에 따라 유익에서 파괴적까지 스펙트럼 전체를 가로지른다. DeFi는 플래시 론을 되돌려 없앨 수 없고, 그럴 필요도 없다. 오히려 프로토콜은 “무제한 자본으로 가능한 모든 연산은 언젠가 실제로 시도될 것”이라는 가정하에 설계해야 한다.
DeFi 보안 재발명의 시도
지속적인 취약성을 인식한 DeFi 업계는, 전통적인 감사를 넘어서는 새로운 보안 접근법을 실험하기 시작했다.
실시간 위협 모니터링
Forta Network는 지속 모니터링 분야의 최전선을 대표한다. 단 한 번, 배포 전에 코드를 감사하는 대신,Forta는 탈중앙화된 보안 봇 네트워크를 사용해 블록체인 트랜잭션을 실시간으로 모니터링하며, 의심스러운 패턴을 탐지한다. 예를 들어 플래시론 이후 급격한 풀 유출과 같은 비정상 활동이 발생하면 Forta의 봇은 프로토콜 팀과 사용자에게 경보를 보낸다.
이 접근법은 취약점이 존재할 수 있음을 전제하고, 빠른 탐지와 대응에 초점을 맞춘다. 공격을 수 시간 후가 아니라 수초·수분 내에 식별할 수 있다면, 프로토콜은 운영을 일시 중지해 피해를 제한할 수 있다. 여러 프로토콜이 이제 Forta 모니터링을 표준 보안 레이어로 통합하고 있다.
문제는 악의적 활동과 정당한 엣지 케이스 사용을 구분하는 데 있다. 프로토콜 운영을 불필요하게 멈추게 만드는 오탐(false positive)은 사용자 신뢰와 기능성을 갉아먹는다. 공격자가 기법을 진화시키는 만큼, 탐지 알고리즘의 보정에는 지속적인 정교화가 필요하다.
Circuit Breakers and Pause Guards
최근 스마트 컨트랙트는 이상 징후가 발생했을 때 운영을 동결하는 “pause” 기능을 점점 더 많이 도입하고 있다. 이런 서킷 브레이커는 프로토콜 팀이 직접 수동으로 트리거하거나, 비정상적인 거래량, 급격한 유동성 변화, 공격을 시사하는 패턴 인식 같은 사전 정의된 임계값에 따라 자동으로 발동될 수 있다.
GMX는 익스플로잇에 대응하면서, 탐지 직후 문제 기능을 즉시 일시 중지했다. 이는 초기 손실을 막지는 못했지만, 추가 피해를 차단하고 팀이 공격자와 협상할 시간을 벌어주었다. 서킷 브레이커는 프로토콜 전면 붕괴로 이어질 수 있는 익스플로잇을 ‘통제 가능한 사고’ 수준으로 축소한다.
단점은 중앙화다. Pause 기능에는 운영을 멈출 권한을 가진 신뢰된 역할이 필요하며, 이는 DeFi의 트러스트리스 이상과 상충한다. Pause 권한이 탈취되면, 공격자는 프로토콜을 동결시켜 시장을 조작하거나 사용자를 갈취할 수 있다. 보안과 탈중앙화 사이의 균형은 여전히 해결되지 않은 긴장 관계로 남아 있다.
AI-Based Anomaly Detection
인공지능(AI)과 머신러닝은 보안 분야에서 유망한 적용 가능성을 보여준다. 과거 익스플로잇 데이터와 정상적인 프로토콜 동작 패턴을 학습한 모델을 통해, AI 시스템은 사람 분석가나 룰 기반 시스템이 놓칠 수 있는 의심 트랜잭션을 식별할 수 있다.
Hacken's 2025 report는 AI 관련 익스플로잇이 1,025% 증가했다고 지적하면서도, 방어 측면에서 AI의 잠재력 또한 강조했다. AI는 대규모 컨트랙트 상호작용을 분석하고, 수천 가지 엣지 케이스를 시뮬레이션하며, 새로운 익스플로잇이 발생할 때마다 이를 학습해 탐지 성능을 개선할 수 있다.
그러나 AI 보안 자체도 과제가 있다. 적대적 머신러닝(adversarial ML)으로 인해, 공격자는 AI 탐지를 회피하도록 특별히 설계된 익스플로잇을 만들 수 있다. 학습 데이터 편향은 보이지 않는 블라인드 스팟을 남긴다. 또한 일부 AI 의사결정의 “블랙박스” 특성 때문에, 특정 트랜잭션에 경보가 발생한 이유를 이해하기 어려운 경우가 많다.
Continuous Audit Frameworks
런칭 전 일회성 감사를 하는 대신, OpenZeppelin과 Certora 같은 프로젝트는 지속적인 보안 점검을 옹호한다. OpenZeppelin의 Defender 플랫폼은 상시 모니터링과 자동화된 보안 운영을 제공한다. Certora는 코드의 정확성을 수학적으로 증명하는 정형 검증(formal verification) 서비스를 제공한다.
정형 검증은 보안의 골드 스탠다드로 여겨진다. 컨트랙트 동작을 수학적 명세로 표현하고, 정리 증명기를 사용해 코드가 해당 명세를 만족하는지 검증함으로써, 테스트로는 발견이 불가능한 전체 버그 범주를 식별할 수 있다. 예를 들어 Curve의 Vyper 취약점은 재진입 락 동작을 정형 검증했다면 잡을 수 있었을 것이다.
문제는 비용과 복잡성이다. 정형 검증에는 특수한 전문성이 요구되며, 비용이 수십만 달러에 이를 수 있다. 대부분의 DeFi 프로젝트는 이런 수준의 프로세스를 감당하기 어렵다. 또한 정형 검증은 코드가 명세와 일치함을 증명할 뿐이며, 명세에 오류가 있으면(Bunni 사례처럼) 검증 결과는 잘못된 신뢰감을 줄 수 있다.
Bug Bounty Evolution
버그 바운티는 크게 진화했다. Immunefi는 선도적인 Web3 버그 바운티 플랫폼으로, 2025년 기준 연구자들에게 1억 달러 이상을 지급했다. 치명적 취약점에 대한 바운티는 이제 보통 100만~200만 달러를 넘어가며, 일부 프로토콜은 가장 심각한 발견에 최대 1,000만 달러까지 제시한다.
GMX 사례는 새로운 트렌드를 보여주었다. 프로토콜이 공격자에게 사후적으로 바운티를 제안하는 방식이다. 법 집행을 통해 공격자를 추적하는 대신(비용이 많이 들고 느리며, 암호화폐의 가명성 때문에 대개 실효성이 떨어진다), 프로토콜은 “화이트 햇” 딜을 제시한다. 즉, 탈취 자금의 90%를 반환하고 10%는 바운티로 보유하게 하며, 법적 책임을 묻지 않는 식이다.
이런 실용주의적 접근은 전통적 수단으로 자금을 회수하는 것이 거의 성공하지 못한다는 현실을 반영한다. Chainalysis data에 따르면, 법 집행을 통해 회수되는 도난 암호화폐는 약 10%에 불과하다. 정교한 공격자를 범죄자라기보다 버그 바운티 헌터로 대하는 편이 자금 회수율을 크게 높인다.
비판론자들은 이것이 익스플로잇을 장려한다고 주장한다. 중간 수준의 바운티를 받고 버그를 제보할 이유가 뭐가 있느냐, 차라리 수백만 달러를 훔친 뒤 10%만 돌려주고 협상하면 되지 않느냐는 것이다. 반론은 이렇다. 정교한 공격자는 어차피 취약점을 악용해 Tornado Cash 같은 믹서를 통해 세탁할 수 있었고, 바운티는 양측 모두에게 이득이 되는 탈출구(off-ramp)를 제공할 뿐이라는 것이다.
The Blockchain Security Alliance
Blockchain Security Alliance 같은 그룹을 통한 업계 공조는 프로토콜 간 위협 인텔리전스와 모범 사례를 공유하는 것을 목표로 한다. 한 프로토콜이 익스플로잇을 당하면, 공격 세부 정보를 신속히 전파해 다른 프로젝트들이 자신의 코드에 유사 취약점이 있는지 점검할 수 있도록 한다.
이 집단적 접근은 DeFi 보안을 경쟁이 아닌 공유재(commons)로 보고 협력을 요구한다. 그러나 실제 공조는 제한적이다. 프로토콜은 모방 공격이나 평판 손상을 우려해 익스플로잇 세부 정보를 공개하지 않는 경우가 많다. 경쟁 관계에 있는 프로토콜들 사이에서, 진정으로 개방적인 정보 공유를 위한 신뢰를 구축하는 것은 여전히 어렵다.
The Uniswap V4 Effect: Custom Hooks, Custom Risks
Uniswap V4의 2024년 말 런칭은 DEX 아키텍처와 보안 고려 모두에서 패러다임 전환을 의미했다. introduction of hooks를 통해 유동성 풀을 무한히 커스터마이징할 수 있게 되었으며, 개발자는 스왑 전·후, 유동성 추가 전·후 등 풀 라이프사이클의 핵심 지점에 커스텀 로직을 주입할 수 있다.
이 강력한 기능은 엄청난 가능성을 연다. 개발자는 변동성에 따라 조정되는 동적 수수료 구조를 만들 수 있다. 커스텀 가격 곡선, 지정가 주문, 시간 가중 평균 마켓 메이커(TWAMM), 집중 유동성 최적화, 기존 AMM에서는 불가능했던 복잡한 전략을 구현할 수 있다. 각 풀이 단순 설정 가능(configurable)을 넘어, 프로그래머블해지는 셈이다.
Bunni는 이런 잠재력을 잘 보여준 사례였다. Uniswap V4 훅 위에 구축된 Bunni의 Liquidity Distribution Function은, 유동성 공급자의 수익을 최적화하기 위해 고거래량 가격 구간에 자본을 동적으로 배분하려 했다. 이 혁신은 진짜였고, 익스플로잇 이전에 Bunni's technology attracted $60 million in TVL을 끌어모았지만, 복잡성이 결국 치명적 약점이 되었다.
Security firm Hacken's analysis of hooks는 이 아키텍처가 도입한 여러 취약성 카테고리를 지적한다:
Configuration Risks: 훅 권한을 잘못 구성하면 스왑 실패, 서비스 거부(DoS), 예기치 않은 동작이 발생할 수 있다. 훅은 어떤 라이프사이클 지점을 다루는지 정확히 지정해야 한다. 오류가 발생하면 사용자가 풀에 접근하지 못하거나, 무단 접근이 가능해질 수 있다.
Delta Handling: Uniswap V4는 훅이 스왑 실행에 영향을 주는 “델타”(잔액 변화)를 반환하는 커스텀 회계 메커니즘을 사용한다. 델타 계산이 부정확하면 자금 오배분, 조작을 통한 탈취, 스왑 실패를 유발할 수 있다. 요구되는 수학적 정밀도는 일반적인 스마트 컨트랙트 개발 수준을 훨씬 상회한다.
Async Hooks: 일부 훅은 단순히 파라미터를 수정하는 것이 아니라, 동작 중 자산 전체의 커스터디를 직접 보유한다. 이런 “async hooks”는 커스터디 리스크를 가져오는데, 훅 컨트랙트가 탈취되면 자금이 직접적으로 노출된다. 기존 Uniswap은 스왑 전체에서 사용자가 자산 커스터디를 유지하도록 설계됐다. 훅은 이 안전 특성을 깨뜨릴 수 있다.
Access Control: 훅에는 일시 중지, 업그레이드, 파라미터 변경과 같은 특권 함수가 포함될 수 있다. 접근 제어가 취약하거나 키가 유출되면, 공격자는 악성 로직을 주입하거나 자금을 훔칠 수 있다. CertiK analysis는 사용자 자금을 보유하는 업그레이드 가능한 훅의 경우, 업그레이드 권한이 탈취되면 특히 큰 위험이 발생한다고 지적한다.
Composability Explosions: 훅은 외부 컨트랙트와 상호작용할 수 있으며, 이는 의존성 체인을 만든다. 어느 한 외부 시스템의 취약점이라도 훅을 통해 베이스 풀로 전파될 수 있다. 통합 지점이 늘어날수록 공격 표면은 기하급수적으로 커진다.
Bunni의 실패는, 커스텀 유동성 분배 로직에서 델타 핸들링 복잡성에 기인했다. 출금 계산에 사용된 반올림 오류는, 대규모에서 치명적 결과를 초래하는 전형적인 미묘한 수학적 실수였다. 훅은 기존에 없던 코드 패턴을 도입했기 때문에, 전통적 감사는 참조 가능한 취약점 데이터베이스가 없어 이런 문제를 잡기 어려웠다.
Uniswap Foundation's V4 documentation은 보안 고려사항을 강조하면서도, 훅 구현의 책임은 개발자에게 있음을 분명히 한다. Uniswap V4의 코어 컨트랙트는 9회의 독립 감사와 1,550만 달러 규모의 버그 바운티 대회를 거쳤다. 베이스 레이어는 견고하다. 그러나 그 위에 구축되는 Bunni 같은 훅들은 자체적인 보안 수준을 달성해야 하며, 이는 많은 팀에게 여전히 큰 도전 과제다.to meet.
후크 기반 프로토콜의 확산은 작은 프로젝트들의 롱테일을 만들어낸다. 각각이 개별적인 감사를 필요로 하는 맞춤형 로직을 가지기 때문에, 보안 관점에서 주의가 소수의 핵심 프로토콜에 집중되기보다 수십, 수백 개의 구현체로 분산된다. 이러한 다양성은 혁신을 가능하게 하지만, 동시에 위험을 기하급수적으로 증가시킨다.
일부 보안 연구자들은, 개발자들이 올바른 구현 방식에 대해 값비싼 교훈을 배우는 과정에서 2025년과 2026년에 후크로 인해 새로운 형태의 익스플로잇(공격)이 대거 발생할 것이라고 예측한다. 다른 이들은 OpenZeppelin's hook implementations 같은 라이브러리를 통한 공통 후크 패턴의 표준화가 결국 혁신 리스크를 줄여 줄 수 있는 안전한 빌딩 블록을 만들어 낼 것이라고 믿는다.
법률, 보험, 정책적 측면
DeFi 손실이 늘어남에 따라 규제 및 위험 이전(risk-transfer) 메커니즘이 등장하고 있지만, 그 효율성은 여전히 불확실하다.
규제 압력
유럽연합의 암호자산시장규제(MiCA)는 2024년에 전면 시행되었으며, 암호화폐 서비스 제공자에 대한 인가 요건과 운영 기준을 마련한다. MiCA는 주로 중앙화 거래소와 커스터디 업체를 대상으로 하지만, 운영 회복력과 보안 기준에 관한 조항은 DeFi 프로토콜에도 간접적인 압력을 가한다.
국제자금세탁방지기구(FATF)는, 관리자 키나 수수료 스위치 같은 중앙화된 통제 요소를 가진 DeFi 프로토콜은 전통 금융 중개기관과 유사하게 규제되어야 한다는 가이던스를 업데이트했다. 이는 보안을 위해 어느 정도의 관리 권한이 필요한 상황(일부 중앙집중화)과, 규제 회피를 위해 완전한 탈중앙화를 지향해야 하는 상황 사이에서 균형을 맞추려는 프로젝트에 법적 불확실성을 초래한다.
미국 규제 당국은 이보다 일관성이 떨어지며, SEC와 CFTC가 관할권을 두고 경쟁하는 와중에 준수 요건에 대한 명확한 기준은 거의 제시하지 않고 있다. 이러한 규제의 모호성은 역설적으로 보안 투자를 저해한다. 프로토콜의 법적 지위가 불분명한 상황에서, 창업자들은 비즈니스 모델 자체가 불법으로 간주될지도 모르는 마당에 규정 준수와 보안에 자원을 쓰기를 주저한다.
온체인 보험
Nexus Mutual, Sherlock Protocol, Risk Harbor 등은 스마트 컨트랙트 리스크에 대한 탈중앙화 보험을 개척해 왔다. 사용자는 특정 프로토콜 익스플로잇에 대한 보장(coverage)을 구매할 수 있다. 익스플로잇이 발생하면 보험 풀은 보험료와 자본 기여로 조성된 자금에서 클레임을 지급한다.
이러한 보험 프로토콜도 자체적인 난관에 직면해 있다. 급속히 진화하는 환경에서, 제한된 과거 데이터만으로 리스크를 정확히 가격 책정하는 일은 매우 어렵다. Nexus Mutual의 손해율(loss ratio)은 매우 변동적이었는데, 클레임이 거의 없는 시기도 있었지만, 대규모 지급으로 풀의 준비금이 압박받는 시기도 있었다.
Sherlock의 모델은 보안 전문가들이 언더라이터로서 자본을 스테이킹하도록 하여 이 문제를 해결하려 한다. 전문가들은 프로토콜을 감사하고, 자신의 평가가 정확하다는 데 자금을 건다. 만약 그들이 취약점을 놓쳐 실제 익스플로잇이 발생하면, 그들의 스테이크가 클레임 지급에 사용된다. 이는 이해관계를 정렬하는 방식이며, Sherlock이 Euler 사건에서 450만 달러를 지급한 사례가 이를 잘 보여준다. 감사 과정에서 취약점을 발견하지 못한 대가로 Sherlock 스테이커들이 손실을 떠안은 셈이다.
그러나 보험은 여전히 틈새 시장에 머물러 있다. According to DeFi Llama data에 따르면, DeFi 보험 프로토콜 전반의 예치 자산(TVL)은 약 5억 달러 수준으로, DeFi 전체 TVL의 0.1%도 되지 않는다. 대부분의 사용자는 보험에 가입하지 않은 상태인데, 이는 무지, 비용, 혹은 “나는 익스플로잇의 피해를 보지 않을 것”이라는 믿음 때문일 수 있다.
법적 책임에 대한 질문
철학적이면서도 법적인 질문이 떠오른다. DeFi 프로토콜은 과실(negligence)에 대해 법적 책임을 져야 하는가? 전통 금융기관은 보안 실패에 대해 소송과 규제 처벌의 대상이 된다. 감사까지 거쳤지만 결국 취약했던 코드를 배포한 개발자도, 이와 유사한 책임을 져야 하는가?
책임을 묻자는 주장은 사용자 보호와 보안 투자 유인을 근거로 한다. 개발자가 부주의한 설계에 대해 아무런 결과를 감수하지 않아도 된다면, 그 위험은 사용자에게 전가된다. 법적 책임은 이러한 비용을 개발자에게 되돌려, 보다 철저한 보안 관행을 장려할 수 있다.
반대 측 주장은 혁신 저해와 오픈소스 정신과의 충돌을 우려한다. DeFi 프로토콜은 종종 이용 약관을 통해 사용자에게 리스크를 고지하고, 책임을 명시적으로 부인(disclaim)한다. 비의도적인 취약점에 대해서까지 개발자에게 책임을 묻는다면, Web3 전체에서 인재가 이탈하는 결과를 낳을 수 있다. 더불어, 상당수 프로토콜은 진정으로 탈중앙화되어 있어, 법적으로 누구를 책임 주체로 삼을지조차 불명확하다.
Bunni 사례는 이러한 긴장을 잘 보여준다. 여섯 명으로 구성된 팀은 수년에 걸쳐 프로토콜을 개발했고, 전문 감사도 받았으며, 익스플로잇으로 자신들이 투자한 자본도 모두 잃었다. 여러 전문가가 모두 놓친 로직 오류에 대해, 그들이 법적 책임을 져야 할까? 아니면 최첨단 기술 영역에서 정직한 실수를 한 이들을 처벌하는 것이 곧 혁신을 처벌하는 것에 불과한가?
이러한 질문들은, 수 세기에 걸쳐 형성된 법체계가 탈중앙 네트워크에 맞춰 적응하는 과정에서 아직 거의 답을 찾지 못한 상태다.
온체인 안전의 미래
앞으로 10년 동안 DeFi 보안을 재편할 수 있는 여러 흐름이 보인다.
검증 가능한 보안 표준
업계는 테스트에 의존하는 대신, 정형 검증(formal verification)과 수학적 증명을 통해 컨트랙트 동작을 보장하는 “증명 가능한 정합성(provable correctness)” 방향으로 나아가고 있다. Runtime Verification과 Certora는 정형 검증을 더 많은 프로젝트가 이용할 수 있도록 하는 도구를 개발 중이다.
미래에는, 컨트랙트가 특정 보안 속성에 대한 암호학적 증명(프로of)을 함께 제공하는 모습을 상상할 수 있다. 사용자는 상호작용에 앞서 이러한 주장을 검증할 수 있으며, 이는 웹사이트 신원을 입증하는 SSL 인증서와 비슷한 역할을 한다. 이러한 증명이 없는 프로토콜은 시장의 의심을 살 것이고, 이는 엄격한 검증을 도입하도록 하는 압력으로 작용할 것이다.
이를 위해서는 보안 속성과 검증 방법론의 표준화가 필요하다. Ethereum Foundation과 같은 조직이 이러한 표준을 마련하기 위해 노력하고 있지만, 광범위한 채택까지는 아직 수년이 걸릴 것으로 보인다.
탈중앙화 보안 레이어
“DeFi Security Layer”라는 제안은 다른 프로토콜들을 모니터링하는 메타 프로토콜을 통해 체계적인 감독을 제공하자는 것이다. 각 프로토콜이 자체 보안을 구현하는 대신, 공유 인프라가 이상 징후를 탐지하고, 대응을 조율하며, 정보 공유를 촉진하는 구조다.
이는 전통 금융의 리스크 관리 인프라, 예를 들면 신용평가사, 감사인, 규제 기관, 보험사가 서로 중첩된 보안 기능을 제공하는 구조와 유사하다. DeFi 역시 탈중앙 맥락에 맞게 조정된 다층 방어체계를 필요로 한다.
과제는 이 보안 레이어 자체가 단일 실패 지점(single point of failure)이 되지 않도록 하는 것, 탈중앙화를 유지하면서도 효과적인 감독을 구현하는 것, 그리고 이러한 인프라를 위한 지속 가능한 경제 모델을 만드는 것이다.
경쟁을 통한 진화적 보안
궁극적으로는 시장 메커니즘이 규제보다 더 효과적으로 보안을 개선할 수도 있다. 사용자가 점점 더 정교해지고, 익스플로잇 손실이 누적되면서, 자본은 강력한 보안 실적을 가진 프로토콜로 이동할 것이다. 보안에 과감히 투자한 프로토콜은 위험을 인식하는 유동성을 끌어들이는 데 있어 경쟁 우위를 확보하게 된다.
이러한 진화 과정은 이미 나타나고 있다. Aave는 엄격한 보안 관행을 통해 주요한 익스플로잇을 피하며, 보안 이력이 불안정한 경쟁사보다 훨씬 높은 TVL을 확보하고 있다. 사용자는 점점 더 자본을 투입하기 전에 감사 보고서와 보안 평가를 확인하기 시작했다.
하지만 이 과정은 느리고 고통스럽다. 수많은 파국적인 실패를 통해서야 교훈이 쌓인다. 업계는 수십억 달러를 한 번에 날려버리고, DeFi의 생존 가능성에 대한 대중의 신뢰를 완전히 깨뜨릴 정도의 초대형 익스플로잇을 견디지 못할 수도 있다.
AI 기반 방어
인공지능은 공격과 방어 모두에서 점점 더 중요한 역할을 하게 될 가능성이 크다. AI는 컨트랙트 코드를 분석해 취약점을 찾고, 익스플로잇 시나리오를 시뮬레이션하며, 의심스러운 트랜잭션 패턴을 모니터링하고, 특정 유형의 취약점에 대해서는 자동 패치를 수행할 수도 있다.
반대로, 공격자도 AI를 활용해 취약점을 찾고 익스플로잇을 설계할 것이다. 이는 양측이 점점 더 정교한 도구를 사용하는 군비 경쟁을 낳는다. 균형은 아마 고정되지 않고, 새로운 AI 역량이 등장할 때마다 방어자와 공격자가 이를 차례로 활용하며 계속해서 출렁일 것이다.
리스크 인식 설계로의 전환
가장 근본적인 변화는 문화적 차원에 있다. 완벽한 보안은 불가능하다는 사실을 받아들이고, 불가피한 실패에 대해 회복력을 갖춘 시스템을 설계하는 방향으로의 전환이 필요하다.
이는 다음을 의미한다:
- 피해 범위 제한(blast radius 제한): 하나의 풀에서 익스플로잇이 발생해도, 다른 풀은 영향을 받지 않도록 설계
- 점진적/우아한 실패(graceful degradation): 프로토콜이 붕괴적으로 망가지기보다는, 안전한 형태로 기능이 축소되며 실패하도록 설계
- 신속한 복구 메커니즘: 동결된 자금을 해제하거나 손실을 재분배하는 절차 마련
- 투명한 리스크 커뮤니케이션: 사용자가 자신이 감수하는 리스크를 명확히 이해할 수 있도록 설명
DeFi는 그동안 “트러스트리스(trustless)”를 “기본적으로 안전함”과 동일시해 온 경향이 있다. 보다 성숙한 관점에서는 “트러스트리스”를 “신뢰 가정이 투명하게 드러난 상태”로 본다. 사용자는 그러한 정보를 바탕으로 어떤 리스크를 감수할지 스스로 판단할 수 있어야 한다.
Bunni와 그 이후로부터의 교훈
Bunni DEX의 셧다운은 또 하나의 DeFi 실패 사례 이상의 의미를 가진다. 이는 2025년의 탈중앙 금융을 특징짓는, 야심과 실행력 사이의 지속적인 간극을 상징한다.
이 프로토콜의 이야기는 몇 가지 냉정한 교훈을 담고 있다. 첫째, 혁신과 리스크는 분리할 수 없다. Bunni의 유동성 분배 함수(Liquidity Distribution Function)는 자동화 마켓 메이커 설계 측면에서 진정한 진보를 보여줬다. 그 복잡성이 Bunni를 혁신적으로 만들었지만, 동시에 취약하게도 만들었다. 혁신을 추구하면서도 리스크를 높이지 않을 명확한 길은 없으며, 업계는 이를 감추려 하지 말고, 감사 배지 뒤에 숨기기보다는 공개적으로 인정해야 한다.
둘째, 감사는 제한된…protection. Trail of Bits와 Cyfrin은 수많은 프로토콜에서 수십억 달러 규모의 가치를 보호해 온 신뢰받는 기업들이다. 그들이 Bunni의 취약점을 잡아내지 못한 것은 무능 때문이 아니라, 감사 방법론 자체의 근본적인 한계를 보여준다. 논리·의미 수준의 버그는 전통적인 감사 방식을 계속해서 피해갈 것이다. 업계는 감사 외에 추가적인 보안 계층을 필요로 한다.
셋째, DeFi 보안의 경제학은 여전히 붕괴된 상태다. Bunni는 안전하게 재런칭하는 데 필요한 수십만~수백만 달러의 비용을 감당할 수 없었다. 그러나 업계 전체로는 매년 수십억 달러가 익스플로잇으로 사라진다. 이 괴리는, 전체 손실 규모를 보면 막대한 보안 투자가 정당화됨에도 개별 프로젝트 수준에서는 보안 투자가 과소하게 이뤄지는 구조적 시장 실패를 시사한다. 해결책은 공유 보안 인프라, 공동 보험, 규제 요건 같은 일종의 집단적 행동을 필요로 할 가능성이 크다.
넷째, 인간 요인이 기술적 요인보다 더 큰 비중을 차지한다. Bunni 팀은 유능하고 선의였다. 모범 사례를 따랐고 감사에도 투자했다. 실패의 원인은 악의나 무능이 아니라, 실수 없이 복잡한 시스템을 구축하는 일 자체가 지닌 난이도였다. 개인을 비난하는 것은 핵심을 놓치는 일이다. 시스템 그 자체가, 인간이 발견하고 패치할 수 있는 속도보다 더 빠르게 취약점을 만들어 내고 있기 때문이다.
As Doug Colkitt noted about the KyberSwap exploit, 일부 공격은 근본적인 아키텍처 변화 없이는 차단이 불가능할 정도의 정교함에 도달한다. KyberSwap 공격자는 프로토콜 자체 개발자에 필적하는 전문성을 보여 주었다. 공격자와 방어자의 실력이 비슷해지면 방어자는 비대칭적인 열세에 놓인다. 방어자는 모든 가능한 공격을 선제적으로 예측해야 하지만, 공격자는 단 하나의 간과된 틈만 찾으면 되기 때문이다.
2025년의 익스플로잇 전반에서 반복적으로 나타난 패턴은 다음과 같다.
플래시 론의 ‘힘 증폭’ 역할: 거의 모든 대형 익스플로잇이 플래시 론을 활용해 공격 효과를 증폭시켰다. 합법적 기능을 제거하지 않으면서 플래시 론 남용을 막을 더 나은 메커니즘이 등장하기 전까지 이 공격 벡터는 계속 남을 것이다.
조합성(Composability)이 초래하는 누적 리스크: 수많은 외부 시스템과 연동하는 프로토콜은 그들이 가진 모든 취약성을 함께 상속받는다. Euler 사태로 Balancer, Angle, Idle Finance까지 연쇄 피해를 입은 사례는, 상호 연결된 DeFi가 손실을 어떻게 증폭시키는지 잘 보여 준다. 프로토콜 간 더 나은 격리와, 더욱 견고한 실패 모드가 필요하다.
컴파일러 신뢰 문제: Curve의 Vyper 취약점은, 프로토콜 레벨의 코드가 완벽해도 하위 도구에 버그가 있으면 실패할 수 있음을 보여 주었다. 업계는 애플리케이션 수준의 컨트랙트뿐 아니라, 컴파일러·라이브러리·개발 프레임워크까지 스택 전체 보안에 투자해야 한다.
신속 대응의 중요성: 화이트햇 바운티를 제안해 자금을 회수한 GMX와, 취약점을 선제적으로 공개한 Balancer의 사례는, 빠르고 투명한 대응이 피해를 줄이고 사용자 신뢰를 유지할 수 있음을 보여 줬다. 프로토콜은 위기 대응 절차와 커뮤니케이션 전략을 사전에 준비해 두어야 한다.
짧은 시장 기억력: 반복적인 익스플로잇에도 DeFi는 성장세를 이어 가고 있다. 수십억 달러의 손실에도 불구하고 Total value locked recovered to over $90 billion by mid-2025 수준까지 회복되었다. 이는 사용자들이 리스크를 이 공간의 본질적 특성으로 받아들이거나, 참여자 다수가 과거 실패에 대한 역사적 인식이 부족함을 시사한다. 어느 쪽이든 생태계의 장기 건강성 측면에서는 우려스럽다.
주요 인물들의 발언을 보면, 그림은 복합적이다. Hayden Adams, Uniswap의 창업자는 보안을 “최우선(first-class) 관심사”로 삼아야 한다고 강조해 왔다. 그러나 그의 V4 아키텍처 역시 광범위한 감사를 거쳤음에도, 훅(hook)을 통해 새로운 공격 표면을 도입한다. 혁신과 리스크는 여전히 결합되어 있다.
아마도 Web3에서 가장 존경받는 보안 연구자인 Samczsun은, DeFi의 복잡성이 그 보안 인프라의 역량을 이미 초과했다고 여러 차례 경고했다. 그가 주요 프로토콜 전반에서 수많은 취약점을 발견한 작업은, 문제가 얼마나 광범위한지와 동시에 숙련된 보안 연구자가 얼마나 필수적인 존재가 되었는지를 모두 보여 준다.
궁극적인 질문은 여전히 미해결 상태로 남아 있다. DeFi는 정말로 ‘완전히 안전한’ 상태에 도달할 수 있을까, 아니면 그 개방성 자체가 안전성과 근본적으로 양립 불가능한 것일까? 전통 금융은 게이트키핑, 규제, 중앙집중적 통제를 통해 보안을 이룬다. DeFi는 개방성, 퍼미션리스, 탈중앙화를 지향한다. 시스템이 더 개방적이고 조합 가능해질수록 필연적으로 더 취약해질 수밖에 없다는 점에서, 이 목표들은 수학적으로 모순될지도 모른다.
어쩌면 올바른 질문은 “DeFi를 완전히 안전하게 만들 수 있는가?”가 아니라 “DeFi가 제공하는 이점에 비해 어느 정도 수준의 불안정성이 수용 가능한가?”일 것이다. 2025년의 사용자들은 검증된 위험에도 불구하고 검열 저항성, 글로벌 접근성, 새로운 금융 프리미티브를 가치 있게 여기며 DeFi를 선택하고 있다. 그들은 이러한 혜택의 대가로 취약성을 감수하겠다는, 때로는 충분히 정보에 입각하지 못한 결정을 내리고 있다.
DeFi가 성숙해지기 위해서는, 사용자가 자신이 무엇을 감수하는지 더 명확히 이해할 수 있어야 한다. 프로토콜은 보안 지표를 눈에 잘 띄게 표시해야 한다. 감사 보고서, 마지막 보안 검토 이후 경과 시간, 알려진 엣지 케이스에 따라 위험에 노출된 TVL, 이용 가능한 보험 범위 등이 그것이다. 시장은 이렇게 해서야 비로소 리스크를 적절히 가격화할 수 있고, 모든 프로토콜을 똑같이 안전한 것처럼 취급하지 않게 된다.
개발자들은 완벽한 보안은 불가능하다는 사실을 받아들이고, 실패를 전제로 설계해야 한다. 회로 차단기(circuit breaker), 자금 격리, 업그레이드 경로, 복구 메커니즘은 선택 사항이 아니라 기본 기능이 되어야 한다. 질문은 “어떻게 모든 익스플로잇을 막을 것인가?”에서 “피할 수 없는 익스플로잇이 발생했을 때 피해를 어떻게 최소화할 것인가?”로 이동해야 한다.
결론: 실제로 무엇이 바뀌어야 하는가
2025년 상반기에 사라진 31억 달러는 단순한 숫자가 아니다. 이는 삶의 붕괴, 신뢰의 파괴, 혁신의 위축을 의미한다. 매번의 익스플로잇은 대중 채택을 더 멀어지게 만들고, 궁극적으로 혁신을 질식시킬 수도 있는 강경 규제를 정당화하는 논리에 힘을 실어 준다.
사용자에게 내려질 처방은 분명하지만 만족스럽지는 못하다. 모든 프로토콜에 취약점이 존재한다고 가정하고, 여러 플랫폼에 자산을 분산하고, 과거 익스플로잇 이력을 주시하고, 보험이 있다면 활용하며, 잃어도 되는 돈만 넣어야 한다. 현재 상태의 DeFi는, 자신이 진행 중인 실험에 참여하고 있다는 사실을 이해하는 높은 위험 선호 이용자를 위한 공간이다.
개발자에게 주어진 과제는, 보안을 사후 고려 요소가 아니라는 사실을 받아들이는 것이다. 프로토콜은 전체 개발 비용의 20~30%를 보안에 배정해야 할지도 모른다. 여기에는 복수의 독립된 감사, 가능한 경우의 형식 검증, 지속적인 모니터링, 신속 대응 역량, 정기적인 보안 업데이트가 포함된다. 이러한 수준의 투자를 감당할 수 없는 프로젝트는, 과연 존재해야 하는지 스스로 물어야 한다.
업계 전체 차원에서는, 조정과 협력이 필수적이다. 공유 보안 인프라, 표준화된 감사 방법론, 취약점에 대한 개방적 커뮤니케이션, 공동 보험 메커니즘은 개별 프로젝트의 보안 투자가 지속적으로 부족해지는 시장 실패를 완화하는 데 기여할 수 있다. 실제로 작동하는 탈중앙금융을 구현하기 위해서는, 어느 정도의 보안 기능 ‘중앙화’가 필요할지도 모른다.
규제 당국은 전통 금융 규제를 그대로 DeFi에 적용하고 싶은 유혹을 느끼겠지만, 혁신에는 일정 수준의 위험 감수성이 필요하다는 사실을 인식해야 한다. ‘똑똑한’ 규제는 사용자에게 리스크를 이해할 수 있는 투명성 요건, 그리고 명백한 과실이 있을 때 책임을 물을 수 있는 프레임워크에 초점을 맞춰야 한다. 과도한 금지 조치는 DeFi를 규제 사각지대로 몰아갈 뿐이고, 결과적으로 상황을 더 악화시킬 것이다.
Bunni 팀의 마지막 성명은 이 비극을 잘 담고 있다. “우리는 DeFi에서 빌드하고 업계를 전진시키는 데 열정을 가진 6명의 작은 팀입니다. 우리는 Bunni를 출시하기 위해 수년의 시간과 수백만 달러를 쏟아부었습니다. AMM의 미래가 Bunni라고 굳게 믿기 때문입니다.” 이 믿음은 결국 옳을지도 모른다. 자동화 마켓 메이커는 언젠가 수조 달러 규모의 가치를 처리할 수 있다. 하지만 지금 여기에서 그 지점에 이르기까지는, 업계 최고 수준의 인재들조차 아직 풀지 못한 보안 과제를 해결해야 한다.
2025년의 남은 시간과 2026년을 향해 가는 동안, 관건은 DeFi가 점점 더 정교해지는 익스플로잇에 생태계 전체가 압도당하기 전에 충분히 빠른 속도로 성숙할 수 있느냐는 것이다. 신뢰 없는 금융을 가능케 하는 기술은 동시에 중앙화 시스템이 겪지 않았던 새로운 취약점도 만들어 낸다. 어쩌면 이것은 피할 수 없는 트레이드오프일지 모른다. 혹은 형식 검증의 돌파구, AI 기반 방어, 보안 인프라의 발전이 언젠가 저울추를 안전 쪽으로 기울게 할지도 모른다.
확실한 것은, 현재처럼 매년 수십억 달러가 사라지는데도 보안이 여전히 후순위에 머무르는 궤적은 지속 불가능하다는 점이다. DeFi는 진화하지 않으면 도태될 것이다. 탈중앙 금융이 인류의 금융 미래를 의미하게 될지, 아니면 신뢰 없는 시스템을 신뢰가 여전히 중요한 세상에 구축하려다 실패한 또 하나의 실험으로 남을지는, 결국 개발자·사용자·투자자들이 어떤 선택을 하느냐에 달려 있다.




