Chapter 8. Fuzzing

Solutions in this chapter:

  • What Is Fuzzing?
  • Virtualization and Fuzzing
  • Choosing an Effective Starting Point
  • Preparing for External Interaction
  • Executing the Test
  • Summary
  • Solutions Fast Track
  • Frequently Asked Questions

Introduction

Fuzzing involves providing semi-random data to an application and recording how it behaves. The term can be thought of as starting with something clear such as a valid application file, and “fuzzing” or “blurring” pieces of it. It's a specialized form of application testing that can involve significant automation. It also goes by other names such as fault injection, or error condition evaluation.

Virtualization has proven ideal for resetting the environment to an initial state before any malformed ...

Get Virtualization for Security now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.