資産16万ドルの盗難はウーロン事件だった? Yeld.finance「フラッシュローン攻撃」イベントの概要分析
成都链安
2021-02-28 08:36
本文约1576字,阅读全文需要约6分钟
16万ドルの資産が盗まれた?誤報。

1. イベント概要

1. イベント概要

https://yeldf.medium.com/the-yeld-dai-earn-vault-has-been-hacked-93f27d475b1b 

北京時間の2021年2月27日、[Chain Bi'an-ブロックチェーンセキュリティ状況認識プラットフォーム(Beosin-OSINT)]の世論監視、有名なDeFiプロジェクトであるYeld.financeは、プロジェクトのDAI プールが雷ローン攻撃に見舞われました。元のリンクは次のとおりです。

2. イベント分析

2. イベント分析

画像の説明

図 1 に示すように、トランザクションは 0xf0f225e0 という名前のユーザーのもので、0xe780cab7ca8014543f194fc431e6bf7dc5c16762 コントラクトのデポジット関数を呼び出しました。 0xef80cab7 コントラクトがプロジェクト当事者の DAI プールであることが確認されました。このトランザクションでは、合計 6 回のトークン転送が生成され、それぞれ T1 から T6 で示されています。では、これらのトークン転送は正確に何が原因でしょうか?以下のコードを分析します。

画像の説明

△図2 デポジット関数のソースコード

明らかに、コードの 538 行目はシーケンス番号 T1 のトークン転送を生成し、トークン (つまり、DAI) を yDAI コントラクトに転送します。これは通常のトークン転送であり、ユーザーが 9,377 DAI を yDAI 契約に入金したことを示します。

次に、555 行目に rebalance 関数を入力して、関数のロジックを分析します。

△図3 リバランス関数のソースコード

画像の説明

コードの 732 行目は newProvider を計算します。これは推奨関数 (図 4 を参照) を呼び出します。推奨関数は IEarnAPRWithPool コントラクトを呼び出して、4 つの Defi プロジェクトの中で年利 (APR) が最も高いプロジェクトをクエリします。 DYDX、COMPOUND、AAVE、および FULCRUM のクエリ結果を図 5 に示します。

画像の説明

このうち、dYdX プールの APR が最も高く、newProvider は dYdX プールに設定されます。現在のプールは AAVE プールであり、行 736 で if コード ブロックを入力し、内部関数 _withdrawAll を呼び出します。

画像の説明

△図6 _withdrawAll関数のソースコード

コードの 778 行目は、AAVE プール内のすべての DAI を提案し、シリアル番号 T3 ~ T5 のトークン転送が行われます。特定のコードについては、AAVE (0xfC1E690f61EFd961294b3e1Ce3313fBD8aa4f85d) コントラクトの償還機能の関連コードを参照してください。 、ここでは詳しく説明しません。

最後の行はコードの 741 行目で、166,000 DAI を超えるデータを AAVE から dYdX コントラクトにデポジットし、シリアル番号 T6 のトークン転送を生成します。これは、166,000 DAI を dYdX プールにデポジットすることを意味します。

dYdXはこの事件で「良心の商人」の役割を果たしており、以前のフラッシュローン攻撃の共犯者ではなかったということは注目に値する。

3. セキュリティに関する推奨事項

3. セキュリティに関する推奨事項

このインシデントは、成都チェーンセキュリティ(Beosin)のセキュリティチームによる分析の結果、虚偽であると判断されましたが、日常のセキュリティ保護においてフラッシュローン攻撃に対する早期警告と保護を提供する必要があることをすべてのプロジェクト関係者に思い出させる必要があります。予防措置を講じてください。

成都链安
作者文库