이더리움(ETH) 검증자 키 오류 수정안, 라이트하우스서 검토 중

| 김미래 기자

라이트하우스(Lighthouse) 저장소에 검증자 공개키 캐시 오류 수정안이 담긴 PR #10569가 올라왔지만, 13일 현재 병합되지 않았다. 특정 조건이 겹치면 노드가 정식 체인의 유효한 서명을 거부하고 별도 체인으로 갈라질 수 있다는 내용이다.

라이트하우스 저장소에는 12일 수정 제안 PR #10569가 올라왔다. 깃허브에는 13일 현재 PR이 ‘열림’으로 표시돼 있으며, 코드 오너의 검토를 기다리고 있다.

검증자 공개키 캐시는 검증자 공개키와 검증자 번호의 대응 관계를 노드가 저장하는 구조다. 제안은 이 대응 관계가 분기 경계에서 잘못 기록될 가능성을 다룬다.

문제가 제기된 시점은 글램스테르담(Glamsterdam) 업그레이드의 합의 계층 변경인 Gloas 분기 직전이다. 기존 검증자에 대한 대규모 추가 입금과 새 빌더용·검증자용 공개키 입금이 함께 대기하는 상황이 제안에 제시됐다.

분기 뒤 정식 체인과 별도 체인의 입금 처리 순서가 달라지면 공개키 캐시가 한 공개키를 잘못된 검증자 번호와 연결할 수 있다.

잘못된 대응 관계가 전역 캐시에 저장된 상태에서 정식 체인의 서명을 검사하면 노드는 유효한 서명을 거부할 수 있다. 수정 제안은 이로 인해 영향을 받은 노드가 정식 체인에서 이탈할 가능성을 설명한다. 실제 악용 사례는 공개된 내용에서 제시되지 않았다.

수정 제안 작성자는 검증자의 활성화 자격이 최종 확정된 뒤에만 공개키를 전역 캐시에 추가하는 방식을 제안했다. 확정 전 검증자 키가 검사에서 빠지지 않도록 현재 헤드 상태와 캐시를 함께 조회하는 변경도 포함했다.

다만 수정 제안에는 하위 버전과의 호환성 문제가 표시됐다.

라이트하우스가 9일 공개한 v8.3.3 릴리스 노트에는 체인 상태와 공개키 캐시의 키를 함께 사용한다는 변경이 적혔다. 릴리스 노트는 이 버전을 우선순위가 높은 보안 패치로 소개했지만, 취약점 세부 내용은 공개하지 않았다.

수정 제안 작성자는 v8.3.3의 변경과 Gloas 경계 오류 수정안이 관련 있다고 적었다. 그러나 릴리스 노트에는 이번 오류가 해결됐다는 설명이 없어 두 변경의 적용 상태를 같은 것으로 볼 수는 없다.

별도의 재현 시험을 추가하는 Assertoor PR #248도 13일 현재 열려 있다. 이 제안은 분기 직전에 추가 입금과 검증자 슬래싱을 배치해 오류를 검사하려는 내용이다.

자동 코드 검토에서는 시험 시작 시점이 늦어도 테스트가 통과할 수 있다는 지적이 나왔다. 슬래싱이 실제로 실행됐는지 확인하지 않는다는 점도 보완 사항으로 제시됐다.

이더리움 재단(Ethereum Foundation)은 10월 22일 Hoodi 테스트넷의 글램스테르담 활성화를 연기하고 새 날짜를 정하지 않았다고 밝혔다. 재단이 든 이유는 EIP-8037과 메인넷 스마트계약의 상호작용을 더 조사하기 위해서다.

테스트넷 일정 변경과 이번 공개키 캐시 수정 제안을 같은 원인으로 묶을 근거는 없다. 메인넷의 글램스테르담 활성화 날짜도 정해지지 않았다.

본 기사는 시장 데이터 및 차트 분석을 바탕으로 작성되었으며, 특정 종목에 대한 투자 권유가 아닙니다.

Most Popular

지금 꼭 알아야 할 리포트