Skip to main content

なぜサンドイッチ攻撃は起きるのか

サンドイッチ攻撃がなぜ起きるのか解説します。

Mempoolの公開

  • ユーザーが送信したトランザクションは、ブロックに取り込まれる前に mempool(未処理取引の待機領域) に公開される。
  • 攻撃者はmempoolを監視し、大口スワップやスリッページ幅の大きい取引を検知して、即座に攻撃取引を組み立てる。
  • この「透明性」はブロックチェーンの特徴である一方、フロントランニングの温床となる。

RPCサーバーの不正利用

  • 多くのユーザーやDAppは、RPC(Remote Procedure Call)サーバー経由でネットワークに接続している。
  • 不正なRPCサーバーは、送信されたトランザクションを傍受し、攻撃者に先出しすることが可能。
  • 一部の「無料RPC」や不透明なインフラを利用すると、トランザクション情報が漏洩し、攻撃に悪用されるリスクが高まる。

Validatorによる賄賂(MEV-Boost)

  • EthereumのPoS環境では、Validatorがブロック内のトランザクション順序を決定できる。
  • Searcher(攻撃者)は、自らの取引を有利な位置に挿入してもらうため、ValidatorやBuilderに「賄賂(bribe)」を支払う。
  • MEV-Boostの仕組みでは、このような取引順序の最適化が経済合理的に競争されるため、悪意ある取引が正規のオークションとして成立してしまう。

Validator自身の不正

  • Validatorは、自らブロックを構築する立場を利用し、直接サンドイッチ攻撃を行うことも可能。
  • MEV-Boostの普及により、単独Validatorが任意に不正する機会は減少したが、完全には排除できていない。
  • 特に小規模ネットワークや独自チェーンでは、Validatorの集中度が高いため、攻撃リスクが増す。

まとめ

  • ブロックチェーンの透明性(mempool公開)
  • トランザクション処理の非対称性(順序を操作できる権限)

この2つが重なることで、サンドイッチ攻撃 は成立する。 透明性はブロックチェーンの本質的な強みだが、その裏返しとして攻撃に利用されているのが現状である。