互联网中Web应用程序也可能会遭受一些攻击,也有一些漏洞。因此,安全测试也是新网站发布的一项重要环节。在网站建设和发布过程中,这一点经常被忽略,但这是整个过程中非常重要的一步,它可以帮助我们发现一些意外错误、错误功能和用户体验问题,也可以帮助我们发现一些网站可能导致系统遭受攻击的漏洞。将安全测试加到标准生产发布过程中,可以带来很多好处,而且它产生的应用程序信息多于标准压力测试和用户流量监控所能产生的信息。有许多优秀的书籍介绍如何给Web应用程序“添乱”,或者给软件施加一些随机行为,以确定它是否能够顺利处理。这个过程一定不能忽视。
安全测试应该成为所有新产品发布的一个重要部分,而且不应该事后才想到。它应该在应用程序可以测试时就启动,而且要在整个开发过程中持续进行,直到产品成功发布为止。渗透测试是安全工程师的最主要工作,他的职责就是检测Web应用程序的漏洞和缺陷,并且要在最终用户访问新应用程序之前发现安全问题。Metasploit1框架或Webscarab项目就是很适合在渗透测试过程使用的软件。
1.集成到QA过程中
理想情况下,漏洞扫描应该自动化并集成到QA过程中。在将新版本代码发布到Web环境之后,网站制作质量保证测试套件应该执行一些漏洞扫描。这样可以形成一种安全测试文化,而不是在怀疑有安全问题时才执行测成。安全测试不应该专属于组实中果位工程师的职责,整个公司都应该理解执行安全测试的原因与好处,这样它才会成为一件常规工作。将安全测试添加到自动化标准质量保证过程中,就可以让所有技术团队像检查日志文件或服务器性能指标一样习惯去执行安全测试。
2.Web应用扫描工具
有许多商业或开源Web应用漏洞扫描工具推出了商业版本,我没法指出哪一些是最好的工具,因为到本书印刷出版时它们可能就已经过时了,所以这里我只是建议最好能使用一下这种工具。这些漏洞扫描工具会像搜索引擎一样抓取网站或Web应用程序的内容,从而分析它的结构,然后在网站上应用各种常见的漏洞扫描算法。它们不仅能够确定最新开发的网站或应用是否有常见漏洞,而且也能够给应用程序创建一些场景和使用模式,由它们产生一些意外行为,为软件技术团队发现应用中需要改进的地方。因此,扫描工具不仅是一个安全工具,也是一个质量保证工具。任何新软件都必须经过漏洞扫描,然后才能交付或提供给公共用户访问。
轻松搞定才能尽早上线,赶紧学上吧!