中文

G-Fuzz:面向 gVisor 的定向模糊测试框架

密码学与安全 2024-09-23 v1

摘要

gVisor 是 Google 发布的面向容器的应用级内核。由于 gVisor 具有轻量级和良好的隔离性,它已被许多 IT 企业广泛使用。当发现上游 gVisor 的新漏洞时,下游开发者测试相应代码以维护安全性至关重要。为实现这一目标,定向模糊测试极具前景。然而,将现有定向模糊测试方法应用于 gVisor 面临诸多挑战。核心原因在于现有的定向模糊测试器主要针对通用的 C/C++ 应用程序,而 gVisor 是用 Go 语言编写的操作系统内核。为了解决上述挑战,我们提出了 G-Fuzz,一个面向 gVisor 的定向模糊测试框架。G-Fuzz 包含三种核心方法:轻量级细粒度距离计算、目标相关系统调用推断与利用,以及探索与利用的动态切换。需要注意的是,G-Fuzz 的方法具有通用性,可迁移至其他操作系统内核。我们进行了大量实验以评估 G-Fuzz 的性能。与 SOTA 内核模糊测试器 Syzkaller 相比,G-Fuzz 显著优于它。此外,我们严格评估了 G-Fuzz 每种核心方法的重要性。G-Fuzz 已在工业界部署,并检测出多个严重漏洞。

关键词

引用

@article{arxiv.2409.13139,
  title  = {G-Fuzz: A Directed Fuzzing Framework for gVisor},
  author = {Yuwei Li and Yuan Chen and Shouling Ji and Xuhong Zhang and Guanglu Yan and Alex X. Liu and Chunming Wu and Zulie Pan and Peng Lin},
  journal= {arXiv preprint arXiv:2409.13139},
  year   = {2024}
}

备注

This paper has published in IEEE Transactions on Dependable and Secure Computing (TDSC), https://ieeexplore.ieee.org/abstract/document/10049484/citations?tabFilter=papers#citations