폴리 네트워크가 2021년 크로스체인 브리지 공격으로 잃은 6억1000만달러(약 8205억원) 이상의 가상자산을 약 16일 만에 모두 회수했다. 공격자는 자금 이동을 시작한 지 24시간 안에 반환에 나섰고, 테더의 USDT 동결 조치도 복구에 영향을 줬다.
사건은 2021년 8월 10일 이더리움, 바이낸스 스마트 체인, 폴리곤에서 발생했다. 폴리 네트워크는 피해 규모를 ‘6억1000만달러 이상’으로 설명했으며, 체이널리시스는 6억1200만달러로 집계했다. 일부 보도는 피해액을 6억1100만달러에서 6억1300만달러 사이로 표기했다.
공격자는 크로스체인 스마트계약의 권한 검증 절차를 악용했다. executeCrossChainTx 흐름을 거쳐 자산 관리 계약의 키퍼 권한을 바꾼 뒤 자금을 이동시킨 것으로 분석됐다.
공격 대상 자산에는 이더리움(ETH), 랩트비트코인(WBTC), 유에스디코인(USDC), 테더(USDT) 등이 포함됐다. 서로 다른 블록체인의 거래를 연결하는 브리지 계약이 여러 자산과 권한을 동시에 관리한다는 점이 피해 규모를 키운 배경으로 풀이된다.
사건은 일반적인 자금 탈취와 달리 공격자와 프로젝트 측의 공개 대화로 이어졌다. 공격자는 온체인 메시지를 남긴 뒤 반환 의사를 밝혔고, 폴리 네트워크는 자산을 돌려보낼 주소와 다중서명 지갑을 통한 회수 절차를 제시했다.
엘립틱은 공격자가 반환 의사를 밝힌 뒤 이더리움 등 세 개 블록체인의 지정 주소로 자산을 보내기 시작했다고 분석했다. 블록체인 거래 기록과 커뮤니티의 실시간 추적이 자금 이동을 제한하는 데 영향을 줬다는 설명이다.
초기 반환이 시작된 뒤에도 자산 전체가 즉시 사용자에게 돌아온 것은 아니다. 2021년 8월 12일 기준 약 3억4200만달러(약 4600억원)가 회수됐지만, 2억6800만달러(약 3605억원) 상당은 아직 반환되지 않은 상태였다.
일부 자산은 공격자와 폴리 네트워크가 함께 관리하는 다중서명 지갑에 묶였다. 다중서명 지갑은 여러 키 보유자의 승인이 있어야 자산을 이동할 수 있어, 단일 주체가 자금을 즉시 처분하기 어렵다.
폴리 네트워크는 8월 23일 공격자가 남아 있던 2만8953 ETH와 1032 WBTC를 회수하는 데 필요한 키를 공개했다고 밝혔다. 회사는 이를 통해 공격 당시 빠져나간 사용자 자산을 모두 회수했다고 설명했다.
테더는 8월 25일 동결했던 3343만1200 USDT를 폴리 네트워크의 지정 다중서명 지갑으로 보냈다. 폴리 네트워크는 다음 날 자산 복구가 완료됐다고 공표했다.
이번 사건은 크로스체인 브리지가 단순한 자산 이동 통로가 아니라 체인 간 메시지 검증과 권한 위임을 함께 처리하는 구조라는 점을 보여줬다. 계약 코드뿐 아니라 키 관리, 다중서명 운영, 비상 대응 절차까지 보안 대상이 된다는 의미다.
테더의 조치는 스테이블코인 발행사의 중앙화된 통제권이 자산 회수 과정에서 변수로 작동할 수 있음을 보여줬다. 온체인 거래는 공개돼 있었지만, 동결된 USDT는 테더가 지정 지갑으로 이동시키기 전까지 공격자가 직접 사용할 수 없었다.
공격자 신원과 반환 동기는 최종적으로 확인되지 않았다. 일부 추적 결과는 모네로(XMR)와 특정 거래소의 연관 가능성을 제기했지만, 계정 등록과 자금 흐름을 둘러싼 반론도 나왔다.
폴리 네트워크는 사건 이후 보안 감사와 메인넷 업그레이드, 버그바운티 프로그램을 추진했다. 총 50만달러(약 6억7250만원) 규모의 보상 프로그램과 공격자에 대한 160 ETH 및 최고보안자문역 제안도 진행됐다.
이후에도 크로스체인 브리지의 취약점은 반복적으로 문제로 떠올랐다.

