Skip to main content
QUICK REVIEW

[論文レビュー] A Systematic Literature Review on Smart Contracts Security

Harry Virani, Manthan Kyada|arXiv (Cornell University)|Dec 9, 2022
Blockchain Technology Applications and Security被引用数 4
ひとこと要約

本稿の体系的文献レビューは、イーサリアムベースのスマートコントラクトにおける深刻なセキュリティ脆弱性を特定し、その原因を分析するとともに、既存の検出技術の有効性を評価している。221件の研究から得られた知見を統合し、再entrant攻撃や整数オーバーフローといった一般的な欠陥をマッピングするとともに、静的解析、形式的検証、機械学習ベースのツールがそれらの脆弱性を軽減する際の有効性と限界を評価している。

ABSTRACT

Smart contracts are blockchain-based algorithms that execute when specific criteria are satisfied. They are often used to automate the implementation of an agreement so that all parties may be confident of the conclusion right away, without the need for an intermediary or additional delay. They can also automate a process so that the following action is executed when circumstances are satisfied. This study seeks to pinpoint the most significant weaknesses in smart contracts from the viewpoints of their internal workings and software security flaws. These are then addressed using various techniques and tools used across the industry. Additionally, we looked into the limitations of the tools or analytical techniques about the found security flaws in the smart contracts.

研究の動機と目的

  • スマートコントラクトにおける最も一般的なセキュリティ脆弱性を、内部論理的要因およびソフトウェア実装的要因の両観点から特定・分類すること。
  • スマートコントラクト脆弱性を検出するために用いられる既存のツールおよび技術の有効性と限界を評価すること。
  • 今後のツール開発および安全なコーディング実践を支援するため、スマートコントラクトセキュリティ分野における現在の研究を包括的に統合すること。
  • 特に複雑または新しい攻撃ベクトルに対処する能力に欠ける現在の検出手法におけるギャップを浮き彫りにすること。
  • 開発者および研究者が、ツール選定および導入に関する根拠に基づいた推奨事項を通じて、スマートコントラクトの信頼性を向上させることを支援すること。

提案手法

  • PRISMA指針に従った体系的文献レビューを実施し、主要な学術データベースおよび引用ネットワークから関連研究を同定した。
  • 221件の研究を、事前に定義された含む・含まない基準に基づいてスクリーニングし、スマートコントラクトセキュリティに関する実証的研究に焦点を当てた。
  • 論理的欠陥(例:再entrant、タイムスタンプ依存)と実装的欠陥(例:整数オーバーフロー、アクセス制御の問題)に分類して脆弱性を分類した。
  • 静的解析、動的解析、形式的検証、機械学習ベースのアプローチを含む、検出技術を脆弱性タイプにマッピングした。
  • スライスやスリッター、スマートエムベッドといったツールのカバレッジ、正確性、誤検出率に基づいて評価した。
  • 研究間の知見を統合し、スケーラビリティの問題や複雑な制御フローの処理が不十分であるといったツールの繰り返しの限界を特定した。

実験結果

リサーチクエスチョン

  • RQ1イーサリアムのスマートコントラクトで最も頻繁に見られる、そして深刻なセキュリティ脆弱性は何か?
  • RQ2これらの脆弱性を特定するのに最も効果的な検出技術およびツールは何か。それらの限界は何か?
  • RQ3静的解析、形式的検証、機械学習ベースのツールは、正確性、スケーラビリティ、使いやすさの観点からどのように比較できるか?
  • RQ4特に新しいまたは複雑な攻撃ベクトルに対処する観点で、現在の研究およびツール開発におけるギャップは何か?
  • RQ5開発者および研究者は、既存の知見をどのように活用してスマートコントラクト開発の実践およびツール開発を改善できるか?

主な発見

  • 再entrant、整数オーバーフロー/アンダーフロー、アクセス制御の欠陥が、スマートコントラクトで最も頻繁に報告された脆弱性であった。
  • スライスやマイスリルといった静的解析ツールは、一般的な脆弱性の検出において高い正確性を示したが、複雑な制御フローおよび間接呼び出しの処理には苦慮していた。
  • 形式的検証技術は、正確性に優れていたが、リソースおよび専門知識の要件が高いため、大規模なコントラクトには実用的でないことが判明した。
  • スマートエムベッドのような機械学習ベースのツールは、コードクローンおよび既知の脆弱性の検出において高い再現率を達成しており、22,000以上のソリディティコントラクトで90%のクローン比が観察された。
  • 技術の進展にもかかわらず、あらゆる脆弱性タイプを包括的に検出できる単一のツールは存在せず、ハイブリッド解析アプローチの導入が不可欠であることが示された。
  • 本研究では、フロントランニングやオラクル操作といった論理レベルの攻撃を検出するツールのギャップが顕在化したが、これらは現在の研究およびツールで十分に取り扱われていない。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。