# Poolzが算術オーバーフローの脆弱性攻撃に遭い、約66.5万ドルの損失2023年3月15日未明、Poolzはイーサリアム、BNBチェーン、ポリゴンネットワークで攻撃を受け、多くのトークン資産が失われ、総額約66.5万ドルに達しました。攻撃者はスマートコントラクトの算術オーバーフローの脆弱性を利用し、資金移動の制限を回避することに成功しました。オンチェーンデータの監視によると、今回の攻撃にはMEE、ESNC、DON、ASW、KMON、POOLZなどの複数のトークンが関与しています。攻撃者は一部の利益を得たトークンをBNBに交換しましたが、現時点ではこれらの資金はまだ移動していません。! [Poolzは算術オーバーフローの問題で攻撃を受け、約665,000ドルを失いました! ](https://img-cdn.gateio.im/social/moments-974bc1b1f017458e935bb53bf55cef3e)攻撃プロセスは主に3つのステップに分かれています:1. 攻撃者は最初に、あるDEXを通じて少量のMNZトークンを交換しました。2. その後、Poolzコントラクト内のCreateMassPools関数が呼び出されました。この関数は流動性プールを一括で作成し、初期流動性を提供するために使用されるべきでしたが、重要な脆弱性が存在しました。3. 脆弱性はgetArraySum関数に存在します。この関数は_StartAmount配列を走査して合計を計算しますが、オーバーフローの状況を考慮していません。攻撃者は、uint256のオーバーフローを引き起こすように巧妙に構築された配列を使用し、関数の戻り値が1になるようにしましたが、実際に記録されている_StartAmountは非常に大きな数値です。4. 最後に、攻撃者はwithdraw関数を呼び出して資金を引き出し、攻撃プロセスを完了しました。! [Poolzは算術オーバーフローの問題で攻撃を受け、約665,000ドルを失いました! ](https://img-cdn.gateio.im/social/moments-7726863222e36bd3db4e3408503ba81c)今回の事件は、スマートコントラクトにおける算術オーバーフロー問題の危険性を再度浮き彫りにしました。同様の攻撃を防ぐために、開発者は以下の提案を考慮すべきです:1. より新しいバージョンのSolidityコンパイラを使用し、オーバーフロー検査機能が内蔵されています。2. 低バージョンのSolidityでは、整数演算を処理するためにOpenZeppelinのSafeMathなどのサードパーティのセキュリティライブラリを導入できます。3. 数学計算に関わる部分に特に注意して、包括的なコード監査を行う。4. マルチシグなどの追加のセキュリティ対策を実施し、重要な操作に保護層を追加します。! [Poolzは算術オーバーフローの問題で攻撃を受け、約665,000ドルを失いました! ](https://img-cdn.gateio.im/social/moments-207e83ef73f5ece4adee71f4f42674f3)この事件は再び私たちに、ブロックチェーンエコシステムにおいて、コードが法律であることを思い出させます。開発チームは常に警戒し、ユーザーの資産とプロジェクトの評判を守るためにセキュリティプラクティスを継続的に改善しなければなりません。! [Poolzは算術オーバーフローの問題で攻撃を受け、約665,000ドルを失いました! ](https://img-cdn.gateio.im/social/moments-915eae1e1853f3d04d16dbac2b8c504a)
Poolzは算術オーバーフロー攻撃を受け、66.5万ドルの損失を被った。複数のチェーン資産が影響を受けた。
Poolzが算術オーバーフローの脆弱性攻撃に遭い、約66.5万ドルの損失
2023年3月15日未明、Poolzはイーサリアム、BNBチェーン、ポリゴンネットワークで攻撃を受け、多くのトークン資産が失われ、総額約66.5万ドルに達しました。攻撃者はスマートコントラクトの算術オーバーフローの脆弱性を利用し、資金移動の制限を回避することに成功しました。
オンチェーンデータの監視によると、今回の攻撃にはMEE、ESNC、DON、ASW、KMON、POOLZなどの複数のトークンが関与しています。攻撃者は一部の利益を得たトークンをBNBに交換しましたが、現時点ではこれらの資金はまだ移動していません。
! Poolzは算術オーバーフローの問題で攻撃を受け、約665,000ドルを失いました!
攻撃プロセスは主に3つのステップに分かれています:
攻撃者は最初に、あるDEXを通じて少量のMNZトークンを交換しました。
その後、Poolzコントラクト内のCreateMassPools関数が呼び出されました。この関数は流動性プールを一括で作成し、初期流動性を提供するために使用されるべきでしたが、重要な脆弱性が存在しました。
脆弱性はgetArraySum関数に存在します。この関数は_StartAmount配列を走査して合計を計算しますが、オーバーフローの状況を考慮していません。攻撃者は、uint256のオーバーフローを引き起こすように巧妙に構築された配列を使用し、関数の戻り値が1になるようにしましたが、実際に記録されている_StartAmountは非常に大きな数値です。
最後に、攻撃者はwithdraw関数を呼び出して資金を引き出し、攻撃プロセスを完了しました。
! Poolzは算術オーバーフローの問題で攻撃を受け、約665,000ドルを失いました!
今回の事件は、スマートコントラクトにおける算術オーバーフロー問題の危険性を再度浮き彫りにしました。同様の攻撃を防ぐために、開発者は以下の提案を考慮すべきです:
より新しいバージョンのSolidityコンパイラを使用し、オーバーフロー検査機能が内蔵されています。
低バージョンのSolidityでは、整数演算を処理するためにOpenZeppelinのSafeMathなどのサードパーティのセキュリティライブラリを導入できます。
数学計算に関わる部分に特に注意して、包括的なコード監査を行う。
マルチシグなどの追加のセキュリティ対策を実施し、重要な操作に保護層を追加します。
! Poolzは算術オーバーフローの問題で攻撃を受け、約665,000ドルを失いました!
この事件は再び私たちに、ブロックチェーンエコシステムにおいて、コードが法律であることを思い出させます。開発チームは常に警戒し、ユーザーの資産とプロジェクトの評判を守るためにセキュリティプラクティスを継続的に改善しなければなりません。
! Poolzは算術オーバーフローの問題で攻撃を受け、約665,000ドルを失いました!