论文部分内容阅读
随着互联网行业的发展,大量的软件产品投入市场供大众使用。软件给人们的生活提供便利的同时,带来的安全问题也层出不穷。软件的漏洞可能使个人信息、企业数据甚至国家机密信息遭到泄露,给国家和企业都带来致命的损失。因此,提出一款高效且有效的软件检测系统变得十分迫切。本文对基于源代码的静态检测技术以及模式匹配技术进行了深入研究,分析了当前流行的基于模式匹配的检测模型,根据此模型检测过程中资源消耗过多的问题提出了一种改进的模型,并基于改进模型实现了一个软件源代码检测系统,经实验结果表明软件源代码检测系统能有效的检测代码漏洞,降低资源消耗的同时提高了检测效率。整篇论文的研究工作主要有以下几方面:(1)提出一种改进的基于模式匹配的检测模型。论文对基于模式匹配的检测模型进行了深入研究,由于检测过程中生成大量的自动机,模型存在资源消耗过多、检测速度较慢的问题,针对这一问题提出了加入规则预判的方案,有效的减少了资源的消耗,提高了检测速度。(2)提出了在字符集较小的情况下通用的改进多模式匹配算法。论文在原有AC-BM算法的基础上,提出了在算法的预处理过程中建立前置字符表和双字符表,以有限的空间消耗减少了匹配时间,有效的提高了匹配效率。在论文中改进的算法减少了模型的预判时间,提高了模型的检测效率。(3)实现了软件源代码检测系统。基于改进的检测模型,论文设计实现了一个软件源代码检测系统,对系统进行了总体架构、各模块以及数据库的设计和实现工作,最终对系统的静态检测模块和其他模块进行了测试工作,结果表明软件源代码检测系统能有效的检测出代码漏洞,与基于原模型的系统对比,在资源消耗和检测效率方面都有所改善。