这一章我们介绍信息泄露漏洞,并描述如何寻找漏洞和利用漏洞。
1. 什么是信息泄露?
2. 信息泄露是如何发生的?
信息泄露漏洞可以出现在各种各样的场景中,大致可以归纳为以下几种:
(1)未能从公开内容中移除内部信息
例如,开发人员添加的注释信息可以在公开内容中看到,这对攻击者理解业务逻辑非常有帮助。
(2)网站不安全的配置信息
例如,忘记关闭调试功能,将会为攻击者提供有用的工具,用于获取敏感信息。即便是默认的配置也依然存在问题,譬如会提供冗余的错误信息。
(3)应用中存在有缺陷的设计
例如,在不同错误发生的时候,返回不同的相应。这可以让攻击者可以枚举敏感信息,譬如,合法的用户凭证等。
3. 如何发现漏洞?
3.1 Fuzzing
如果发现有趣的参数,可以尝试提交不在期望范围内的数据类型,以及特定构造的字符串,看看应用会发生什么。例如,处理请求所耗的时间会略有差异。即使错误信息的内容没有明显的敏感信息