国内对渗透测试以及安全评估的研究起步较晚,并且大多集中在在渗透测试技术上的研究,安全评估方面也有部分企业和研宄团体具有系统的评估方式。然而国内对基于渗透测试的自动化集成系统研宄还非常少,从目前的网络安全态势来看,传统的渗透测试方式己经无法满足现在网站对安全性能的要求,传统的渗透测试技术和工具都还停留在运用单一渗透测试方法或是单种测试工具,无法全面检测出网站系统存在的漏洞。
目前国内外使用比较普遍的攻击方法主要有三种:
(1)跨站脚本:一般缩写为XSS。这个漏洞是由于攻击者通过终端向应用程序提交数据,数据上传至服务器的过程中没有对提交的数据进行严格审核和检查,导致正常用户运行应用程序时启动了恶意攻击者嵌入程序中的代码,大量用户被攻击。攻击者不仅可以窃取用户和系统管理员的cookie,还可以进行挂马操作,使更多的访问用户被恶意代码攻击。在如今网站各项技术非常普及的情况下,蠕虫也有可能能利用跨站脚本存在的漏洞,对网站进行大规模攻击,造成极大危害。
(2)SQL注入攻击:这种攻击是由于用户在前端页面输入数据时,后台程序没有过滤输入的特殊字符,异常数据直接和SQL语句组成正常的执行语句去执行,导致不需要密码就能够直接登陆,泄露网站的信息。因此攻击者可以构造隐蔽的SQL语句,当后台程序执行语句时,攻击者未经系统和程序授权就能修改数据,甚至在数据库服务器上执行系统命令,对网站的安全体系带来严重威胁。这种漏洞的根本原因是,编程人员在编写程序时,代码逻辑性和严谨性不足,让攻击者有机可乘。早期的SQL查询方式存在很大问题,使用了一种简单的拼接的方式将前端传入的字符拼接到SQL语句中。现在通常采用传参的方式避免SQL注入攻击例如使用MYBAIIS框架替代早期对数据库的增删改查方式,因此,防止这种攻击办法的最好方式是完善代码的严谨性,另一方面是对网站原有代码重新梳理、编写,以安全的方式执行SQL语句查询的执行。
(3)URL篡改:对使用HTTP的get方法提交HTML表单的网站,表单中的参数以及参数值会在表单提交后,作为所访问的URL地址的一部分被提交,攻击者就可以直接对URL字符串进行编辑和修改,并且能在其中嵌入恶意数据,然后,访问这个被嵌入的恶意数据,再反馈给WEB应用程序。