ファジングとは?
ファジングは、ランダム、不正、または予期しない入力をプログラムに浴びせて、クラッシュ、メモリエラー、ハング、セキュリティ上の欠陥を引き起こす自動テスト手法です。カバレッジガイド型のファザーは入力を変異させ、コードカバレッジのフィードバックを使って時間とともにより深いパスへ到達します。信頼できないデータをparseするコードのバグ発見に特に優れています。
なぜ重要か
多くの深刻な脆弱性は、コードが不正な入力をどう扱うかに潜んでおり、それはまさに開発者がテストを書かないケースです。ファジングはそれらを自動的に発見し、継続的に実行すると最も効果的なので、CI統合やOSS-Fuzzのようなプラットフォームが、コードの進化に合わせてファザーを探索し続けさせます。
関連する概念
- カバレッジガイド型ファザーはより深いコードパスに届く
- parserや信頼できない入力の処理で特に優れる
- プロパティベーステストは構造化された近縁
関連ガイド
What Is a Property-Based Test?A property-based test checks that a property holds across many automatically generated inputs, rather than as…
What Is Dependency Confusion?Dependency confusion is a supply-chain attack where a malicious public package with a private package's name…
What Is Flaky Test Quarantine?Flaky quarantine isolates known-flaky tests so they no longer block the pipeline, while still running them an…