Cointime

Download App
iOS & Android

MEV 攻撃に足を踏み入れ、ハッカーがメザニン技術を通じてどのように巨額の利益を得るのかを見てみましょう。

著者: Immunefi編集: Cointime.com QDD

序章

ブロックチェーン空間における悪用行為はますます複雑になっています。

これまで、スマート コントラクトの開発者と監査人は主に、単一トランザクション内での悪用からスマート コントラクトを保護する方法を検討する必要がありました。しかし現在では、複数のトランザクションにわたって攻撃が発生することがますます一般的になってきています。

ハッカーはまた、巨額の利益を求めて、個人の資金を危険にさらして攻撃することをいとわないようになっています。

つい先週、あるハッカーが Rodeo Finance への攻撃で50 ETH (約 96,000 ドル) の危険を冒し、その結果約 472 ETH (約 890,000 ドル相当) の利益を得ました。このような事例は、「攻撃コスト」は効果的なセキュリティ抑止力ではないという原則を強化するものであり、自らを守るために高い攻撃コストに依存するプロトコルはその戦略を再考する必要がある。

この記事では、ハッカーが MEV を使用して脆弱なプロトコルを攻撃する一般的な方法の 1 つを説明します。また、バグ ハンターとして PoC (概念実証) を使用して、MEV 攻撃ベクトルを適切に実証する方法についても説明します。

MEVとは

MEV (マイナー抽出可能値または最大抽出可能値) を使用すると、マイナーはマイニング前にブロック内のトランザクションを除外、組み込み、順序付けできます。これは、イーサリアムの合併の結果として大きく変わり、このトランザクション注文の役割がネットワークのバリデーターに移されました。しかし、それにもかかわらず、MEV 攻撃ベクトルは依然として一般的であり、ブロックチェーン分野で関連性があります。

攻撃者はさまざまな方法で MEV を使用する可能性があります。いわゆる「メザニン攻撃」をデモンストレーションします。これは、被害者の交換トランザクションをスワップする前後に行うことによって達成されます。

プレリュード (フロントランニング)

プレリュードは、攻撃者が被害者のトランザクションの前に自分のトランザクションを送信することに成功し、攻撃者のトランザクションが最初に実行されるようにする手法です。これは、悪意のあるトランザクションのガス価格を引き上げ、ガス料金が低い被害者のトランザクションよりも優先されるようにすることで実現できます。

バックランニング

ポストプレイは、攻撃者が被害者のトランザクションの実行後に悪意のあるトランザクションを実行する手法です。攻撃者は、悪意のあるトランザクションのガス価格を下げることでこれを行うことができます。これにより、被害者のトランザクションがフォールアウト トランザクションよりも優先されるようになります。

メザニン攻撃

メザニン攻撃シナリオでは、攻撃者はトランザクション プール (保留中のトランザクションのリスト) を監視して、悪用したいターゲット トランザクションを探します。ターゲットを設定すると、具材を挟んだサンドイッチのように、ターゲット トランザクションの前後に 1 つずつ、2 つのトランザクションを送信します。このメザニンの目的は、攻撃者に有利になるように対象のトランザクションの実行や結果を操作することです。

前のセクションで説明した方法を使用して、攻撃者は被害者のトランザクションよりも高いガス料金と低いガス料金で 2 つのトランザクションを送信し、メザニン攻撃を成功させます。あるいは、有料でトランザクションの順序付けを保証する、専門の RPC プロバイダーを通じてトランザクション バンドルを送信することもできます。

トークン、流動性プール、または分散型取引所を含むトランザクションはトランザクション順序の影響を非常に受けやすいため、このタイプの攻撃は DeFi エコシステムで特に問題となる可能性があります。このような場合、攻撃者の目的は多くの場合、資産価格を操作したり、裁定取引の機会から利益を得たり、個人的な利益を得るためにプロトコルの他の脆弱性を悪用したりすることです。

MEV 攻撃をテストする方法

トークン、流動性プール、または分散型取引所を含むトランザクションはトランザクション順序の影響を非常に受けやすいため、このタイプの攻撃は DeFi エコシステムで特に問題となる可能性があります。このような場合、攻撃者の目的は多くの場合、資産価格を操作したり、裁定取引の機会から利益を得たり、個人的な利益を得るためにプロトコルの他の脆弱性を悪用したりすることです。

MEV 攻撃をテストする方法

MEV 攻撃を実証する PoC を作成するには、Hardhat や Forge などのツールを使用してブロックチェーンのローカル フォークを作成します。

これら 2 つのテスト間の決定的な結果を実証するために、この Github Gist からアクセスできる同じ攻撃者コントラクトを使用します。

このデモでは、最小金額を 0 に設定して、被害者が UniswapV2 で WETH から USDC へのスワップ トランザクションを意図的に呼び出せるようにします。このトランザクションをメザニン攻撃に対して脆弱にする脆弱性は、最小金額を 0 に設定することです。これは、被害者が 0 USDC または 99% のスリッページしか受け取らない場合でも、トランザクションはロールバックされないことを意味します。そのため、最低金額を設定することが重要です。

ヘルメット

Hardhat は、開発者が JavaScript/TypeScript を使用してスマート コントラクトを操作できるようにするスマート コントラクト開発用のフレームワークです。 Forge (新しいフレームワーク) が登場する前は、ほとんどのホワイト ハット ハッカーは Hardhat を使用してブロックチェーンをフォークして PoC を作成していました。

便利なことに、Hardhat はトランザクションをファイナライズした状態に保つメカニズムをすでに提供しているので、トランザクションがファイナライズされる前に、呼び出したトランザクションをトランザクション プールに集約できます。

ステップバイステップガイド:

l Hardhat がマシンにインストールされていることを確認してください ( https://github.com/NomicFoundation/hardhat )

l 単純なヘルメットプロジェクトを作成する

l mkdir MEV-poc

l cd MEV-poc

l 糸でヘルメットを追加します

l npx ヘルメット初期化

l 契約を攻撃者契約に変更します。

l scriptフォルダー内のファイルをsandwich Attack.jsに変更しますhttps://gist.github.com/GibranAkbaromiL/05020630475f4f2599f72b47e52c7949#file-sandwich Attack-js

l npx ハードハットを実行します scripts/sandwich Attack.js を実行します

出力:

フォージ

Forge は、Solidity スクリプトを使用してブロックチェーンのテスト、デプロイ、操作を可能にするスマート コントラクト開発ツールチェーンです。これにより、テスト ファイル内のトランザクションを順序付けるだけで MEV 攻撃を実証できるようになります。

ステップバイステップガイド:

Forge は、Solidity スクリプトを使用してブロックチェーンのテスト、デプロイ、操作を可能にするスマート コントラクト開発ツールチェーンです。これにより、テスト ファイル内のトランザクションを順序付けるだけで MEV 攻撃を実証できるようになります。

ステップバイステップガイド:

l マシンに Forge がインストールされていることを確認してください ( https://book.getfoundry.sh/getting-started/installation )。

l 単純な forge プロジェクトを作成します。

l mkdir MEV-poc

l cd MEV-poc

初期化を鍛造します

l src フォルダー内のコントラクトを攻撃者のコントラクトに変更します。

l テストフォルダー内のテストファイルを Sandwich.t.sol に変更します。 https://gist.github.com/GibranAkbaromiL/05020630475f4f2599f72b47e52c7949#file-sandwich-t-sol

出力:

これら 2 つのテスト ケースでは、Hardhat と Forge を使用した MEV メザニン攻撃を実証することに成功しました。テスト ケースの出力から、攻撃者と被害者の両方の初期残高は 1000 WETH で、攻撃者は被害者の前奏と後戯のトレードに成功し、その結果、攻撃者に約 123 WETH の利益が得られたことがわかります。被害者が受け取るUSDCは減ります。

私たちが学んだこと

セキュリティ研究で最も重要な部分の 1 つは、発見した潜在的な脆弱性に基づいて PoC を作成することです。なぜそれほど重要なのでしょうか?潜在的な脆弱性を特定するだけでは攻撃が効果的になるわけではないからです。攻撃が機能することを確認できる唯一の方法は、PoC を作成することです。PoC は、特定された脆弱性ごとに個別に作成する必要があります。

ここでは、MEV が発生する可能性のある多くの攻撃ベクトルのうちの 1 つについて説明しただけであり、研究者が発見する実際の攻撃シナリオは、ここで示したものとは大幅に異なる可能性があります。上記の例では、最も一般的なベクトルの 1 つであるスリッページ保護のないスワップ サンドイッチ攻撃のみを取り上げました。自分のスキルをテストし、他の攻撃ベクトルを再現してみたい場合は、 「NFT Minting Prelude」「Off-Chain Word Machine Price Update Prelude」、および「JIT (Instant) Liquidity」も参照してください。

この記事は以上です。ここに数分間時間を費やして、新たな理解を深めたり、既存の知識を強化したりしていただければ幸いです。学習をやめずにバグを探し続けてください。新しいエクスプロイトや脆弱性が毎日発見されるのを待っているため、熱心に働くホワイト ハット ハッカーには報酬と機会が不足することはありません。

コメント

全てのコメント

There are no comments yet, why not be the first?

Recommended for you

  • マスク氏、ロシアに政治亡命を申請?ロシアが反応

    外国メディアの報道によると、ロシア下院のダヴァンコフ副議長は現地時間20日、米国の億万長者マスク氏がロシアへの亡命を申請したと述べた。その後、クレムリンはこの発言を否定した。報道によると、ダヴァンコフ氏はロシア外務省がマスク氏の政治亡命申請を受理したと述べた。ロシアのペスコフ大統領報道官は、「マスク氏はなぜ亡命を申請したいのか?これは噂であり、誰も確認していない」と述べた。ロシア外務省もダヴァンコフ氏の発言を批判し、その発言はエチケットの最低限の基準を超えており、彼のような地位にある人物にふさわしくないと述べた。

  • ラブブの中古市場価格が急落

    ポップマートの公式アプリは、ラブブシリーズのブラインドボックスの補充に関するプッシュ通知を開始し、ECライブブロードキャストルームでも大量の商品が公開されました。その夜、多くの消費者がソーシャルプラットフォームに予約注文を投稿しました。公式補充の影響を受け、中古市場でのラブブの価格は急落しました。ある流行玩具の中古取引ソフトウェアのデータによると、ラブブ3.0の1箱のリサイクル価格は1,500元から2,800元、650元、800元まで下落しました。以前は、一部の転売業者が注文獲得ソフトウェアに頼って在庫を積み上げ、10倍以上のプレミアムで販売していましたが、公式の大規模な補充は品薄の予想を打ち破り、市場で売り切れました。

  • MarsBit News ·

    ドルパンテオン:信仰、規範、そして権力の聖戦

    この記事では、デジタル時代における米ドルの「宗教改革」について考察し、ステーブルコインが米ドルの形態と機能をどのように再定義するかに焦点を当てます。

  • CointimeSG ·

    マイ・ガンの2014年のスピーチ全文:完璧な通貨をシミュレートするビットコインは、大国間のゲームの新たな戦場となるだろう

    米国がすべきことはただ一つ、ビットコイン分野における発言権を獲得することだ。この発言権とは、計算能力、準備金の規模、あるいは価格決定力といったものかもしれない。

  • モルガン・スタンレー:オフショア人民元ステーブルコインは、国境を越えた決済の実際の使用例を検証するだろう

    モルガン・スタンレーの最新調査レポートは、香港ステーブルコイン法の関連政策が、オフショア人民元ステーブルコインの法的道筋を実質的に切り開いたと指摘しています。香港の約1兆人民元に及ぶ豊富なオフショア流動性プールに支えられたオフショア人民元ステーブルコインは、クロスボーダー決済の実際のユースケースを検証することになるでしょう。人民元ステーブルコインの開発は、人民元スワップ協定、CIPS(クロスボーダー人民元銀行間決済システム)、そして世界的な人民元決済サービスネットワークを含む、クロスボーダー人民元決済インフラの潜在的な構成要素として捉えられるべきです。

  • CointimeSG ·

    トレンドか、それとも誤った提案か?AI + Web3トラックの価値とは?

    AI 暗号の台頭は空論ではなく、ボトムアップのシステム再構築です。

  • CointimeSG ·

    OpenAI はひっくり返されました!

    報告書は、OpenAIが「人類の福祉の追求」から「投資家の利益の追求」への根本的な転換を体系的かつ計画的に完了させつつあると指摘した。CEOのアルトマン氏は、言行不一致、情報操作、監督回避といった長年にわたる、そして十分に文書化されたパターンを有しており、彼の個人的な投資は同社の事業と深く結びついている。

  • AIスタートアップのCluelyが1500万ドルの資金調達を完了、a16zも参加

    AIスタートアップのCluelyは、1,500万ドルの資金調達ラウンドを完了したと発表しました。この資金調達にはa16zも参加しています。Cluelyは人工知能(AI)ツールを開発する企業です。同社の主力製品は、ユーザーの画面と音声をリアルタイムで監視することで、面接、営業電話、会議などの場面で即座にサポートを提供できる、人目につかないAIアシスタントです。(BusinessInsider)

  • 市場ニュース:トランプ大統領は明日午前6時に国家安全保障会議に出席する予定

    市場ニュースによると、トランプ米大統領は日曜日の北京時間午前6時に国家安全保障会議に出席する予定。

  • JuChainエコシステム初のメタバースシティFomo Cityは、ローンチ後わずか5時間で1万人以上のオンチェーンユーザーを獲得しました。

    公式ニュースによると、JuChainエコシステム初のネイティブメタバース共同統治都市であるFomo Cityは、本日13時14分19秒に第一期都市建設を正式に開始しました。オンライン開始からわずか5時間で、1万人以上のオンチェーンユーザーが第一期都市共同建設に参加し、コミュニティの参加意欲は高く、予想をはるかに上回りました。