Automatic Test Data Generation in File Format Fuzzers
Author(s):
Article Type:
Research/Original Article (دارای رتبه معتبر)
Abstract:
Fuzzing is a dynamic software testing technique. In this technique with repeated generation and injection of malformed test data to the software under test (SUT), we are looking for the possible errors and vulnerabilities. Files are significant inputs to most real-world applications. Many of test data which are generated for fuzzing such programs are rejected by the parser because they are not in the acceptable format and this results in a low code coverage in the process of fuzz testing. Using the grammatical structure of input files to generate test data leads to increase code coverage. However, often, the grammar extraction is performed manually, which is a time consuming, costly and error-prone task. In this paper, a new method, based on deep neural language models (NLMs), is proposed for automatically learning the file structure and then generating and fuzzing test data. Our experiments demonstrate that the data produced by this method leads to an increase in the code coverage compared to previous test data generation methods. For MuPDF software, which accepts the PDF complex file format as an input, we have more than 1.30 to 12 percent improvement in code coverage than both the intelligence and random methods.
Keywords:
Language:
Persian
Published:
Journal of Electronic and Cyber Defense, Volume:8 Issue: 1, 2020
Pages:
1 to 16
https://www.magiran.com/p2144243
سامانه نویسندگان
مقالات دیگری از این نویسنده (گان)
-
Automatic test data generation to improve fault-localization based on causal-statistical analysis
Morteza Zakeri-Nasrabadi, Saeed Parsa *, Zahra Hayati
Journal of Soft Computing and Information Technology,