# Poolzが算術オーバーフロー攻撃に遭遇し、約66.5万ドルの損失最近、複数のブロックチェーンネットワークで深刻なセキュリティ事件が発生しました。ブロックチェーンデータの監視によると、3月15日の深夜に、イーサリアム、BNBスマートチェーン、ポリゴンネットワーク上のPoolzプロジェクトがハッカーの攻撃を受け、大量のトークンが盗まれました。今回の攻撃には、MEE、ESNC、DON、ASW、KMON、POOLZなどの複数のトークンが関与しています。盗まれたトークンの総価値は約66.5万ドルです。現在、攻撃者は一部の盗まれたトークンをBNBに交換しましたが、まだ攻撃アドレスから資金を移動させていません。! [Poolzは算術オーバーフローの問題で攻撃を受け、約665,000ドルを失いました! ](https://img-cdn.gateio.im/social/moments-974bc1b1f017458e935bb53bf55cef3e)分析によると、今回の攻撃は主にPoolzスマートコントラクト内の算術オーバーフローの脆弱性を利用して行われました。攻撃者はCreateMassPools関数を呼び出すことで、トークン数の計算を巧妙に操作し、少量のトークンで大量のトークンを取得することに成功しました。具体的に言うと、攻撃者は最初にある分散型取引所で少量のMNZトークンを交換しました。その後、攻撃者はCreateMassPools関数を呼び出して流動性プールを一括で作成しました。この関数は、本来はユーザーがプールを一括で作成し、初期流動性を提供するために使用されるべきものでした。! [Poolzは算術オーバーフローの問題で攻撃を受け、約665,000ドルを失いました! ](https://img-cdn.gateio.im/social/moments-7726863222e36bd3db4e3408503ba81c)問題はgetArraySum関数にあります。この関数は、ユーザーが提供する初期流動性の数量を計算する役割を担っています。攻撃者は、2つの巨大な数字を含む特別に構成された配列を渡しました。この2つの数字を加算すると、uint256型の制限により整数オーバーフローが発生し、最終的な結果が1になってしまいました。しかし、契約はプールの属性を記録する際に、元の入力の大きな数値を使用しています。これにより、重大な不一致が生じました:攻撃者は実際には1トークンしか転入していないのに、契約は巨大な数値を記録しました。最終的に、攻撃者はwithdraw関数を呼び出すことで簡単に大量のトークンを引き出し、攻撃プロセス全体を完了しました。! [Poolzは算術オーバーフローの問題で攻撃を受け、約665,000ドルを失いました! ](https://img-cdn.gateio.im/social/moments-207e83ef73f5ece4adee71f4f42674f3)この事件は、スマートコントラクトのセキュリティの重要性を再び浮き彫りにしました。同様の問題を防ぐために、開発者には新しいバージョンのSolidityプログラミング言語を使用することをお勧めします。新しいバージョンでは、コンパイルプロセス中に自動的にオーバーフロー検査が行われます。古いバージョンのSolidityを使用しているプロジェクトでは、整数オーバーフローの問題を解決するためにOpenZeppelinのSafeMathライブラリを導入することを検討できます。この事件は、見た目には小さなプログラミングの不備が巨大な経済的損失を引き起こす可能性があることを私たちに思い出させます。ブロックチェーンプロジェクトの関係者は、ユーザー資産の安全を確保するために、コード監査とセキュリティテストをより重視する必要があります。! [Poolzは算術オーバーフローの問題で攻撃を受け、約665,000ドルを失いました! ](https://img-cdn.gateio.im/social/moments-915eae1e1853f3d04d16dbac2b8c504a)
Poolzが算術オーバーフロー攻撃を受け、多くのチェーンで66.5万ドルの損失
Poolzが算術オーバーフロー攻撃に遭遇し、約66.5万ドルの損失
最近、複数のブロックチェーンネットワークで深刻なセキュリティ事件が発生しました。ブロックチェーンデータの監視によると、3月15日の深夜に、イーサリアム、BNBスマートチェーン、ポリゴンネットワーク上のPoolzプロジェクトがハッカーの攻撃を受け、大量のトークンが盗まれました。
今回の攻撃には、MEE、ESNC、DON、ASW、KMON、POOLZなどの複数のトークンが関与しています。盗まれたトークンの総価値は約66.5万ドルです。現在、攻撃者は一部の盗まれたトークンをBNBに交換しましたが、まだ攻撃アドレスから資金を移動させていません。
! Poolzは算術オーバーフローの問題で攻撃を受け、約665,000ドルを失いました!
分析によると、今回の攻撃は主にPoolzスマートコントラクト内の算術オーバーフローの脆弱性を利用して行われました。攻撃者はCreateMassPools関数を呼び出すことで、トークン数の計算を巧妙に操作し、少量のトークンで大量のトークンを取得することに成功しました。
具体的に言うと、攻撃者は最初にある分散型取引所で少量のMNZトークンを交換しました。その後、攻撃者はCreateMassPools関数を呼び出して流動性プールを一括で作成しました。この関数は、本来はユーザーがプールを一括で作成し、初期流動性を提供するために使用されるべきものでした。
! Poolzは算術オーバーフローの問題で攻撃を受け、約665,000ドルを失いました!
問題はgetArraySum関数にあります。この関数は、ユーザーが提供する初期流動性の数量を計算する役割を担っています。攻撃者は、2つの巨大な数字を含む特別に構成された配列を渡しました。この2つの数字を加算すると、uint256型の制限により整数オーバーフローが発生し、最終的な結果が1になってしまいました。
しかし、契約はプールの属性を記録する際に、元の入力の大きな数値を使用しています。これにより、重大な不一致が生じました:攻撃者は実際には1トークンしか転入していないのに、契約は巨大な数値を記録しました。最終的に、攻撃者はwithdraw関数を呼び出すことで簡単に大量のトークンを引き出し、攻撃プロセス全体を完了しました。
! Poolzは算術オーバーフローの問題で攻撃を受け、約665,000ドルを失いました!
この事件は、スマートコントラクトのセキュリティの重要性を再び浮き彫りにしました。同様の問題を防ぐために、開発者には新しいバージョンのSolidityプログラミング言語を使用することをお勧めします。新しいバージョンでは、コンパイルプロセス中に自動的にオーバーフロー検査が行われます。古いバージョンのSolidityを使用しているプロジェクトでは、整数オーバーフローの問題を解決するためにOpenZeppelinのSafeMathライブラリを導入することを検討できます。
この事件は、見た目には小さなプログラミングの不備が巨大な経済的損失を引き起こす可能性があることを私たちに思い出させます。ブロックチェーンプロジェクトの関係者は、ユーザー資産の安全を確保するために、コード監査とセキュリティテストをより重視する必要があります。
! Poolzは算術オーバーフローの問題で攻撃を受け、約665,000ドルを失いました!