{"id":640509,"date":"2020-03-04T09:28:12","date_gmt":"2020-03-04T17:28:12","guid":{"rendered":"https:\/\/www.microsoft.com\/en-us\/research\/?p=640509"},"modified":"2020-03-04T09:28:12","modified_gmt":"2020-03-04T17:28:12","slug":"a-brief-introduction-to-fuzzing-and-why-its-an-important-tool-for-developers","status":"publish","type":"post","link":"https:\/\/www.microsoft.com\/en-us\/research\/blog\/a-brief-introduction-to-fuzzing-and-why-its-an-important-tool-for-developers\/","title":{"rendered":"A brief introduction to fuzzing and why it\u2019s an important tool for developers"},"content":{"rendered":"

\"\"<\/p>\n

In the February 2020 issue of Communications of the ACM<\/a>, Microsoft researcher Patrice Godefroid<\/a> published a new review article<\/a> entitled \u201cFuzzing: Hack, Art, and Science,\u201d which presents an overview of the main automated testing techniques<\/strong> in use today for finding security vulnerabilities<\/strong> in software.<\/p>\n

Fuzzing<\/em> means automatic test generation and execution with the goal of finding security vulnerabilities. Over the last two decades, fuzzing has become a mainstay in software security. Thousands of security vulnerabilities in all kinds of software have been found using fuzzing.<\/p>\n

Why should developers add fuzzing to their toolkit?<\/h3>\n