해커가 돈을 훔쳤는데, 수이는 돈을 털 수 있을까?

avatar
十四君
보름 전
이 글은 약 5033자,전문을 읽는 데 약 7분이 걸린다
체인의 미래는 체인이 보호하기로 선택한 신념에 따라 결정됩니다.

머리말

이번 사건은 사용자의 승리가 아닌 자본의 승리이며, 업계 발전에 있어서는 좌절입니다.

비트코인은 왼쪽으로 가고, 수이는 오른쪽으로 가며, 업계의 분산화를 흔드는 모든 움직임은 비트코인에 대한 더 강한 믿음을 가져옵니다.

세상에 필요한 것은 단순히 더 나은 글로벌 금융 인프라가 아니라, 자유를 위한 공간이 필요한 사람들은 항상 존재할 것입니다.

옛날에는 제휴 체인이 공개 체인보다 더 인기가 있었는데, 그 이유는 당시의 규제 요구 사항을 충족했기 때문입니다. 오늘날 제휴의 쇠퇴는 실제 사용자의 요구가 아닌, 단순히 수요에 부응하는 것을 의미합니다. 규제 대상 사용자가 사라진다면 규제 도구의 필요성은 어떻게 될까요?

1. 배경

2025년 5월 22일, 수이 퍼블릭 체인 생태계의 가장 큰 분산형 거래소(DEX)인 세터스가 해커의 공격을 받았습니다. 유동성이 순식간에 급락하고, 여러 거래쌍의 가격이 폭락했으며, 손실액은 2억 2천만 달러를 넘었습니다.

본 기사 작성 시점을 기준으로 타임라인은 다음과 같습니다.

  • 5월 22일 아침, 해커들이 세터스를 공격하여 2억 3천만 달러를 훔쳤습니다. 세투스는 긴급하게 계약을 중단하고 공고를 냈다.

  • 5월 22일 오후, 해커는 약 6,000만 달러를 체인 전반으로 이체했고, 나머지 1억 6,200만 달러는 여전히 수이 체인 주소에 있었습니다. 수이 검증 노드는 해커 주소를 거부 목록에 추가하고 자금을 동결하는 조치를 신속히 취했습니다.

  • 5월 22일 저녁, 수이 CPO @emanabio는 다음과 같이 트윗을 올렸습니다: 자금이 동결되었으며 곧 반환이 시작될 것입니다.

  • 5월 23일, Cetus는 취약점을 수정하고 계약을 업데이트하기 시작했습니다.

  • 5월 24일, 수이는 홍보 자료를 공개하며 별칭과 화이트리스트를 통해 자금을 회수할 것이라고 설명했습니다.

  • 5월 26일, 수이는 프로토콜 업그레이드를 구현하고 해커 자산을 보관 주소로 이전할지 여부를 제안하며 온체인 거버넌스 투표를 시작했습니다.

  • 5월 29일, 투표 결과가 발표되었으며, 검증 노드의 2/3 이상이 프로토콜을 지지했습니다. 프로토콜 업그레이드가 구현될 준비가 되었습니다.

  • 5월 30일부터 6월 초까지 프로토콜 업그레이드가 적용되어 지정된 거래 해시가 실행되었으며 해커의 자산은 합법적으로 이전되었습니다.

2. 공격 원칙

업계에는 이벤트 원칙에 대한 많은 기사가 있지만, 여기서는 핵심 원칙에 대한 개요만 제공합니다.

공격 프로세스 관점에서:

공격자는 먼저 플래시론을 사용하여 약 10,024,321.28 haSUI를 빌려 거래 풀의 가격을 즉시 떨어뜨렸습니다.

99.90%. 이 거대한 매도 주문으로 인해 목표 풀 가격이 약 1.8956 × 10 ^ 19에서 1.8425 × 10 ^ 19로 떨어져 거의 바닥을 돌파했습니다.

이후 공격자는 Cetus에 매우 좁은 범위(틱의 하한은 300000, 상한은 300200, 범위 폭은 1.00496621%에 불과함)의 유동성 포지션을 생성했습니다. 이렇게 좁은 범위는 후속 계산 오류로 인해 필요한 토큰 수에 미치는 영향이 커집니다.

공격의 핵심 원칙:

취약점은 Cetus가 필요한 토큰 수를 계산하는 데 사용하는 get_delta_a 함수의 정수 오버플로입니다. 공격자는 의도적으로 엄청난 양의 유동성(약 10^37 단위)을 추가하겠다고 말했지만, 실제로는 계약에 토큰을 1개만 넣었습니다.

checked_shlw의 오버플로 감지 조건에 오류가 있어 계약은 왼쪽 이동 계산 중에 높은 위치를 잘라내어 시스템이 필요한 haSUI 양을 심각하게 과소평가하게 되었고, 그 결과 매우 적은 비용으로 엄청난 양의 유동성을 교환하게 되었습니다.

기술적인 관점에서 볼 때, 위의 취약성은 Cetus가 Move 스마트 계약에서 잘못된 마스크와 판단 조건을 사용하여 0xffffffffffffffff << 192 미만의 모든 값이 감지를 우회할 수 있게 된 사실에서 비롯됩니다. 그리고 64비트만큼 왼쪽으로 이동한 후 상위 데이터를 잘라내고, 시스템은 소수의 토큰만 수집함으로써 엄청난 유동성을 얻었다고 믿습니다.

사건 이후, 두 가지 공식적인 조치가 취해졌습니다. 동결 대 복구로, 이는 두 단계로 구성됩니다 .

  • 동결 단계는 Deny List + 노드 합의를 통해 완료됩니다.

  • 복구 단계에는 블랙리스트를 우회하기 위한 온체인 프로토콜 업그레이드 + 커뮤니티 투표 + 지정된 거래 실행이 필요합니다.

3. 수이의 동결 메커니즘

Sui 체인 자체에는 해커의 자금을 동결할 수 있는 특별한 Deny List 메커니즘이 있습니다. 뿐만 아니라, 수이의 토큰 표준에는 동결 기능이 내장된 규제된 토큰 모드도 있습니다.

이 긴급 동결은 이 기능을 활용했습니다. 검증 노드는 도난당한 자금과 관련된 주소를 로컬 구성 파일에 빠르게 추가했습니다. 이론상으로는 각 노드 운영자가 TransactionDenyConfig를 수정하여 블랙리스트를 업데이트할 수 있지만, 네트워크 일관성을 보장하기 위해 초기 구성 게시자인 Sui Foundation은 중앙 집중식 조정을 수행했습니다.

재단은 해커의 주소가 포함된 구성 업데이트를 먼저 공식적으로 발표했고, 검증자는 기본 구성에 따라 동기적으로 적용되어 해커의 자금은 체인에서 일시적으로 봉인되었습니다 . 사실 이러한 현상의 이면에는 매우 중앙집중화된 요소가 존재합니다.

피해자들의 자금 동결을 막기 위해 수이팀은 즉시 화이트리스트 메커니즘 패치를 시작했습니다.

이는 이후의 자금 이체를 위한 것입니다. 합법적인 거래는 사전에 구성하여 화이트리스트에 등록할 수 있으며, 자금 주소가 블랙리스트에 있는 경우에도 시행이 가능합니다.

새로운 기능인 transaction_allow_list_skip_all_checks를 사용하면 특정 거래를 면제 목록에 미리 추가하여 이러한 거래가 서명, 권한, 블랙리스트 등 모든 보안 검사를 건너뛸 수 있습니다.

화이트리스트 패치는 해커의 자산을 직접 훔칠 수 없다는 점에 유의하세요 . 이 기능은 특정 거래에만 동결을 우회할 수 있는 기능을 제공하며, 실제 자산 이전을 완료하려면 여전히 법적 서명이나 추가 시스템 권한 모듈이 필요합니다.

실제로 업계의 주요 동결 계획은 토큰 계약 수준에서 발생하는 경우가 많으며 발급자의 여러 서명으로 제어됩니다.

예를 들어 테더가 발행하는 USDT의 경우, 계약서에는 블랙리스트 기능이 내장되어 있어 발행 회사가 불법 주소를 동결시켜 USDT 전송이 불가능하게 만들 수 있습니다. 이 솔루션을 사용하려면 체인에서 동결 요청을 시작하기 위해 여러 개의 서명이 필요하며, 여러 개의 서명이 합의에 도달한 후에만 실행되므로 실행 지연이 발생합니다.

테더의 동결 메커니즘은 효과적이지만, 통계에 따르면 다중 서명 프로세스에는 종종 윈도우 기간이 있어 범죄자들이 이를 악용할 기회가 있습니다.

이와 대조적으로, 수이의 동결은 기본 프로토콜 수준에서 발생하며 검증자 노드에 의해 공동으로 작동하여 일반적인 계약 호출보다 훨씬 빠르게 실행됩니다.

이 모델에서 충분히 빠르게 실행하려면 이러한 검증자 노드 자체의 관리가 매우 통합되어야 함을 의미합니다.

4. 수이의 이송형 재활용 구현 원칙

더욱 놀라운 점은 수이가 해커의 자산을 동결했을 뿐만 아니라, 온체인 업그레이드를 통해 훔친 자금을 이체하고 회수할 계획이었다는 것입니다.

5월 27일, Cetus는 동결된 자금을 다중 서명 에스크로 지갑으로 보내기 위한 프로토콜을 업그레이드하기 위한 커뮤니티 투표를 제안했습니다. 수이 재단은 즉시 온체인 거버넌스 투표를 시작했습니다.

5월 29일 투표 결과가 발표되었고, 검증자의 약 90.9%가 이 계획을 지지했습니다. 수이는 이 제안이 통과되면 해커 계좌 두 개에 동결된 모든 자금은 해커의 서명 없이 다중 서명 지갑으로 복구될 것이라고 공식 발표했습니다.

해커의 서명이 필요 없습니다. 정말 독특한 기능입니다. 블록체인 업계에서 이런 복구 방법은 없었습니다.

Sui의 공식 GitHub PR을 보면 해당 프로토콜이 주소 별칭 메커니즘을 도입했다는 것을 알 수 있습니다. 업그레이드에는 ProtocolConfig에 별칭 규칙을 미리 지정하여 허용된 특정 거래에서 합법적인 서명을 해커 계정에서 보낸 것으로 처리할 수 있도록 하는 기능이 포함됩니다.

구체적으로, 실행될 구조 거래 해시 목록은 대상 주소(즉, 해커 주소)에 바인딩되며, 이러한 고정 거래 요약에 서명하고 게시하는 모든 실행자는 유효한 해커 주소 소유자로서 거래를 시작한 것으로 간주됩니다. 이러한 특정 거래의 경우 검증 노드 시스템은 거부 목록 검사를 우회합니다.

코드 수준에서 Sui는 거래 검증 논리에 다음과 같은 판단을 추가했습니다. 거래가 블랙리스트에 의해 차단되면 시스템은 서명자를 탐색하여 protocol_config.is_tx_allowed_via_aliasing(sender, signer, tx_digest)가 참인지 확인합니다.

별칭 규칙을 충족하는 서명자가 있는 한, 즉 거래가 통과 허용으로 표시된 경우, 이전의 가로채기 오류는 무시되고 정상적인 패키징과 실행이 계속됩니다.

5. 관점

1억 6천만 달러, 업계의 가장 깊은 기본 신념을 무너뜨리다

세터스 사건과 관련해서, 제 개인적인 관점에서 보면 이 사건은 빨리 지나갈지 몰라도, 이 모델은 업계의 기반을 무너뜨리고 블록체인은 동일한 원장 체계 하에서는 변조될 수 없다는 전통적인 합의를 깨뜨렸기 때문에 잊혀지지 않을 것입니다.

블록체인 설계에서 계약은 법이고 코드는 심판입니다.

하지만 이 사건에서는 코드가 실패하고, 거버넌스가 개입하여 권한이 무시되어 투표 행동이 코드의 결과를 결정한다는 패턴이 형성되었습니다.

이는 수이의 거래 내용을 직접적으로 도용하는 접근 방식이 해커 문제를 처리하는 주류 블록체인의 접근 방식과 매우 다르기 때문입니다.

합의가 훼손된 것은 이번이 처음은 아니지만 가장 조용한 훼손입니다.

역사적으로:

  • 이더리움은 2016년 DAO 사건 당시 손실을 보상하기 위해 하드포크를 통해 이전 거래를 롤백했지만, 이 결정으로 인해 이더리움과 이더리움 클래식 체인이 분리되었습니다. 이 과정은 논란의 여지가 있었지만 결국에는 다양한 집단이 서로 다른 합의된 신념을 형성했습니다.

  • 비트코인 커뮤니티 역시 비슷한 기술적 문제를 겪었습니다. 2010년에 발생한 가치 오버플로 취약점은 개발자들에 의해 긴급히 복구되었고, 합의 규칙이 업그레이드되어 불법적으로 생성된 약 184억 개의 비트코인이 완전히 삭제되었습니다.

이는 동일한 하드 포크 모델로, 문제 발생 전으로 원장을 롤백한 후, 사용자는 계속 사용할 원장 시스템을 스스로 결정할 수 있습니다.

DAO 하드 포크와 비교했을 때, 수이는 체인을 분할하지 않고 대신 프로토콜을 업그레이드하고 별칭을 구성하여 이 사고를 정확히 타깃으로 삼았습니다. 이를 통해 수이는 체인 연속성과 대부분의 합의 규칙을 그대로 유지했을 뿐만 아니라, 기본 프로토콜을 사용하여 표적화된 구조 작업을 구현할 수 있음을 보여주었습니다.

문제는 과거의 포크 스타일 롤백이 사용자의 믿음에 따른 선택이라는 것입니다. 수이의 프로토콜 스타일 수정안은 체인이 당신을 대신하여 결정을 내리는 것입니다.

열쇠도 아니고 동전도 아니신가요? 안타깝게도 더 이상은 그렇지 않습니다.

장기적으로 이는 당신의 키가 아니면 당신의 코인도 아니다 라는 개념이 수이 체인에서 깨졌다는 것을 의미합니다. 사용자의 개인 키가 손상되지 않았더라도 네트워크는 여전히 자산 흐름을 차단하고 집단 협약 변경을 통해 자산을 리디렉션할 수 있습니다.

이것이 앞으로 대규모 보안 사고에 대응하는 블록체인의 선례가 되거나, 심지어 다시 따를 수 있는 관행으로 여겨진다면.

사슬이 정의의 규칙을 어길 수 있다면, 어떤 규칙이든 어길 수 있는 선례도 생기는 셈입니다.

일단 공익 자금 횡령이 성공하면 다음에는 도덕적 회색 지대에서 벌어질 가능성이 있습니다.

그 다음에는 무슨 일이 일어날까요?

해커가 사용자의 돈을 훔쳤으니, 그룹 투표로 그의 돈을 빼앗을 수 있을까?

투표는 누가 더 많은 돈(pos)을 가지고 있는지에 따라 결정되는가요, 아니면 더 많은 사람을 가지고 있는지에 따라 결정되는가요? 만약 돈이 더 많은 사람이 승리한다면, 류츠신이 말한 최종 프로듀서들이 곧 도착할 것입니다. 만약 더 많은 사람을 가진 사람이 승리하면, 군중도 함께 일어설 것이다.

전통적인 시스템에서는 불법 소득이 보호받지 못하는 것이 매우 흔한 일이고, 동결과 이체는 전통적인 은행의 일상적인 업무입니다.

하지만 기술적인 관점에서 이를 달성할 수 없다는 사실이 블록체인 산업 발전의 근본 원인입니다.

업계의 규정 준수에 대한 요구는 계속해서 높아지고 있습니다. 오늘은 해커에 의해 계좌 잔액이 동결되고 변경될 수 있고, 내일은 지정학적 요인이나 갈등 요인으로 인해 임의로 변경될 수 있습니다. 만약 체인이 도구의 지역적 부분이 된다면.

해당 산업의 가치는 크게 압축될 것이고, 기껏해야 그다지 유용하지 않은 금융 시스템일 뿐일 것입니다.

이것이 제가 이 업계에 남기로 결심한 이유이기도 합니다. 블록체인은 동결될 수 없기 때문에 가치 있는 것이 아니라, 싫어하더라도 당신에게는 변하지 않을 것이기 때문에 가치 있습니다.

규제가 일반적인 추세인 가운데, 이 체인점은 자체적인 정신을 보호할 수 있을까?

옛날에는 제휴 체인이 공개 체인보다 더 인기가 있었는데, 그 이유는 당시의 규제 요구 사항을 충족했기 때문입니다. 오늘날 제휴의 쇠퇴는 실제 사용자의 요구가 아닌, 단순히 수요에 부응하는 것을 의미합니다. 규제 대상 사용자가 사라졌으니, 규제 도구의 필요성은 어떻게 될까요 ?

산업 발전의 관점에서

효율적인 중앙집중화는 블록체인 개발에 필요한 단계인가? 분산화의 궁극적인 목표가 사용자의 이익을 보호하는 것이라면, 과도기적 조치로서 중앙집중화를 허용할 수 있을까?

온체인 거버넌스의 맥락에서 민주주의라는 단어는 실제로 토큰 가중치를 갖습니다. 그렇다면 해커가 많은 양의 SUI를 보유하고 있다면(또는 어느 날 DAO가 해킹당해 해커가 투표권을 장악한다면) 그는 자신을 정화하기 위해 합법적으로 투표할 수 있을까요 ?

궁극적으로 블록체인의 가치는 동결 가능 여부가 아니라, 어떤 그룹이 동결할 수 있는 능력이 있음에도 동결하지 않기로 선택하는지에 달려 있습니다.

체인의 미래는 기술적 구조에 의해 결정되는 것이 아니라, 체인이 보호하고자 선택하는 신념 체계에 의해 결정됩니다.

창작 글, 작자:十四君。전재 / 콘텐츠 제휴 / 기사 요청 연락처 report@odaily.email;违규정 전재 법률은 반드시 추궁해야 한다.

ODAILY는 많은 독자들이 정확한 화폐 관념과 투자 이념을 수립하고 블록체인을 이성적으로 바라보며 위험 의식을 확실하게 제고해 달라고 당부했다.발견된 위법 범죄 단서에 대해서는 관련 부서에 적극적으로 고발하여 반영할 수 있다.

추천 독서
편집자의 선택