11月1日、MetaScoutは、イーサリアム上の融資プロトコルであるOnyx Protocolがフラッシュローン攻撃を受け、210万ドルを失ったことを検出した。根本的な原因は、ハッカーが最初に新しい市場を追加するという提案をターゲットにして実行したことと、Compound fork プロトコルの ID 精度損失の問題です。
MetaTrust Labs はこのインシデントの詳細な調査と分析を実施し、ハッカーがどのようにガバナンス提案とプロトコルの脆弱性を利用して Onyx プロトコルに対してこの攻撃を開始したかを明らかにしました。
Onyx プロトコルについて
Onyx Protocol (https://docs.onyx.org/) は、イーサリアム ネットワーク上のユーザーに安全でトラストレスな信用および融資サービスを提供するように設計された融資市場です。
2023 年 10 月 29 日、Onyx Protocol (https://x.com/OnyxProtocol/status/1718348637158137858?s=20) は、$PEPE を市場に追加する提案 OIP-22 を発表しました。残念ながら、この提案はハッカーの標的となり攻撃を受けました。
同時に、Onyx チェーンに展開されているコントラクトから判断すると、これは Compound 派生プロトコルであることがわかり、攻撃により TVL は 286 万米ドルから 55 万米ドルに下落しました。
攻撃作戦
攻撃力損失
2 つの攻撃取引による損失総額は約 214 万ドルでした
アタッカー
0xdec2F31C3984F3440540DC78Ef21b1369d4eF767 0x5083956303a145f70ba9f3d80c5e6cb5ac842706
攻撃契約
0x052ad2f779c1b557d9637227036ccaad623fceaa
攻撃を受けている契約
代理店契約:https://etherscan.io/address/0x5fdbcd61bc9bd4b6d3fd1f49a5d253165ea11750
契約を実装します。https://etherscan.io/address/0x9dcb6bc351ab416f35aeab1351776e2ad295abc4#code
ガバナンス契約
https://etherscan.io/address/0xdec2f31c3984f3440540dc78ef21b1369d4ef767
攻撃ステップ
TL;DR
攻撃トランザクション 0x f 7 c 216 を例に挙げます。
1. ハッカー (0x 085 bDf) は、oPEPE (0x 5 fdbcd) と呼ばれる新しい市場を追加する提案 OIP-22 を最初に実装します。
2. AAVE からフラッシュ ローンを開始し、新しい市場が追加されてから 1 分以内に 4,000 ドル WETH を獲得しました
4,000 $WETH を 2,520,870,348,093 $PEPE に交換
すべての $PEPE をアドレス 0x f 8 e 153 に移動します
上記のアドレス 0x f 8 e 153 でコントラクトを作成し、1 $PEPE を使用して 50, 000, 000, 000, 000, 000, 000 $oPEPE を鋳造し、$oPEPE のほとんどを引き換えて、oPEPE マーケットに与えるために 2 wei だけを残します
2, 520, 870, 348, 093 $PEPEをoPEPEに移管し、$oPEPEとして市場に参入します
334 $ETH を借りる
精度が失われたため、$oPEPE の 1 ウェイのみが 2, 520, 870, 348, 093 $PEPE と引き換えられました。
上記手順bからfまでを繰り返し、$USDC、$USDT、$PAXG、$DAI、$WBTC、$LINKを借りて、$ETHに交換します。
為替レート = (現金総額 + 融資総額 - 準備金総額) / 供給総額 = 2, 520, 870, 348, 093, 423, 681, 390, 050, 791, 472 / 2 = 1, 260, 435, 174, 046 、711、840、695、025、395、736
償還額 = 2, 520, 870, 348, 093, 423, 681, 390, 050, 791, 470
トランザクション切り捨てのため、償還トークン = 償還額 / 為替レート = 1
清算債務者の 881, 647, 840 wei $PEPE (0x f 8 e 153)
856, 961, 701 wei $PEPEを引き換えました
3. 4,002 $WETH を使用して AAVE のフラッシュ ローンを返済し、1156.9 $ETH の利益を得ました。
根本的な原因
一方で、ハッカーは Compound プロトコルの精度損失の問題に精通しており、Onyx プロトコルの脆弱性にも事前に気づいていたため、OIP-22 提案の問題点に早くから気づいていた可能性があります。アクティブ化されて実行の準備ができたら、ハッカーが最初にそれを実行するだろうという提案があり、わずか 1 分後に攻撃を開始しました。
一方で、精度損失の脆弱性は攻撃の根本的な原因となります。ハッカーは、totalSupply を非常に小さな値 2 に操作し、totalCash を非常に大きな値 2520870348093423681390050791471 に増加させて、exchangeRate を増幅させ、引き換え時に計算が切り捨てられました。
セキュリティに関するアドバイス
スマートコントラクトに限定されないガバナンス提案の詳細な監査を、特に初期化シナリオやその他のエッジケースで実施します。
特に複合プロトコルの場合、操作を防ぐために、市場が初期化されるときに少量の株式を追加することを検討してください。
緊急時にプロトコルを一時停止するための監視システムの設置が推奨されます。 Onyx がすでに監視システムを導入している場合、損失を減らすために 2 回目の攻撃トランザクションは発生から 30 分以上経過してからブロックされている可能性があります。さらに、メモリ プール ブロッキング システムを統合すると、非常に有益です。このシステムは、攻撃者が攻撃を実行している間にメモリプール内の攻撃トランザクションを効果的に検出し、損失を回避するための予防的ブロックを可能にします。
資本の流れ
この記事の執筆時点では、攻撃者 (0x 085 bDf) は、別の管理されたアドレス (0x 4 c 9 c 86) を使用して、1140 $ETH を通貨混合プラットフォーム Tornado.Cash に送金しました。
別の攻撃者は、盗んだコインを依然としてウォレットに保管しています (0x 508395)
同様の攻撃事例
この脆弱性は、2023 年 4 月 15 日にハンドレッド ファイナンスが受けたハッカー攻撃に似ており、その結果約 700 万ドルの損失が発生しました。トランザクションリンク: 0x6e9ebcdebbabda04fa9f2e3bc21ea8b2e4fb4bf4f4670cb8483e2f0b2604f451
メタトラスト・ラボについて
MetaTrust Labs は、シンガポールの南洋理工大学によって設立された、Web3 人工知能セキュリティ ツールとコード監査サービスの大手プロバイダーです。当社は、開発者とプロジェクト関係者が Web3 アプリケーションとスマート コントラクトを保護できるようにする高度な AI ソリューションを提供します。当社の包括的なサービスには、AI セキュリティ スキャン、コード監査、スマート コントラクト モニタリング、トランザクション モニタリングが含まれます。 MetaTrust Labs では、ビルダーが自信と信頼性を持ってイノベーションを行えるよう、Web3 環境の保護に取り組んでいます。
Website: metatrust.io
Twitter: @MetatrustLabs
