이클립스 공격
용어요약Eclipse Attack
이클립스 공격은 공격자가 특정 노드가 맺는 네트워크 연결을 모두 장악해 해당 노드를 정상 네트워크로부터 고립시키고, 그 노드가 보는 정보를 조작하는 P2P 네트워크 공격이다.
1.개요
이클립스 공격(Eclipse Attack)은 블록체인과 같은 P2P 네트워크에서 특정 노드의 인바운드·아웃바운드 연결(피어 연결)을 공격자가 통제하는 다수의 악성 노드로 모두 채워, 대상 노드를 정직한 네트워크로부터 완전히 차단하는 공격 기법이다. 대상 노드는 자신이 여전히 네트워크에 연결되어 있다고 믿지만, 실제로는 공격자가 조작한 정보만을 보고 받는다. 즉 노드가 공격자에 의해 '가려진(eclipsed)' 상태가 된다.
이 공격은 디도스 공격처럼 네트워크 전체를 마비시키는 대신, 소수의 특정 노드만을 표적으로 삼아 그 노드가 인식하는 세계를 왜곡한다는 점이 특징이다. 공격자는 대상 노드가 참조하는 피어 목록을 자신이 통제하는 IP 주소로 서서히 채워 넣은 뒤, 노드를 재시작시키거나 연결이 갱신되기를 기다려 모든 연결을 장악한다.
2.작동 원리
블록체인 노드는 네트워크에 처음 접속할 때 다른 피어들의 주소 목록을 확보하고, 그중 일부와 연결을 맺어 블록과 트랜잭션 정보를 주고받는다. 노드가 유지할 수 있는 동시 연결 수는 제한되어 있으므로, 공격자가 이 연결 슬롯을 자신이 제어하는 노드들로 모두 점유하면 대상 노드는 오직 공격자와만 통신하게 된다.
일단 노드가 고립되면 공격자는 여러 방식으로 이를 악용할 수 있다. 대상 노드에게 가짜 블록체인 상태를 보여주어 이미 사용된 자금을 유효한 것처럼 속이는 이중지불(double-spend)을 유도할 수 있고, 채굴 노드를 고립시켜 그 해시레이트를 무력화하거나 다른 채굴자의 블록 전파를 늦춰 이기적 채굴이나 51% 공격의 효과를 높일 수 있다. 여러 노드를 동시에 고립시키면 네트워크 전체의 합의 형성을 교란하는 발판이 되기도 한다.
3.대응과 완화
이클립스 공격은 2015년 비트코인 네트워크를 대상으로 한 연구에서 실증적으로 분석되면서 널리 알려졌다. 이후 비트코인을 비롯한 여러 프로토콜은 이를 완화하기 위한 조치를 도입했다.
주요 대응책으로는 피어 주소를 저장하는 테이블 구조를 개선해 특정 IP 대역이 목록을 독점하지 못하게 하고, 아웃바운드 연결 대상을 무작위로 선택하며, 신뢰할 수 있는 고정 피어(앵커 연결)를 일부 유지하는 방식 등이 있다. 또한 노드가 맺는 연결 수를 늘리고 다양한 네트워크 경로를 확보하면 공격자가 모든 연결을 장악하기 어려워진다. 이클립스 공격은 네트워크 계층을 노린다는 점에서 라우팅 공격과 함께 블록체인의 P2P 공격 표면을 이해하는 핵심 개념으로 다뤄진다.
토큰포스트 위키, “이클립스 공격”, 2026-07-28 수정, https://wiki.tokenpost.kr/w/eclipse-attackAccept: text/markdown 로 요청해도 같은 결과문단 3개 · 연표 0건 · 각주 0개