HackerPapers

arXiv:1701.07232cs.AI

Learn&Fuzz: Machine Learning for Input Fuzzing

Patrice Godefroid, Hila Peleg, Rishabh Singh

HN submission. Found in a submission link or body. Submitters do not count as commenters in the main ranking; a submission is not an endorsement.

Abstract

Fuzzing consists of repeatedly testing an application with modified, or fuzzed, inputs with the goal of finding security vulnerabilities in input-parsing code. In this paper, we show how to automate the generation of an input grammar suitable for input fuzzing using sample inputs and neural-network-based statistical machine-learning techniques. We present a detailed case study with a complex input format, namely PDF, and a large complex security-critical parser for this format, namely, the PDF parser embedded in Microsoft's new Edge browser. We discuss (and measure) the tension between conflicting learning and fuzzing goals: learning wants to capture the structure of well-formed inputs, while fuzzing wants to break that structure in order to cover unexpected code paths and find bugs. We also present a new algorithm for this learn&fuzz challenge which uses a learnt input probability distribution to intelligently guide where to fuzz inputs.

arXiv comments
Journal reference
DOI
Subjects
cs.AIArtificial Intelligence cs.CRCryptography and Security cs.LGMachine Learning cs.PLProgramming Languages cs.SESoftware Engineering

On Hacker News

No comments linking this paper were found in the collected sources. Found in 2 HN submissions from Jan 2017 to Jun 2017. Open submission discussions.

Comments linking this paper, per year.

Discussed in comments0 threads

No comments linking this paper were found in the collected sources. Open submission discussions.

Submitted to Hacker News

Connected through shared HN threads, not inferred similarity or a recommendation.