DeFi 생태계 안전 전경

BlockSec
2024-08-30 17:14:51
수집
이 문서에서는 DeFi 보안 전경을 이해하기 위해 프로토콜의 출시 전(Pre-Launch), 출시 운영(Post-Launch), 공격 대응(Attack Response) 단계에서 취할 수 있는 보안 조치를 살펴보겠습니다.

저자: BlockSec

서론

DeFi의 발전이 금융 환경을 지속적으로 재편함에 따라, 안전성은 DeFi 생태계가 직면한 주요 도전 과제가 되고 있으며, 매년 수십억 달러의 자산 손실을 초래하는 안전 문제입니다.

Chainalysis의 데이터에 따르면, 2023년 DeFi 해킹 공격으로 인해 11억 달러 이상의 자산 손실이 발생했습니다. 이 숫자는 2022년에 비해 감소했지만, 2023년에는 새로운 DeFi 공격 트렌드가 나타났습니다. 예를 들어, Curve와 KyberSwap과 같은 오랜 기간 안전하게 운영되어 온 유명 프로토콜도 공격을 받았습니다. 또한 Flashbots Relay와 같은 인프라 취약점을 겨냥한 복잡한 공격도 발생했습니다.

Security Incident Dashboard 데이터에 따르면, 2024년 상반기에는 10만 달러 이상의 손실을 초래한 해킹 사건이 50건 이상 발생했습니다.

이미지

최근 해킹 사건
(출처: Security Incident Dashboard) https://app.blocksec.com/explorer/security-incidents

안전성은 DeFi 프로토콜의 발전에 필수적입니다. 일부 프로토콜은 수십억 달러의 사용자 자산을 관리하고 있으며, 안전 사건은 사용자에게 중대한 손실을 초래할 수 있습니다. 특정 경우에는 도난당한 자금을 (부분적으로) 회수할 수 있지만 (예: Euler 공격 사건), 우리는 이 희망에 전적으로 의존할 수 없습니다. 매번 공격 사건은 사용자들의 DeFi에 대한 신뢰를 약화시키고 있습니다.

업계에서는 안전성을 강화하기 위한 많은 조치를 제안했지만, DeFi의 안전성은 여전히 큰 개선 여지가 있습니다. 긍정적인 측면에서, 코드 감사는 커뮤니티의 공감대를 얻었으며, 대부분의 프로토콜은 출시 전에 감사를 수행하여 스마트 계약 취약점으로 인한 공격 위험을 줄이는 데 도움이 됩니다. 그러나 코드 감사만으로는 모든 안전 문제를 해결하기에는 부족합니다. 코드 감사는 계약 업그레이드, 구성 변경 및 외부 의존성으로 인해 발생하는 취약점으로 인한 공격을 방지할 수 없습니다. 이러한 한계를 감안하여 일부 프로토콜은 운영 모니터링 및 공격 탐지 시스템과 같은 보다 적극적인 솔루션을 채택하기 시작했습니다.

이 문서에서는 프로토콜이 출시 전(Pre-Launch), 출시 운영(Post-Launch), 공격 대응(Attack Response) 단계에서 취할 수 있는 안전 조치를 살펴보아 DeFi 안전성의 전반적인 상황을 이해하고자 합니다. 우리는 각 유형의 안전 조치 및 주요 공급업체/제품과 그 장단점을 자세히 설명할 것입니다. 이 문서가 커뮤니티가 DeFi 안전 현황을 더 잘 이해하고 혁신적인 안전 솔루션에 대한 영감을 주는 데 도움이 되기를 바랍니다.

DeFi 안전 전경

DeFi 프로토콜의 안전 조치는 프로토콜 출시 전부터 출시 후까지의 전체 생애 주기에 걸쳐 이루어져야 하며, 프로토콜 자체와 운영 기간의 안전성을 보장해야 합니다. 또한 잠재적 공격에 대한 예방 조치와 대응 계획을 사전에 배치하는 것도 매우 중요합니다. 독자가 현재 어떤 DeFi 안전 솔루션이 있는지 명확히 이해할 수 있도록 관련 공급업체(제품)를 다음과 같이 분류하였습니다.

Pre-Launch Security

이미지

프로토콜 출시 전에 취할 수 있는 안전 조치에는 코드 감사, 형식 검증 및 안전 테스트가 포함됩니다.

코드 감사 서비스 및 경연

코드 감사는 커뮤니티에서 프로토콜 안전을 보장하는 방법으로 인정받고 있습니다. 이 과정에서 보안 회사는 동결된 코드를 반자동으로 검토하며, 코드 내의 일반적인 취약점을 자동으로 스캔하고 복잡한 취약점은 수동으로 검토합니다. 대표적인 감사 회사로는 OpenZeppelin, ChainSecurity, BlockSec 등이 있습니다.

또한 감사 경연 플랫폼도 있습니다. 직접 감사 서비스를 제공하는 감사 회사와는 달리, 이러한 플랫폼은 감사 요구 사항을 공개적으로 발표하여 커뮤니티의 보안 연구원들이 감사 경연에 참여하도록 유도하고, 프로토콜의 취약점을 발견한 참가자에게 보상을 분배합니다. 감사 경연 플랫폼에는 Code4rena, SHERLOCK, Cantina, Secure3 등이 있으며, 각 플랫폼은 취약점 심각도, 보상 분배 및 참여 기준에서 차이가 있습니다.

코드 감사는 프로토콜 안전의 첫 번째 방어선입니다. 그러나 몇 가지 한계가 있으며, 이는 유명 회사가 감사한 프로토콜조차도 해킹 공격을 피하지 못하는 이유입니다.

  • 첫째, 정적 코드 감사는 프로토콜 의존성으로 인해 발생하는 안전 문제를 해결할 수 없으며, DeFi 프로토콜의 조합 가능성이 이를 더욱 악화시킵니다.

  • 둘째, 코드 감사 과정에서 일부 문제는 충분한 주의를 받지 못합니다. 예를 들어, 정밀도 손실은 일반적인 문제로, 감사자와 프로토콜 측에서 간과될 수 있습니다. Hundred Finance와 Channels Finance 사건이 발생한 후에야 커뮤니티는 정밀도 손실의 안전 영향을 충분히 인식하게 되었습니다.

  • 마지막으로, 고품질 코드 감사는 여전히 부족한 자원이며, 안전, 금융 및 컴퓨터 과학 지식을 갖춘 다학제 인재가 필요하지만, 현재 지속적이고 대규모로 이러한 인재를 제공할 수 있는 대학은 거의 없습니다. 따라서 일부 프로토콜은 감사를 받았음에도 불구하고 감사 서비스를 제공하는 감사자의 전문성이 부족합니다.

형식 검증

"형식 검증은 특정 형식 규범이나 속성을 기반으로 시스템의 정확성 또는 부정확성을 수학적 방법으로 증명하는 것입니다." 형식 검증은 DeFi 프로토콜의 동작이 형식 규범에 부합하는지 확인할 수 있습니다. 예를 들어, Certora가 개발한 Prover는 DeFi 프로토콜에 대한 형식 검증을 수행할 수 있습니다. 개발자는 규칙(규범)을 제공하고, Prover는 가능한 모든 프로그램 상태를 탐색하여 결과를 규칙과 비교함으로써 취약점을 식별합니다. 형식 검증의 가장 큰 장점은 수학적 증명을 통해 수십억 자산을 관리하는 DeFi 프로토콜의 정확성을 보장할 수 있다는 점입니다. 그러나 실제 적용에서의 몇 가지 제한 사항이 광범위한 채택을 저해하고 있습니다.

  • 첫째, 규범은 개발자가 제공해야 하며, 이는 개발자가 프로토콜의 예상 동작에 대한 상세한 문서 설명을 요구합니다. 그러나 대부분의 개발자는 이 분야의 전문가가 아닙니다.
  • 둘째, 프로토콜의 빈번한 업그레이드는 규범을 업데이트하고 프로토콜을 재평가해야 할 수 있으며, 일부 프로토콜은 이처럼 많은 시간과 노력을 들일 수 없습니다. 이러한 제한이 있음에도 불구하고, 우리는 프로토콜이 형식 검증을 수행해야 한다고 생각합니다. 특히 시간이 검증되지 않았고 많은 사용자 자산을 관리하는 새로운 프로토콜의 경우 더욱 그렇습니다. 그러나 형식 검증의 실행 가능성을 높이고 채택률을 향상시키는 방법은 여전히 큰 도전 과제입니다.

안전 테스트

안전 테스트는 테스트 케이스를 통해 프로토콜 내의 잠재적 문제를 발견합니다. 수학적 방법으로 프로토콜의 정확성을 증명하는 형식 검증에 비해, 안전 테스트는 일반적으로 구체적인 입력 데이터(형식 검증의 기호 입력이 아님)를 사용하므로 효율성이 더 높지만 포괄성은 다소 낮습니다.

Foundry는 매우 인기 있는 스마트 계약 개발 테스트 프레임워크입니다. 개발자는 Foundry에서 테스트를 실행할 수 있으며, DeFi 프로토콜에 대한 차별 테스트, 불변성 테스트 및 차이 테스트를 수행할 수 있습니다. 다른 안전 테스트 도구로는 Tenderly와 Hardhat이 있습니다.

Post-Launch Security

이미지

프로토콜 출시 후 취할 수 있는 안전 조치에는 Bug Bounty, 공격 탐지 및 운영 모니터링이 포함됩니다.

Bug Bounty

Bug Bounty는 프로토콜과 보안 연구원 간의 다리를 놓습니다. 프로토콜은 Bug Bounty 플랫폼에 보상 계획을 발표하고 보상 범위 및 금액을 상세히 설명하며, 보안 연구원은 프로토콜의 제로데이 취약점을 보고하여 보상을 받을 수 있습니다. Immunefi는 대표적인 Web3 Bug Bounty 플랫폼입니다.

공격 탐지

공격 탐지 플랫폼은 거래를 스캔하여 악의적인 거래를 식별합니다. 구체적으로, 이러한 플랫폼은 프로토콜과 상호작용하는 각 거래를 스캔하여 악의적인 행동을 찾고, 악의적인 거래를 식별한 후 시스템이 경고를 발동합니다.

예를 들어, BlockSec Phalcon은 각 메모리 풀 및 체인 상 거래를 스캔하여 거래의 행동 특성을 분석하여 악의적인 행동(예: 악의적인 계약, 악의적인 제안)을 식별합니다. 이는 마치 보안 경비원이 되어 각 거래의 모든 세부 사항을 모니터링하며 비정상적인 동향을 찾는 것과 같습니다. 이 거래들에서 행동 패턴을 추출하고 금융 모델(은행이 사기를 탐지하는 데 사용하는 모델과 유사)을 사용하여 잠재적 공격을 식별합니다. 유사한 시스템으로는 Hypernative와 Hexagate에서 제공하는 제품이 있습니다. 또한 Ironblocks의 Venn Security Network는 여러 출처의 탐지 결과를 집계할 수 있는 분산형 인프라를 제공합니다.

운영 모니터링

말 그대로 운영 모니터링 프레임워크는 프로토콜 출시 후 운영 안전을 모니터링합니다. 예를 들어, 관리자 키 변경 상황, 스마트 계약의 배포 및 업데이트를 실시간으로 파악하고, 자동으로 풀 리퀘스트 내의 안전 취약점을 감지합니다. OpenZeppelin Defender 플랫폼은 개발자가 스마트 계약을 안전하게 작성, 배포 및 실행하는 데 도움을 줄 수 있습니다. BlockSec Phalcon은 계약 업그레이드, Safe 지갑 거래(예: 시작, 새 서명, 실행), 접근 제어 및 거버넌스 관련 위험을 모니터링할 수 있습니다. 또한 실시간 모니터링 시스템 Forta Network를 통해 사용자는 프로토콜을 모니터링하는 로봇을 생성하거나 기존 로봇을 구독하여 피싱 등 안전 위협 경고를 받을 수 있습니다.

Attack Response

이미지

공격 발생 후 자동으로 발동되거나 긴급하게 취해지는 안전 조치에는 공격 차단, 자동 응답, War Room, 공격 원인 분석 및 공격자의 자금 흐름 추적이 포함됩니다.

이 다섯 가지 대응 조치 중 특히 주목할 만한 것은 공격 차단입니다. 프로젝트 측이 사전에 배치하여 공격 발생 전에 공격을 차단할 수 있으며, 손실을 제로로 줄일 수 있습니다. 자동 응답 플랫폼은 공격으로 인한 손실을 줄이는 데에도 도움이 됩니다.

War Room을 구축하고 공격 원인 분석 및 자금 흐름 추적을 수행하는 것은 공격 발생 후 취해지는 대응 조치입니다. 이는 손실을 줄이고 향후 유사 공격을 방지하는 데 도움이 되지만, 이미 중대한 손실이 발생했을 가능성이 높고 회수하기 어려울 수 있습니다. 또한 프로젝트의 명성이 손상되고 사용자 신뢰가 상실되면 심각한 부정적 영향을 미칠 수 있습니다. 위험은 어디에나 존재하며 방어하기 어려운 것처럼 보이지만, 프로젝트 측은 수동적으로 대응하는 것만이 아니라 사전에 예방 조치를 배치할 수 있으며, 이는 더 권장되는 방법입니다.

공격 차단

공격 탐지는 해커 공격을 알리는 중요한 경로이지만, 해커 공격에 맞서기 위해서는 탐지만으로는 부족합니다. 자동화된 공격 차단 능력이 없다면 수동으로 대응 조치를 취하는 것은 종종 늦어질 수 있습니다. 예를 들어, KyberSwap, Gamma Strategies 및 Telcoin 공격 사건에서는 이러한 프로토콜이 공격 발생 수 분 또는 수 시간 후에야 대응 조치를 취했으며, 해커는 이 기간 동안 여러 공격 거래를 시작하여 막대한 자산을 도난당했습니다. 7월의 Velocore 및 Rho 공격 사건은 Linea와 Scroll 전체 체인이 중단되는 결과를 초래하여 사용자들이 L2 체인의 중앙 집중화 문제에 대한 우려를 표명하게 했습니다.

이미지

공격 차단은 해커 공격을 자동으로 방지할 수 있으며, 이는 두 가지 핵심 기술에 의존합니다: 사전 탐지 및 자동 선제 대응. 사전 탐지는 거래가 블록체인에 올라가기 전에 메모리 풀 단계에서 어떤 거래가 공격 거래인지 식별하는 것을 의미합니다. 자동 선제 대응은 공격 거래가 블록체인에 올라가기 전에 우선적으로 선제 거래를 제출하여 프로토콜을 일시 중지시켜 공격 거래의 실행을 방지하는 것입니다. 이러한 방법은 공격이 실제로 발생하기 전에 차단하여 손실을 피할 수 있습니다.

이 카테고리에서 BlockSec Phalcon은 이러한 핵심 기술을 보유한 유일한 제품입니다. 해커가 공격 거래를 시작하면 Phalcon의 공격 모니터링 엔진은 이 거래를 사전에 탐지하여 사용자에게 공격 경고를 전송하고, 자동으로 프로토콜을 일시 중지시켜 손실을 0으로 줄입니다. 이 제품의 공격 차단 능력은 지난 20회 이상의 화이트햇 구조 작업에서 검증되었으며, 2000만 달러 이상의 자산을 구출했습니다.

자동 응답

공격 차단 플랫폼 외에도 Phalcon, Hexagate, Hypernative 등의 플랫폼은 공격 발생 시 자동으로 응답할 수 있습니다.

이러한 플랫폼을 구독하면 사용자는 다양한 프로토콜 위험에 대한 모니터링 및 응답 조치를 설정할 수 있습니다. 만약 거래가 모니터링 규칙에 부합하면, 시스템은 사용자가 미리 설정한 응답 조치를 자동으로 발동하여 손실을 줄입니다. 그러나 일부 플랫폼은 공격 탐지 엔진이 없어 시스템이 공격 거래를 직접 식별하고 사용자에게 알릴 수 없으며, 사용자가 공격으로 판단할 수 있는 거래의 조건을 정의해야 합니다. 공격 거래의 특성이 매우 복잡하고, 사용자가 (대개 계약 개발자) 충분한 안전 지식을 갖추지 못할 수 있기 때문에, 이는 사용자에게 큰 도전이 될 수 있습니다.

War Room

프로토콜이 공격에 직면했을 때 War Room을 구축하는 것은 특히 중요합니다. 이는 프로토콜이 상황을 파악하고 커뮤니티와 신속하게 정보를 동기화하며, 효과적으로 자원을 통합하여 대응 조치를 취하는 데 도움이 됩니다. 이는 여러 분야의 전문가 간의 긴밀한 협력이 필요합니다.

SEAL 911은 "긴급 상황에서 사용자, 개발자 및 보안 연구원이 신뢰할 수 있는 보안 전문가와 직접 연락할 수 있도록 돕는 것을 목표로 합니다." 사용자는 SEAL 911 Telegram Bot(https://t.me/seal911bot)을 통해 이 서비스를 받을 수 있으며, 프로젝트가 공격을 받을 때 신속하게 War Room을 구성하여 안전 문제에 대응할 수 있습니다.

공격 원인 분석

프로토콜이 공격을 받을 때, 핵심은 문제의 근본 원인을 식별하는 것입니다. 예를 들어, 스마트 계약 내부의 취약점 및 취약점이 어떻게 악용되었는지를 분석해야 합니다. 공격 거래를 분석하기 위해서는 몇 가지 도구가 필요하며, Phalcon Explorer, OpenChain 및 Tenderly는 좋은 선택입니다.

자금 흐름 추적

자금 흐름 추적은 체인 상에서 공격자의 초기 자금 및 공격 수익을 추적하여 관련 주소 및 실체를 식별하는 것을 의미합니다. 이러한 자산이 중앙 집중화된 실체(예: 중앙화 거래소 및 기타 기관급 실체)로 흐를 경우, 법 집행 기관에 연락하여 자금을 동결하도록 요청할 수 있습니다.

Chainalysis, TRM Labs, ARKHAM, ELLIPTIC 및 MetaSleuth는 이 분야의 대표적인 회사/제품입니다. 예를 들어, MetaSleuth는 크로스 체인 자금 흐름을 자동으로 추적하고 풍부한 주소 태그를 제공합니다. ARKHAM은 커뮤니티를 구축하여 프로토콜 측이 조사 Bounty를 게시하여 커뮤니티 구성원이 공격자의 자금 흐름을 추적하는 데 협력하도록 유도합니다.

안전 교육 자원

이미지

지식은 최고의 방어선입니다. 앞서 언급한 안전 공급업체 및 제품 외에도, DeFi 안전에 중요한 역할을 하는 또 다른 역할이 있습니다: 교육 플랫폼. 이러한 플랫폼이 제공하는 자원이나 정보는 DeFi 종사자와 사용자들이 안전 지식을 깊이 이해하고, 안전 의식을 높이며, 안전 기술을 배양하는 데 도움을 주어 DeFi 안전 발전을 촉진하는 중요한 역할을 합니다. 우리는 이러한 플랫폼에 경의를 표하며, 주목할 만한 몇 가지 플랫폼을 공유합니다.

  • SΞCURΞUM: 이더리움 안전에 중점을 둔 Discord 커뮤니티로, 정기적으로 스마트 계약 안전 경연 "Secureum RACE"를 개최합니다. https://x.com/TheSecureum
  • Security Incidents Dashboard: 이 플랫폼은 10만 달러 이상의 손실을 초래한 공격 사건을 요약하고 실시간으로 업데이트하며, 손실 금액, 영향을 받은 체인, 취약점 유형, 공격 원인 분석 및 PoC 등의 상세 정보를 제공합니다. https://app.blocksec.com/explorer/security-incidents
  • Rekt: DeFi 뉴스의 다크 웹으로 불리며, DeFi 취약점 악용, 해킹 공격 및 사기 행위에 대한 심층 분석을 제공합니다. https://rekt.news/
  • RugDoc: DeFi 안전 및 교육 커뮤니티입니다. 이 플랫폼은 프로젝트 위험 평가 정보를 제공하며, DeFi 생태계 및 기술을 소개하는 RugDocWiKi 플랫폼도 있습니다. https://rugdoc.io/
  • DeFiHackLabs: Web3 안전 커뮤니티로, Web2 안전 인재가 Web3 분야로 진입하도록 돕고 있으며, 전 세계에 2000명 이상의 회원과 거의 200명의 화이트햇 해커가 있습니다. DeFiHackLabs의 저장소는 풍부한 학습 자원을 제공합니다. https://x.com/DeFiHackLabs
  • Solodit: 이 플랫폼은 Web3 감사 회사의 과거 감사 보고서를 수집합니다. https://solodit.xyz/
  • Ethernaut: Web3/Solidity 기반의 게임으로, 플레이어는 이더리움 계약의 취약점을 식별해야 하며, CTF와 유사한 형식입니다. https://ethernaut.openzeppelin.com/

결론

안전 문제는 매년 수십억 달러의 손실을 초래하며, DeFi 생태계가 장기적으로 직면하는 심각한 위협입니다. 현재 대부분의 안전 조치는 프로젝트 출시 전의 안전 문제를 다루고 있습니다. 그러나 안전 분야에는 "은탄환"이 없습니다. 프로토콜 발전의 각 단계에서 안전을 보장하기 위한 적절한 조치가 필요하며, 이는 프로토콜의 전체 생애 주기에 걸쳐 이루어져야 합니다.

우리는 업계가 프로젝트 출시 후 안전의 중요성을 인식하고, 프로토콜 위험을 모니터링하고 공격을 자동으로 차단하는 조치를 취하기를 기대합니다.

또한 DeFi 생태계가 안전을 최우선으로 하는 공감대를 형성하여 사용자 자산의 안전을 더 잘 보호할 수 있기를 바랍니다.

체인캐처(ChainCatcher)는 독자들에게 블록체인을 이성적으로 바라보고, 리스크 인식을 실제로 향상시키며, 다양한 가상 토큰 발행 및 조작에 경계해야 함을 상기시킵니다. 사이트 내 모든 콘텐츠는 시장 정보나 관련 당사자의 의견일 뿐이며 어떠한 형태의 투자 조언도 제공하지 않습니다. 만약 사이트 내에서 민감한 정보를 발견하면 “신고하기”를 클릭하여 신속하게 처리할 것입니다.
banner
체인캐처 혁신가들과 함께하는 Web3 세상 구축