5,000万ドルのUSDDT $ 35,000 AAVE: 災害はどのように起こりましたか? 誰が非難すべきですか
取引パスの致命的な欠陥によるほとんどゼロ保護下で$ 50百万のDeFi操作が実行され、小さな液体プールで資金のほとんど完全な蒸発を引き起こします。

この投稿は:
日常の惑星をコンパイルします@Odaily中国; トランスレーター Ethan()@ethanzhang web3

事件のタイトルだけで見てみると、確率は、攻撃がループホールの間違いになるということです。
イベントのコアは:USDT は $50.4 百万で評価され、最終的には AAVE にのみ変換され、$ 359 百万で値しました。
初めて聞いた時にショックを受けました。 そのため、トランザクショントラッキング、ソルバーパス、コントラクトコール、履歴リザーブ、消去データ、アダプタープロセス、エイブインターフェースコード、コーブフラッシュローンSDK、ルーティングコードなど、オファーが「合理的な」かどうかを判断しました。
これはハッカー攻撃ではありません。Aaveのコア合意が間違っていなかった。 COW決済ではエラーが発生しません。 Uniswap は間違いを犯さない。 SushiSwap は間違い無しにしました。 トランザクションは有効で、シグネチャは有効で、すべての契約は厳格なコードで行われます。 しかし、ほぼすべての経済値が破壊されたため、単に続くことが許されるパスは極端に廃止されるためです。
チェーンに問題はありません。それはパスです。
単純に「ユーザエラー」という問題が客観的で厳密な態度ではないと私は思います。 ユーザーが注文のシグネチャを完了しているのは事実ですが、ソフトウェアシステム全体では、担保回転数が約50億ドル、見積完了、署名、最終実行までのルート計画、およびプロセスポイント全体が約331 AAVESの低移動性プールに関与することができます。 これは、決済チェーンが開始する前に、少なくとも完全に不可能であるべきであり、システムによって拒否されるべきである。
トランザクションコア情報トレース
この珍しい取引, 橋: 0x9fa9feab3c1989a33424728c23e6de07a40a26a98ff7ff5139f3492ce430801f, で確認しました 3月 12, 2026 で Taifengネットワークのメインエリアの高さ 24643151, の取引指数と 3780570 単位. 購入注文は 0x98b9 の先頭にあるウォレット、実際に 0x3980 の先頭でトランザクションを実行し、CW の競争データで tsolver としてマークされます。
まず、シンプルなウォレットレベルのUSDTからAAVEへの交換ではありません。 販売トークンは、Aaveプラットフォーム上の有利なUSDT預金証明書であるaEthusDTです。 トークンの購入は、Aaveプラットフォームに利益をもたらすAAVE入金証明書であるEthaAVEです。 そのため、実際にCW決済システムとフラッシュローンアダプタープロセスを通じてAave担保の回転です。
トランザクションの前に、ウォレットは、約50,432,693.07254 aEthUSDTと0 aEthAAVEを保有しました。 取引後、4.980399 aEthUSDT が残され、327.241335559664878 aEthAAVE が受領されました。 実際には、ウォレットはほぼすべてのポジションを売っています。
実装前のルートが「有毒」であったことをメタデータがより明確に示します。 注文は aave-v3-interface-collar-swap プロセスから来ます。 CoW の API は、署名された販売注文として表示します。メタデータラベルを 121 ベース ポイントを使用して、市販の担保スワップとして適用します。 署名された金額は50,432,688.41618 aEthUSDTでした。 署名の最小購入値は324.949260918413591035 aEthAAVEでした。 実際の決済は327.24133555966487788 aEthAAVEを支払った。
それは非常に重要な細部です。 注文は、何千ものAAVEを受信し、どこにも破壊されたと予想されていませんでした。 最初は300本くらいにAAVEを組んでいました。
クラッシュへの完全なリンク
契約に従うと、プロセス全体が残酷で簡単です。
CW 合意 0x9008 から始まる GPv2Settlement 決済契約にトップレベルのファンドフローコアが依存しています。 まず、HooksTrampoline 契約は 0x60bf から始まり、CW Treasury のリピータが別のトランザクションの承認なしにユーザー ' s アセットを抽出できるようにするため、AEthUSDT の承認を完了します。その後、GPv2VaultRelayer 契約は 0xc92e 抽出物 50432688.41618 aEthUSDTs をユーザ ' s ウォレットから決済プロセスに抽出し、この時点の全ての操作は通常のロジックと並んでいます。
決済契約は、0xd524 で始まるオープンソースの補助契約に aEthUSDT の運用権限を付与し、関数セレクター 0x494b3137 を介して呼び出しを開始し、補助契約は、異常なトランザクションのルートの完全な画像が露出される 0x699c から始まるオープンソースの実行者契約に執行権限を転送します。
0x87870から始まるAaveプール契約への最初の効果的な呼び出しは、indraw関数(optionor 0x69328dec)の手段によってaEthUSDTを破壊し、USDT、Uniswap V3深さUSDTT / WETH取引プールを償還し、0x4e68にジャンプし、すべての50432688.41618 USDTを17957.8808057021422338 WETHに変換します。
この段階での取引は完全に正常でした:為替レートは、当時市場条件と一致していた約2808.4 USDTから1 WETHでした。流動性の問題はなく、算術の偏差はなく、最初のジャンプチェーンでは異常はありませんでした。
問題は、流動性が確保されると、残りの物語は必然的です。
17957.81080570242238を買収すると、すべての資金は0xd75ea151a61d06868e318988d28dfe5d9df57b4のアドレスでSushiSwap V2 AAVE/WETH取引プールに転送されました。
珍しい取引(ブロックの高さ24643150)の前に、取引プールの歴史的流動性データをチェックし、保持:
331.63 1982年 5381080273 上昇 17.653276 1963 997688066 WETH
これはデータエントリーエラーではなく、鉄の事実です。
この取引ルートは、ほぼ17958 WETHが、わずか17.65 WETHSの株式を持つマイクロトレーディングプールに注入され、AAVEの合計在庫が331.63で対応し、入力されたWETHの量は、プール内のWETH予約量の約1017回であった。
これは、「高いスライドポイント」または「わずかな流動性」の定期的な問題を意味しませんが、市場リストの実装に非常に耐え難いパスです。これは、AMMプールの非常に小型で定数の製品を強制し、自分自身よりも数千倍の大きな取引を運ぶことです。
AMMの取引プールは、確立されたアルゴリズムに従って運営され、プール内のすべてのAAVE予約をほぼ排除しました。
SushiSwap トランザクションは、コアスワップ交換をトリガーします。17957.810802142342238 WETH に転送されたインキュベーターで、わずか 331.30531568938235428 AAVE を返します。 トランザクションが完了すると、プールの残りの流動性がおよそ:
0.326666929169791895 平均、17975.46418898540030304 WETH
正直、プールのAAVE在庫の約99.9%が1つのジャンプで排出されました。
プリトランザクションのリザーブに基づいて、プールはおよそ$ 149.50のAAVE価格を意味します。 ユーザーの実際の実行価格は、約154,114.66 USDT〜1 AAVEです。 契約前のスポット価格1,000倍以上です。
これらの AAVE は、Aave のファンドプールに戻り、セレクター 0x617ba037 を使用して、サブプライ (adadress, uint256, アドバイス, uint 16) で供給されます。 その結果、新造のaEthAAVEが決済契約に返送されました。 決済契約は、最終的に327.241335559664878 aEthAAVEをユーザーに転送しました。 約4.0639801029717764 aEthAAVEは、ユーザーに対して支払った余剰として決済契約に残ります。
そのため、決済は突然、良い業績を悪いものに歪めませんでした。 長年に渡る経路の最終化の結果です。
そして、それは重要なポイントであり、それは明確に言う価値があります: 壊滅的な結果は、ルートの実行前にプリセットされます。
購入終値は約331.272185078031026739で、ユーザシグネチャに合意した最低購入値が324.94926091841591035であり、実際の決済額は327.24133555966487888であり、決済前に300 AAVEの注文ですべてのコア値がロックされます。
このパスは悪く生まれました。
ループホールはどこにありますか
回答は、システムのすべてのレベルでの検証メカニズムがエラーの寸法を検証することです。
すべてのレベルは、署名が有効であるか否か、金額がゼロでないかにかかわらず、トランザクションが実行されるかどうかを検証します経済レベルでの取引ルートの正当性を検証するコアレベルは少なく、機関の故障の原因となります。
Aave 用のインタフェースアダプターの引用パスのコード欠陥
最初に明らかなコードは、Aave インターフェイスの CW アダプターの引用プロセスに異常に現れます: アダプターの排他的なアプリケーションデータと引用語句を要求するためにもともと使用されていた機能は直接無効になります。

ソース:申し訳ございませんそして、申し訳ございません
つまり、Aave インターフェイスは CoW からの引用語句を求めています実際の注文に添付される落雷とホックメタデータが付属していませんお問い合わせ 言い換えれば、クォートされたものが正確に実行されるものではありません。 コードは、アシスタント機能がアダプタのオファーをより正確にするために設計されていることさえ述べており、その後、機能は非常に無効になっています。
価格ロジックのCoW共鳴性が弱すぎる(コアギャップ)
第二と最も深刻な問題は、CoWプロトコルの競争力のあるロジックです。そのパブリックサービスコードでは、それはそれを作るために行く唯一のものですオファーが正当でゼロではない限り「合理的な提供」であることを決定します。

ソース:引用符.rs:31
8桁ルーティングシステムの場合、それは驚くべき弱さです「合理的な」の定義。
システムは価格の健全性の確認のための予後機械へのアクセスを持っていません, 「スポット価格からの逸脱よりも500回」のための断続的なメカニズムはありません, 「ルーティングは、モビリティプールを完全に排水します」と警告はありません "モビリティの最後のジャンプは、注文のサイズに比例して厳格になります"; デマヌファクターだけは、実行可能に戻る必要があります, ノンゼロルータ, そして、システムが受け入れられていますこのイベントのコアループホールです。
Uniswap V2の液体モデリングロジックの欠如
第三の問題は、Uniswap V2 スタイルの液体プールのモデリングです。コードは、標準の定数製品アルゴリズムのみを使用しており、経済の実現性を検証することなく、数学レベルのゼロリザーブ、値ダウン、リザーブアウトなどの可能性だけを拒否します。

ソース:ウェブサイトのflickrページから写真: 118そして、プールミーティングのflickrページから写真:153
コードは、対応するルートトランザクションを運ぶために液体プールのボリュームが十分であるかどうかを判断しませんが、交換操作が数学的に有効であるかどうかは判断しません。 したがって、331 AAVEの株式を持つ小さなプールでさえ、資産の破壊的な損失に関しても、一定のマルチプライヤーアルゴリズムによってゼロの結果としてのみ計算することができる17957 WETHを引き継ぐために有効なサイトであることが考えられます。
フラッシュローン、SDK、注文検証メカニズムの二次故障
続いて、FMC SDK は、注文とホックのパフォーマンス負荷に直接無効なオファーを修正しました。

それから:

ソース:お問い合わせそして、私はこれを行うことができるつもりはないです
そういうわけで、このルートは「生まれて悪い」と言っています。 アダプターの層お問い合わせ実装時に新しい悪い金額が見つかりました。 それは..データと識別されたケースのアドレスを引くために引用された悪い量のシーケンスお問い合わせ 悪いオファーが存在すると、残りのメカニズムは忠実にそれを渡します。
COWの注文検証ロジックもここにあります実際のユーザー保護なしこれは、注文がオファーの時点で市場価格を上回るかどうかをチェックするだけでなく、実際の流動性に関連して、オファー自体が保証されているかどうかを確認するからです。

ソース:注文検証.rs: 694
一貫性チェックです。オファー自体が既に製造されている場合は、注文はまだ作ることができます。
UI フロントエンド早期警告機構はデッドエンドです
Aave はインターフェイスに高価格の衝撃警告を持っていますが、..堅い溶けるスイッチではないですお問い合わせ 損失が20%を超えた場合、確認チェックボックスとなります。

ユーザーがチェックボックスをチェックすると、バリアが削除されます

ソース:詳細はこちら: 24そして、価格ImpactWarning.tsx:35
その結果、トランザクションがアセットのフル値を空にしても、システムが強く拒否しなければならない高リスクトランザクションではなく、ユーザ識別された操作としてのみシステムが修飾され、早期警告メカニズムはリスク遮断機能が完全に失われるだろう。
上記のすべての失敗に基づいて、私は「それはちょうどユーザーが台無しである」という優先的な結論に同意しません。 ユーザーは署名を完成させましたが、ソフトウェアシステム全体が災害を傍受する機会がいくつかありましたが、各レイヤーは基本チェックの対象となり、「非ゼロ、強制的に、署名された」決定直後に、究極の結果でリリースされました。
ルートは変更されていません
このリンクは、Aave-v3-interface-collar-swapの公式インターフェースプロセスで、使用の139行のスライドポイント調整の値を計算するSwapOrderAmounts.ts文書のスライドポイント調整の値を、価格見積、ネットワーク手数料、パートナー手数料、フラッシュローン料金とともに計算します。 ライン331は、購入AmountBigInt値に変換します。 そして、その後、191のColplateralSwapをColspadasCoveSwapWactionsCoveSwapViasCotar.tsの行で行います。 tsx ドキュメント、数量の正確な署名が完成しました。
後継者のアダプター契約は、AaveV3BaseAdapter.sol ファイルの 141 行になります。署名の注文フィールドの検証は、保存された値と完全に一致し、CoW 決済契約は GPv2Settlement の 337 行になります。 SOL文書、署名の合意された制限ルールを強化します。 したがって、チェーン実行結果は、署名命令によって許可されているものではなく、ユーザーが実際に受信した資産は、署名のために合意した最低限のしきい値よりも上回っています。
決済処理中ではなく、決済前に発生した災害が十分な証拠であり、その経路の致命的な欠陥が長い間疑われていたことである。
欠落した値はどこですか
同じブロックの次の取引(橋 0x45388/b0f で始まる)は、SushiSwap AAVE/WETH プールのために完了しました。 異常な取引がWETHの膨大な量で満たされたと、AAVEの大部分が排出され、仲裁人はすぐにAAVEをプールに戻し、不均衡を収穫する余分な値が売られました。
このランオフ仲裁は、約17929.77015885933 WETHを抽出し、約13087.73 ETHをブロックビルダーに支払い、約4824.31 ETHを任意の実行アドレスに。
ユーザーが失われた完全な経済価値は、最終的に、ほぼ瞬時にMEV仲裁とブロックビルダーが同じブロック内の利益に変換します。
また、検証ブロックタイムシリーズは、トランザクションの前にSushiSwap取引プールの悪意のある操作がなかったことを確認し、AAVE/WETHトランザクションが最初にタッチされたこと、つまり、この異常なトランザクション(トランザクションインデックス1)です。次のトランザクションがすぐに続くこと(トランザクションインデックス2)はトランザクションによって引き起こされる価格の歪みに対する最初のランバックを完了します。トランザクションインデックス3は、市場復元中にトランザクションペアに触れます。 タイムラインは、この異常なトランザクションが極端な価格の歪みを生成し、その後のトランザクションがこの歪みを直接キャプチャすることを明らかに確認します。
そのため、その不具合は
コアプロトコルがクラッシュした場合、Aave V3 を尋ねると、その答えは次のとおりですいいえお問い合わせ Aaveのプールは指示に従って十分に作動し、通常USDTのforeclosureおよびAAVEの沈殿物プロセスを完了します。
契約が崩壊した場合は、COWに問い合わせると、その答えは次のようになりますいいえお問い合わせ 決済は、有効な署名順を強制し、署名の最小額以上を支払った。
Uniswap V3 や SushiSwap をリクエストすると、その答えは同じですいいえお問い合わせ 両方の種類のプールは、独自のアルゴリズム規則に従ってトランザクションの価格設定を完了します。
実際の系統障害は、より高いレベルのルートと風制御で発生しました
主要な責任ある党によるCWの議定書のためのルート、引用語句および解決モジュール「合理的なルート」を決定するためのシステム全体の基準は、あまりにも弱く、数千万ドルの米国ドルを大量注文に入れ、最終的には、ルートが実行可能で非ゼロである限り受け入れられるマイクロ、低モビリティプールに流れ、経済次元の極端な不合理性を完全に無視できるようにします。
二次責任あるパーティーは、アヴェヌードルのフロントラインです: アダプターの引用語句の要求はホックによって連結された適用データなしで、間違いの結果は署名プロセスに直接渡され、早期警告の警告の警告の、堅い拒絶メカニズムに基づいていません。 そのような非常に大きな取引の場合、そのような制御はリスクから保護するのに十分ではありません。
貿易ルートの品質と風フェンスの極端な性質の極端な失敗でした。, 直接資産の破壊的な損失に法的に迎合的な担保を回転させました。。
