CKGFuzzer: LLM-Based Fuzz Driver Generation Enhanced By Code Knowledge Graph

计算机科学 代码生成 图形 编码(集合论) 程序设计语言 软件工程 理论计算机科学 操作系统 钥匙(锁) 集合(抽象数据类型)
作者
Hao Xu,Wei Ma,T. Zhou,Yanjie Zhao,Kai Chen,Qiang Hu,Yang Liu,Haoyu Wang
标识
DOI:10.1109/icse-companion66252.2025.00079
摘要

In recent years, the programming capabilities of large language models (LLMs) have garnered significant attention. Fuzz testing, a highly effective technique, plays a key role in enhancing software reliability and detecting vulnerabilities. However, traditional fuzz testing tools rely on manually crafted fuzz drivers, which can limit both testing efficiency and effectiveness. To address this challenge, we propose an automated fuzz testing method driven by a code knowledge graph and powered by an LLM-based intelligent agent system, referred to as CKGFuzzer. We approach fuzz driver creation as a code generation task, leveraging the knowledge graph of the code repository to automate the generation process within the fuzzing loop, while continuously refining both the fuzz driver and input seeds. The code knowledge graph is constructed through interprocedural program analysis, where each node in the graph represents a code entity, such as a function or a file. The knowledge graph-enhanced CKGFuzzer not only effectively resolves compilation errors in fuzz drivers and generates input seeds tailored to specific API usage scenarios, but also analyzes fuzz driver crash reports, assisting developers in improving code quality. By querying the knowledge graph of the code repository and learning from API usage scenarios, we can better identify testing targets and understand the specific purpose of each fuzz driver. We evaluated our approach using eight open-source software projects. The experimental results indicate that CKGFuzzer achieved an average improvement of 8.73% in code coverage compared to state-of-the-art techniques. Additionally, CKGFuzzer reduced the manual review workload in crash case analysis by 84.4% and successfully detected 11 real bugs (including nine previously unreported bugs) across the tested libraries. Our research enhances the overall performance of fuzz testing by refining fuzz driver generation strategies and input seed analysis, offering a more effective solution for vulnerability remediation and software quality improvement.
最长约 10秒,即可获得该文献文件

科研通智能强力驱动
Strongly Powered by AbleSci AI
科研通是完全免费的文献互助平台,具备全网最快的应助速度,最高的求助完成率。 对每一个文献求助,科研通都将尽心尽力,给求助人一个满意的交代。
实时播报
qhebdb完成签到 ,获得积分10
3秒前
aajhajkahna举报ling0313求助涉嫌违规
5秒前
Ningliangming完成签到,获得积分10
7秒前
勤劳的尔丝完成签到 ,获得积分10
14秒前
yes完成签到 ,获得积分10
19秒前
19秒前
慕青应助汉德萌多林采纳,获得10
26秒前
...完成签到,获得积分10
29秒前
Ruby于完成签到 ,获得积分10
31秒前
tangtang完成签到 ,获得积分10
38秒前
38秒前
白云猎德完成签到 ,获得积分10
39秒前
神通广大的MOMO完成签到,获得积分10
39秒前
大方的安柏完成签到 ,获得积分10
43秒前
玛斯特尔完成签到,获得积分10
44秒前
科研通AI6.4应助Suchus采纳,获得10
53秒前
顺硕完成签到,获得积分10
55秒前
大方的笑萍完成签到 ,获得积分10
55秒前
aajhajkahna举报无心的梦蕊求助涉嫌违规
59秒前
1分钟前
1分钟前
aajhajkahna举报朴素友安求助涉嫌违规
1分钟前
lph完成签到 ,获得积分10
1分钟前
YPST完成签到,获得积分10
1分钟前
Suchus发布了新的文献求助10
1分钟前
小朋完成签到,获得积分10
1分钟前
1分钟前
MM发布了新的文献求助10
1分钟前
感性的俊驰完成签到 ,获得积分10
1分钟前
无极微光应助CC采纳,获得20
1分钟前
科研通AI6.4应助诚心醉柳采纳,获得10
1分钟前
胡明轩完成签到 ,获得积分10
1分钟前
立明完成签到 ,获得积分10
1分钟前
希希完成签到 ,获得积分10
1分钟前
1分钟前
哇晒完成签到 ,获得积分10
1分钟前
1分钟前
又活了一天完成签到 ,获得积分10
1分钟前
糖糖科研顺利呀完成签到 ,获得积分10
1分钟前
1分钟前
高分求助中
(应助此贴封号)【重要!!请各用户(尤其是新用户)详细阅读】【科研通的精品贴汇总】 10000
Effects of Two Weeks of Red Light Therapy on Choroidal Thickness and Axial Length in Young Adults 700
内視鏡的に摘除しえた十二指腸乳頭部腫瘍の2例 660
Management and the Arts 510
Matrix Methods in Data Mining and Pattern Recognition Second Edition 510
微电子器件实验教程 400
The Neuroscience of Language 400
热门求助领域 (近24小时)
化学 材料科学 医学 生物 纳米技术 工程类 有机化学 化学工程 生物化学 计算机科学 内科学 物理 复合材料 催化作用 细胞生物学 无机化学 光电子学 物理化学 电极 基因
热门帖子
关注 科研通微信公众号,转发送积分 7677118
求助须知:如何正确求助?哪些是违规求助? 9242947
关于积分的说明 19919512
捐赠科研通 7247631
什么是DOI,文献DOI怎么找? 3286773
关于科研通互助平台的介绍 2444739
邀请新用户注册赠送积分活动 2289829