Web安全测试指南--信息泄露

5.4.1、源代码和注释:

编号

Web_InfoLeak_01

用例名称

源代码和注释检查测试

用例描述

在浏览器中检查目标系统返回的页面是否存在敏感信息。

严重级别

前置条件

1、  目标web应用可访问,业务正常运行。

2、  已明确定义出敏感数据范围(比如口令、邮件和IP等)。

执行步骤

1、  使用正确账户名和密码登录目标系统。

2、  访问待测试页面。

3、  在页面上点击右键,选择“查看源文件”。

4、  仔细检查源文件的源码和注释是否存在定义范围的敏感数据,比如:

<!-- the DB administrator password: f@keP@a$$w0rD -->

预期结果

源文件中没有发现敏感数据。

测试结果

 

备注

本用例亦可以使用人工结合自动化的方式减少工作量,即先定义敏感数据范围,然后使用http代理或者爬虫在http响应中匹配敏感数据。比如:

l  可以在http响应中使用正则匹配邮件、IP等敏感数据。

l  可以搜集一组常用的关键字,比如:password,或者开发人员常用的密码(可以向开发人员获取),并在http响应中进行匹配。

但人工审计有时候有时候会有意外发现,可根据实际需求执行。

5.4.2、日志审计:

编号

Web_InfoLeak_02

用例名称

日志审计测试

用例描述

审计日志是否记录敏感数据。

严重级别

前置条件

1、  目标web应用可访问,业务正常运行。

2、  目标系统存在日志系统。

3、  拥有访问日志的权限。

4、  已明确定义出敏感数据范围(比如口令、短信验证码和session id等)。

执行步骤

1、  获取web服务器或各种应用日志。

2、  打开search and replace,在“路径”选项中定位存放日志的目录。

3、  在“搜索”栏中输入定义好的敏感数据关键字,比如:password、开发常用的密码等等。

4、  检查搜索出来的结果是否存在敏感数据(比如:口令,session id等)。

5、  使用文本编辑软件(比如:notepad)分别打开各个日志文件,并仔细检查是否存在敏感数据。

预期结果

日志中没有发现敏感数据。

测试结果

 

备注

步骤3同样可以使用程序自动匹配。但search and replace有更加直观的上下文进行误报排查,并且人工审计往往有意外发现,建议使用此方式。

posted on 2015-01-07 08:48  Fish_Ou  阅读(1906)  评论(0编辑  收藏  举报