Range Specification Bug Detection in Flight Control System Through Fuzzing
Ruidong Han, Siqi Ma, Juanru Li, Surya Nepal, David Lo, Zhuo Ma, Jianfeng Ma
Abstract
Developers and manufacturers provide configurable control parameters for flight control programs to support various environments and missions, along with suggested ranges for these parameters to ensure flight safety. However, this flexible mechanism can also introduce a vulnerability known as range specification bugs. The vulnerability originates from the evidence that certain combinations of parameter values may affect the drone's physical stability even though its parameters are within the suggested range. The paper introduces a novel system called <small>icsearcher</small> , designed to identify incorrect configurations or unreasonable combinations of parameters and suggest more reasonable ranges for these parameters. <small>icsearcher</small> applies a metaheuristic search algorithm to find configurations with a high probability of driving the drone into unstable states. In particular, <small>icsearcher</small> adopts a machine learning-based predictor to assist the searcher in evaluating the fitness of configuration. Finally, leveraging searched incorrect configurations, <small>icsearcher</small> can summarize the feasible ranges through multi-objective optimization. <small>icsearcher</small> applies a predictor to guide the search, which eliminates the need for realistic/simulation executions when evaluating configurations and further promotes search efficiency. We have carried out experimental evaluations of <small>icsearcher</small> in different control programs. The evaluation results show that the system successfully reports potentially incorrect configurations, of which over <inline-formula><tex-math notation="LaTeX">$94\%$</tex-math></inline-formula> leads to unstable states.