Skip to the content.

まず結論

  • ファジングは、異常なデータを入力して不具合や脆弱性を発見する手法
  • 攻撃ではなく「テスト」であり、主にソフトウェアの欠陥検出に使う
  • SG試験では「異常入力か、攻撃か」で切る

直感的な説明

普通のテストでは「正しい入力」を使いますが、
ファジングではあえて「変な入力」を使います。

  • ありえない値
  • 想定外の文字列
  • 不正な形式

👉 こうした入力でプログラムを壊してみる


イメージ

  • 通常テスト:正しく動くか確認
  • ファジング:壊れるか確認

👉 「壊して弱点を見つける」テスト


定義・仕組み

ファジング(Fuzzing)は、

  • ランダムまたは異常な入力データを大量に与え
  • ソフトウェアの異常動作を検出する

テスト手法です。


特徴

  • 自動で実施される
  • 大量の入力を試す
  • バグやクラッシュを検出

何が分かるか

  • 入力チェックの不備
  • バッファオーバーフロー
  • 想定外入力への弱さ

👉 実装レベルの脆弱性を見つける


どんな場面で使う?

✔ 使う場面

  • ソフトウェア開発時のテスト
  • 入力処理の安全性確認
  • バグや脆弱性の検出

✔ 誤解しやすい場面

  • ❌ 攻撃として使う
  • ❌ システム全体の侵入確認

👉 あくまでテスト手法


よくある誤解・混同

① ペネトレーションテストとの違い

  • ファジング:異常入力で壊す
  • ペンテスト:攻撃シナリオで侵入

👉 入力テスト vs 攻撃テスト


② 脆弱性検査との違い

  • 脆弱性検査:既知の弱点を検出
  • ファジング:未知の不具合を発見

👉 既知 vs 未知


③ 最重要ひっかけ

❌ ファジングは攻撃手法である
⭕ ファジングはテスト手法

👉 SG試験ではここを狙う


まとめ(試験直前用)

  • ファジング=異常入力で脆弱性を見つけるテスト手法
  • 攻撃ではなくテスト
  • 主にソフトウェアの欠陥検出

切り分けルール

  • 「異常入力でテスト」→ ファジング
  • 「攻撃して確認」→ ペネトレーションテスト
  • 「ツールで検出」→ 脆弱性検査

👉 入力か攻撃か検出かで判断


最短判断フレーム

  1. 異常な入力? → ファジング
  2. 攻撃してる? → ペンテスト
  3. 自動検出? → 検査

👉 これで一発

🔗 関連記事


🏠 情報セキュリティマネジメントトップに戻る