Demystifying the Dependency Challenge in Kernel Fuzzing
Demystifying the Dependency Challenge in Kernel Fuzzing
复制标题
DOI:
10.1145/3510003.3510126
复制
发表时间:
2022-05
期刊:
影响因子:
--
通讯作者:
Yu Hao;Hang Zhang;Guoren Li;Xingyun Du;Zhiyun Qian;A. A. Sani-A.
中科院分区:
文献类型:
--
作者:
Yu Hao;Hang Zhang;Guoren Li;Xingyun Du;Zhiyun Qian;A. A. Sani-A.
Fuzz testing operating system kernels remains a daunting task to date. One known challenge is that much of the kernel code is locked under specific kernel states and current kernel fuzzers are not ef-fective in exploring such an enormous state space. We refer to this problem as the dependency challenge. Though there are some ef-forts trying to address the dependency challenge, the prevalence and categorization of dependencies have never been studied. Most prior work simply attempted to recover dependencies opportunisti-cally whenever they are relatively easy to recognize. In this paper, we undertake a substantial measurement study to systematically understand the real challenge behind dependencies. To our surprise, we show that even for well-fuzzed kernel modules, unresolved de-pendencies still account for 59% - 88% of the uncovered branches. Furthermore, we show that the dependency challenge is only a symptom rather than the root cause of failing to achieve more cov-erage. By distilling and summarizing our findings, we believe the research provides valuable guidance to future research in kernel fuzzing. Finally, we propose a number of novel research directions directly based on the insights gained from the measurement study.