# DeFiセキュリティレッスン:一般的なセキュリティの脆弱性と注意事項最近、あるセキュリティ専門家がコミュニティメンバーのために分散型金融のセキュリティコースを共有しました。この専門家は、過去1年以上にわたりWeb3業界が直面した重大なセキュリティ事件を振り返り、これらの事件が発生した理由や防止方法を探求し、一般的なスマートコントラクトのセキュリティの脆弱性とその予防策をまとめ、プロジェクト関係者や一般ユーザーにいくつかのセキュリティのアドバイスを提供しました。! [Cobo DeFiセキュリティセクション(パートII):D eFiの一般的なセキュリティの脆弱性と防止](https://img-cdn.gateio.im/social/moments-cf2aa755426b31e8f21cbb05cc1fe39a)## よくある分散型金融の脆弱性タイプ分散型金融 中常见の脆弱性タイプには、フラッシュローン、価格操作、関数権限の問題、任意の外部呼び出し、フォールバック関数の問題、ビジネスロジックの脆弱性、秘密鍵の漏洩、再入攻撃などがあります。この記事では、フラッシュローン、価格操作、再入攻撃の3つのタイプに重点を置いて説明します。### ライトニングローンフラッシュローンはDeFiの革新ですが、ハッカーによって攻撃に利用されることもあります。攻撃者は通常、フラッシュローンで大量の資金を借りて、価格を操作したり、ビジネスロジックを攻撃したりします。開発者は、契約の機能が巨額の資金によって異常になる可能性があるか、または大量の資金を使って単一の取引で複数の関数と相互作用し、不当な報酬を得ることができるかどうかを考慮する必要があります。多くの分散型金融プロジェクトは高い利益を得られるように見えますが、実際にはプロジェクトの能力にばらつきがあります。一部のプロジェクトのコードは購入された可能性があり、コード自体にバグがなくても、論理的には問題が存在する可能性があります。たとえば、特定のプロジェクトは保有者のトークンの数量に基づいて固定時間に報酬を配布しますが、攻撃者がフラッシュローンを利用して大量のトークンを購入し、大部分の報酬を得ることがあります。### 価格操作価格操作問題はフラッシュローンと密接に関連しています。このような問題は、価格計算時に特定のパラメータがユーザーによって制御されることから主に発生します。一般的な問題のタイプは2種類あります:1. 第三者のデータを使用して価格を計算しますが、使用方法が不適切であったり、チェックが不十分なため、価格が悪意を持って操作される可能性があります。2. 特定のアドレスのトークン数量を計算変数として使用し、これらのアドレスのトークン残高は一時的に増加または減少する可能性があります。### リエントランシー攻撃外部コントラクトを呼び出す主なリスクの一つは、制御フローを奪われ、データに予期しない変更が加えられる可能性があることです。例えば、引き出し関数において、ユーザーの残高が関数の終了時に0に設定される場合、繰り返し呼び出すことで残高が何度も引き出される可能性があります。再入問題を解決する際には、以下の点に注意する必要があります:1. 単一の関数の再入問題を防ぐだけではありません。2. コーディングについては、Checks-Effects-Interactionsパターンに従います。3. 時間が検証された再入防止モディファイアを使用する。注意すべきは、車輪を再び作り直すことはしばしばエラーのリスクを増加させるということです。業界で既に確立されたベストプラクティスを使用することは、独自に開発するよりも通常は信頼性が高いです。## セキュリティの提案### プロジェクトチームの安全に関する提案1. 最良のセキュリティプラクティスに従って契約を開発する。2. コントラクトのアップグレードと一時停止機能を実現する。3. タイムロック機構を採用する。4. セキュリティ投資を強化し、完全なセキュリティシステムを構築する。5. すべての従業員のセキュリティ意識を高める。6. 内部の悪行を防ぎながら、効率を向上させると同時にリスク管理を強化する。7. 第三者サービスの導入には注意し、上下流の両方で安全性を検証する。### ユーザー/LP はスマートコントラクトの安全性をどのように判断しますか1. コントラクトがオープンソースかどうかを確認します。2. Ownerが分散型のマルチシグ機構を採用しているか確認する。3. 契約の既存の取引状況を確認します。4. コントラクトが代理コントラクトであるか、アップグレード可能であるか、タイムロックがあるかを確認してください。5. 契約が複数の機関による監査を受けたか確認し、Owner権限が過大でないか評価する。6. プロジェクトで使用されているオラクルの種類とその信頼性に注意してください。これらの点に注目することで、ユーザーはプロジェクトの安全性をより良く評価し、参加リスクを低減できます。
DeFiセキュリティレッスン:一般的な脆弱性と保護戦略の謎を解き明かす
DeFiセキュリティレッスン:一般的なセキュリティの脆弱性と注意事項
最近、あるセキュリティ専門家がコミュニティメンバーのために分散型金融のセキュリティコースを共有しました。この専門家は、過去1年以上にわたりWeb3業界が直面した重大なセキュリティ事件を振り返り、これらの事件が発生した理由や防止方法を探求し、一般的なスマートコントラクトのセキュリティの脆弱性とその予防策をまとめ、プロジェクト関係者や一般ユーザーにいくつかのセキュリティのアドバイスを提供しました。
! Cobo DeFiセキュリティセクション(パートII):D eFiの一般的なセキュリティの脆弱性と防止
よくある分散型金融の脆弱性タイプ
分散型金融 中常见の脆弱性タイプには、フラッシュローン、価格操作、関数権限の問題、任意の外部呼び出し、フォールバック関数の問題、ビジネスロジックの脆弱性、秘密鍵の漏洩、再入攻撃などがあります。この記事では、フラッシュローン、価格操作、再入攻撃の3つのタイプに重点を置いて説明します。
ライトニングローン
フラッシュローンはDeFiの革新ですが、ハッカーによって攻撃に利用されることもあります。攻撃者は通常、フラッシュローンで大量の資金を借りて、価格を操作したり、ビジネスロジックを攻撃したりします。開発者は、契約の機能が巨額の資金によって異常になる可能性があるか、または大量の資金を使って単一の取引で複数の関数と相互作用し、不当な報酬を得ることができるかどうかを考慮する必要があります。
多くの分散型金融プロジェクトは高い利益を得られるように見えますが、実際にはプロジェクトの能力にばらつきがあります。一部のプロジェクトのコードは購入された可能性があり、コード自体にバグがなくても、論理的には問題が存在する可能性があります。たとえば、特定のプロジェクトは保有者のトークンの数量に基づいて固定時間に報酬を配布しますが、攻撃者がフラッシュローンを利用して大量のトークンを購入し、大部分の報酬を得ることがあります。
価格操作
価格操作問題はフラッシュローンと密接に関連しています。このような問題は、価格計算時に特定のパラメータがユーザーによって制御されることから主に発生します。一般的な問題のタイプは2種類あります:
リエントランシー攻撃
外部コントラクトを呼び出す主なリスクの一つは、制御フローを奪われ、データに予期しない変更が加えられる可能性があることです。例えば、引き出し関数において、ユーザーの残高が関数の終了時に0に設定される場合、繰り返し呼び出すことで残高が何度も引き出される可能性があります。
再入問題を解決する際には、以下の点に注意する必要があります:
注意すべきは、車輪を再び作り直すことはしばしばエラーのリスクを増加させるということです。業界で既に確立されたベストプラクティスを使用することは、独自に開発するよりも通常は信頼性が高いです。
セキュリティの提案
プロジェクトチームの安全に関する提案
ユーザー/LP はスマートコントラクトの安全性をどのように判断しますか
これらの点に注目することで、ユーザーはプロジェクトの安全性をより良く評価し、参加リスクを低減できます。