Greybox fuzzing is one of the most popular methods for detecting software vulnerabilities, which conducts a biased random search within the program input space. To enhance its effectiveness in achieving deep coverage of program behaviors, greybox fuzzing is often combined with concolic execution, which performs a path-sensitive search over the domain of program inputs. In hybrid fuzzing, conventional greybox fuzzing is followed by concolic execution in an iterative loop, where reachability roadblocks encountered by greybox fuzzing are tackled by concolic execution. However, such hybrid fuzzing still suffers from difficulties conventionally faced by concolic execution, such as the need for environment modeling and system call support. In this work, we explore the potential of developing "smart" concolic execution empowered by Large Language Models (LLMs), leveraging their knowledge of code semantics during constraint computing and solving. When coverage-based greybox fuzzing reaches a roadblock in terms of reaching certain branches, we conduct a slicing on the execution trace and suggest modifications of the input to reach the relevant branches. The LLM is used as a solver to generate the modified input to reach the desired branches. Compared with state-of-the-art hybrid fuzzers CoFuzz, Intriguer, and QSYM, our LLM-based hybrid fuzzer HyllFuzz(pronounced "hill fuzz") covers 31.43%, 44.56%, and 59.48% more code branches, respectively. Furthermore, the LLM-based concolic execution in HyllFuzz takes a time that is 3--19 times faster than the concolic execution running in existing hybrid fuzzing tools. In extensively tested real-world subjects, HyllFuzz exposed seven previously unknown bugs. This experience shows that LLMs can be effectively inserted into the iterative loop of hybrid fuzzers to efficiently expose more program behaviors.


翻译:灰盒模糊测试是检测软件漏洞最流行的方法之一,它在程序输入空间内进行有偏随机搜索。为增强其实现程序行为深度覆盖的效果,灰盒模糊测试常与路径敏感地遍历程序输入域的具体执行相结合。在混合式模糊测试中,传统灰盒模糊测试与具体执行在迭代循环中交替进行,灰盒模糊测试遇到的可达性障碍由具体执行解决。然而,此类混合式模糊测试仍面临具体执行常规的困难,例如需要环境建模和系统调用支持。本研究探索利用大语言模型开发"智能"具体执行的潜力,在约束计算与求解过程中借助其对代码语义的知识。当基于覆盖率的灰盒模糊测试在到达特定分支时遇到障碍,我们对执行轨迹进行切片,并提出输入修改建议以到达相关分支。大语言模型作为求解器生成修改后的输入以抵达目标分支。与现有最先进的混合式模糊测试工具CoFuzz、Intriguer和QSYM相比,本研究提出的基于大语言模型的混合式模糊测试工具HyllFuzz(读作"hill fuzz")分别多覆盖了31.43%、44.56%和59.48%的代码分支。此外,HyllFuzz中基于大语言模型的具体执行耗时比现有混合式模糊测试工具中的具体执行快3到19倍。在广泛测试的真实世界程序中,HyllFuzz暴露了七个此前未知的漏洞。这一经验表明,大语言模型能够有效嵌入混合式模糊测试的迭代循环中,以高效揭示更多程序行为。

0
下载
关闭预览

相关内容

大语言模型的智能体化推理
专知会员服务
35+阅读 · 1月21日
《大语言模型驱动的智能红队测试》
专知会员服务
18+阅读 · 2025年11月26日
大语言模型评估技术研究进展
专知会员服务
49+阅读 · 2024年7月9日
大型语言模型在预测和异常检测中的应用综述
专知会员服务
70+阅读 · 2024年2月19日
《基于高斯混合流和入包的异常检测》2023最新57页论文
专知会员服务
29+阅读 · 2023年5月15日
Web渗透测试Fuzz字典分享
黑白之道
21+阅读 · 2019年5月22日
你的算法可靠吗? 神经网络不确定性度量
专知
40+阅读 · 2019年4月27日
推荐算法:Match与Rank模型的交织配合
从0到1
15+阅读 · 2017年12月18日
深度学习目标检测模型全面综述:Faster R-CNN、R-FCN和SSD
深度学习世界
10+阅读 · 2017年9月18日
国家自然科学基金
4+阅读 · 2017年12月31日
国家自然科学基金
6+阅读 · 2017年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
2+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
4+阅读 · 2014年12月31日
国家自然科学基金
18+阅读 · 2012年12月31日
Arxiv
0+阅读 · 6月10日
VIP会员
最新内容
学习数据的几何:形状空间分析数学综述
专知会员服务
4+阅读 · 6月17日
定向能反无人机系统最新发展动态
专知会员服务
7+阅读 · 6月17日
从燃煤战舰到算法战争:水面指挥的永恒要求
专知会员服务
4+阅读 · 6月17日
相关VIP内容
大语言模型的智能体化推理
专知会员服务
35+阅读 · 1月21日
《大语言模型驱动的智能红队测试》
专知会员服务
18+阅读 · 2025年11月26日
大语言模型评估技术研究进展
专知会员服务
49+阅读 · 2024年7月9日
大型语言模型在预测和异常检测中的应用综述
专知会员服务
70+阅读 · 2024年2月19日
《基于高斯混合流和入包的异常检测》2023最新57页论文
专知会员服务
29+阅读 · 2023年5月15日
相关基金
国家自然科学基金
4+阅读 · 2017年12月31日
国家自然科学基金
6+阅读 · 2017年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
2+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
4+阅读 · 2014年12月31日
国家自然科学基金
18+阅读 · 2012年12月31日
Top
微信扫码咨询专知VIP会员