著者: (1)Tianle Sun、Huazhong科学技術大学 (2) Ningyu He、北京大学 (3) Jiang Xiao、Huazhong科学技術大学 (4)Yinliang Yue, Zhongguancun Laboratory (5) Xiapu Luo、香港ポリテクニカル大学 (6)Haoyu Wang、Huazhong科学技術大学。 : Authors (1)Tianle Sun、Huazhong科学技術大学 (2) Ningyu He、北京大学 (3) Jiang Xiao、Huazhong科学技術大学 (4)Yinliang Yue, Zhongguancun Laboratory (5) Xiapu Luo、香港ポリテクニカル大学 (6)Haoyu Wang、Huazhong科学技術大学。 左のテーブル 抽象と1 導入 Background 2.1 Ethereum Primer 2.2 Whitelisted Address Verification 2.3 Taint Analysis on Smart Contracts and 2.4 Threat Model Motivating Example and Challenges 3.1 Motivating Example 3.2 Challenges 3.3 Limitations of Existing Tools Design of AVVERIFIER and 4.1 Overview 4.2 Notations 4.3 Component#1: Code Grapher 4.4 Component#2: EVM Simulator 4.5 Component#3: Vulnerability Detector Evaluation 5.1 Experimental Setup & Research Questions 5.2 RQ1: Effectiveness & Efficiency 5.3 RQ2: Characteristics of Real-world Vulnerable Contracts 5.4 RQ3: Real-time Detection Discussion 6.1 Threats to Validity and 6.2 Limitations 6.3 Ethical Consideration Related Work Conclusion, Availability, and References 抽象 Binereumでは、送信アドレスの有効性を検証する実践は一般的な実践であり、スマート契約の安全な執行を確保するための重要なステップです。アドレス検証のプロセスにおける脆弱性は大きなセキュリティ問題につながる可能性があり、私たちのコミュニティによって異常な証拠が報告されています。しかし、このタイプの脆弱性はよく研究されていません。空白を埋めるために、この論文では、このタイプの脆弱性を特徴付け、検出することを目指しています。我々は、静的EVMオプコードシミュレーションに基づく軽量のタインツーアナライザーであるAVVERIFIERを設計し、実装しています。その三段階の検出器は、内部特性に基づいて、誤ったポジ 1 導入 サトシ・ナカモトがビットコインを立ち上げた後、ブロックチェーン・プラットフォームが浮上しました。その中でも、Ethereumは最も有名です。これらのブロックチェーン・プラットフォームの共通の特徴に加えて、Ethereumで最も注目すべき機能は、 それは、事前に定義された条件が満たされたときに一定の方法で実行される不可変なスクリプトの一部として取ることができます。 スマート契約 数十億ドル相当の資産がスマートコントラクトに保管されているため、それらに含まれる隠れた脆弱性の識別と利用は攻撃者にとって最優先事項です。最近の報告によると、過去1年間に知られているEthereum契約に対する大規模な攻撃事件は約303件あり、約38億ドルの損失となっています。 Ethereumスマートコントラクトの脆弱性の自動識別はよく研究されているテーマである(14、37、46、47、56、70、72、78)。契約の数と偽ネガティブによる経済的損失を考慮すると、一定の範囲で健全性を保証できる静的象徴的実行は、主な分析方法として使用されます。例えば、Mythril(70)は、Ethereumコントラクトの静的バイトコードレベルの象徴的実行者であり、Slither(31)は高効率性と効率性を達成することを主張するソースコードに取り組んでいます。 入力アドレスの有効性を検証することは一般的な慣行であり、スマート契約の安全な実行を確保するための重要なステップです。アドレス検証のプロセスにおける脆弱性は大きなセキュリティ上の問題を引き起こす可能性があり、私たちのコミュニティによって不思議な証拠が報告されています。 具体的には、スマート契約の機能は議論として扱うことができます。 開発者が誤って送信されたアドレスの検証を無視した場合、外部呼び出しのターゲットとして取られると、アドレス内の悪意のある操作を含む任意の操作が呼び出されます。 したがって、チェーン上の状態の変更がその外部呼び出しに依存する場合、そのような変更は開発者の意向に反する可能性があります。 現在、既存のツールはアドレス検証の脆弱性を検出することができず、既存のフレームワークに基づいてこのような脆弱性検出器を実装することは挑戦的です。一方で、アドレス検出の脆弱性の特徴によると、効果的に識別するには、検出器は、手順間または契約間の分析を行うべきです。既存の作業は、一方で、効率性または効率性の問題を常に苦しめます。例えば、パターンベースの検出器は、そのような複雑な脆弱性パターンを扱うことはほとんどありませんが、シンボルな実行は、パス爆発の問題に苦しみ、メモリとストレージエリアの両方で細かいトラッキングを必要とします。一方で、ほとんどの契約 空白を埋めるために、我々はこの種の新たな脆弱性を特徴付け、検出することを目指しています。具体的に言えば、我々は、アドレス検証の脆弱性を効率的かつ効果的に識別できる新型軽量の静的汚染分析フレームワークであるAVVERIFIERを設計し、実装します。その汚染分析は、オプコードシーケンスの静的シミュレーションに依存します。言い換えれば、経路の実行可能性を考慮することなく、AVVERIFIERは、データ構造(例えば、ステックとメモリ)および汚染の拡散状態の値を維持します。このような静的シミュレーションは、当初実行不可能なものを含む多くの経路を横断します。従って、収集された各 This work. 当社のベンチマークに基づき、AVVERIFIERは最先端のスマート契約検出ツール(すなわち、Mythril、Ethhainter、Jackal、ETHBMC)[1]を効率性と効率性の両面で大幅に上回っています。500万件を超える展開されたEthereum契約の包括的な評価によると、AVVERIFIERは812件以上の脆弱な契約を旗にし、348件のオープンソーススマート契約をさらに検証し、合計価値は112億ドルを超えています。最後に、私たちはEthereumとBSC、EVMのようなブロックチェーンプラットフォームでリアルタイムの検出器としてAVVERIFIERを展開しています。 この論文は以下の貢献をしています。 アドレス検証の脆弱性を検出するための最初の作業であるAVVERIFIERは、静的なEVMシミュレーションに基づく効率的かつ効果的な汚れ解析器である。 • 私たちは、Ethereum上の500万以上のスマートコントラクトにAVVERIFIERを適用し、これまでコミュニティによって明らかにされていなかった脆弱なスマートコントラクトの数百を発見しました。 Mythril、Ethainter、Jackal、ETHBMCと比較すると、AVVERIFIERは分析効率を約2〜5倍向上させ、94.3%の精度と確立されたベンチマークで100%の回収を達成します。 • 我々はEthereumとBSCでリアルタイムの検出器としてAVVERIFIERを展開しました.結果は、AVVERIFIERは攻撃者が攻撃を開始する前に契約が展開されるときに早期警告を上げることができることを示唆しています。 この論文は CC BY 4.0 DEED ライセンスの下で archiv で利用できます。 この紙は CC BY 4.0 DEED ライセンス ARCHIV で利用可能 ARCHIV で利用可能 [1] これらのツールはアドレス検証の脆弱性を検出できませんので、公正な比較のために、同じ検出論理を実装しました。