论文部分内容阅读
当前网络空间博弈日益复杂和严峻,安全漏洞的消减成为国家层面信息对抗的需求。Web设计和开发中存在的安全漏洞是黑客的主要目标,漏洞被利用所造成的损失日益严重。PHP是一种非常流行的Web开发语言,应用PHP语言开发的Web应用中往往存在着惊人的漏洞,因此,消减PHP Web应用开发中的安全漏洞成为一项极其重要的工作。本文介绍了Web应用与PHP安全漏洞的相关概念,总结了目前Web应用中的十大安全威胁,并应用Web安全漏洞测试分析工具DVWA在代码层分析了跨站脚本、SQL注入、文件包含及命令执行等四种主要PHP漏洞的成因以及利用漏洞进行攻击的方法。本文在分析已有软件安全开发模型的基础上,以漏洞的生命周期为主线,以漏洞消减为目的,从开发者和管理者两个角度,提出了Web应用开发漏洞消减模型,介绍了漏洞消减过程中不同方面的策略和方法。接下来重点对模型中的安全需求建模和安全编码技术进行了研究。我们将工程化的威胁分析方法和形式化的UMLSec建模方法相结合,提出了基于UMLSec的PHP Web安全需求建模框架,并以用户登录模块安全需求建模为例,从口令生成、口令输入、口令传输、口令存储、口令找回、口令修改及口令状态等多方面进行威胁分析,建立安全需求模型,对模型的一致性进行验证。这种在设计阶段对Web应用安全漏洞进行消减的方法,既能准确、详尽地描述PHP Web应用软件的安全需求,又便于开发者理解和掌握,以提高安全需求分析的效率和质量,从而在设计阶段就对Web应用安全漏洞进行有效消减。我们还将代码检测的一部分工作引入编码阶段,设计并实现了基于Eclipse的PHP Web漏洞消减插件工具PVDetector (PHP Vulnerability Detector)。介绍了漏洞消减插件的结构及模块功能,分析了安全检测模块中污点检测过程,并给出了插件的具体实现方法,最后对插件的功能进行了测试。实验结果表面,本文给出的这种漏洞消减插件工具在编码过程中就进行代码检测,能够帮助开发人员在编码阶段及早发现漏洞,了解漏洞,从而有效地消减大部分漏洞。