Grammar Mutation for Testing Input Parsers (Registered Report)
Grammar Mutation for Testing Input Parsers (Registered Report)
复制标题
用于测试输入解析器的语法突变(注册报告)
DOI:
10.1145/3605157.3605170
复制
发表时间:
2023
期刊:
影响因子:
--
通讯作者:
Bendrissou B
中科院分区:
文献类型:
--
作者:
Bendrissou B
Grammar-based fuzzing is an effective method for testing programs that consume structured inputs, particularly input parsers. A prerequisite of this method is to have a specification of the input format in the form of a grammar. Consequently, the success of a grammar-based fuzzing campaign is highly dependent on the available grammar. If the grammar does not accurately represent the input format, or if the system under test (SUT) does not conform strictly to that grammar, there may be an impedance mismatch between inputs generated via grammar-based fuzzing and inputs accepted by the SUT. Even if the SUT has been designed to strictly conform to the grammar, the SUT parser may exhibit vulnerabilities that would only be triggered by slightly invalid inputs. Grammar-based fuzzing, by construction, will not yield such edge case inputs. To overcome these limitations, we present Gmutator, an approach that mutates an input grammar and leverages the Grammarinator fuzzer to produce inputs conforming to the mutated grammars. As a result, Gmutator can find inputs that do not conform to the original grammar but are (wrongly) accepted by an SUT. In addition, Gmutator-generated inputs have the potential to increase SUT code coverage compared with the standard approach. We present preliminary results applying Gmutator to two JSON parsing libraries, where we are able to identify a few inconsistencies and observe an increase in covered code. We propose a plan for a full experimental evaluation over four different input formats—JSON, XML, URL and Lua—and twelve SUTs (three per input format).
登录
查看更多内容
DOI:
10.1145/3368089.3409679
发表时间:
2020-11
期刊:
Proceedings of the 28th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering
影响因子:
--
作者:
Rahul Gopinath;Björn Mathis;A. Zeller
通讯作者:
Rahul Gopinath;Björn Mathis;A. Zeller
DOI:
10.1145/3460319.3464814
发表时间:
2021-07
期刊:
Proceedings of the 30th ACM SIGSOFT International Symposium on Software Testing and Analysis
影响因子:
--
作者:
Prashast Srivastava;Mathias Payer
通讯作者:
Prashast Srivastava;Mathias Payer
DOI:
--
发表时间:
2022
期刊:
ACM-SIGPLAN Symposium on Programming Language Design and Implementation
影响因子:
--
作者:
Bachir Bendrissou;Rahul Gopinath;A. Zeller
通讯作者:
A. Zeller
DOI:
10.1109/ase51524.2021.9678879
发表时间:
2021
期刊:
2021 36th IEEE/ACM International Conference on Automated Software Engineering (ASE)
影响因子:
--
作者:
Neil Kulkarni;Caroline Lemieux;Koushik Sen
通讯作者:
Koushik Sen