###
计算机系统应用英文版:2023,32(9):67-76
本文二维码信息
码上扫一扫!
基于解析树的Java Web灰盒模糊测试
(1.武汉大学 国家网络安全学院, 武汉 430072;2.空天信息安全与可信计算教育部重点实验室, 武汉 430072)
Gray-box Fuzzing for Java Web with Parse Tree
(1.School of Cyber Science and Engineering, Wuhan University, Wuhan 430072, China;2.Key Laboratory of Aerospace Information Security and Trusted Computing of Ministry of Education, Wuhan 430072, China)
摘要
图/表
参考文献
相似文献
本文已被:浏览 581次   下载 1327
Received:February 21, 2023    Revised:March 22, 2023
中文摘要: 由于Java Web应用业务场景复杂, 且对输入数据的结构有效性要求较高, 现有的测试方法和工具在测试Java Web时存在测试用例的有效率较低的问题. 为了解决上述问题, 本文提出了基于解析树的Java Web应用灰盒模糊测试方法. 首先为Java Web应用程序的输入数据包进行语法建模创建解析树, 区分分隔符和数据块, 并为解析树中每一个叶子结点挂接一个种子池, 隔离测试用例的单个数据块, 通过数据包拼接生成符合Java Web应用业务格式的输入, 从而提高测试用例的有效率; 为了保留高质量的数据块, 在测试期间根据测试程序的执行反馈信息, 为每个数据块种子单独赋予权值; 为了突破深度路径, 会在相应种子池中基于条件概率学习提取数据块种子特征. 本文实现了基于解析树的Java Web应用灰盒模糊测试系统PTreeFuzz, 测试结果表明, 该系统相较于现有工具取得了更好的测试准确率.
中文关键词: 漏洞挖掘  模糊测试  Java Web  解析树
Abstract:Due to the complexity of the Java Web application business scenario and the high requirement for the structural validity of the input data, the existing test methods and tools have the problems of low efficiency of test cases when testing Java Web. To solve the above problems, this study presents a gray-box fuzzing method for Java Web applications based on parse trees. First, the study models the syntax of the input packets of Java Web applications, creates a parse tree, distinguishes between delimiters and data blocks, and hooks up a seed pool for each leaf node in the parse tree. In addition, the study isolates the single data block of the test case and generates the input in line with the Java Web application business format by packet splicing, so as to improve the efficiency of test cases. In addition, in order to retain high-quality data blocks, each data block seed is assigned a separate weight during the test according to the execution feedback information of the test program. In order to break through the deep path, the seed features of data blocks are extracted based on conditional probability learning in the corresponding seed pool. This study implements a gray-box fuzzing test system for Java Web applications based on parse trees, namely PTreeFuzz, and the test results show that the system achieves better test accuracy compared with existing tools.
文章编号:     中图分类号:    文献标志码:
基金项目:国家自然科学基金(61872430)
引用文本:
王鹃,张志杰,杨鸿远.基于解析树的Java Web灰盒模糊测试.计算机系统应用,2023,32(9):67-76
WANG Juan,ZHANG Zhi-Jie,YANG Hong-Yuan.Gray-box Fuzzing for Java Web with Parse Tree.COMPUTER SYSTEMS APPLICATIONS,2023,32(9):67-76