Home » 뉴스 » Ethereum의 Pectra 업그레이드, Sepolia 테스트넷에서 정체불명의 공격자에 의해 표적이 되다!

Ethereum의 Pectra 업그레이드, Sepolia 테스트넷에서 정체불명의 공격자에 의해 표적이 되다!

COINJUN

3월 10, 2025

이더리움 개발자들은 Pectra 업그레이드를 통해 Sepolia 테스트넷에서의 기술적 문제로 인해 ‘비공개 수정’을 실시해야 했다.

사건 보고서에 따르면, 이더리움 개발자 마리우스 반 데르 와이덴은 공격자가 간과된 ‘에지 케이스’를 악용해 예금 계약에 0개의 토큰 전송을 반복적으로 시도하면서 문제를 더욱 복잡하게 만들었다고 밝혔다.

무슨 일이 있었나?

3월 5일, Sepolia에서 Pectra 업그레이드가 진행되었고, 곧바로 개발자들은 geth 노드에서 오류 메시지가 나타나는 것을 확인했으며, 빈 블록을 채굴하는 경우가 증가했다.

반 데르 와이덴에 따르면, 이 문제는 예금 계약이 예상치 못한 이벤트를 발생시켜 발생했다. 필요한 예금 이벤트 대신 전송 이벤트가 발생하자 노드들은 트랜잭션을 거부하고 빈 블록만 생성하게 되었다.

이 버그는 EIP-6110과 연결되었으며, 이는 예금 계약의 모든 로그를 균일하게 처리해야 한다고 규정하고 있다.

geth 팀은 “예금 계약에서 오는 모든 오류 로그를 무시”하는 수정안을 내놓았으나, 개발자들은 ERC-20 표준의 특정 에지 케이스를 간과했다.

반 데르 와이덴은 “ERC20 표준은 0 토큰 전송을 금지하지 않기 때문에, 토큰을 소유하지 않은 누구라도 0개의 토큰을 다른 주소로 전송해 이벤트를 발생시킬 수 있다”고 설명하며, “공격자가 이를 악용해 예금 계약에 반복적으로 0 토큰을 전송했다”고 덧붙였다.

이로 인해 네트워크는 계속해서 빈 블록을 채굴하게 되었다.

초기에는 신뢰할 수 있는 검증자가 실수를 한 것으로 의심했지만 조사 결과, 공용 수조에서 새로 자금을 조달받은 계정에서 문제가 발생한 것으로 확인되었다.

공격을 막기 위해 개발자들은 예금 계약과 상호작용하는 트랜잭션을 필터링해야 했으나, 공격자가 그들의 대화를 모니터링하고 있다고 의심했다. 이에 따라 네트워크의 약 10%를 통제하고 있는 DevOps 노드에 ‘비공개 수정’을 배포했다.

수정 후, 노드는 정상적으로 블록을 생성하기 시작했으며, 14:00 UTC까지 체인이 정상으로 돌아왔다. 몇 블록 후에는 공격자의 트랜잭션이 성공적으로 채굴되었고, 모든 노드 운영자가 업데이트를 완료했음을 확인했다.

문제에도 불구하고, 이더리움은 “최종성을 잃지 않았으며”, Sepolia 테스트넷의 문제로만 국한되었고, 이는 메인넷과 다른 토큰 게이트 예금 계약을 가졌기 때문이라고 반 데르 와이덴은 전했다.

개발자들은 추가 테스트 및 디버깅을 위해 Pectra 업그레이드를 연기하기로 결정했다.

이더리움의 Pectra 업그레이드란?

Pectra 포크는 ETH 스테이킹을 개선하고 레이어 2 확장성 및 네트워크 용량을 확장하기 위해 설계되었다. 총 11개의 이더리움 개선 제안(EIP)을 도입하며, 2024년 3월에 실행된 Dencun 이후 첫 주요 업그레이드다.

이전에 crypto.news에서 보도된 바와 같이, 개발자들은 Holesky와 Sepolia 테스트넷이 성공적으로 업그레이드를 완료하는 것을 전제로 Pectra를 4월 8일에 메인넷에 배포할 계획이었다.

업그레이드는 2월 24일에 Holesky 테스트넷에 처음 적용되었으며, 이곳에서도 최종화를 방해하는 기술적 문제가 발생했다.

[COINJUN 기사]

Leave a Comment