论文部分内容阅读
随着互联网技术和Web应用技术日新月异的发展,用户与应用程序之间的交互越来越频繁,大量的用户数据在互联网上传播。如何保证这些数据的安全,成为Web安全的研究目标。早期,人们对Web安全的研究主要侧重点在于服务器端的防御研究。但是由于Web应用技术的快速发展,Web应用程序与用户之间的交互需求越来越复杂,为减少Web客户端与服务器之间的信息传输次数和传输量,客户端承担了许多逻辑控制方面的功能需求,以JavaScript为代表的脚本编程技术是实现Web客户端完成逻辑控制功能的有力工具。由于脚本程序强大的控制能力,导致黑客利用脚本程序对Web客户端进行攻击。目前的脚本安全防护主要从输入输出过滤和编码、约束脚本程序运行、静态代码渗透测试等方面进行研究,但仍然没有一种有效的防御方法可以杜绝客户端脚本攻击。本文提出一种基于决策树算法的脚本攻击检测方法,利用CART决策树的分类优势,对Web应用程序中可能遭受脚本攻击的特征属性进行分析,根据特征属性的取值来判断该取值是否含有恶意脚本。其中涉及到对脚本攻击的攻击原理和危害、现有的防御措施以及决策树的建树、剪枝和分类等方法的研究。在特征属性的选取方面,本文充分考虑了Web应用程序容易发生脚本攻击的关键点,并对这些关键点的属性和对象取值进行全面的分析。通过Java语言实现一个基于该方法的脚本攻击检测系统并进行实验测试,结果证明该方法能够有效的解决客户端脚本攻击的检测问题。