바이낸스 스마트 체인에서 DeFi 프로젝트가 왜 집중적으로 해킹당하는가?
이 글은 벌집 금융 뉴스에서 가져온 것으로, 원제목은 《해커가 동원된 취약점 공격 '팀 전멸' Fork 프로토콜》이며, 저자는 카일입니다.
2021년 5월, 암호 자산 시장은 매우 불안정했으며, BTC는 5만 달러를 넘던 가격에서 최저 2만 9천 달러로 떨어져 거의 반토막이 났고, 대부분의 암호 자산은 최대 50% 이상의 하락폭을 기록했습니다.
2차 시장의 큰 충격 속에서, 체인 상 생태계도 평온하지 않았습니다. 5월에는 DeFi 시장에서 최소 13건의 해킹 사건이 발생했으며, 이 사건들은 주로 바이낸스 스마트 체인(BSC)에서 집중적으로 발생하여 손실된 자금은 2억 7천만 달러에 달하며, 이는 2020년 모든 DeFi 보안 사건의 자산 손실을 초과했습니다. BSC 공식 측은 조직화된 해커 팀이 BSC를 노리고 있다고 판단했습니다.
왜 BSC 체인 상의 프로젝트들이 집중적으로 도난당했을까요? 해커들은 어떻게 빠르게 프로젝트의 취약점을 포착할 수 있었을까요? 블록체인 보안 회사 PeckShield는 많은 공격받은 프로젝트들이 동원된 취약점을 가지고 있다고 밝혔습니다.
예를 들어, BSC 수익 집계기 PancakeBunny가 공격받은 후, PancakeBunny에서 Fork(분기)된 AutoShark와 Merlin Labs가 다음 주에 연이어 도난당했습니다. 공격받은 BurgerSwap과 JulSwap은 모두 Uniswap에서 Fork된 코드이지만, 이들이 수정하는 과정에서 취약점이 발생한 것으로 보입니다.
PeckShield의 관련 보안 책임자는 벌집 금융에 이들 Fork된 프로토콜이 공격받는 주된 이유는 원래 프로토콜의 논리를 완전히 이해하지 못한 채 미세 혁신을 시도하여 작은 업데이트나 조합이 취약점을 초래할 수 있다고 설명했습니다.
빈번히 발생하는 보안 사건은 프로토콜 개발자들에게 경각심을 불러일으켰으며, DeFi 모델 혁신을 진행할 때 기본 코드의 보안성을 간과해서는 안 된다는 점을 상기시켰습니다.
12개 프로젝트가 공격받아 2억 7천만 달러 손실
지붕이 무너진 집에 밤비가 내리는 격입니다. 암호 자산 시장이 계속 하락하는 가운데, 체인 상 프로토콜의 안전 사고가 빈발하고 있습니다.
5월 30일, BSC의 스테이블코인 교환 프로토콜 Belt Finance가 플래시 론 공격을 받아 620만 달러의 손실을 입었습니다. 블록체인 보안 회사 PeckShield의 추적에 따르면, 이번 공격은 공격자가 PancakaSwap에서 8건의 플래시 론을 완료한 후, BUSD를 반복적으로 매수 및 매도하여 bEllipsisBUSD 전략 잔액 계산의 취약점을 이용해 beltBUSD의 가격을 조작하여 이익을 얻은 것으로 나타났습니다.
공격 후, Belt Finance는 플래시 론 공격 사건에 대해 사과하며 보고서를 발표했으며, 추가 감사 작업을 진행하고 48시간 내에 사용자 보상 계획을 발표할 것이라고 밝혔습니다.
이로 인해 Belt Finance의 거버넌스 토큰 BELT는 크게 하락하여 28일의 58달러 고점에서 27달러로 떨어졌으며, 단기 하락폭은 53.44%에 달했습니다.
이것은 5월에 공격받은 BSC 체인 상의 12번째 프로젝트입니다. 벌집 금융의 통계에 따르면, 5월 2일 이후 Spartan Protocol, Value DeFi, BearnFi, Venus, PancakeBunny 등 프로젝트가 연이어 도난당하여 총 2억 7천만 달러의 자금을 잃었으며, Value DeFi는 두 번 공격을 받았습니다.
BSC 공격 프로젝트 목록
2억 7천만 달러의 자산 손실은 2020년 모든 DeFi 보안 사건의 손실을 초과했습니다. 이전에 PeckShield가 발표한 데이터에 따르면, 2020년 DeFi 보안 사건은 60건에 달하며, 손실은 2억 5천만 달러를 넘었습니다.
단 한 달 만에 BSC 체인은 연속적으로 해커의 표적이 되었으며, 이는 매우 이상한 상황으로 보입니다. 압박 속에서 BSC 공식은 최근 소셜 미디어에 글을 올리며, 최근 BSC 체인 상의 프로젝트를 대상으로 한 플래시 론 공격이 8건 이상 발생했다고 밝혔습니다. "우리는 현재 조직화된 해커 팀이 BSC를 노리고 있다고 생각합니다."
BSC 공식은 모든 DApp에 위험을 방지할 것을 촉구하며, 체인 상 프로젝트가 감사 회사와 협력하여 건강 검진을 진행할 것을 권장했습니다. 만약 Fork 프로젝트라면, 원본 버전에서의 변경 사항을 반복적으로 점검해야 하며; 필요한 위험 관리 조치를 취하고, 실시간으로 비정상 상황을 모니터링하며, 비정상이 발생하면 즉시 프로토콜을 중단해야 합니다; 최악의 상황을 대비한 비상 계획을 수립해야 하며; 조건이 허락된다면 취약점 보상 계획을 설정할 수 있습니다.
실제로, 12건의 보안 사건을 되짚어보면, 플래시 론 공격은 해커들이 가장 자주 사용하는 수단입니다. Spartan Protocol, PancakeBunny, Bogged Finance, BurgerSwap, JulSwap 등 프로젝트는 모두 플래시 론 공격의 피해자입니다.
명확히 할 점은, 플래시 론 자체가 공격 수단이 아니라는 것입니다. 이는 단지 효율적인 대출 모델로, 누구의 자본도 확대할 수 있습니다. Chainlink CMO Adelyn Zhou가 말했듯이, "플래시 론은 DeFi 내부에서 취약점을 생성하지 않습니다—단지 이미 존재하는 취약점을 드러낼 뿐입니다."
DeFi가 고속 발전한 후에도 BSC 상에는 여전히 많은 프로젝트가 짧은 시간 안에 취약점을 드러내어 체인 상 사용자들을 놀라게 하고 있습니다. 왜 이러한 보안 사건이 BSC 체인에서 집중적으로 발생했을까요? 해커들은 왜 이렇게 많은 프로젝트의 취약점을 빠르게 찾아내어 공격을 감행할 수 있었을까요?
Fork의 위험이 폭발하다, 사건 발생 프로젝트 다수 동원 공격
올해 들어 BSC는 이더리움의 사이드 체인으로서, 더 높은 거래 처리 효율과 저렴한 수수료 덕분에 많은 프로젝트와 체인 상 플레이어들을 유치하며 급부상했습니다. 정점 시기에는 체인 상 총 잠금 가치가 344억 달러를 초과하여 이더리움에 이어 두 번째로 큰 DeFi 집결지가 되었습니다.
BSC 생태계의 빠른 부상은 체인 상 선발 혜택을 차지하며, 많은 프로젝트가 몰려 배포되었습니다. 이전에 이더리움 상의 대부분 프로젝트가 오픈 소스화되었기 때문에, 많은 개발자들이 Uniswap, Curve 등 성숙한 프로젝트의 오픈 소스 코드를 사용하여 간단히 수정한 후 BSC에 빠르게 상장했습니다. 그러나 이러한 서두른 Fork(분기)는 BSC 체인 상 프로젝트들이 대량으로 해커의 공격을 받는 위험 요소가 되었습니다.
PeckShield에 따르면, 최근 공격받은 BurgerSwap과 JulSwap은 모두 Uniswap에서 Fork된 코드입니다. PeckShield는 "그러나 이들은 Uniswap의 배후 논리를 완전히 이해하지 못한 것 같습니다."라고 지적했습니다.
사건 발생 후 BurgerSwap의 보고서에 따르면, 공격자는 스스로 "가짜 코인"을 생성한 후, 프로토콜의 원주 토큰인 BURGER와 거래 쌍을 형성하여 후자의 가격을 변경했습니다. 분명히 Uniswap에서 Fork된 BurgerSwap은 특정 측면에서 충분히 성숙하지 않아 해커에게 틈을 제공한 것입니다.
Fork 프로토콜의 출처는 이더리움뿐만 아니라, BSC 체인 상의 일부 초기 프로토콜 응용 프로그램도 후발 주자에 의해 Fork되어 체인에 올라갔습니다. AutoShark와 Merlin Labs 두 개의 집계기 프로토콜은 PancakeBunny를 Fork하여 해커에게 약탈당했습니다. 시간 순서로 보면, 5월 20일 PancakeBunny가 플래시 론 공격을 받았으며, 이번 공격은 공격자가 해당 프로토콜을 이용해 LP Token BNB-BUNNY와 BNB-BUSDT의 가격을 조작한 데서 비롯되었습니다.
PancakeBunny가 공격받은 후, AutoShark는 자신의 안전성을 강조하며 4번의 코드 감사를 진행했으며, 그 중 2번은 현재 진행 중이라고 밝혔습니다. 그러나 반격은 곧바로 찾아왔고, 단 4일 후 AutoShark는 플래시 론 공격을 당해 그 토큰 SHARK가 순간적으로 99% 하락했습니다. PeckShield의 분석에 따르면, 이번 공격 수법은 PancakeBunny가 공격받았던 수법과 유사합니다.
반격을 당한 또 다른 곳은 Merlin Labs입니다. 공격받기 전, Merlin Labs는 이미 코드를 반복적으로 감사했으며, 잠재적인 가능성에 대해 추가 예방 조치를 취했다고 밝혔습니다. 그러나 5월 26일, 해커는 "승승장구"하며 Merlin Labs를 약탈했습니다.
PeckShield는 이것이 PancakeBunny 공격 후 모방 사건이라고 생각하며, 공격자는 높은 기술이나 자본의 장벽이 필요하지 않고, 단지 인내심을 가지고 동원된 취약점을 Fork된 프로토콜에서 반복적으로 실험하면 상당한 수익을 얻을 수 있다고 밝혔습니다. "Fork된 DeFi 프로토콜은 아직 Bunny의 도전자가 되지 못했지만, 동원된 취약점으로 인해 큰 손실을 입고 '고집 센 부추밭'으로 조롱받고 있습니다."
또한, Belt Finance가 공격받은 사례에서 해커는 bEllipsisBUSD 전략 잔액 계산의 취약점을 이용해 beltBUSD의 가격을 조작했으며, Ellipsis는 이더리움의 유명한 프로토콜 Curve에서 Fork되었습니다.
PeckShield의 관련 보안 책임자는 벌집 금융에 이들 Fork된 프로토콜이 공격받는 주된 이유는 원래 프로토콜의 배후 논리를 완전히 이해하지 못한 채 미세 혁신을 시도하여 작은 업데이트나 조합이 취약점을 초래할 수 있다고 설명했습니다.
이 책임자는 알려진 취약점을 이용하는 것이 공격자가 아직 발전 단계에 있는 DeFi 분야에서 자주 사용하는 "사냥" 방법이라고 말했습니다. 프로젝트 측에 있어 DeFi 프로토콜의 보안에 대한 중요성을 인식하는 것은 단순히 말로만 하는 것이 아니라, "매일 코드 점검"을 실천해야 한다고 강조했습니다: 프로토콜이 온라인되기 전에 정적 감사를 했는가? 다른 프로토콜이 공격받은 후, 코드 자가 점검을 통해 유사한 취약점이 발생했는지 확인했는가? 상호작용하는 프로토콜에 안전 위험이 있는가?
위의 사례를 통해 BSC 체인 상의 여러 프로젝트가 집중적으로 도난당한 주된 이유는 해커들이 여러 프로토콜의 동원된 취약점을 찾아내어, 공격 수법을 모방함으로써 짧은 시간 안에 여러 프로젝트를 약탈할 수 있었기 때문입니다.
빈번히 발생하는 보안 사건은 프로토콜 개발자들에게 경각심을 불러일으켰으며, DeFi 모델 혁신을 진행할 때 기본 코드의 보안성을 간과해서는 안 된다는 점을 상기시켰습니다.
이에 대해 PeckShield는 새로운 계약이 온라인되기 전에 감사를 진행해야 하며, 다른 DeFi 제품과 조합할 때의 비즈니스 논리 취약점을 점검해야 한다고 권장했습니다. 동시에 일정한 위험 관리 차단 메커니즘을 설계하고, 제3자 보안 회사의 위협 인식 정보 및 데이터 상황 정보 서비스를 도입하여 방어 시스템을 완비해야 한다고 강조했습니다. "모든 DeFi 프로토콜은 변수가 존재하며, 하나의 프로토콜이 여러 번 감사를 받았더라도, 작은 업데이트 하나가 감사를 무용지물로 만들 수 있으므로, 작은 업데이트라도 다시 감사를 받아야 합니다."