论文部分内容阅读
如今,随着Web技术的高速发展和互联网的大众化,使得Web应用程序已经成为黑客攻击的主要目标,由Web应用程序的安全问题所引发的财产损失数以亿计。因此,设计一套漏洞误报率和漏报率低,且检测准确率和稳定性高的Web漏洞挖掘机制,并有效扫描出待测Web应用程序中的安全漏洞,从而降低Web应用系统受到网络攻击的概率,具有十分重要的理论意义和实用价值。本文的研究内容为模糊测试技术在Web漏洞挖掘领域中的应用,并对模糊测试技术当前存在的不足之处进行了改进。在本文的主要研究工作包括以下两个方面:(1)本文对传统模糊测试技术中网络爬虫模块的不足进行了分析,针对爬取覆盖率低的问题,设计了基于页面状态的网络爬虫算法来提升模糊测试技术中漏洞测试点的有效性。该算法首先对目标Web应用程序进行建模,通过对页面模型进行分类和筛选来避免网络爬虫爬取具有相似结构的URL以及表单注入点,并防止陷入爬取死循环。通过尝试改变目标页面的状态,网络爬虫可以获取到相同页面下更多的漏洞测试点。实验结果表明,利用基于页面状态的网络爬虫可以有效提升模糊测试技术的测试覆盖率。(2)针对当前模糊测试技术中测试用例生成步骤所存在的问题,引入了遗传算法来对模糊测试技术进行改进。本文所实现的算法首先采用格雷码对测试用例个体进行基因编码,并利用本文所设计的适应度函数来对进化结果进行筛选和过滤,通过对种群个体进行选择、自适应交叉和自适应变异,实现了对测试用例的优化。实验结果表明,本文所设计的方法能够提升测试用例种群中个体的平均适应度,并通过提升测试用例的攻击性来降低漏洞扫描的漏报率和误报率。