主动模式
配置管理测试
经常分析基础结构和拓扑结构可以获取大量的Web应用程序的信息。如源代码,可允许的HTTP方法,管理功能,身份认证的方法和基础结构的配置。
◆ SSL/TLS测试
SSL和TLS是两个通过加密为传播的信息提供安全信道的协议,该安全信道具有保护,保密和身份认证的功能。考虑到这些安全工具的关键性,确保加密算法的高强度及其正确执行非常重要。
◆ 数据库监听测试
在数据库服务器配置时,许多数据库管理员没有充分考虑到数据库侦听器组件的安全。如果没有进行安全的配置而使用手动或自动的技术进行侦听,侦听器就可能泄露敏感数据以及配置信息或运行的数据库实例信息。泄露的信息对测试者来说通常是有用的,他能将此投入到后续更有影响的测试中去。可能用到的工具:
tnscmd(Perl): http://www.jammed.com/%7Ejwa/hacks/security/tnscmd/tnscmd-doc.html
Toad for Oracle: http://www.quest.com/toad
◆ 基础结构配置管理测试
相互联系的混杂的Web服务器结构能有数以百计的web应用程序,这种固有的复杂性使配置管理和审查成为测试和部署每一个应用程序的一个基本步骤。事实上一个漏洞就能破坏整个基础结构的安全,甚至某些微小且(几乎)不重要的问题可能对于相同服务器上的另外一个应用程序是个严重的威胁。为了解决这些问题,对配置和已知的安全问题执行深入审查是非常重要的。
◆ 应用配置管理测试
Web应用程序隐藏了一些通常在应用程序自身开发和配置中没有考虑到的信息。这些信息可能从源代码,日志文件或Web 服务器的默认错误代码中泄露。正确对待这一问题是安全评估中最基本的。
◆ 文件扩展名处理测试
从Web服务器或Web应用程序上的文件扩展名能够识别出目标应用程序使用的技术,例如扩展名JSP与ASP。文件扩展名也可能暴露与该应用程序连接的其它系统。可能使用到的工具:Curl、漏洞扫描器、wget。
◆ 过时的、用于备份的以及未被引用的文件
Web服务器上多余的,可读的和可下载的文件,如过时的,用于备份的和更名的文件,是信息泄漏的一个大源头。验证这些文件的存在是有必要的,因为它们可能包含应用程序和/或数据库的部分源代码,安装路径以及密码。
◆ 基础结构和应用管理接口
许多应用程序在管理接口使用一个公用路径,从而可能被用来猜测或暴力破解管理密码。此测试目的是找到管理接口,并了解是否可以利用它获取管理员权限。
◆ HTTP方法和XST测试
在这个测试中,我们确保Web服务器没有被配置成允许使用具有潜在危险性的HTTP命令(方法),同时确保跨网站追踪攻击(XST)是不可能的。可能用到的工具:NetCat.
业务逻辑测试