コンテンツへスキップ
uencoder

Fuzzing

ファジング(Fuzzing)は、ランダム/半ランダムな入力を自動生成してプログラムに与え、クラッシュや異常を監視することで脆弱性を発見する技術である。

目的

未知の脆弱性を自動的に発見する。パーサーやプロトコル実装のセキュリティテストに広く使用される。

メカニズム

ランダムまたは変異させた入力を生成して対象に与え、クラッシュ/ASAN レポート/タイムアウトを監視する。カバレッジガイド型ファジング(libFuzzer/AFL)はカバレッジフィードバックで入力生成を誘導する。構造認識ファジングは入力形式を理解する。

ユースケース

  • バグや脆弱性の発見
  • パーサーのセキュリティテスト
  • プロトコルの堅牢性

References