Skip to main content
QUICK REVIEW

[論文レビュー] HyPFuzz: Formal-Assisted Processor Fuzzing

Chen Chen, Rahul Kande|arXiv (Cornell University)|Apr 5, 2023
Security and Verification in Computing被引用数 10
ひとこと要約

HyPFuzz は形式検証とハードウェアファジングを組み合わせ、到達しづらいプロセサ設計空間を探索し、カバレッジをより速く達成し、新たな脆弱性を発見します。

ABSTRACT

Recent research has shown that hardware fuzzers can effectively detect security vulnerabilities in modern processors. However, existing hardware fuzzers do not fuzz well the hard-to-reach design spaces. Consequently, these fuzzers cannot effectively fuzz security-critical control- and data-flow logic in the processors, hence missing security vulnerabilities. To tackle this challenge, we present HyPFuzz, a hybrid fuzzer that leverages formal verification tools to help fuzz the hard-to-reach part of the processors. To increase the effectiveness of HyPFuzz, we perform optimizations in time and space. First, we develop a scheduling strategy to prevent under- or over-utilization of the capabilities of formal tools and fuzzers. Second, we develop heuristic strategies to select points in the design space for the formal tool to target. We evaluate HyPFuzz on five widely-used open-source processors. HyPFuzz detected all the vulnerabilities detected by the most recent processor fuzzer and found three new vulnerabilities that were missed by previous extensive fuzzing and formal verification. This led to two new common vulnerabilities and exposures (CVE) entries. HyPFuzz also achieves 11.68$ imes$ faster coverage than the most recent processor fuzzer.

研究の動機と目的

  • 大規模プロセッサでのハードウェア脆弱性発見をより速く、より完全に行う必要性を動機づける。
  • 形式検証をハードウェアファジングと統合したハイブリッドファジングフレームワークを提案する。
  • カバレッジと効率性を最大化するスケジューリング、ポイント選択、統合機構を開発する。
  • 実際のオープンソースプロセッサ上で HyPFuzz を実証し、カバレッジ速度と脆弱性発見をベースラインと比較する。

提案手法

  • カバレッジ率の比較に基づいてファジングと形式検証の間を切り替える動的スケジューラを開発する。
  • 未カバー設計点を狙い、後続のファジングカバレッジを最大化するポイント選択戦略を作成する。
  • カバレッジポイントからカバレッジプロパティを生成し、形式ツールの出力をファザード用の実行可能なシードに変換する。
  • 形式ツールからのブール割り当てをファジングシードとして有効なテストケースバイナリに変換する。
  • 形式ツールとファザーのシームレスな統合を実現するために、プロパティ生成器とテストケース変換器を実装する。
  • 五つのオープンソースプロセッサ(Rocket Core、CVA6、BOOM、mor1kx、OR1200)で HyPFuzz を評価し、TheHuzz およびランダム回帰と比較する。

実験結果

リサーチクエスチョン

  • RQ1形式検証のガイダンスをファジングと効果的にスケジュールして、ハードウェア設計のカバレッジを最大化するにはどうすればよいか。
  • RQ2形式ツールとファジングを組み合わせた際、カバレッジポイントの選択戦略は、カバレッジの最速な進行を生み出すのにどのようなものがあるか。
  • RQ3大規模なプロセッサ設計に対して、形式ツールの出力とファジングシード間のシームレスな変換を達成できるか。
  • RQ4HyPFuzz の導入は、従来のファジング/形式手法で見逃されていた脆弱性の検出にどのような影響を与えるか。
  • RQ5HyPFuzz は複数の広く使用されているプロセサコアと ISA(RISC-V と OpenRISC)にどの程度スケールするか。

主な発見

  • HyPFuzz は最新のプロセサファザーである TheHuzz より 11.68× のカバレッジを達成する。
  • HyPFuzz は TheHuzz が見つけたすべての脆弱性を検出し、3 つの新たな脆弱性を発見して 2 件の CVE(CVE-2022-33021, CVE-2022-33023)に結びつけた。
  • HyPFuzz は TheHuzz に比べて実行時で 3.06×、命令カバレッジで 3.05×高速である。
  • HyPFuzz はカバレッジで ランダム回帰より 239.93×高速である。
  • CVA6 において、HyPFuzz は 72 時間で 94.78% のブランチカバレッジに到達(別の評価で JasperGold は 8 日で 94.51%) 。
  • HyPFuzz はハイブリッド実行を活用することで、形式ツール単独よりも少ない時間で 11.68× のカバレッジを達成する。

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

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

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

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