본문 바로가기
코인레이더 코인레이더

Cosmos EVM 취약점 6개 체인서 악용, 약 572만 달러 피해…4개월 전 경고 놓쳤다

cryptoqri

Cosmos 생태계에서 사용하는 공유 소프트웨어 Cosmos EVM의 치명적인 취약점이 6개 독립 블록체인에서 실제 공격에 악용됐습니다.

Cosmos Labs가 2026년 8월 28일 공개한 공식 사후분석에 따르면 공격은 8월 20일부터 25일까지 이어졌습니다.

공격자들은 탈취한 토큰 가운데 약 287만 달러 상당을 탈중앙화거래소에서 다른 자산으로 교환했고, 중앙화거래소를 통해 추가로 약 285만 달러 상당을 매도한 것으로 추정됐습니다.

이를 합치면 약 572만 달러 규모입니다.

다만 이 금액을 최종 확정 손실액으로 볼 수는 없습니다.

공격자가 이용한 일부 중앙화거래소 계정은 수사 과정에서 동결됐기 때문에 자산이 회수될 경우 실제 순손실액은 줄어들 수 있습니다.

이번 사건에서 특히 문제가 된 것은 취약점이 공격 약 4개월 전에 이미 신고됐지만 Cosmos Labs가 실제 운영 중인 네트워크에서는 사용자 자금 손실로 이어지지 않을 것으로 잘못 판단했다는 점입니다.

Cosmos Hub 자체가 해킹된 것일까?

아닙니다.

이번 사건은 Cosmos Hub 자체가 공격받은 사건이 아닙니다.

문제가 발생한 것은 Cosmos 기반 독립 블록체인들이 Ethereum 호환 애플리케이션을 실행하기 위해 사용할 수 있는 Cosmos EVM이라는 공유 소프트웨어입니다.

Cosmos 생태계는 하나의 블록체인으로 구성된 것이 아니라 서로 독립적으로 운영되는 여러 체인으로 구성돼 있습니다.

따라서 Cosmos EVM 모듈의 취약점이 일부 체인에서 악용됐다고 해서 Cosmos Hub나 Cosmos 생태계의 모든 블록체인이 해킹당했다고 표현하면 정확하지 않습니다.

Cosmos Labs가 공식적으로 확인한 피해 네트워크는 총 6개입니다.

사후분석에서는 MANTRA, TAC, KiiChain 세 곳의 구체적인 공격 경로가 공개됐습니다.

나머지 세 개 체인의 이름과 세부 피해 내용은 공식 사후분석에서 공개되지 않았습니다.

공격자들은 실제로 얼마를 빼돌렸을까?

Cosmos Labs에 따르면 공격자들이 피해 체인에서 빼낸 토큰 가운데 약 287만 달러 상당이 다른 네트워크로 브리지된 뒤 탈중앙화거래소에서 스테이블코인과 다른 암호화폐로 교환됐습니다.

여기에는 약 261만 USDT를 비롯해 ETH, TON, USDC, OSMO 등이 포함됐습니다.

추가로 중앙화거래소를 통해 약 285만 달러 상당의 토큰이 매도된 것으로 추정됐습니다.

두 금액을 합치면 약 572만 달러입니다.

하지만 287만 달러와 285만 달러의 성격에는 차이가 있습니다.

탈중앙화거래소에서 교환된 287만 달러는 공개된 온체인 데이터를 통해 추적한 금액입니다.

반면 중앙화거래소에서 매도된 약 285만 달러는 공개된 거래량 데이터를 기반으로 추정한 금액입니다.

Cosmos Labs 역시 이러한 피해 규모가 독립적인 외부 감사를 거친 최종 수치는 아니라고 밝히고 있습니다.

더구나 공격자가 이용한 중앙화거래소 계정 일부는 현재 수사기관의 조사 과정에서 동결됐습니다.

따라서 572만 달러를 모두 회수가 불가능한 최종 손실로 단정해서는 안 됩니다.

Cosmos EVM의 어떤 버그가 공격에 이용됐을까?

이번 사건의 핵심 취약점은 EVM과 Cosmos SDK가 계정 잔액을 계산하는 방식의 차이에서 발생했습니다.

Cosmos EVM의 StateDB는 계정에서 즉시 사용할 수 있는 잔액을 기준으로 계산합니다.

하지만 Cosmos의 베스팅 계정에는 현재 사용할 수 있는 토큰뿐 아니라 일정 기간 잠겨 있는 토큰도 존재할 수 있습니다.

또 잠겨 있는 토큰도 스테이킹에 위임할 수 있습니다.

문제는 베스팅 계정이 현재 사용 가능한 잔액보다 많은 토큰을 스테이킹에 위임할 때 발생했습니다.

StateDB에서는 작은 사용 가능 잔액에서 더 큰 위임 금액을 빼는 계산이 실행됐고, 이 과정에 언더플로를 막는 검증이 없었습니다.

그 결과 정상적인 잔액 대신 2의 256승에 가까운 비정상적으로 큰 값이 생성될 수 있었습니다.

공격자는 이 언더플로 문제를 또 다른 잔액 오버플로 경로와 결합했습니다.

악성 스마트컨트랙트와 베스팅 계정을 함께 이용해 하나의 거래 안에서 두 취약점을 연결했고, 피해 계정의 실제 잔액을 공격자에게 옮길 수 있었습니다.

중요한 점은 무한정 새로운 토큰을 만들어내는 공격은 아니었다는 것입니다.

전체 공급량을 증가시키기보다 기존 계정에 있던 실제 토큰을 빼내는 방식이었습니다.

취약점은 이미 4개월 전에 신고됐었다

이번 사건에서 가장 논란이 되는 부분입니다.

해당 취약점은 2026년 4월 25일 Cosmos 버그바운티 프로그램을 통해 처음 신고됐습니다.

당시 제출된 개념증명은 소수점 6자리를 사용하는 Cosmos EVM 구성에서 문제를 재현했습니다.

Cosmos Labs는 이후 실제 운영 환경과 비슷한 여러 설정에서 테스트를 진행했습니다.

특히 소수점 18자리를 사용하는 네트워크에서 공격을 재현하려 했지만 성공하지 못했습니다.

당시 알려진 실제 Cosmos EVM 운영 네트워크는 모두 소수점 18자리 구성을 사용하고 있었습니다.

이 때문에 Cosmos Labs는 해당 취약점이 실제 운영 중인 체인에서는 사용자 자금 손실로 이어지지 않을 것이라고 판단했습니다.

하지만 이 판단은 잘못된 것이었습니다.

8월 초 추가 보안 연구자들의 보고가 들어오면서 소수점 설정과 관계없이 모든 Cosmos EVM 체인이 취약할 수 있다는 사실이 확인됐습니다.

즉 처음 신고된 공격 조건을 너무 좁게 해석하면서 실제 취약점의 범위를 놓친 것입니다.

버그를 알고 있었다면 왜 바로 긴급 패치를 하지 않았을까?

Cosmos Labs가 처음에는 해당 취약점을 실제 자금 손실 위험으로 판단하지 않았기 때문입니다.

4월 신고를 받은 뒤 5월 15일 언더플로를 차단하는 수정 코드는 Cosmos EVM 메인 브랜치에 반영됐습니다.

하지만 운영 중인 체인들이 사용하는 릴리스 버전에는 바로 적용되지 않았습니다.

이 수정은 블록체인 상태에 영향을 주는 변경이어서 개별 체인이 검증자들과 함께 조정된 네트워크 업그레이드를 진행해야 했기 때문입니다.

Cosmos Labs는 당시 이를 사용자 자금을 위협하는 긴급한 취약점으로 판단하지 않았기 때문에 일반적인 silent patch 방식으로 처리했습니다.

보안 취약점의 구체적인 내용을 공개하지 않은 채 수정 코드를 먼저 넣고 이후 정상적인 업그레이드 과정에서 적용하도록 한 것입니다.

결과적으로 실제 운영 네트워크에는 취약한 버전이 계속 남아 있었습니다.

패치는 첫 공격 약 20시간 전에야 배포됐다

8월 초 추가 연구 결과를 통해 실제 운영 네트워크도 위험하다는 사실이 확인된 뒤 Cosmos Labs는 기존 수정 사항을 릴리스 버전으로 다시 적용하기 시작했습니다.

2026년 8월 19일 Cosmos EVM v0.6.2와 v0.7.2가 공개됐습니다.

두 버전에는 문제가 된 언더플로를 막는 보안 패치가 포함됐습니다.

하지만 첫 번째로 확인된 MANTRA 공격은 다음 날인 8월 20일 19시 6분 UTC에 시작됐습니다.

패치 릴리스 이후 약 20시간밖에 지나지 않은 시점입니다.

더구나 릴리스 노트에는 중요한 보안 수정이 포함됐다는 설명은 있었지만 실제 사용자 자금이 위험할 수 있다는 수준의 구체적인 긴급성은 공개되지 않았습니다.

독립적인 블록체인은 새로운 버전을 적용하려면 검증자들이 소프트웨어를 검토하고 빌드한 뒤 네트워크 업그레이드를 함께 진행해야 합니다.

따라서 약 20시간은 모든 체인이 정상적으로 업그레이드를 완료하기에는 상당히 짧은 시간이었습니다.

공격 방법이 공개된 뒤 첫 공격까지 약 12시간이었다

상황을 더 복잡하게 만든 사건도 있었습니다.

8월 20일 07시 16분 UTC, Push Chain의 Cosmos EVM 포크에 공개된 GitHub 풀 리퀘스트에서 해당 취약점의 구체적인 공격 방식이 설명됐습니다.

취약한 릴리스 버전과 실제 공격 경로까지 공개돼 있었습니다.

그로부터 약 12시간 뒤인 19시 6분 UTC에 MANTRA에서 첫 번째로 알려진 공격이 시작됐습니다.

Cosmos Labs는 사후분석에서 이런 식으로 패치가 충분히 배포되기 전에 제3자가 공격 경로를 공개하는 것은 매우 이례적이며 실제 공격 위험을 높일 수 있다고 설명했습니다.

다만 이것만으로 공격자가 해당 공개 자료를 보고 실제 공격을 시작했다고 단정할 수는 없습니다.

공격자가 이전부터 취약점을 알고 있었는지 여부는 공개된 자료만으로 확인되지 않습니다.

MANTRA 공격 이후 대응은 어떻게 진행됐을까?

MANTRA는 8월 20일 두 차례 공격을 받은 뒤 블록 생성을 중단했습니다.

MANTRA가 Cosmos Labs에 실제 공격 사실을 알리면서 상황은 단순한 잠재 취약점에서 현재 진행 중인 공격으로 바뀌었습니다.

Cosmos Labs는 MANTRA의 최초 통보 약 2시간 뒤 등록된 Cosmos EVM 체인 보안 담당자들에게 긴급 이메일을 보냈습니다.

v0.6.2 또는 v0.7.2로 즉시 업그레이드하라고 안내했습니다.

하지만 약 45시간 뒤 TAC에서도 동일한 취약점이 악용됐습니다.

TAC는 이전 긴급 안내를 받은 상태였지만 공격을 막지 못했습니다.

이후 Cosmos Labs는 단순 업그레이드 권고보다 훨씬 강한 조치를 내렸습니다.

모든 Cosmos EVM 체인에 네트워크를 즉시 중단하라고 권고했습니다.

약 한 시간 뒤에는 KiiChain에서도 공격이 확인됐습니다.

KiiChain에서는 1억4,830만 KII가 빠져나갔다

공식 사후분석에 따르면 KiiChain에서는 공격자가 약 1억4,830만 KII를 18차례에 걸쳐 인출했습니다.

이 가운데 약 6,760만 KII가 Hyperlane 브리지를 통해 BNB Chain으로 이동했습니다.

약 6,460만 KII는 PancakeSwap에서 160만 달러가 넘는 USDT로 교환됐습니다.

추가로 300만 KII가 KuCoin 입금주소로 전송됐습니다.

반면 약 8,070만 KII는 KiiChain 안에 그대로 남아 있었습니다.

이는 인출된 전체 KII의 약 54.4%로, 네트워크 복구 이후 회수 가능성이 있는 물량으로 분류됐습니다.

이 사례에서도 탈취된 토큰 전체와 공격자가 실제로 현금화한 금액을 구분해야 하는 이유를 확인할 수 있습니다.

TAC에서는 약 29억8천만 TAC가 빠져나갔다

TAC 역시 같은 취약점 체인을 이용한 공격을 받았습니다.

공격자는 약 29억8,600만 TAC를 인출한 뒤 대부분을 BNB Chain으로 이동했습니다.

이 가운데 약 12억 TAC가 여러 거래를 통해 약 95만 USDT로 교환됐습니다.

사후분석 당시에도 약 16억6천만 TAC가 BNB Chain에 매도되지 않은 상태로 남아 있었습니다.

일부 TAC는 다시 TAC 체인으로 이동했고 네트워크가 중단되면서 일부 물량이 동결됐습니다.

즉 공격자가 탈취한 토큰의 명목가치와 실제 현금화한 금액에는 상당한 차이가 있을 수 있습니다.

왜 모든 Cosmos EVM 체인에 바로 경고하지 못했을까?

Cosmos 생태계의 구조도 대응을 어렵게 만들었습니다.

Cosmos Labs에 따르면 Cosmos 생태계에는 115개가 넘는 공개 블록체인이 존재합니다.

하지만 Cosmos 소프트웨어는 오픈소스이기 때문에 누구나 허가 없이 코드를 가져와 새로운 블록체인을 만들 수 있습니다.

따라서 Cosmos Labs가 Cosmos EVM을 사용하는 모든 체인을 정확하게 파악하고 있는 것은 아닙니다.

이번 사고 대응 과정에서도 기존 보안 연락망에 등록되지 않은 Cosmos EVM 배포 사례 11개가 추가로 발견됐습니다.

이는 취약점을 발견해도 실제 영향을 받는 모든 네트워크 운영자에게 비공개로 즉시 연락하는 것이 쉽지 않다는 것을 보여줍니다.

Cosmos Labs는 이번 공격 기간 동안 총 40개 체인과 대응을 조율했습니다.

또 실제 공격을 받지 않은 다른 잠재적 위험 네트워크 13곳과 함께 패치를 적용하거나 네트워크를 중단하는 등 예방조치를 진행했습니다.

어떤 Cosmos EVM 버전이 위험할까?

Cosmos가 공개한 공식 보안 권고에서는 이번 취약점을 Critical 등급으로 분류했습니다.

영향을 받는 버전은 크게 두 구간입니다.

0.6.2보다 낮은 버전

0.7.0 이상이면서 0.7.2보다 낮은 버전

안전한 패치 버전은 v0.6.2와 v0.7.2 이상입니다.

Cosmos Labs는 영향을 받는 운영자에게 반드시 패치된 버전으로 업그레이드할 것을 요구하고 있습니다.

설정을 하나 바꾸는 것만으로 완전히 해결할 수 있는 방법은 없습니다.

스테이킹 프리컴파일을 끄면 주요 공격 경로 하나를 차단할 수 있지만 공식 보안 권고에서는 이를 패치의 대안으로 인정하지 않습니다.

즉시 업그레이드가 불가능하다면 네트워크를 중단하는 것이 권장됩니다.

Cosmos Labs는 초기 판단이 잘못됐다고 인정했을까?

그렇습니다.

Cosmos Labs는 공식 사후분석에서 초기 취약점 평가가 잘못됐다는 사실을 명확하게 인정했습니다.

처음 보고된 개념증명의 범위에 지나치게 의존했고 실제 취약점이 더 넓은 네트워크 설정에서도 작동할 가능성을 충분히 확인하지 못했다는 것입니다.

이 때문에 사용자 자금을 실제로 위협하는 취약점을 일반적인 silent patch 절차로 처리하게 됐습니다.

결과적으로 보안 수정은 존재했지만 실제 운영 체인들이 패치의 긴급성을 충분히 알지 못하는 상황이 발생했습니다.

Cosmos Labs는 이번 사건을 계기로 앞으로 중요 취약점 평가 과정에서 최초 보고자의 테스트 범위를 넘어 더 넓은 환경을 검증하겠다고 밝혔습니다.

앞으로 Cosmos의 보안 공개 방식도 바뀔까?

Cosmos Labs는 이번 사건 이후 보안 대응 절차를 전면적으로 보완하겠다고 밝혔습니다.

우선 중요한 취약점을 분류할 때 최초 보고서의 개념증명만 보는 것이 아니라 더 다양한 네트워크 구성에서 위험성을 검증하는 절차를 강화할 계획입니다.

두 번째는 보안 연락망 확대입니다.

Cosmos EVM을 실제 운영하는 체인들이 보안 경고를 빠르게 받을 수 있도록 연락처 등록과 응답 상태를 정기적으로 확인할 예정입니다.

세 번째는 네트워크 중단 기준을 명확하게 만드는 것입니다.

어떤 위험 수준에서 일반적인 업그레이드를 권고하고 어떤 상황에서는 즉각적인 체인 중단을 요구해야 하는지 기준을 마련할 계획입니다.

네 번째는 private patch와 silent public patch를 언제 사용할 것인지 더 명확한 규칙을 만들겠다고 밝혔습니다.

장기적으로는 외부 보안 전문가와 함께 Cosmos의 전체 보안 운영 체계를 감사할 계획입니다.

이번 사건이 Cosmos 생태계에 남긴 문제는 무엇일까?

이번 사건은 단순한 코드 버그 하나의 문제가 아닙니다.

Cosmos 생태계에서는 여러 독립 블록체인이 동일한 오픈소스 모듈을 공유합니다.

이 구조는 개발 속도를 높이고 서로 검증된 기술을 재사용할 수 있다는 장점이 있습니다.

반면 공통 모듈에 심각한 취약점이 발생하면 여러 독립적인 체인이 동시에 같은 위험에 노출될 수 있습니다.

더 어려운 문제는 각 체인이 서로 다른 운영팀과 검증자 집단을 가지고 있다는 점입니다.

중앙화된 하나의 서비스라면 보안팀이 전체 시스템을 한꺼번에 패치할 수 있지만 Cosmos 기반 독립 체인은 각 네트워크가 개별적으로 업그레이드를 결정하고 실행해야 합니다.

따라서 공유 코드의 보안뿐 아니라 위험 정보가 각 운영팀에 얼마나 빠르고 정확하게 전달되는지도 중요한 보안 요소가 됩니다.

이번 사건에서는 수정된 코드 자체는 첫 공격 전에 존재했습니다.

하지만 실제 운영 체인들에게 해당 업데이트가 사용자 자금 손실을 막기 위한 긴급 패치라는 사실이 충분히 전달되지 못했습니다.

결론

2026년 8월 20일부터 25일까지 Cosmos EVM의 치명적인 취약점이 총 6개 독립 블록체인에서 실제 공격에 악용됐습니다.

Cosmos Hub 자체가 해킹된 것은 아닙니다.

공격자들은 탈취한 토큰 가운데 약 287만 달러 상당을 탈중앙화거래소에서 교환했고, 중앙화거래소를 통해 약 285만 달러를 추가로 매도한 것으로 추정됩니다.

총 약 572만 달러 규모입니다.

하지만 중앙화거래소 계정 일부가 동결됐기 때문에 이를 최종 확정 손실액으로 단정할 수는 없습니다.

더 중요한 문제는 해당 취약점이 첫 공격 약 4개월 전인 4월 25일 이미 Cosmos 버그바운티 프로그램에 신고됐다는 사실입니다.

Cosmos Labs는 당시 소수점 18자리의 실제 운영 환경에서 공격을 재현하지 못하면서 사용자 자금에 위험을 주지 않을 것으로 잘못 판단했습니다.

이후 추가 연구를 통해 모든 Cosmos EVM 체인이 영향을 받을 수 있다는 사실을 확인했고 8월 19일 v0.6.2와 v0.7.2 패치를 배포했습니다.

하지만 약 20시간 뒤 MANTRA에서 첫 공격이 시작됐습니다.

이후 TAC와 KiiChain을 포함해 총 6개 체인에서 동일한 취약점이 악용됐습니다.

따라서 이번 사건의 핵심은 단순히 570만 달러 규모의 해킹이 발생했다는 사실보다 이미 발견된 취약점의 위험 범위를 잘못 평가했고, 패치가 존재했음에도 독립적인 체인 운영자들에게 긴급성을 충분히 전달하지 못했다는 점입니다.

Cosmos Labs 역시 이 문제를 인정하고 취약점 평가, 보안 연락망, 네트워크 중단 기준과 패치 공개 절차를 전면적으로 개선하겠다고 밝혔습니다.

cryptoqri

함께 보면 좋은 글

댓글 0

첫 댓글을 남겨보세요.

광고 차단 알림

광고 클릭 제한을 초과하여 광고가 차단되었습니다.

단시간에 반복적인 광고 클릭은 시스템에 의해 감지되며, IP가 수집되어 사이트 관리자가 확인 가능합니다.