pith. sign in

arxiv: 1810.08289 · v1 · pith:6PF5XMSGnew · submitted 2018-10-18 · 💻 cs.SE · cs.PL

Sample-Free Learning of Input Grammars for Comprehensive Software Fuzzing

classification 💻 cs.SE cs.PL
keywords inputgrammarinputstestvalidfuzzinggrammarsprogram
0
0 comments X
read the original abstract

Generating valid test inputs for a program is much easier if one knows the input language. We present first successes for a technique that, given a program P without any input samples or models, learns an input grammar that represents the syntactically valid inputs for P -- a grammar which can then be used for highly effective test generation for P . To this end, we introduce a test generator targeted at input parsers that systematically explores parsing alternatives based on dynamic tracking of constraints; the resulting inputs go into a grammar learner producing a grammar that can then be used for fuzzing. In our evaluation on subjects such as JSON, URL, or Mathexpr, our PYGMALION prototype took only a few minutes to infer grammars and generate thousands of valid high-quality inputs.

This paper has not been read by Pith yet.

discussion (0)

Sign in with ORCID, Apple, or X to comment. Anyone can read and Pith papers without signing in.