TY - JOUR
T1 - Test data generation for stateful network protocol fuzzing using a rule-based state machine
AU - Ma, Rui
AU - Wang, Daguang
AU - Hu, Changzhen
AU - Ji, Wendong
AU - Xue, Jingfeng
N1 - Publisher Copyright:
© 1996-2012 Tsinghua University Press.
PY - 2016/6
Y1 - 2016/6
N2 - To improve the efficiency and coverage of stateful network protocol fuzzing, this paper proposes a new method, using a rule-based state machine and a stateful rule tree to guide the generation of fuzz testing data. The method first builds a rule-based state machine model as a formal description of the states of a network protocol. This removes safety paths, to cut down the scale of the state space. Then it uses a stateful rule tree to describe the relationship between states and messages, and then remove useless items from it. According to the message sequence obtained by the analysis of paths using the stateful rule tree and the protocol specification, an abstract data model of test case generation is defined. The fuzz testing data is produced by various generation algorithms through filling data in the fields of the data model. Using the rule-based state machine and the stateful rule tree, the quantity of test data can be reduced. Experimental results indicate that our method can discover the same vulnerabilities as traditional approaches, using less test data, while optimizing test data generation and improving test efficiency.
AB - To improve the efficiency and coverage of stateful network protocol fuzzing, this paper proposes a new method, using a rule-based state machine and a stateful rule tree to guide the generation of fuzz testing data. The method first builds a rule-based state machine model as a formal description of the states of a network protocol. This removes safety paths, to cut down the scale of the state space. Then it uses a stateful rule tree to describe the relationship between states and messages, and then remove useless items from it. According to the message sequence obtained by the analysis of paths using the stateful rule tree and the protocol specification, an abstract data model of test case generation is defined. The fuzz testing data is produced by various generation algorithms through filling data in the fields of the data model. Using the rule-based state machine and the stateful rule tree, the quantity of test data can be reduced. Experimental results indicate that our method can discover the same vulnerabilities as traditional approaches, using less test data, while optimizing test data generation and improving test efficiency.
KW - fuzzing
KW - rule-based state machine
KW - stateful network protocol
KW - stateful rule tree
KW - test data generation
UR - http://www.scopus.com/inward/record.url?scp=84975230090&partnerID=8YFLogxK
U2 - 10.1109/TST.2016.7488746
DO - 10.1109/TST.2016.7488746
M3 - Article
AN - SCOPUS:84975230090
SN - 1007-0214
VL - 21
SP - 352
EP - 360
JO - Tsinghua Science and Technology
JF - Tsinghua Science and Technology
IS - 3
M1 - 7488746
ER -