크로스 체인 브릿지 다중 서명 권한이 교체되었다. Celo에서 도대체 무슨 일이 일어난 걸까?
作者:Azuma,행성 일보
베이징 시간 11월 23일 저녁, F2Pool 창립자 신어는 웨이보에서 보안 조직 Rugdoc의 위험 경고를 전하며 "Celo 체인에서 채굴하는 분들은 주의하시기 바랍니다. 크로스 체인 브리지(Optics)의 멀티시그가 변경되었으며, 문제가 의심됩니다. 위험을 줄이는 방법은 Celo 체인에서 다른 자산을 Celo로 판매하는 것입니다. 현재 판매하는 사람이 많지 않아 몇 포인트 손실이 발생할 수 있습니다. 위험을 스스로 판단하시고, 도박을 할지 손실을 줄일지는 전적으로 본인의 실력에 달려 있습니다. 용기가 있는 분들은 차익 거래를 할 수도 있습니다."라고 언급했습니다.
Celo 공식 주도로 구축된 크로스 체인 브리지 프로토콜인 Optics(계약 주소: 0x6a39909e805A3eaDd2b61fFf61147796ca6aBB47)는 현재 외부 생태계에서 Celo로 자금이 유입되는 주요 경로입니다. 이 브리지에 문제가 발생하면 Celo 생태계 전체의 자금 흐름에 영향을 미칠 수 있습니다. 따라서 Optics의 문제가 폭로된 이후, 커뮤니티 내에서 공포감이 퍼지기 시작했습니다.
Celo의 개발 팀 cLabs의 CEO Tim Moreton의 사건 설명에 따르면성명, 멀티시그 권한이 교체된 것은 누군가가 일방적으로 GovernanceRouter 계약의 Optics 복구 모드(recovery mode)를 활성화했기 때문입니다. 브리지 서비스는 정상적으로 작동하고 있지만, 이 작업으로 인해 Optics 프로토콜이 복구 관리 계정(recovery manager account)에 의해 완전히 제어되었고, 원래의 멀티시그 권한도 덮어씌워졌습니다. 그러나 Tim은 브리지에 잠겨 있는 자금(현재 잠겨 있는 자금량은 4000만 달러를 초과함)이 현재 위험이 없다고 생각하고 있습니다.
Tim이 공개한 체인 상 거래 기록에 따르면, 이 사건은 실제로 25일 전인 10월 29일에 발생했으며, 즉 10월 29일 이후 Optics는 계속해서 복구 모드에 있었지만 cLabs 팀은 11월 22일에야 커뮤니티에 상황을 공개했습니다.
가장 주목할 점은, 멀티시그 권한이 교체된 기술적 원리를 설명하는 것 외에도 Tim은 cLabs에서 해고된 전 고위 개발자 James Prestwich에 대해 언급했습니다. Tim은 복구 모드가 활성화된 것은 James가 부적절한 행동으로 해고된 후 15분이 지났을 때 발생했다고 주장하며, Optics의 배포 과정에서 James가 복구 주소를 포함한 pull request를 생성했으며, 이 주소에 대한 확인을 요청하고 비용을 청구한 적이 있다고 밝혔습니다. Tim은 또한 문제가 발견된 이후 cLabs가 문제를 해결하기 위해 James와 접촉하려고 했지만 지금까지 성공하지 못했다고 말했습니다.
그러나 Tim의 "주장"에 대해 James는 "나는 결코 Optics 복구 모드의 키 소유자가 아니었다. cLabs와 Celo가 그들의 괴롭힘을 공개적으로 드러내게 되어 실망스럽다. 그들은 거짓말로 내 명성을 공격하고 있다. 변호사의 조언에 따라 나는 지금 아무것도 말하지 않을 것이다."라고 응답했습니다.
명백히 Tim과 James의 주장은 모순이 있으며, 두 사람이 모두 거짓말을 하지 않았다면, 도대체 누가 복구 모드를 활성화했을까요?
사건 발생 이후, 커뮤니티 내에서도 체인 상 기록을 통해 조사가 진행되었습니다. 커뮤니티 회원 @diwu1989는 복구 모드를 활성화한 마지막 거래(거래 해시: 0x8b1e0ca5f32c08e0afe64f0ab42204e3519712fe3bba0eeedeece56ccbf49461)에서 복구 관리 주소가 "0x3d9330014952bf0a3863feb7a657bffa5c9d40b9"에서 "0xdcbf2088b7a6ef91f954be9ca658ea5b8e9b62d4"로 변경되었으며, 후자는 "0x2f4bea4cb44d0956ce4980e76a20a8928e00399a"에 의해 생성되었다(생성 거래 해시: 0xd224025870298fea9877880b89b24ed0569c41d3dd147e6afec5ac41da4d098e)고 지적했습니다. 따라서 문제의 핵심은 0x2f로 시작하는 주소의 소속을 찾는 것입니다.
또 다른 커뮤니티 회원 @Ryan은 이 생각을 이어가며 해당 주소가 현재 PARTY 토큰을 보유한 몇 안 되는 주소 중 하나인 다른 프로젝트 PartyDAO와 연관이 있음을 발견했습니다. 만약 이 프로젝트에 연락할 수 있다면, 그들의 신원을 알 수 있을 것입니다.
커뮤니티 회원 @Deepcryptodive는 또한 0x2f로 시작하는 주소의 자금이 0x2a98로 시작하는 Kucoin 주소에서 왔으며, Kucoin의 KYC 시스템을 통해 이 사람의 신원을 확인할 수 있을 것이라고 지적했습니다.
여러 사람의 공동 조사 끝에 진실이 드러났습니다. 분산형 콘텐츠 플랫폼 Mirror의 주소 메모에서 0x2f로 시작하는 주소의 자금이 Anna라는 사람에게 속한다는 것을 알 수 있었습니다. 그렇다면 Anna가 복구 모드를 활성화한 사람일까요?
답은 긍정적인 것 같습니다. 커뮤니티 사용자는 Github 기록에서 26일 전, 아바타와 이름(Anna)이 동일한 커뮤니티 개발자가 Github에서 Optics 복구 모드 시간 잠금의 취약점을 보고했으며, 이 취약점을 보완하기 위해 복구 모드를 활성화하고 더 안전한 멀티시그 주소로 변경해야 한다고 주장했습니다. 또한 역사적 코드 제출을 보면 Anna가 실제로 PartyDAO의 개발 작업에 참여했음을 알 수 있습니다.
이로써 진실은 거의 드러났습니다. 체인 상 주소가 일치하고, 보고서에서 언급된 취약점과 해결책이 이번 사건과 일치하므로, 기본적으로 Anna가 Optics의 복구 모드를 활성화했으며, 복구 관리 계정도 Anna의 통제 하에 있을 가능성이 높습니다.
하지만 사건의 경과가 명확해졌음에도 불구하고, 일부 커뮤니티 회원들은 CELO와 cLabs의 이번 사건 처리 방식에 대해 매우 불만족하고 있습니다. Celo의 개발 팀인 cLabs는 사건의 경과를 외부 조사자보다 더 잘 알고 있어야 하지만, Tim의 성명에서는 명확한 설명을 제공하지 않고, 오히려 근거 없는 추측을 하며 해고된 개발자 James에게 비난의 화살을 돌렸습니다.
그 외에도 일부 커뮤니티 회원들은 Tim이 성명에서 언급한 "브리지 자금에 위험이 없다"는 주장에 대해 상당히 불만족하고 있습니다. Tim의 설명만으로 판단할 때, 현재 계약의 통제권은 cLabs나 다른 알려진 커뮤니티 회원의 손에 있지 않으므로, 일방적으로 "자금에 위험이 없다"고 주장하는 것은 극히 무책임한 일입니다.
트위터 대 V @Monet Supply는 이 사건에 대해 팀이 저지른 세 가지 실수를 요약했습니다:
애플리케이션이 출시되기 전에 배포된 계약을 확인한 사람이 없다;
25일 동안 커뮤니티에 어떤 공개도 하지 않았다;
Tim의 이상한 성명(우리는 계약 통제권을 잃었지만 자금은 안전하다…)이 있다.
Monet Supply는 마지막으로 이 모든 것을 Celo 내부 관리의 혼란에 기인한다고 결론지으며, CELO를 하락세로 볼 것이라고 밝혔습니다.
어제 저녁, 커뮤니티 내의 공포와 불만을 진정시키기 위해 Celo 공식은 AMA 대화를 조직하고, 공식 포럼에서 이 사건에 대해 다시 설명했습니다. 이번에는 cLabs를 대표하는 사람이 CEO Tim이 아닌 다른 두 명의 개발자 Eric과 Marek으로 바뀌었습니다.
새로운 성명에서는 Optics 계약에 대한 일부 감사와 커뮤니티에 대한 공개, 그리고 Optics V2를 발표하여 사용자 자금을 이전할 것이라는 몇 가지 핵심 정보를 공개했습니다. Marek은 또한 "우리는 이번 사건에서 교훈을 얻을 것이며, 문제가 발생한 원인과 이유를 계속 분석할 것입니다. 이를 위해 가능한 한 빨리 전체 사건 회고 보고서를 발표할 계획입니다."라고 언급했습니다.
이제 사건이 이 지경에 이르렀지만, 많은 세부 사항은 Marek이 언급한 보고서가 발표된 후에야 더 명확해질 것입니다(예: Anna와 cLabs 간의 소통이 왜 전혀 없는 것처럼 보이는가? 복구 관리 계정이 여전히 Anna의 통제 하에 있는가?). 그러나 사건의 기본 상황은 대체로 명확해졌습니다.
전반적으로 이번 "Optics 보안 사건"은 다소 "허위 경고" 요소가 존재합니다. 커뮤니티 개발자인 Anna는 멀티시그를 교체한 목적이 악의적이기보다는 버그를 수정하기 위한 것이었으며, 이는 지난 25일 동안 Optics에서 자금 유출이 없었던 이유이기도 합니다. 그러나 모든 일을 너무 낙관적으로 볼 수는 없으며, 사건이 완전히 마무리되기 전까지는 Optics의 사용 빈도를 줄이는 것이 좋습니다. 크로스 체인 필요가 있을 경우, Celo 생태계를 지원하는 Anyswap을 선택하거나 신어가 제안한 대로 브리지 자산을 CELO로 교환한 후 중앙화 거래소를 통해 출입하는 것이 좋습니다.
크로스 체인 분야는 항상 보안 사고가 빈발하는 영역입니다. 현재까지 자금 손실이 발생하지 않았지만, 이번 사건이 경고하는 바는 결코 간과할 수 없습니다. Celo 개발 팀과 다른 프로젝트 측이 이를 교훈 삼아 내부 관리 질서를 개선하고 투명성을 높이며 사용자에게 더 안전하고 신뢰할 수 있는 크로스 체인 경험을 제공하기를 바랍니다.