论文部分内容阅读
伴随着科学技术高速发展,互联网也迎来了一个最美好的时代。人们利用互联网从原来的单纯浏览信息到现在办理各项其他事情,越来越多的事务从线下转移到线上,无论是买车票、缴纳水电费或是购置其他商品,都可以在网上进行,互联网已经成为民众生活不可或缺的一部分,Web应用因此得到了一个爆发性的增长。然而Web应用之中存在的漏洞越来越多样化,使得安全测试工作难以支撑Web应用的发展。传统的安全测试是采用手工模拟攻击者的手段对Web安全进行渗透测试,而手工测试缺缺乏效率,而且人为产生的错误因素也经常会影响测试结果,不能确保测试结果的准确性。目前商用的自动化测试工具价格不菲,对于广大中小企业来说使用商用的自动化测试工具并不具有可操作性。本文分析与研究了基于Selenium的安全自动测试技术,Selenium是一个开源的工具,采用Selenium进行开发可以有效地降低测试成本。本文利用Selenium对当前主流的漏洞设计并实现了漏洞扫描功能,并发挥了Selenium的可拓展性的特点,从而设计出一款可用性高,具有良好性能的安全测试工具。它能够对Web应用进行自动化的安全测试,不仅可以在Web应用上线前进行安全测试,还能够在上线后进行测试,从而可以提前做好相应对策,减少损失。本文主要工作如下:1.分析当前Web应用的安全态势,对国内国外自动化测试的研究现状做了介绍,详细分析了当前Web应用所受到的安全威胁,并举出数据说明危害,说明开发一款能够进行自动化进行安全测试的系统的重要性。2.对Web应用当前存在的不同类型漏洞的特性进行分析,重点分析了SQL注入漏洞和XSS跨站漏洞的产生原因、检测方式以及防御方法等,并介绍了一些现阶段比较流行的自动化测试工具,包括本文使用的Selenium自动化测试工具。3.针对获取Web应用存在的漏洞信息,对HTTP协议、URL获取、网页内容获取、网页中表单的提取等等进行了相关研究,设计了能够对目标网站进行爬取并过滤构建URL的网络爬虫模块。4.在获取了网页信息之后,利用selenium测试目标的交互、可拓展性的特点,设计了SQL注入漏洞和XSS跨站漏洞的漏洞扫描模块,通过自动化的测试能够生成详细的测试报告。最后,通过搭建实验环境,对系统进行了功能测试和性能测试,验证了系统的可用性和可靠性。