EigenLayer 재질권의 위험과 최상의 운영 관행

CoboGlobal
2024-02-06 11:22:40
수집
EigenLayer 재질권의 위험과 최적 운영 관행

저자: Cobo 보안 팀, Cobo Global

Restaking의 열기가 높아짐에 따라, 시장에는 Eigenlayer를 기반으로 한 Restaking 프로젝트가 많이 등장했습니다. Restaking은 이더리움 Beacon의 스테이킹 레이어에 대한 신뢰를 공유함으로써 사용자의 스테이킹 지분을 다른 프로젝트와 공유하여, 사용자가 더 많은 수익을 얻는 동시에 다른 프로젝트도 ETH Beacon 레이어와 동일한 합의 신뢰와 안전성을 누릴 수 있도록 하는 것을 목표로 합니다.

다양한 Restaking 프로젝트 간의 상호작용 위험을 더 잘 이해할 수 있도록 Cobo 보안 팀은 시장의 주요 Restaking 프로토콜과 주요 LST 자산에 대한 조사를 수행하고 관련 위험을 정리하여, 사용자가 수익을 누리는 동시에 해당 위험을 더 잘 관리할 수 있도록 하였습니다.

주: Cobo 보안 팀이 제시한 관련 결론은 UTC 시간 2024년 2월 5일 0시 이전을 기준으로 합니다.

위험 점 개요

현재 시장의 Restaking 프로토콜은 기본적으로 EigenLayer를 기반으로 구축되어 있으며, 사용자에게 Restaking에 참여하는 것은 다음과 같은 위험에 노출된다는 것을 의미합니다:

계약 위험

  1. 현재 Restaking에 참여하기 위해서는 프로젝트 측 계약과 상호작용해야 하며, 사용자는 계약이 공격받을 위험을 감수해야 합니다;

  2. EigenLayer를 기반으로 구축된 프로젝트 자금은 최종적으로 EigenLayer 프로토콜의 계약에 보관되며, EigenLayer 계약이 공격받을 경우 관련 프로젝트 자금도 손실될 수 있습니다;

  3. EigenLayer에는 native ETH Restaking과 LST Restaking의 두 가지 Restaking 유형이 존재합니다. LST Restaking의 경우 자금이 직접 EigenLayer 계약에 보관됩니다. 그러나 Native ETH Restaking의 경우 자금은 ETH Beacon 체인에 보관됩니다; 이는 LST Restaking을 수행하는 사용자가 EigenLayer 계약 위험으로 인해 손실을 입을 수 있음을 의미합니다;

  4. 프로젝트 측에는 고위험 권한이 존재하며, 특정 상황에서는 민감한 권한을 통해 사용자 자금을 유용할 수 있습니다.

LST 위험

LST 토큰은 탈피 가능성이 있으며, LST 계약의 업그레이드/공격으로 인해 LST 가치가 편차를 보이거나 손실이 발생할 수 있습니다.

탈퇴 위험

현재 EigenLayer를 제외한 시장의 주요 Restaking 프로토콜은 출금을 지원하지 않습니다. 만약 프로젝트 측이 계약을 통해 해당 출금 로직을 업그레이드하지 않는다면, 사용자는 자산을 영원히 회수할 수 없으며, 2차 시장에서 유동성을 확보해야 합니다.

위에서 나열한 위험 점을 바탕으로 Cobo 보안 팀은 현재 시장의 주요 Restaking 프로토콜을 체계적으로 조사하고 정리하였습니다. 현재 주요 내용은 다음과 같습니다:

  1. 프로젝트 완성도가 낮으며, 대부분의 프로젝트가 출금 로직을 구현하지 않았습니다;

  2. 중앙화 위험: 사용자 자산은 최종적으로 다중 서명 지갑에 의해 통제됩니다. 프로젝트 측에는 일정한 Rug Pull 능력이 존재합니다;

  3. 두 번째 점에 기반하여, 내부 악행이나 다중 서명 개인 키 분실이 발생할 경우 자산 손실이 발생할 수 있습니다.

결과를 보다 직관적으로 보기 위해 Cobo 보안 팀은 조사 결과를 정리하여 분류하였으며, 아래와 같이 제공합니다:

EigenLayer가 모든 프로젝트의 기초가 되는 만큼, 표에 언급된 것 외에도 사용자가 주의해야 할 몇 가지 사항이 있습니다:

  1. EigenLayer는 현재 메인넷에 배포된 계약에 있으며, 백서에 명시된 모든 기능(AVS, slash)을 완전히 구현하지 않았습니다. 이 중, slash 기능은 관련 인터페이스만 구현되었으며, 구체적인 완전한 로직은 없습니다. 계약 코드에 따르면, 현재 slash는 StrategyManager 계약의 소유자(프로젝트 측 관리자 권한)에 의해 트리거되며, 실행 방식이 다소 중앙화되어 있습니다;

  2. EigenLayer native ETH Restaking을 수행하는 과정에서, Restaking 자금 관리를 위해 EigenPod 계약을 생성해야 할 뿐만 아니라, Beacon 체인 노드 서비스를 직접 운영해야 하며, Beacon 체인에서의 slash 위험을 감수해야 합니다. 사용자가 native ETH Restaking을 수행할 때, 신뢰할 수 있는 노드 서비스 제공자를 선택하는 것이 좋습니다. 이 외에도 ETH가 Beacon 체인에 보관되므로, 출금 과정에서 사용자가 발동해야 할 뿐만 아니라, 노드 서비스 제공자가 사용자가 관련 자금을 Beacon 체인에서 인출하는 데 도움을 줘야 하며, 즉 출금 과정은 양측의 동의가 필요합니다;

  3. EigenLayer가 현재 완전한 AVS 및 Slash 메커니즘을 구현하지 않았기 때문에, Cobo 보안 팀은 사용자가 관련 위험을 충분히 이해하지 않은 상태에서 EigenLayer 프로토콜에서 delegate 기능을 활성화하지 않도록 권장합니다. 그렇지 않으면 자금 손실이 발생할 수 있습니다.

이 외에도 코드 리뷰를 통해 일부 프로젝트에서 코드상의 위험이 존재하여 사용자 자금 안전에 영향을 미칠 수 있습니다. Cobo는 관련 위험을 발견하는 즉시 프로젝트 팀과 소통하여 확인하였습니다. 일부 위험 점 및 소통 결과는 다음과 같습니다:

EigenPie

현재 프로토콜의 모든 계약은 업그레이드 가능한 계약이며, 업그레이드 권한은 3/6 Gnosis Safe입니다. 그러나 MLRT 토큰 중 cbETH, ethX, ankrETH의 MLRT 토큰 계약의 업그레이드 권한은 EOA 주소입니다.

Cobo는 마감 전에 Eigenpie 팀에 연락하였으며, 프로젝트 측은 24시간 이내에 모든 MLRT 토큰의 업그레이드 권한을 다중 서명 지갑으로 이전하겠다고 응답하였습니다.

KelpDAO

충전 과정에서 사용자가 획득한 share 지분을 계산할 때, share 가치에 대한 계산이 필요하지만, 계산 공식의 rsETHPrice는 수동으로 업데이트해야 하는 oracle에 의존합니다. stETH 외에도 각 토큰 계약의 share price를 가격 소스로 사용합니다. stETH는 1:1로 환산됩니다. stETH가 2차 시장에서 할인될 경우, 충전 과정에서 일정한 차익 거래 공간이 존재합니다.

KelpDAO는 2월 5일에 Lido 계약의 교환 비율을 1 stETH = 1 ETH로 정했으며, 현재 KelpDAO는 출금 기능을 개방하지 않았기 때문에 차익 거래자는 이 전략을 활용할 수 없다고 응답하였습니다. 이 문제에 대해 KelpDAO 팀은 출금 시 stETH의 시장 가격을 확인하고, 이를 stETH의 계약 가격과 비교하여 편차가 클 경우 필요한 보호 장치를 적용할 것이라고 밝혔습니다.

Renzo

OperatorDelegator는 프로토콜 자금을 EigenLayer로 라우팅하며, 서로 다른 충전 비율에 해당합니다. 그러나 프로토콜이 OperatorDelegator를 구성하는 과정에서 모든 OperatorDelegator의 비율이 100%를 초과하는지 확인하지 않아, OperatorDelegator-1(70%)와 OperatorDelegator-2(70%)의 상황이 발생할 수 있습니다. 이 문제는 주로 사용자 자금 인출에 영향을 미치며, 현재 인출 로직이 완전하지 않아 본금에 대한 구체적인 영향을 평가할 수 없습니다.

Renzo 팀은 이러한 특정 상황에서 자금이 잘못된 OperatorDelegator 계약으로 이동하여 예치되거나 잘못된 OperatorDelegator에서 인출될 것이라고 밝혔습니다. Renzo는 이 기술적 문제가 Renzo가 서로 다른 운영자에게 배정하는 예상 배분에 불일치를 초래할 수 있지만, 총 잠금 가치(TVL)의 계산이나 자금 안전성에는 영향을 미치지 않을 것이라고 설명하였습니다. 또한 Renzo 팀은 향후 계약 업그레이드에서 이 기술적 문제를 해결할 것이라고 밝혔습니다.

프로토콜 자체의 위험 외에도, Restaking 과정에서 LST 위험은 간과할 수 없으며, Cobo 보안 팀은 시장의 주요 LST 토큰에 대한 조사를 수행하고 결과를 정리하여 아래와 같이 제공합니다:

Restaking 참여 시 위험을 효과적으로 줄이는 방법은 무엇인가요?

Restaking은 새로운 개념으로, 계약 레벨이나 프로토콜 레벨 모두 시간의 시험을 거치지 않았습니다. 위에서 정리한 위험 외에도 다른 미지의 위험이 존재할 수 있습니다. 그렇다면 상호작용 과정에서의 위험을 효과적으로 줄일 수 있는 상대적으로 안전한 최적의 상호작용 가이드가 존재할까요?

현재의 조사 결론을 바탕으로, Cobo 보안 팀은 상대적으로 안전한 상호작용 경로를 정리하였습니다.

자금 배분

상당한 자금을 사용하여 Restaking에 참여하는 사용자에게는 EigenLayer의 Native ETH Restaking에 직접 참여하는 것이 좋은 선택입니다. 그 이유는 Native ETH Restaking의 경우 충전된 ETH 자산이 EigenLayer 계약에 보관되지 않고 Beacon 체인 계약에 보관되기 때문입니다. 최악의 경우 계약 공격이 발생하더라도 공격자는 사용자의 자산을 즉시 가져갈 수 없습니다.

동일하게 큰 자금을 사용하고 싶지만 긴 환급 시간을 감수하고 싶지 않은 사용자에게는 상대적으로 안전한 stETH를 참여 자산으로 선택하여 EigenLayer에 직접 참여할 수 있습니다.

추가 수익을 얻고자 하는 사용자에게는 자신의 위험 감수 능력에 따라 Puffer, KelpDAO, Eigenpie 및 Renzo와 같은 EigenLayer 기반 프로젝트에 일부 자금을 참여시키는 것을 적절히 선택할 수 있지만, 현재 위의 프로젝트들이 출금 로직을 구현하지 않았기 때문에 이러한 프로토콜에 참여하는 사용자는 해당 탈퇴 위험을 동시에 고려해야 하며, 투자 과정에서 관련 LRT의 2차 시장 유동성도 고려해야 합니다.

모니터링 구성

현재 문서에 나열된 프로젝트는 모두 계약 업그레이드 및 중단 능력을 가지고 있으며, 프로젝트 측의 다중 서명도 프로젝트에 대한 고위험 작업을 수행할 수 있습니다. 고급 사용자에게는 관련 계약 업그레이드 및 프로젝트 측의 민감한 작업 실행을 모니터링할 수 있는 계약 모니터링을 구성할 수 있습니다.

또한 ETH를 투자하여 프로젝트에 참여하고자 하는 팀과 사용자들은 Cobo Argus와 협력하여 Safe 다중 서명 지갑의 조건을 트리거하는 자동화 로봇 및 단일 서명 권한 구성을 설정할 수 있으며, 풀의 TVL 변화, ETH 가격의 변동 및 대형 투자자의 행동에 따라 EigenLayer 및 각 재스테이킹 프로토콜에 자동 예치 기능을 설정할 수 있습니다.

체인캐처(ChainCatcher)는 독자들에게 블록체인을 이성적으로 바라보고, 리스크 인식을 실제로 향상시키며, 다양한 가상 토큰 발행 및 조작에 경계해야 함을 상기시킵니다. 사이트 내 모든 콘텐츠는 시장 정보나 관련 당사자의 의견일 뿐이며 어떠한 형태의 투자 조언도 제공하지 않습니다. 만약 사이트 내에서 민감한 정보를 발견하면 “신고하기”를 클릭하여 신속하게 처리할 것입니다.
체인캐처 혁신가들과 함께하는 Web3 세상 구축