ポリゴン チェーン上の LibertiVault コントラクトに対する攻撃の分析

金色财经_

ブロックチェーンセキュリティ監査会社 Beosin** の Beosin EagleEye セキュリティ リスク監視、早期警告、ブロック プラットフォーム監視によると、Polygon チェーン上の LibertiVault 契約が攻撃され、約 29 万米ドル相当の約 123ETH と 56,234USDT が損失されました。 、イーサリアムチェーン35ETHと96223USDTは約16万米ドルの価値があり、合計は45万米ドル以上になります。 **技術スタッフが分析した結果、この攻撃は LibertiVault 契約の再入可能脆弱性によって引き起こされたことが判明しました。

  1. 攻撃者はフラッシュ ローンを使用して 500 万 USDT を借り、LibertiVault コントラクトのデポジット機能を呼び出してプレッジします。プレッジ ロジックは、プレッジされたトークンの一部を交換に使用し、鋳造されたコインの量を計算します。鋳造コインは契約とデポジットに基づいて計算されます。計算は、契約がデポジットされる前の残高に対するデポジットされたトークンの量の比率に基づいて行われます。

  2. 為替操作スワップはハッカーのコントラクトをコールしますが、このときハッカーは初めてコール デポジットを再入力し、2 回目にこの関数を再入力して 250 万 USDT をコントラクトにデポジットします。

  3. 2 回目のリエントリー後、契約は前の契約の USDT 残高に対する 250 万 USDT の比率に従ってハッカーのためにコインを鋳造します。最初のリエントリーの入金機能が完了した後、ハッカーはさらに 250 万 USDT を入金します。そこに。

  4. この時点で、外部デポジット機能での交換操作が完了し、契約は契約 USDT 残高に対する 250 万 USDT の比率に従ってコインを鋳造します。

  5. 問題は 4 番目の点で、論理的に言えば、2 回目の契約残高の計算は、前回の残高に、この計算のパラメーターとして初めて入力された 250 万の残高を加えたものになるはずですが、ここでは、リエントリーの場合、契約残高は最初に取得されているためパラメータは変更されず、元の残高が引き続き計算に使用されるため、ハッカーのために大量のバウチャートークンが鋳造されることになります。

  6. 最後に、ハッカーはトークンを削除し、利益を得るためにフラッシュ ローンを返しました。

免責事項:このページの情報は第三者から提供される場合があり、Gateの見解または意見を代表するものではありません。このページに表示される内容は参考情報のみであり、いかなる金融、投資、または法律上の助言を構成するものではありません。Gateは情報の正確性または完全性を保証せず、当該情報の利用に起因するいかなる損失についても責任を負いません。仮想資産への投資は高いリスクを伴い、大きな価格変動の影響を受けます。投資元本の全額を失う可能性があります。関連するリスクを十分に理解したうえで、ご自身の財務状況およびリスク許容度に基づき慎重に判断してください。詳細は免責事項をご参照ください。
コメント
0/400
コメントなし