Web安全测试—11信息泄漏测试

连接数据库的账号密码加密测试

编号

Web _01

测试用例名称

连接数据库的帐号密码加密测试

测试目的

连接数据库的帐号密码在配置文件中如果明文存储,容易被恶意维护人员获取,从而直接登陆后台数据库进行数据篡改。

用例级别

一级

测试条件

1、拥有Web服务器操作系统的帐号和口令

2、已知连接数据库的帐号密码所在的配置文件,可以找环境搭建人员咨询。(还可以用grep命令查找哪些xml文件包含该数据库帐号,然后打开这些文件进行检查)

执行步骤

  1. 登陆Web服务器的操作系统。
  2. 用find命令找到对应的配置文件。
  3. 查看配置文件中连接数据库的帐号密码在配置文件中是否加密。

预期结果

连接数据库的帐号密码在配置文件中加密存储

备注

测试结果

客户端源代码敏感信息测试 

编号

Web _02

测试用例名称

客户端源代码敏感信息测试

测试目的

Web页面的html源代码中不允许包含口令等敏感信息,特别关注修改口令、带有星号口令的Web页面。

用例级别

一级

测试条件

1、已知Web网站地址

2、Web业务正常运行

3、待测页面能够正常访问

执行步骤

  1. 登陆Web服务器。
  2. 选择可能存在敏感信息的页面(比如修改口令、带有星号口令的页面)。
  3. 在页面上单击鼠标右键,选择“查看源代码”。
  4. 查看页面的源代码包含口令等敏感信息。

预期结果

在页面的源代码中看不到明文的口令等敏感信息

备注

测试结果

客户端源代码注释测试

编号

Web _03

测试用例名称

客户端源代码注释测试

测试目的

开发版本的Web程序所带有的注释在发布版本中没有被去掉,而导致一些敏感信息的泄漏。我们要查看客户端能看到的页面源代码并发现此类安全隐患。

用例级别

一级

测试条件

1、已知Web网站地址

2、Web业务正常运行

3、待测页面能够正常访问

执行步骤

  1. 从客户端查看网页源代码。
  2. 找到注释部分并查看是否有敏感信息。

预期结果

源代码里不存在敏感信息(比如:内网IP地址、SQL语句、密码、物理路径等)。

备注

测试结果

异常处理

在这个部分我们通过构造各种异常的条件让Web程序处理,通过其返回信息来判断是否存在信息泄漏的问题。

  • 不存在的URL

编号

Web _04

测试用例名称

不存在的URL

测试目的

Web网站在处理用户提交的不存在的URL时会返回错误信息,我们通过返回的错误信息来确认是否会有敏感信息的泄漏问题。

用例级别

一级

测试条件

1、已知Web网站地址,假设为:http://www.example.com 或 IP:http://aa.bb.cc.dd

2、Web业务运行正常

执行步骤

  1. 我们请求不存在的文件,比如:http://www.example.com/unexist.jsp 或者 http://aa.bb.cc.dd/unexist.jsp
  2. 观察返回结果

       

预期结果

返回的页面中没有敏感信息。

备注

在各个目录和功能模块重复此操作

测试结果

  • 非法字符

编号

Web _05

测试用例名称

非法字符导致信息泄漏

测试目的

Web应用在处理用户提交的含有特殊字符的URL时,可能会返回错误的信息,通过错误信息来判断是否存在敏感信息的泄漏问题。

用例级别

一级

测试条件

1、 已知Web网站地址

2、 Web业务正常运行

3、 如果是IE浏览器,在Internet选项->高级里把“显示友好HTTP信息”去掉选择状态

4、已知待测目标URL,假设为http://www.example.com/page.xxx

待测目标存在参数输入,假设为name=value,即:

http://www.example.com/page.xxx?name= value

执行步骤

  1. 在正常的URL的参数中添加特殊字符: %  *  ;  ’  ?

    添加特殊字符后的URL为:

    http://www.example.com/page.xxx?name= value%

    http://www.example.com/page.xxx?name= value*

    http://www.example.com/page.xxx?name= value;

    http://www.example.com/page.xxx?name= value?

    http://www.example.com/page.xxx?name= value’

  2. 在浏览器地址栏中依次输入这些带有特殊字符的URL并回车
  3. 观察返回结果

预期结果

返回的页面中没有敏感信息(比如:详细的类名、方法,SQL语句,物理路径等)。

备注

页面可能接受多个参数,需对每个参数都进行测试

POST情况下的参数也需要测试

测试结果

  • 逻辑错误

Web应用在处理一些具有逻辑错误的请求时,可能会返回错误的信息,通过返回的错误信息来确认是否会有敏感信息的泄漏问题。本测试无法给出很具体的测试指导,只能给出相应的描述说明,那就是:尽可能的尝试使用违背业务逻辑处理的参数来让Web应用返回异常信息。

不安全的存储

本测试无法给出很具体的测试指导,在测试中可以根据下列方法进行测试:

  • 上传文件所在的目录(或者是临时目录)能否直接远程访问。
  • 服务器配置文件目录或日志存放目录能否直接访问。
  • 日志或数据库中是否能够看到明文敏感信息:Web应用一般都会对一些业务操作进行记录日志操作。在日志文件中很可能包含了一些敏感信息(例如用户在更改口令后日志文件中会记录该用户原始口令以及更改后的口令信息)。假如Web应用的日志存放的目录被攻击者发现(符合上一条测试项),那么攻击者就可以从中获取大量的敏感数据用户后续的攻击。因此,本测试需要对日志文件中的数据进行调查,检查其中是否带有敏感数据或者敏感数据进行了加密处理。同样对于数据库也述要进行审查。
  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

虚空劫灰往事书@布耶尔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值