1. 背景介绍
最近在负责客户的电子商务项目,客户方提出要做
安全测试。在以往的项目中,我们一般会将此部分外包给第三方的安全公司来做,但其实对于安全性测试并不是那么神秘,对于此,我们尝试自己进行相关的安全性测试。
对于
Web应用的安全性来讲,我们主要考虑的测试点有:
SQL注入、XSS跨站、GoogleHacking、访问控制错误、特有漏洞攻击(例如PHP)、上传漏洞攻击、网页篡改挂马等、应用层缓冲区溢出、系统指令被执行等。
说明一下,WEB应用安全不是IT安全,所以这里不考虑防火墙,OS安全配置等,例如如果你的网站被DDOS不在本文的考虑范围之内。
另外,本文主要讨论的是如何利用WEB应用安全扫描工具来快速得到安全检测结果,并加以分析,得出相关安全建议,纯手工的WEB应用安全测试手段也不在本文的讨论范围之内。
2. 测试方案简要说明
2.1理解相关术语
SQL注入:SQL注入攻击是由在客户端通过应用程序的输入域插入或注入相关的sql查询组成的。一次成功的sql注入攻击能够从
数据库中读取到敏感数据,修改数据库中的数据,插入数据,更新数据或删除数据均成为可能,或是在数据库上执行一些管理操作甚至是执行
操作系统命令。
XSS跨站:XSS攻击指的是恶意攻击者往WEB页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意用户的特殊目的。
GoogleHacking:GoogleHacking是一种利用搜索引擎获取web应用程序弱点和敏感信息的手段。
2.3 相关风险
目前大多数公司没有安全测试团队,测试经理在考虑测试方案时应充分考虑测试人员安全测试技术能力对整个测试结果的影响。在开始时应该考虑如何在最短时间内让测试人员掌握手工安全测试方法,安全扫描工具的使用以及具备相关的分析能力。
从质量的角度考虑,测试人员被动的去测试不如让开发人员在开始开发时就充分考虑如何写出更安全的代码,所以在允许的情况下,开发人员也应该接受相应安全开发培训。
当然,针对于整个项目周期,时间以及人力成本等因素,也需要综合考虑在安全方面的投入,使项目整体可控。
3. 测试执行
本次在客户这里进行WEB应用安全性测试我们选用了两款工具,分别是nikto和parosparos。当然在本文中我主要使用nikto来做实际讲解。
......
版权声明:51Testing软件测试网及相关内容提供者拥有51testing.com内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。