最近、注目を集めているデジタルコレクションプロジェクトの契約に2つの深刻な脆弱性があることが発見されました。セキュリティチームがその契約を審査したところ、これらの脆弱性によってユーザー資産がロックされ、プロジェクトが3,400万ドル以上の資金を引き出せなくなる可能性があることがわかりました。最初の脆弱性は返金機能に関連しています。契約内の返金プログラムは、すべてのユーザーに対してループ方式で返金を行います。しかし、もしあるユーザーのアドレスが悪意のある契約であれば、返金を受け取ることを拒否し、取引が失敗する可能性があり、それがすべてのユーザーの返金操作に影響を与えることになります。幸いなことに、この脆弱性は実際には悪用されませんでした。! [](https://img-cdn.gateio.im/social/moments-2b48c446b79227ab40357d02ae7e5272)類似の問題を避けるために、プロジェクトは返金メカニズムを設計する際に以下の点を考慮することをお勧めします:1. 制限は一般ユーザーアカウントのみがプロジェクトに参加できる2. ネイティブアセットの代わりにWETHなどのERC20トークンを使用する3. ユーザーが自発的に返金を請求できる機能を設計し、バッチ処理ではなくすること。二つ目の脆弱性は、コード内の論理エラーによって引き起こされました。プロジェクト資金を引き出す関数内に条件判断文があり、本来は二つの特定の変数を比較するべきでしたが、誤って別の変数を使用して比較しました。これにより条件は永遠に満たされず、プロジェクトは契約内の資金を引き出すことができませんでした。現在、約3400万ドルの資産が契約内に永久にロックされています。! [](https://img-cdn.gateio.im/social/moments-2b91eca25d8cd8d24a2a7680e8b4f7aa)この事件は、知名プロジェクトでさえも低級なミスが発生する可能性があることを再び浮き彫りにしました。開発チームはプロジェクト開発の過程で十分なテストケースを作成し、基本的な安全意識を育成すべきです。去中心化金融の分野では、安全監査が一般的な慣行となっていますが、デジタルコレクションプロジェクトではこのプロセスがしばしば無視され、最終的に巨額の損失を招いています。この出来事は、ブロックチェーンプロジェクトの開発において、プロジェクトの規模に関わらず、セキュリティ監査の重要性を認識すべきであることを思い出させます。これは、重大な結果を引き起こす可能性のある脆弱性を防ぐためです。同時に、スマートコントラクト開発における細部の重要性も浮き彫りにしています。ほんの小さなコードの誤りが数百万ドルの損失につながる可能性があります。! [](https://img-cdn.gateio.im/social/moments-04031cf161bae26d766a75befa44e64e)
デジタルコレクションプロジェクトの契約に重大な脆弱性が発生し、3400万ドルの資金が永久にロックされています。
最近、注目を集めているデジタルコレクションプロジェクトの契約に2つの深刻な脆弱性があることが発見されました。セキュリティチームがその契約を審査したところ、これらの脆弱性によってユーザー資産がロックされ、プロジェクトが3,400万ドル以上の資金を引き出せなくなる可能性があることがわかりました。
最初の脆弱性は返金機能に関連しています。契約内の返金プログラムは、すべてのユーザーに対してループ方式で返金を行います。しかし、もしあるユーザーのアドレスが悪意のある契約であれば、返金を受け取ることを拒否し、取引が失敗する可能性があり、それがすべてのユーザーの返金操作に影響を与えることになります。幸いなことに、この脆弱性は実際には悪用されませんでした。
!
類似の問題を避けるために、プロジェクトは返金メカニズムを設計する際に以下の点を考慮することをお勧めします:
二つ目の脆弱性は、コード内の論理エラーによって引き起こされました。プロジェクト資金を引き出す関数内に条件判断文があり、本来は二つの特定の変数を比較するべきでしたが、誤って別の変数を使用して比較しました。これにより条件は永遠に満たされず、プロジェクトは契約内の資金を引き出すことができませんでした。現在、約3400万ドルの資産が契約内に永久にロックされています。
!
この事件は、知名プロジェクトでさえも低級なミスが発生する可能性があることを再び浮き彫りにしました。開発チームはプロジェクト開発の過程で十分なテストケースを作成し、基本的な安全意識を育成すべきです。去中心化金融の分野では、安全監査が一般的な慣行となっていますが、デジタルコレクションプロジェクトではこのプロセスがしばしば無視され、最終的に巨額の損失を招いています。
この出来事は、ブロックチェーンプロジェクトの開発において、プロジェクトの規模に関わらず、セキュリティ監査の重要性を認識すべきであることを思い出させます。これは、重大な結果を引き起こす可能性のある脆弱性を防ぐためです。同時に、スマートコントラクト開発における細部の重要性も浮き彫りにしています。ほんの小さなコードの誤りが数百万ドルの損失につながる可能性があります。
!