플래시론과 조작 방지 기능이 탑재된 오라클의 중요성

플래시론(flash loan)은 이자 농사의 개념과 마찬가지로 최근 DeFi 생태계 내에서 부상한 흥미롭고 강력한 새로운 유동성 메커니즘입니다. 플래시론은 사용자들이 대출 시 동일한 거래 내에서 빌린 금액과 약간의 수수료를 유동성 풀로 반환하는 것을 보장으로 선불 담보 없이 온체인 유동성 풀에서 자산을 빌릴 수 있습니다. 이 혁신적인 모델은 기본 유동성 풀이 완전한 지속가능한 방식으로 지불 능력을 보장하면서 다양한 사용 사례에서 모든 사용자들이 자본을 이용할 수 있도록 합니다.

단일 거래가 일어나는 짧은 기간 동안 플래시론은 누구나 풍부한 자본을 보유한 주체로 만들어 수억 달러의 유동성을 제공할 수 있습니다. 이는 차익거래, 담보 교환 및 레버리지 포지션 생성 등과 같은 독특한 기회를 제공할 수 있지만, 그와 동시에 분산 및 보안 수준이 다양한 초키 프로토콜 생태계에는 리스크를 초래합니다. 스마트 컨트랙트 개발자가 이러한 리스크에 대해 이해해야만 사용자를 위한 더 강력한 애플리케이션을 만들 수 있습니다.

플래시론과 가격 오라클 공격

이전 포스트에서 DeFi 스마트 컨트랙트의 데이터 품질에 대해 설명한 것처럼 단일 소스에서 가격을 가져오는 프로토콜은 많은 자금을 보유한 악의적인 행위자 한 명이 한 번의 거래로 시장을 조작할 수 있다는 위험이 있습니다. 플래시론은 전 세계 모든 사람들에게 즉각적이고 대규모의 유동성을 제공할 수 있기 때문에 DeFi 프로토콜을 공격하기 위한 자금 조달 수단으로 점점 더 많이 사용되고 있습니다. 하지만 여기서 한 가지 중요한 점이 있습니다. 공격을 실행하기 위해 자금을 제공하는 플래시론이 아닌 충분한 시장 커버리지를 제공하지 않는 취약한 중앙화 가격 오라클이 문제입니다.

플래시론을 사용한 공격 방법과 규모는 다르지만 일반적인 형태는 단일 블록체인 기반의 DEX의 프로토콜을 조작하는 방식입니다. DEX 기반 가격 피드를 사용하는 DeFi 대출 프로토콜에 대한 플래시론을 기반으로 한 공격이 발생했을 때 순서는 다음과 같습니다.

  1. 플래시론을 지원하는 프로토콜로부터 A토큰에 대한 대규모 대출 실시
  2. DEX에서 A토큰과 B토큰 스왑 (DEX내에서 A토큰 시세 하락, B토큰 시세 상승 유도)
  3. 위에 언급한 DEX를 단일 가격 피드로 사용하는 DeFi 프로토콜에 B토큰을 담보로 예치 후 조작된 가격을 바탕으로 기존에 대출받을 수 있는 양보다 더 많은 A토큰을 대출받음
  4. 대출받은 A토큰의 일부분을 사용하여 플래시론 상환 후 남은 토큰은 유지하여 프로토콜 가격 피드 조작을 통해 이익 실현
  5. DEX에서 A토큰과 B토큰의 가격이 실제 시장 가격으로 조정이 되면 해당 DeFi 프로토콜은 담보가 부족한 상태가 되어 (담보보다 부채가 더 큼) 무고한 사용자들이 직접 피해를 봄
A diagram showing a flash loan attack.

악의적 행위자가 플래시론으로 가격 오라클을 공격하는 과정

공격자가 플래시론을 통해 단일 온체인 거래소를 유일한 데이터 피드로 사용하는 DeFi 프로토콜을 조작할 수 있습니다. 공격자는 담보로 사용된 토큰의 가격을 더 높게, 차용 받는 토큰의 가격을 더 낮게 조작하여 원래 받을 수 있는 금액보다 더 많은 금액을 대출받을 수 있고 대출보다 담보의 가치가 하락해 유동성 풀을 완전히 유동화시킬 수 없는 안 좋은 결과를 초래할 수 있습니다. 이 공격은 한 번의 거래로 성사될 수 있지만 다수의 거래를 통해 더 많이 공격해 더 큰 피해를 줄 수 있습니다.

하나의 온체인 거래소의 데이터를 가격 피드에 사용하면 하나의 거래소에서 일어나는 거래량만 대표하기 때문에 시장 커버리지가 극도로 떨어집니다. 이로 인해 다른 거래소에서 더 많은 거래량이 발생하거나 자본이 많은 행위자가 해당 거래소를 일시적으로 조작하는 경우 이에 의존하는 프로토콜이 조작에 취약해지고 거래소를 일시적으로 조작할 수 있게 됩니다. 특히 최근 들어 DeFi에서 담보로 더 많이 사용되고 있는 유동성이 낮은 암호화폐 자산에 더 큰 리스크가 생깁니다.

하지만 다행스럽게도, 이러한 방식의 공격은 올바른 시장 커버리지를 갖춘 분산형 오라클 솔루션을 사용하면 완전히 방지할 수 있습니다.

체인링크 분산형 오라클 가격 피드 공격을 방지하는 방법

전체 시장을 커버하기 위해 체인링크 가격 피드는 단일 소스가 아닌 여러 독립 데이터 제공업체, 즉 CoinGecko, Amberdata, BraveNewCoin 등과 같은 전문 데이터 집계업체로부터 가격 데이터를 집계하는 분산형 오라클 네트워크를 통해 운영합니다. 이러한 데이터 집계업체들은 시간 테스트를 거친 고도로 섬세한 알고리즘을 사용하여 거래량, 유동성 및 거래소 간의 시차를 고려하면서 모든 거래 환경을 추적합니다.

플래시론은 단일 거래 시에만 존재하며 온체인 DEX만 조작할 수 있기 때문에 다수의 거래를 바탕으로 비동기적 방식으로 업데이트되는 체인링크 가격 피드에는 영향을 미치지 않습니다. 또한 체인링크는 온체인 DEX와 기존 중앙 거래소 두 가지로부터 데이터를 가져와 집계하기 때문에 단일 거래소로 인한 시장 조작에 대한 리스크가 완화됩니다.

플래시론을 통한 가격 오라클 공격을 막기 위해 스마트 컨트랙트 개발자들은 컨트랙트에 필요한 시장 데이터의 소스를 조작 가능한 DEX 가격 피드가 아닌 체인링크 가격 피드를 사용하기를 권장합니다. 체인링크는 DeFi 프로토콜이 늘 시장에 걸친 거래량, 즉 플래시론의 영향을 받지 않은 집계된 가격 데이터를 반영한다는 것을 보장하기 때문에 모든 종류의 가격 오라클 공격 벡터를 줄일 수 있습니다.

체인링크 가격 피드에 영향을 미치지 못하는 플래시론
체인링크 가격 피드에 영향을 미치지 못하는 플래시론

결론

플래시론은 DeFi 생태계에서 혁신적인 애플리케이션이 탄생하도록 하고 시장 참여자들이 새롭게 시장에 진출할 수 있도록 진입 장벽을 낮춰준 정교하고 새로운 금융의 형태입니다. 비록 플래시론이 DeFi 프로토콜에 대한 공격을 시행하기 위한 자금 조달 수단이 되었지만, 실제 제공하는 가치에 대해 완전히 무시할 수 없고 개발자들이 사용할 수 있는 금융 도구임은 분명합니다. 플래시론 자체는 취약점이 없지만 플래시론이 기존 시스템에 있었던 취약점을 드러냈고 단일 온체인 거래소에 의존하는 잘못 설계된 가격 오라클이 가장 자명한 사례입니다.

여러 거래로 연속적으로 이어지는 중요한 실시간 시장 데이터를 조달하는 중요한 기능과 관련하여 체인링크 네트워크와 체인링크의 분산형 오라클 네트워크는 더 많은 변조 방지 기능을 제공하고 있습니다. 보안을 최우선으로 고려해야만 DeFi 프로토콜이 새로운 위험에 적응하고 최종 사용자의 신뢰를 유지하며 지속가능한 확장을 통해 수십억에서 수조 달러에 이르는 DeFi의 잠재력을 실현할 수 있습니다.

만약 직접 개발한 애플리케이션을 빠르게 체인링크 가격 레퍼런스 데이터에 연결하고 싶은 개발자라면 개발자 문서 페이지를 방문하거나 Discord에서 기술적 논의를 함께 나눠보아요. 만약 더 자세히 인티그레이션에 대한 이야기를 나누고 싶다면 이곳을 통해 전화 상담을 예약해주세요.

Kakaotalk: https://open.kakao.com/o/gWXAAf0b
Telegram: https://t.me/chainlink_korea
Facebook Group: https://web.facebook.com/groups/459042728150845
문의사항: [email protected]

GitHub: https://github.com/smartcontractkit/chainlink
Twitter: https://twitter.com/chainlinkofficial
Telegram: https://t.me/chainlinkofficial

Need Integration Support?
Talk to an expert
Faucets
Get testnet tokens
Read the Docs
Technical documentation