rational rosa_使用Rational AppScan对Web应用程序进行自动漏洞扫描

随着全球连接的增加,安全风险也在增加

根据IBM®X-Force®2011年中期趋势和风险报告,由于在2011年上半年报告了数量众多的重大安全漏洞,因此2011年可被视为“安全漏洞年”。全球范围和规模的更加互连,智能和有仪器的网络世界导致风险和危险增加,对企业和基础架构的网络安全攻击也变得更加复杂且难以管理。

该报告显示,2011年上半年,所有漏洞中的37%来自Web应用程序漏洞。无法保护Web应用程序安全可能导致财务和应用程序性能方面的巨大损失。 大多数基于Web的威胁的发生是由于源代码中的代码空白导致SQL注入,跨站点脚本(XSS),受损的会话信息等。 如果没有强有力的质量保证安全措施,浏览器的安全性也很容易被规避。 对于当前的应用安全系统的概述,您可以下载此报告(请参见链接相关主题 )。

IBM®Rational®AppScan®系列产品可自动对Web应用程序(Web服务,Web 2.0)和富Internet应用程序(JavaScript,Ajax和Adobe Flash)的Web漏洞进行动态安全测试。 这种动态安全性测试方法涵盖了从开发到测试的整个过程,包括扫描应用程序,识别漏洞并生成漏洞报告,以及在将应用程序部署到Web上之前的补救建议。

Rational AppScan版本可满足小型,中型或大型开发组的需求,并提供广泛的选择范围:

  • Source Edition旨在帮助开发团队,并通过静态应用程序安全测试(SAST)将源代码分析添加到AppScan Enterprise。
  • Enterprise Edition是企业级解决方案,用于具有治理,协作和安全智能的应用程序安全测试和风险管理。
  • AppScan Tester Edition是一个动态应用程序安全测试(DAST)解决方案,专门设计用于使用Rational Quality Manager将应用程序安全测试集成到QA环境中。
  • Standard Edition是一个关键的桌面安全测试工具,旨在自动执行Web漏洞评估。 它会使用相应的修复建议对漏洞进行静态和动态分析。

在本文中,我们探索了Rational AppScan Standard Edition(版本8.5)对Web和Web Service应用程序执行自动化安全性和漏洞测试的功能。 我们还将探索其法规遵从性报告功能,这是对Web和Web服务应用程序进行自动安全性和漏洞测试的一部分。

要探索AppScan Standard Edition v8.5的功能,您将使用PlantsByWebSphere v8.0.0.1(Ajax版本),该应用程序作为示例包含在WebSphere Feature Pack for Web 2.0和Mobile(版本1.1.0)中。 图1显示了初始屏幕。

rational rosa_使用Rational AppScan对Web应用程序进行自动漏洞扫描

注意:
有关此示例应用程序的详细信息,请参阅“ 相关主题”部分中的链接。

IBM向PlantsByWebSphere提供了源代码。 该示例应用程序是我们安全性和漏洞测试活动的理想选择,因为该示例应用程序符合应用程序编程接口(API),并且没有将强大的安全性设计为设计要求。 IBM清楚地在交付的源代码中记录了免责声明。 可以轻松配置此样本,并且在探索AppScan功能时可以轻松复制本文中解释的步骤。

另外,您将图2所示的HelloWorld JAX-WS Web服务应用程序部署到IBM®WebSphere®Application Server v8.0.0.1运行时,以进一步探索AppScan Standard Edition v8.5的功能。

HelloWorld JAX-WS应用程序的业务方法sayHello()接受HelloReq对象并返回HelloResp,同时用个人问候消息问候指定的个人。 HelloReq和HelloResp对象分别包含字符串类型属性,名称name和响应。

rational rosa_使用Rational AppScan对Web应用程序进行自动漏洞扫描

Web应用程序的自动化安全性和漏洞测试

首先,使用图3所示的“扫描配置向导”对PlantsByWebSphere Web应用程序进行全面的全面扫描。在设置扫描概要文件以发现此Web应用程序的安全漏洞之前,您需要确保WebSphere Application Server v8 .0.0.1正在运行,并且PlantsByWebSphere应用程序已部署到运行时并成功运行,如图2所示(pbw-ear企业应用程序状态在“应用程序状态”列中显示绿色箭头)。

  1. 启动Rational AppScan Standard Edition v8.5。
  2. 选择文件>新建

这个New Scan对话框窗口(图3)描述了可用于各种预定义模板的基于向导的扫描。

rational rosa_使用Rational AppScan对Web应用程序进行自动漏洞扫描

对于此样本,选择了全面扫描,如表1所示,它是针对Web应用程序的给定URL,自动登录(具有必需的凭据)和完整扫描的设置。

  1. 启动扫描配置向导,并指定表1中列出的选项。
表1.扫描配置选项,PlantsByWebSphere Web应用程序
扫瞄 扫描配置选项 指定的配置
1个 预定义模板 全面扫描
2 扫描类型 Web应用程序扫描
3 扫描的起始URL http:// localhost:9085 / PlantsByWebSphere / orderdone.jsf
4 登录方式 自动
5 登录信息 用户名:[email protected]
密码:植物
6 测试政策 完成
7 扫描开始方式 开始全自动扫描

注意:
主机名,端口号和用户凭据会有所不同,具体取决于您的安装和设置。

  1. 现在,选择表2中列出的环境设置定义。
表2.环境设置定义,PlantsByWebSphere
数据表示例
扫瞄 环境设置定义 指定设定定义
1个 操作系统(正在扫描的站点) 视窗
2 网络服务器 IBM HTTP服务器
3 应用程序服务器(如果有) 的WebSphere
4 数据库类型(如果有) DB2
5 第三方组件(如果有) 没有定义的
6 网站位置 本地
7 网站类型 测试
8 部署方式 内部地
9 附带损害潜力 低中
10 目标分配
11 保密要求
12 诚信要求
13 可用性要求

图4显示了为扫描配置指定的环境定义。

rational rosa_使用Rational AppScan对Web应用程序进行自动漏洞扫描

这是一个Microsoft Windows安装程序。 该应用程序正在WebSphere Application Server上运行,并使用DB2缺省数据库。

  1. 允许AppScan执行全面的安全性和漏洞测试扫描。

如图5所示,允许AppScan完成全面的安全和漏洞扫描,从而得出一系列安全建议,例如问题总数(54),高(

rational rosa_使用Rational AppScan对Web应用程序进行自动漏洞扫描
12),中(
rational rosa_使用Rational AppScan对Web应用程序进行自动漏洞扫描
2),低(
rational rosa_使用Rational AppScan对Web应用程序进行自动漏洞扫描
40),以及信息安全性问题(
rational rosa_使用Rational AppScan对Web应用程序进行自动漏洞扫描
0)。
rational rosa_使用Rational AppScan对Web应用程序进行自动漏洞扫描

可以用三种不同的观点评估问题:

  • 安全问题
  • 修复任务
  • 应用数据

请注意,可以按严重性(升序或降序)排列建议,并且存在一个仪表板,用于基于图表的漏洞表示。

  1. 单击AppScan桌面上的“ 报告”按钮以生成综合报告。 探索AppScan应用程序中提供的各种报告模板。

下列类别中提供了多个可自定义的报告模板:

  • 安全报告提供了发现的问题列表
  • 行业标准报告提供有关您的应用程序合规性或不合规性的信息
  • 法规合规报告涉及对法律标准的合规(请参阅注释)
  • 增量分析报告包含在不同的单独扫描之间更改的信息。 此报告对于回归扫描很有用,以便发现已修复的漏洞,尚未修复的漏洞以及在新扫描中首次发现的漏洞。
  • 基于模板的报告,您可以在其中使用模板来定义Microsoft Word .doc样式的数据和文档格式。

注意:
法规合规性。 它随附40多种左右的合规性报告,包括PCI数据安全标准,支付应用程序数据安全性(PA-​​DSS)[新],ISO 27001和ISO 27002 [新],以及巴塞尔协议II。

图6显示了一个示例,该示例创建基于模板(自定义模板)的可定制(报告创建者指定的报告选项)报告。

rational rosa_使用Rational AppScan对Web应用程序进行自动漏洞扫描

重要:
请参阅可下载资源以获取此扫描生成的摘要报告:AppScanPlantsByWebSphere_Scanned_Summary_Security_Report.pdf

Web服务应用程序的自动化安全性和漏洞测试

小费:
这将有助于探索开放Web应用安全项目(OWASP)网站,以了解更多关于网络安全,获得高的漏洞,为补救提示列表,等等(见链接相关主题 )。 OWASP网站上还有一个页面,专门介绍不同类别的漏洞,例如身份验证,加密,日志记录和会话管理。

现在,您可以对HelloWorld Web服务应用程序进行全面的全面扫描。 在设置新的扫描概要文件以发现此Web应用程序的安全漏洞之前,请确保WebSphere Application Server v8.0.0.1正在运行,并且已将HelloWorld Web服务应用程序部署到运行时并成功运行, 如图2所示( HelloWorld_V1EAR企业应用程序状态在“应用程序状态”列中显示一个绿色箭头。

  1. 启动Rational AppScan Standard Edition v8.5。
  2. 选择文件>新建 >预定义模板>全面扫描
rational rosa_使用Rational AppScan对Web应用程序进行自动漏洞扫描
  1. 启动“ 扫描配置 向导”,并指定表3中列出的选项。请参见图7。
表3.扫描配置选项,HelloWorld Web服务应用程序
扫瞄 选项 指定扫描配置选项
1个 预定义模板 全面扫描
2 扫描类型 Web服务扫描
3 WSDL服务的位置 http:// localhost:9085 / HelloWorld_V1 / HelloWorld_V1_HelloWorld_V1HttpService
4 通用服务客户端 仅测试
  1. 指定表2中列出的环境设置定义。
  2. 允许AppScan执行全面的安全漏洞测试扫描。

图8显示了成功完成扫描的结果。 完成扫描并确定问题后,AppScan会按照高,中,低或信息级别的严重性对问题进行分类,并在4个选项卡中显示扫描结果。 这些选项卡按“问题信息”,“咨询”,“修复建议”和“请求/响应”进行组织。 这些选项卡包含有关已确定问题的详细信息,导致已确定问题的URL,已确定问题所构成的风险,解决该问题或漏洞所构成的风险的建议以及原始的请求/响应交换信息。

rational rosa_使用Rational AppScan对Web应用程序进行自动漏洞扫描

扫描运行时,进度面板会实时显示扫描的当前阶段,以及URL和已完成的百分比。 可以启用多阶段扫描以扫描主URL中包含的URL。 在这种情况下,状态栏提供访问的URL数量的状态,已完成扫描的URL数量等。 可以将这些扫描设置为自动运行一次或定期运行。

接下来,您将使用一个定制报告模板来生成一个定制报告,该模板具有如图5所示的所选选项。

请检查可下载资源以生成摘要报告:AppScanHelloWorldWebService_Scanned_Summary_Security_Report.pdf

建议的扫描方法

您可以自定义以下AppScan应用程序配置参数,以避免由于AppScan使用过多的内存而导致的问题,这有可能导致丢失所有数据:

  • PerformanceMonitor.RestartOnOutOfMemory
  • PerformanceMonitor \ minScanTimeDurationForRestart
  1. 单击工具>选项>高级选项卡
  2. 将“首选项名称”列中列出的这两个参数更改为以下值:
    1. PerformanceMonitor.RestartOnOutOfMemory = True
    2. PerformanceMonitor \ minScanTimeDurationForRestart = 30 (分钟)

当内存使用率过高或由于虚拟内存不足而导致扫描结束时,这些自定义参数将导致AppScan自动重新启动。 有关详细信息,请参阅“ 相关主题”部分中的链接。

有关详细信息,请参见图 9。

rational rosa_使用Rational AppScan对Web应用程序进行自动漏洞扫描

摘要

您已成功配置Rational AppScan Standard Edition v8.5以执行PlantsByWebSphere Web和HelloWorld Web服务应用程序的自动化安全漏洞测试。 此外,您已经使用预配置或自定义的报告模板成功生成了详细的漏洞和修复报告。 见链接相关主题有关的WebSphere Application Server运行时环境的安全性强化的更多信息。

“可下载资源”部分包含安装日记指南,生成的报告,扫描导出文档,TechNote和本文中使用的示例应用程序。

作者非常感谢IBM Rational软件应用程序安全和合规性市场部经理Karl Snider的帮助。 Karl对本文进行了认真的技术审查,并提供了建设性和有见地的评论,这些评论帮助作者提高了本文的质量和通俗性。

致谢

作者非常感谢IBM Rational软件应用程序安全和合规性市场部经理Karl Snider的帮助。 Karl对本文进行了认真的技术审查,并提供了建设性和有见地的评论,这些评论帮助作者提高了本文的质量和通俗性。


翻译自: https://www.ibm.com/developerworks/rational/library/automated-vulnerability-scanning-web-applications/index.html