ホーム › 戦略と手法 › サンドイッチ攻撃 暗号資産:仕組みと被害を避ける方法
サンドイッチ攻撃 暗号資産:仕組みと被害を避ける方法
サンドイッチ攻撃とは、分散型取引所(DEX)で待機中のスワップを見つけ、その直前に買い注文、直後に売り注文を挟んで、被害者の約定価格を悪化させる手法です。被害者は想定より不利な価格で約定し、その差が攻撃側の利益になります。MEVの中でも、利用者に直接の損失を与えうる手法として知られています。
仕組みを順に見る
- 利用者がDEXで大きめのスワップを送信し、取引が待機状態になる
- 攻撃側のボットがそれを検知し、より高い手数料で同じ通貨を先に買う(価格が上がる)
- 利用者のスワップが、押し上げられた価格で約定する
- 攻撃側がすぐに売り、差益を確定する
利用者のスワップは、自分の取引が価格を押し上げたあとの高い価格で約定します。それを許容する設定、つまりスリッページ許容値が大きいほど、攻撃側が狙える幅は広がります。基礎となる考え方はethereum.orgのMEV解説でも扱われています。
狙われやすい条件
| 条件 | なぜ狙われやすいか |
|---|---|
| スリッページ許容値が大きい | 許容の範囲内で価格を動かせる |
| 流動性の薄いプール | 少額でも価格が大きく動く |
| 取引額が大きい | 差益の絶対額が大きくなる |
| 公開された待機領域に送信 | 攻撃側が事前に見つけられる |
被害を避ける基本
具体的な方法はMEV対策とスリッページ設定の記事に詳しくまとめました。ここでは要点だけを挙げます。
- 許容値を必要最小限に絞る
- 大口の取引は分割する
- 取引を公開の待機領域に出さない保護機能を使う。たとえばFlashbots Protectの概要では、取引を公開メモリプールに載せずに送る仕組みが説明されています
- 流動性の厚いプールを選ぶ
要点:サンドイッチ攻撃は「見えている取引」と「大きな許容値」が揃うと成立しやすい手法です。利用者側は、この二つのどちらかを潰すことで被害を減らせます。
ボットを提供する側の立場
一方で、この手法を戦略として売るサービスもあります。CryptoMEV Botのサンドイッチボットのページは、正確なトランザクション順序とタイミングを使う戦略として説明し、メモリプールの監視や取引サイズの最適化を挙げています。同ページはこの手法を「最も利益の出るMEV戦略の一つ」とも表現していますが、被害を受ける側の利用者がいる点や、法的な扱いについては触れられていません。
購入を検討する立場であれば、収益の可能性だけでなく、手法が他の利用者に損失を与えうること、規制の議論があること、プラットフォーム側が対策を強化すれば成立しにくくなることを見ておく必要があります。同社の免責事項も、利益は保証されないと明記しています。
関連する手法との違い
先回りの取引全般はフロントランニングの記事で扱います。サンドイッチはその応用形で、前後に挟む点が違います。全体の位置づけはMEVボットの基礎を参照してください。
提供側の説明と、確認したい論点
サンドイッチを戦略に含めるソフトウェアがある一方で、日本語の公式ページ(CryptoMEV Botの日本語ページ)のトップでは、アービトラージ、フロントランニング、清算が主な戦略として挙げられています。サンドイッチ専用のページは別にあり、位置づけは個別に確認する必要があります。
購入を検討する場合は、次の点を自分で確認してください。
- その手法が他の利用者に与える影響を理解しているか
- 居住国や利用するプラットフォームの規約・規制に反しないか
- 失敗時のコストを含めても採算が合うか
これらはリスクの記事にも整理しています。
見分け方と記録
被害の疑いがあるときは、取引のハッシュを控え、ブロックエクスプローラーで同じブロック内の前後の取引を確認します。同じ通貨の売買が連続している、または想定より大きく悪い価格で約定している場合は、注意が必要です。記録は、同様の被害を避けるための設定の見直しにも役立ちます。また、被害の金額が大きい場合は、専門家に相談することも検討してください。
よくある質問
サンドイッチ攻撃とは何ですか?
DEXで待機中の大きなスワップを見つけ、その直前に買い、直後に売ることで、相手の約定価格を悪化させて差益を取る手法です。被害者は想定より悪い価格で約定します。
サンドイッチ攻撃は違法ですか?
法的な扱いは国や状況によって異なり、議論が続いています。違法かどうかは個別の事実関係に左右されるため、断定はできません。懸念がある場合は専門家に相談してください。
被害を受けたかどうかはどう分かりますか?
ブロックエクスプローラーで自分の取引の前後に、同じプールで同じ通貨の売買が並んでいないかを確認します。想定より大きく悪い価格で約定している場合も手掛かりになります。
対策として最も基本的なことは何ですか?
スリッページ許容値を必要最小限にすること、大口を分割すること、取引を公開しない保護機能を使うことです。詳しくは対策の記事を参照してください。
出典
- ethereum.org – Maximal extractable value (MEV) – https://ethereum.org/en/developers/docs/mev/
- Flashbots – Protect – https://docs.flashbots.net/flashbots-protect/overview