渗透测试被分成两大阶段:■ 被动模式阶段在这个阶段,测试人员试图去理解被测应用的逻辑,并且去使用它。可以使用工具去收集信息,例如,可以用HTTP代理工具去观察所有请求与响应。本阶段结束后,测试人员应该理解了应用的所有访问点(如,HTTP报头、参数和COOKIE)。信息收集一节将介绍如何进行被动模式的测试。■ 主动模式阶段这个阶段里,测试人员将利用后述的9大类66种方法主动地去测试。
信息收集安全评估的第一步是收集尽可能多的关于被测应用的信息。信息收集是渗透测试的必要步骤。通常使用公共工具(搜索引擎)、扫描器、发送简单或特别的HTTP请求等来迫使被测应用泄漏信息。
◆ 使用蜘蛛、机器人和爬虫目标是浏览和捕获被测应用相关的资源。
◆ 搜索引擎发现与侦察类似GOOGLE这样的搜索引擎可以用来发现被测应用中已经被公开的错误页面或WEB应用结构问题。
◆ 识别应用入口点枚举被测应用及其攻击面是展开任何攻击的的一个关键性前提。
◆ 测试WEB应用指纹应用指纹是信息收集的第一步。知道正在运行的WEB服务器的版本和类型后,测试人员可以确定已知的漏洞和测试过程中的相应攻击方法。获取WEB应用指纹的自动化工具Httprint和在线工具Netcraft。
◆ 应用发现应用发现是一项面向驻留在WEB/应用服务器中的WEB应用识别的活动。这种分析很重要,因为没有一个链接直接连接到主要应用的后端。分析可以发现有助于揭示诸如用于管理目的的WEB应用程序的细节。此外,它可以揭示诸如取消删除的,过时的脚本文件,这些文件通常是在测试、开发或维护过程产生的。