摘要:Format specifications of data input are critical to model-based fuzz testing. Present methods cannot describe the format accurately, which leads to high redundancy in testing practices. In order to improve testing efficiency, we propose a grammar-driven approach to fuzz testing. Firstly, we build a formal model of data format using higher-order attribute grammars, and construct syntax tree on the basis of data samples. Secondly, all nodes in the syntax tree are traversed and mutated to generate test cases according to the attribute rules. Experimental results show that the proposed approach can reduce invalid and redundant test cases, and discover potential vulnerabilities of software implementations effectively.
关键词:Model-based fuzz testing;Higher-order attribute grammars;Syntax analysis tree;Test case generation