作者:小饼
DEXアグリゲーターの0xは9月14日、衝撃的なデータを発表した。チームが6つのチェーン上の84,163個のUniswap v4 Hookを分析した結果、9月11日時点の結論は、安全と判定されたHookはわずか19.4%、悪意のあるものは54.2%、悪意の疑いがあるものは26.4%だった。
Uniswapの創業者Hayden Adamsはその後X上で応答し、核心的な立場は次の通りである。悪意のあるHookの存在はパーミッションレスシステム(permissionless system)の必然的な副産物だが、ユーザーがUniswapの公式APIと審査済みのフロントエンドを通じて取引する限り、これらの悪意のあるプールに到達することはない。問題はv4のアーキテクチャ設計ではなく、アグリゲーターのルーティングフィルタリング能力にある。
DeFiの「開放性」の代償に関する議論は、このようにして二つの主要プロトコル間で公に勃発した。
0xの告発:見積もり詐欺(Quote Spoofing)
0xが説明する攻撃パターンは非常に具体的である。悪意のあるHookはアグリゲーターの見積もり段階で非常に競争力のあるクオートを表示し、ルーティングエンジンを自らのプールに誘導する。しかし、実際の取引実行時には、Hookが価格パラメータを改ざんしたり、ペナルティレートを注入したりすることで、ユーザーが実際に受け取る資産はクオートを大幅に下回る。
0xはこの攻撃を「クオート・スプーフィング(Quote Spoofing)」と定義している。その技術的実装手段には、EVM実行環境の識別(シミュレーション呼び出しと実際の取引を区別し、実際の取引時のみに細工をする)、パラメータのランダムな切り替え(検出システムが悪意のある動作を安定して再現するのを困難にする)、アクティブな取引ペアに対する最大18%もの隠れ手数料の徴収が含まれる。
最も極端なケースでは、ユーザーが実際に受け取った資産はクオートより50%も少なかった。0xによれば、これらの悪意のあるHookは、スリッページ許容度の設定が緩いユーザーから数十万ドルを搾取したという。
0x自身のデータによれば、2024年以降、そのプラットフォームは8192万件の取引をルーティングし、取引高は426.7億ドルに上り、その約70%がUniswapの流動性に関係している。Uniswap流動性の最大の外部配布チャネルの一つとして、0xはこの問題を解決する直接的なビジネス上の動機を持っている。なぜなら、悪意のあるHookは0xユーザーの取引体験を損ない、ひいては0x自身のブランドの評判と取引量に影響を与えるからである。
Hayden Adamsの反論
Adamsの反論の論理は、次の三つの層に整理できる。
誰でもイーサリアム上で悪意のあるコントラクトを作成できる。これはv4に固有の問題ではない。 悪意のあるERC-20トークン、ハニーポットコントラクト、ラグプルはv2やv3の時代から大量に存在していた。Hookは悪意のある行為に新たな技術的媒体を与えたに過ぎず、攻撃の本質は変わっていない。依然として、ユーザーのチェーン上の資産安全性に対するデフォルトの信頼を利用している。
Uniswapの公式フロントエンドとAPIは、審査済みのHookのみを接続している。 UniswapのNiko(@saintniko、Uniswapプロダクトチームメンバー)は同時に、Uniswapの公式APIを通じて取引するユーザーは、審査を通過したHookにのみアクセスできると明確に述べている。Uniswapの立場は明確である。プロトコル層はオープンだが、アプリケーション層はすでにフィルタリングを行っている。
アグリゲーターは自身のルーティング決定に対して責任を負うべきである。 もし0xのルーティングエンジンが8万以上の未審査のHookを無差別に接続しているのであれば、それはアグリゲーター自身のリスク管理の欠陥である。株式取引所が相対取引詐欺に対して責任を負わないのと同様に、Uniswapプロトコルはサードパーティのアグリゲーターのルーティングミスに対して責任を負うべきではない。
0xのデータ自体は十分に衝撃的だが、いくつかの側面に注意する必要がある。
84,163個のHookは「分析された」総数であり、「ユーザーによってインタラクションされた」総数ではない。この数字には、実際の取引が一度も行われていない大量のゾンビHookが含まれており、それらはデプロイされたが、ルーティングされたことは一度もない可能性がある。イーサリアム上にデプロイされたすべてのコントラクトを統計する場合、90%以上が一度も呼び出されたことがないのと同様であり、それらは依然として基数にカウントされる。
議論の真の核心
技術的な詳細と議論を剥ぎ取ると、0xとUniswapの間の相違は、DeFiの古くからの問題を指し示している。パーミッションレスシステム(permissionless system)の開放性は、必然的に悪意のある行為者の侵入を伴う。
v4のHookシステムは、Uniswap史上最大のアーキテクチャ上の飛躍である。v2とv3のプールのロジックは固定されており、すべてのプールの動作は完全にプロトコルコードによって決定されていた。v4はプールの動作を開発者に開放し、誰でもカスタムロジックを記述し、取引の前後に任意のコードを実行できるようにした。これにより、StablePair Hook(動的レート)、DualPool Hook(アイドル資金の収益)、Permissioned Pools(コンプライアンス検証)といった革新がもたらされた一方で、悪意のある利用への扉も不可避的に開かれた。
Uniswapの論理は次の通りである。開放性が生み出す価値は、悪意のある行為による損失をはるかに上回る。安全性の選別はアプリケーション層(フロントエンド、API、アグリゲーター)が行うべきであり、プロトコル層で革新を制限すべきではない。
これはイーサリアム自身の設計哲学とも一致しており、イーサリアムは悪意のあるコントラクトのデプロイを阻止しないが、ウォレットとフロントエンドがそれらをフィルタリングする。
0xの論理は次の通りである。Hookの過半数が悪意のあるものである場合、アプリケーション層のフィルタリング負担は非合理的なほど大きくなっている。プロトコル層は、下流が悪意のあるHookを識別し隔離するのを助ける、少なくともより良いツールを提供すべきである。 0xは、検出技術と流動性プールの監査を通じて悪意のあるプールがルーティングに入るのを阻止していると主張するが、この対策競争のコストはますます高くなっている。
ユーザーへの実際の影響
Uniswapの公式フロントエンド(app.uniswap.org)を通じて取引する場合、悪意のあるHookの影響を受けるリスクは非常に低い。UniswapはそのAPIが審査済みのHookのみを接続していると主張しているためである。
サードパーティのアグリゲーター(0x、1inch、Paraswapなど)を通じて取引する場合、リスクはこれらのアグリゲーターのHookフィルタリング能力に依存する。0xはすでに検出およびブロックメカニズムを構築したと主張しているが、他のアグリゲーターの防御レベルは様々である。
チェーン上のコントラクトと直接インタラクションする場合(Etherscanやカスタムスクリプトを通じて)、悪意のあるHookのリスクに完全にさらされることになる。これは上級ユーザーの領域であり、最もリスクの高いシナリオである。
簡単な自己防衛の原則: 使用している取引フロントエンドがv4 Hookに対してフィルタリングメカニズムを持っているかどうかを確認すること。不明な場合は、Uniswapの公式フロントエンドを使い続けること。合理的なスリッページ許容度を設定すること。0xのレポートによれば、悪意のあるHookは主にスリッページ設定が緩すぎるユーザーを標的にしている。




