読み取り時間: 6 分
"スマート契約」は、イーサリアムブロックチェーンで実行される一連の命令です。 監査するために、イーサリアムスマートコントラクトは、潜在的な脅威や一般的な脆弱性から安全であることを確認することを意味します。
現在のシナリオでは、スマートコントラクトに関連するハッキングとエクスプロイトは過去最高ですが、それが進歩と改善をもたらしているため、賞賛される嵐です。 DeFiプラットフォーム、それはそれらをより安全にします。
スマートコントラクトのセキュリティについて話すとき、「スマートコントラクト監査の重要性.スマート コントラクト監査は、さまざまなパラメーターに基づいてスマート コントラクト コードを相互検証するプロセスです。 また、今後のセクションでは、スマート コントラクト監査の重要性、スマート コントラクト監査への複数のアプローチ、および Ethereum スマート コントラクトの監査に関連する手順について分析します。
スマートコントラクト監査の重要性
利害関係者がスマートコントラクト監査を必要とする理由をよりよく理解するには、最近の過去を調べて、さまざまなDeFiプラットフォームで発生した膨大な損失を確認する必要があります。
- ポリネットワーク :600億ドルの損失
- 貸してください –25万ドルの損失。
- シンセティックス –37百万のsETH損失。
- bZx – $ 645の損失。
これらは最近のハックのほんの一部です。 新しいレポートによると-
「DeFiは75年に暗号ハックの2021%以上を占めました。これは、361年の2.7倍の2020億XNUMX万ドルになります。」
CipherTrace
これらの膨大な数は恐ろしいものですが、これらのDeFiプラットフォームが予防策を講じることができれば、これらの攻撃は簡単に軽減できたはずです。 一部の攻撃は深刻な場合がありますが、ほとんどの攻撃は簡単に回避できた可能性があります。
DeFiプラットフォームを将来の潜在的な脅威から安全に保つための最良の方法のXNUMXつは、過去のすべての攻撃に慣れることです。 そのための最良のリソースのXNUMXつは、すべてのスマートコントラクトの脆弱性とそれらに取り組むための例のリストを提示するSWCレジストリです。
情報源: SWC レジストリ
では、スマートコントラクト監査の黄金のステップは何ですか?それに従うと、さまざまなDeFiプラットフォームが数百万ドルを節約するのに役立ちますか?
スマートコントラクト監査への普遍的なアプローチ
スマートコントラクト監査には、広く採用されているXNUMXつの方法があります。
- 手動コード分析
- 自動コード分析
手動コード分析
これは、コードをXNUMX行ずつ調べて、潜在的な脆弱性を特定するプロセスです。 それは、スキル、経験、粘り強さ、そして忍耐を必要とする複雑なプロセスです。 DeFiプロジェクトのセキュリティを向上させるには、手動コード分析を実行することが、自動コード分析が残す可能性のある脆弱性を特定するための実質的に最良の方法です。
ほとんどの場合、「コードレビューチームを構成する必要があるのは何人ですか?」という非常に頻繁な質問に遭遇します。 で クイルオーディッツ, プロジェクトのセキュリティを最優先します。 したがって、スマートコントラクトコードのダイナミクスを調査するために、経験豊富で熟練した監査人のレビューチームがあります。
手動コード分析には、バッファオーバーフロー(特に「オフバイワン」エラー)、デッドコード、および人間のレビュー担当者が見落としがちなその他の間違いなど、いくつかの制限がありますが、自動化に適しています。それらを見つけるための分析。
自動コード分析
自動コード分析は、さまざまな侵入テストを使用して脆弱性を見つけるため、時間と費用を節約します。 私たち クイルオーディッツ 社内のさまざまなオープンソース ツールを活用して、セキュリティ監査の成果を最大化します。 社内監査人が使用するクラス最高のツールのいくつかは次のとおりです。
- 神話X –静的分析、動的分析、およびシンボリック実行に基づいてプロジェクトを検査するスマートコントラクトセキュリティサービス。 MythXを使用するには、からのAPIキーが必要です mythx.io.
- ミスリル –イーサリアムスマートコントラクトのセキュリティ分析ツール。 整数のアンダーフロー、所有者の上書きからエーテルへの引き出しなど、さまざまなセキュリティ問題を調査します。
- ずるずる滑る – Python 3で記述された静的分析フレームワーク。脆弱性を識別し、契約の詳細に関する視覚的な情報を出力し、カスタム分析を柔軟に記述するためのAPIを提供します。
- エキドナ –虫を食べる奇妙な生き物! イーサリアムスマートコントラクトのファジング/プロパティベースのテスト用に開発されたHaskellプログラム。
- オイエンテ –イーサリアムコードを分析して脆弱性を見つける。
これは、社内の監査チームが自動コード分析を実行するために活用したツールの簡潔なリストにすぎませんでした。 しかし、スマートコントラクト監査を実行するためのこれらの黄金のステップは何ですか?
イーサリアムスマートコントラクトを監査する手順
スマートコントラクト監査を実行する理由は複数あるかもしれませんが、主な動機はDefiプラットフォームを保護することです。 私たち クイルオーディッツ 包括的な方法論に従って、スマートコントラクト監査を実施します。
#1:コードデザインパターンの収集
これは、スマートコントラクト監査を実行するための最も重要なステップのXNUMXつです。 監査を実施する企業にとって、スマートコントラクトプラットフォームのコードと動作仕様を明確に理解することが重要です。
#2:ユニットテスト
さまざまなコードカバレッジツールを使用して、スマートコントラクトの単体テストを実行します。 また、ユニットテストケースを実装して、各機能がスマートコントラクトコード全体と一貫して機能することを確認します。
#3:手動分析
自動分析により、誤検知が発生する場合があります。 したがって、競合状態、トランザクション順序依存、タイムスタンプ依存の外部呼び出し、サービス拒否攻撃などの潜在的な脆弱性を見つけるには、行ごとの手動調査を行う必要があります。
#4:初期レポート
次に、チームが修正する必要のあるすべてのバグとエラーを含む最初のレポートを提示します。
#5:コードが修正されました
予備分析で発見されたすべてのバグとエラーを修正し、最終レビューのために監査人に送信します。
#6:静的分析とフォーマル検証
社内のオープンソース自動ツールを使用してコードレビューを実行し、スマートコントラクトの抜け穴や悪意のあるコードを検出します。
#7:最終監査報告書
最終的な監査レポートはクライアントの前に提示され、誰でも参照できるようにGitHubで公開されます。
これは、熟練した監査人の社内チームが従う包括的な戦略ですが、スマートコントラクトが同じ価格でXNUMX回監査されていることは明らかです。
DeFiプロジェクトをXNUMX回監査してもセキュリティは保証されませんが、少なくともXNUMX回(または)XNUMX回監査することをお勧めします。 過去に、「ポプシクルファイナンス」ハッキングなどの事件がありました 約 20億円分。 XNUMX回監査されましたが、一般的な脆弱性のために悪用されました。
したがって、このようなインシデントは、 スマートコントラクト監査の重要性 - "多いほど良いです!"
最後の言葉
ここまで私たちと一緒にいたら、イーサリアム スマート コントラクトがどのように監査されるかについてよく知っているでしょう。
DeFiのハッキングやエクスプロイトの数の増加はあなたを驚かせるかもしれませんが、 クイルオーディッツ 何百万ドルも節約できます。
1,624 ビュー
- SEO を活用したコンテンツと PR 配信。 今日増幅されます。
- Platoblockchain。 Web3メタバースインテリジェンス。 知識の増幅。 こちらからアクセスしてください。
- 情報源: https://blog.quillhash.com/2023/02/08/how-properly-auditing-an-ethereum-smart-contract-can-save-you-millions/