paper-with-me

홈 › Papers

KernelGPT: Enhanced Kernel Fuzzing via Large Language Models

2023-12-31 · Chenyuan Yang, Zijie Zhao, Lingming Zhang

Bugs in operating system kernels can affect billions of devices and users all over the world. As a result, a large body of research has been focused on kernel fuzzing, i.e., automatically generating syscall (system call) sequences to detect potential kernel bugs or vulnerabilities. Kernel fuzzing aims to generate valid syscall sequences guided by syscall specifications that define both the syntax and semantics of syscalls. While there has been existing work trying to automate syscall specification generation, this remains largely manual work, and a large number of important syscalls are still uncovered. In this paper, we propose KernelGPT, the first approach to automatically synthesizing syscall specifications via Large Language Models (LLMs) for enhanced kernel fuzzing. Our key insight is that LLMs have seen massive kernel code, documentation, and use cases during pre-training, and thus can automatically distill the necessary information for making valid syscalls. More specifically, KernelGPT leverages an iterative approach to automatically infer the specifications, and further debug and repair them based on the validation feedback. Our results demonstrate that KernelGPT can generate more new and valid specifications and achieve higher coverage than state-of-the-art techniques. So far, by using newly generated specifications, KernelGPT has already detected 24 new unique bugs in Linux kernel, with 12 fixed and 11 assigned with CVE numbers. Moreover, a number of specifications generated by KernelGPT have already been merged into the kernel fuzzer Syzkaller, following the request from its development team.

📄 PDF Abstract BibTeX arXiv:2401.00563

Code (1)

ise-uiuc/kernelgpt 공식 구현

Tasks

valid

Similar Papers 제목 키워드 기반

HFL: Hybrid Fuzzing on the Linux Kernel

2020-02-24 · NDSS 2020 2 · Kyungtae Kim† Dae R. Jeong‡ Chung Hwan Kim¶ Yeongjin Jang§ Insik Shin‡ Byoungyoung Lee∗†

Hybrid fuzzing, combining symbolic execution and fuzzing, is a promising approach for vulnerability discovery because each approach can complement the other. However, we observe that applying hybrid fuzzing to kernel …

CPU

LLAMAFUZZ: Large Language Model Enhanced Greybox Fuzzing

2024-06-11 · Hongxiang Zhang, Yuyang Rong, Yifeng He, Hao Chen

Greybox fuzzing has achieved success in revealing bugs and vulnerabilities in programs. However, randomized mutation strategies have limited the fuzzer's performance on structured data. Specialized fuzzers can handle com…

Language ModelingLanguage ModellingLarge Language Modelmodel+1

MultiFuzz: A Dense Retrieval-based Multi-Agent System for Network Protocol Fuzzing

2025-08-19 · Youssef Maklad, Fares Wael, Ali Hamdi, Wael Elsersy 외 arxiv

Traditional protocol fuzzing techniques, such as those employed by AFL-based systems, often lack effectiveness due to a limited semantic understanding of complex protocol grammars and rigid seed mutation strategies. Rece…

On the Challenges of Fuzzing Techniques via Large Language Models

2024-02-01 · Linghan Huang, Peizhou Zhao, Huaming Chen, Lei Ma

In the modern era where software plays a pivotal role, software security and vulnerability analysis are essential for secure software development. Fuzzing test, as an efficient and traditional software testing method, ha…

software testingSurvey

When Fuzzing Meets LLMs: Challenges and Opportunities

2024-04-25 · Yu Jiang, Jie Liang, Fuchen Ma, Yuanliang Chen 외

Fuzzing, a widely-used technique for bug detection, has seen advancements through Large Language Models (LLMs). Despite their potential, LLMs face specific challenges in fuzzing. In this paper, we identified five major c…