エクリプス攻撃
エクリプス攻撃とは、悪意ある攻撃者がすべての接続を掌握することで、単一のブロックチェーン
ノードを隔離するネットワークレベルの攻撃です。ネットワーク全体を標的にするのではなく、1つの被害ノードを取り囲み、
ピア・ツー・ピア(P2P)ネットワーク上の健全な参加者から切り離します。
ノードがエクリプス状態に陥ると、そのノードには攻撃者が選んだ情報しか届かなくなります。被害者は実際のネットワークに接続しているつもりでいますが、目にするトランザクションやブロックなどの
ブロックチェーン情報は、すべて攻撃者によってフィルタリングまたは偽装されている可能性があります。
ブロックチェーンのノードは、他のすべてのノードに接続しているわけではありません。実際には、新しいトランザクションやブロックを中継する一部のピアとしか接続していません。
攻撃者は通常、異なるIPアドレスに多数のノードを展開し、被害ノードの利用可能な接続スロットをすべて占有しようとします。この手口として、大量の接続要求を送りつけて正規のピアが入り込む隙をなくす方法、ノードが再起動するのを待ち、そのタイミングで攻撃者が制御するピアに再接続させる方法があります。いずれかの手口が成功すると、被害ノードの送受信接続はすべて攻撃者を経由することになります。
ノードが攻撃者に包囲されると、攻撃者は新しいブロックを遅延・隠蔽、トランザクションを保留、チェーンの別バージョンを見せることができるようになります。外部から異常が見えないことが、この攻撃の検知を困難にしています。
エクリプス攻撃は、多くの場合、
二重支払いを狙って行われます。攻撃者はまず、加盟店のノードをエクリプス状態に追い込み、本物のネットワークから切り離します。その状態に陥ったノードへ支払いを送ると、ノードは実際のネットワークに確認が取れないまま承認してしまい、商品やサービスを引き渡してしまいます。攻撃者はこうして、同じ資産を別の場所で再び使用できます。
エクリプス攻撃は、ネットワーク全体のセキュリティを弱める要因にもなります。複数のノードを隔離し連携させることで、攻撃者はマイニング関連の攻撃で優位に立ち、
51%攻撃の影響を増幅させる可能性があります。こうした事態を防ぐため、多くのブロックチェーンクライアントは、ピア接続数を増やす、ピアの選択をランダム化する、信頼できるピア向けに接続スロットを確保するといった対策を講じています。