安全测试的工作流程
安全扫描需要认真配置,以便其可以找到 Web 应用程序上的所有 URL,然后测试其弱点。
开始之前
要成功扫描您的站点,您必须确保:
- 尽可能全面地扫描站点。
- 不扫描重复或不相关的内容。
- 报告结果有用且准确。
要进行满足这些条件的成功扫描,需要采用迭代方式。您还必须深刻了解站点的结构和技术。
- 第一次扫描时,最好限制起始 URL 的数量,以便扫描可以更快速的进行。
- 您可以添加无效 URL 作为起始 URL 以扫描除在典型起始 URL 之内或之下找到的页面之外的页面。
- 了解要扫描 URL 的精确名称会很有帮助。每个 URL 都应该有效,否则作业无法对其进行扫描。作业在扫描过程中遇到无效 URL 时,它会继续移至“现有起始 URL”表中的下一个 URL。但是,无效 URL 可用来扫描未包括在起始 URL 中的目录。
过程
- 产品管理员创建要测试的服务器组。请参阅创建服务器组。
- 产品管理员启用要扫描的 IP 地址。请参阅启用和禁用要扫描的 IP 地址。
- 产品管理员创建/导入要使用的安全测试策略。请参阅从 AppScan Standard 导入高级安全测试策略和创建简单安全测试策略。
- 浏览站点,寻找可能干扰扫描的项。部分示例包括:
- 登录页面
- 排除,如“添加到”购物车、打印此页面和列标题排序
- 会话标识和其他参数
- 定制错误页面
- 可能需要值的表单
- Flash 或 JavaScript™
- 配置安全扫描并予以运行。请参阅使用 AppScan Enterprise 中的扫描属性配置安全扫描。
- 优化和扩展扫描。测试扫描报告结果应该能够指明需要如何对扫描进行优化。
- 扫描过程是否提前结束?如果是,那么可能是注销页面导致了扫描过程停止。
- 检查报告中是否存在误报。
- 确定是否应该从报告中除去完全相同的页面或完全相同的表单。页面和表单可能具有一些会导致扫描过程将它们看作不同页面和表单的参数(查询字符串或 POST 数据)或 cookie,而事实上它们完全相同。您必须将 URL 和表单规范化,以便从页面和表单中除去参数,如会话标识。扫描过程随后将会把它们看作是完全相同的。通过对全局域进行编辑,在“服务器”和“域”级别执行规范化,或在个别扫描作业级别执行规范化。对特定域中扫描的所有 URL 和表单,可以应用相同的规则。
- 如果应用程序的有些 URL 未被发现,请使用“手动探索”功能来手动探索站点,并将 URL 添加到扫描过程。
- 参考 Web 站点体系结构报告以确定是否有更多域或目录需要扫描。被识别为外部域的域可以添加到“扫描对象”页面中,以便将它们包含在扫描过程中。如果此页面上列出的域中有任何域尚未扫描,则可能是登录页面导致无法到达它们。
- 基于结果重新评估如何配置属性。您可能需要配置额外的属性,或是更改现有属性的设置。
- 重复最后两个步骤,直到您确定已正确扫描和分析了整个 Web 站点或应用程序(没有误报等等)。
- 修补漏洞,然后重新测试安全问题。请参阅重新测试安全问题。
- 运行安全性仪表板并分发结果。请参阅运行预创建的仪表板。