インバースファイナンスのセキュリティインシデントに関する我々の見解:価格操作攻撃

Inverse Financeにおけるフラッシュローンエクスプロイト:攻撃者は約10万USDTと53.2 WBTCを利益として得る

インバースファイナンスのセキュリティインシデントに関する我々の見解:価格操作攻撃

はじめに

2022年6月16日、Inverse Financeが攻撃を受け、100万ドル以上の損失が発生しました。攻撃トランザクションはこちらです: https://versatile.blocksecteam.com/tx/eth/0x958236266991bc3fe3b77feaacea120f172c0708ad01c7a715b255f218f9313c根本原因は、Inverse Financeが利用していた価格オラクルが操作されたことです。

攻撃分析

攻撃者はまずフラッシュローンでAaveから27,000 WBTCを借入しました。その後、そのうち225 WBTCをCurveに預け入れ、5,375 crv3cryptoをミントしました。攻撃者はこの5,375 crv3cryptoをyvCurve-3Cryptoに預け入れ、4,906 Yearn cTokenを取得しました。これがInverse Financeでの担保として使用されます。

残りの26,775 WBTCは、担保の価格操作に使用されました。攻撃者は26,775 WBTCをスワップし、75,403,376 USDTを取得しました。このスワップにより、オラクルの価格は979から2,831に上昇しました。

borrowAllowed関数を見ると、預け入れた担保で指定された量のトークンを借りることができるかどうかを確認することがわかります。

具体的には、getHypotheticalAccountLiquidityInternal関数が、借入行動が安全かどうかを確認するために使用されます。担保の価格はgetUnderlyingPriceによって取得されます。

getUnderlyingPrice関数はlatestAnswer関数を呼び出して結果を取得します。前述の通り、26,775 WBTCはUSDTとのスワップに使用され、担保価格の上昇につながりました。

この場合、攻撃者は預け入れた担保の価値を大幅に上回る(10,133,949)DOLAを借りることができました。

最終的に、攻撃者は75,403,376 USDTを2,662,649 WBTCにスワップし、借入した10,133,949 DOLAを9,881,355 3Crvにスワップしました。これはさらに流動性プールから引き出され、10,099,976 USDTとなりました。

次に、10,099,976 USDTのうち10,000,000 USDTが再びWBTCにスワップされ、フラッシュローンを返済するために使用されました。これにより、攻撃は完了しました。攻撃者はこの攻撃で99,976 USDTと53.2 WBTCを獲得しました。

まとめ

これは典型的な価格操作攻撃です。このような攻撃が現代に起こったことに驚きを禁じ得ません。この事件は、DeFiプロトコルがセキュリティシステムを強化するための警鐘となります。

BlockSecについて

BlockSecは、世界的に著名なセキュリティ専門家グループによって2021年に設立された、先駆的なブロックチェーンセキュリティ企業です。当社は、Web3の普及を促進するために、進化するWeb3の世界のセキュリティとユーザビリティの向上に尽力しています。そのために、BlockSecはスマートコントラクトおよびEVMチェーンのセキュリティ監査サービス、セキュリティ開発と脅威のプロアクティブなブロックのためのPhalconプラットフォーム、資金追跡および調査のためのMetaSleuthプラットフォーム、そしてWeb3開発者が暗号世界を効率的にサーフィンするためのMetaDock拡張機能を提供しています。

現在までに、MetaMask、Uniswap Foundation、Compound、Forta、PancakeSwapなど300社以上の著名なクライアントにサービスを提供し、Matrix Partners、Vitalbridge Capital、Fenbushi Capitalなどの著名な投資家から2回の資金調達で数千万米ドルを獲得しています。

公式ウェブサイト: https://blocksec.com/

公式Twitterアカウント: https://twitter.com/BlockSecTeam

Sign up for the latest updates