Skip to main content
QUICK REVIEW

[論文レビュー] A Survey on Ethereum Systems Security: Vulnerabilities, Attacks and Defenses

Huashan Chen, Marcus Pendleton|arXiv (Cornell University)|Aug 13, 2019
Blockchain Technology Applications and Security参考文献 96被引用数 115
ひとこと要約

Ethereum のセキュリティを、層状アーキテクチャと環境全体にわたり、44 の脆弱性、26 の攻撃、47 の防御に分類する系統的調査で、根本原因分析と今後の方向性を提示する。

ABSTRACT

The blockchain technology is believed by many to be a game changer in many application domains, especially financial applications. While the first generation of blockchain technology (i.e., Blockchain 1.0) is almost exclusively used for cryptocurrency purposes, the second generation (i.e., Blockchain 2.0), as represented by Ethereum, is an open and decentralized platform enabling a new paradigm of computing --- Decentralized Applications (DApps) running on top of blockchains. The rich applications and semantics of DApps inevitably introduce many security vulnerabilities, which have no counterparts in pure cryptocurrency systems like Bitcoin. Since Ethereum is a new, yet complex, system, it is imperative to have a systematic and comprehensive understanding on its security from a holistic perspective, which is unavailable. To the best of our knowledge, the present survey, which can also be used as a tutorial, fills this void. In particular, we systematize three aspects of Ethereum systems security: vulnerabilities, attacks, and defenses. We draw insights into, among other things, vulnerability root causes, attack consequences, and defense capabilities, which shed light on future research directions.

研究の動機と目的

  • Ethereum のアーキテクチャと環境全体にわたるセキュリティ問題を、脆弱性・攻撃・防御に体系的に分類する。
  • 脆弱性の根本原因を特定し、攻撃がそれらをどのように悪用するかをマッピングする。
  • 既存の防御策の有効性と限界を分析し、今後の研究方向を概説する。
  • 安全な Ethereum ベースのシステムのための実践的なベストプラクティスと設計上の考慮事項を要約する。

提案手法

  • セキュリティトピックを整理するため、層状の Ethereum アーキテクチャ(アプリケーション、データ、コンセンサス、ネットワーク、環境)を採用する。
  • 44 の脆弱性タイプ(V1–V44)を列挙し、それらの根本原因と現在の状況(排除済み、ベストプラクティスで回避可能、または未解決)を分析する。
  • 26 の攻撃(A1–A26)を列挙し、関連する脆弱性と結果に結びつける。
  • 47 の防御(D1–D47)を列挙し、事前防御か事後防御として分類し、それらの能力と必要な投資を分析する。
  • Solidity、Solidity のコード実践、およびクライアント実装(例: Geth、Parity)をセキュリティ議論の焦点技術として用いる。

実験結果

リサーチクエスチョン

  • RQ1Ethereum における主要な脆弱性クラスと、それらの根本原因がアーキテクチャ層全体にわたってどう分布しているか?
  • RQ2これらの脆弱性を悪用する攻撃技術は何であり、結果はどうなるか?
  • RQ3存在する防御機構は何で、それらはどの程度有効か、Ethereum システムを安全にするうえで残るギャップは何か?
  • RQ4攻撃を予防・緩和するために、Ethereum のセキュリティ実践を研究者と実務家の支援になるようどう構築できるか?

主な発見

  • Ethereum はスマートコントラクトと Ethereum の設計によって、従来のアプリケーションでは見られない新しい脆弱性タイプを生み出している。
  • 44 の脆弱性、26 の攻撃、47 の防御という広範なセットが特定・分析されている。
  • Ethereum 環境の脆弱性は、主に人間要因、使いやすさ、ネットワーキング要因に影響される。
  • 事前防御は多くの脆弱性を緩和できるが、事後防御はカバーが少なく、フロントエンドおよびフロントエンド–バックエンドの相互作用にはギャップがある。
  • 業界のベストプラクティスが適切に適用されれば、多くの脆弱性を防ぐことができる。
  • アプリケーション層(DApps)での攻撃は重大な財務的損失をもたらしてきたが、DoS風や中央集権化されたフロントエンドの問題も影響に寄与している。

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

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

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

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