创建面向 SaaS 的漏洞削减策略

采用合适的策略和工具,迅速将安全的应用程序投入生产环境中

许多企业和行业依赖于基于 Web 的软件运行业务流程、执行交易并为客户交付服务。当使用期限逼近时,组织可能会感到惊慌并牺牲安全特性,只想尽快将应用程序投入生产。这是一种快速的(反应性的)解决方案,通常会导致产生有缺陷的应用程序。更好的、积极的解决方案是创建一个面向 SaaS 的 Web 应用程序漏洞削减策略(并采用基于 SaaS 的漏洞扫描器),用该策略预计应用程序的漏洞,并提供几种修复解决方案。作者将提供一个实现这种的策略的路线图,并演示如何在 IBM® Rational® AppScan 产品中使用扫描工具。

Judith M. Myerson, 系统工程师兼架构师

Judith M. Myerson 是一位系统工程师兼架构师。她感兴趣的领域包括中间件技术、企业级系统、数据库技术、应用程序开发、网络管理、安全性、 RFID 及时和项目管理。她是 RFID in the Supply Chain 的作者,也是 Enterprise Systems Integration, Second Edition Handbook 的编辑。



2012 年 2 月 29 日

Web 应用程序漏洞就是 Web 应用程序弱点或设计缺陷,攻击者可以利用这些弱点或缺陷来:

  • 盗取机密的个人或公司信息。
  • 删除大量数据库中的表。
  • 通过网络通信窃取数据。
  • 作为代理服务器,掩盖攻击者的身份。

各个企业和行业都依靠各种流行的漏洞扫描工具(包括免费和商用的)来识别 Web 应用程序漏洞。同一家公司经常会发现在不同客户端工作站上运行的不同扫描工具。

更好的方法是使用面向软件即服务 (SaaS) 的漏洞扫描工具,确保漏洞评估和修复的一致性。

例如 QualysGuard,这是一个按需定制的漏洞管理和策略遵从性解决方案,它是按照 SaaS 模式设计的。它会按照业务风险的优先次序提供网络搜索和映射、资产优先级排序、漏洞评估报告和修复跟踪。Qualys 的缺点是,它只有在含少量或不含 JavaScript 的网站上运行的最好。

相比之下,IBM® Rational® AppScan OnDemand Production Site Monitoring (也使用了 SaaS 模型)也适用于对采用大量 JavaScript 的网站进行漏洞扫描。它是 IBM Rational AppScan OnDemand(用于特定应用程序) 的更高级版本。二者均来自 Rational AppScan 产品线,用来为整个应用程序周期,从需求、设计、编码到生产提供一套完整的应用程序漏洞管理。

由于 SaaS 用户要测试漏洞的应用程序的数目和内容都不一样,因此需要一个面向 SaaS 的 Web 应用程序漏洞削减策略。用户可能想要测试:

  • 已经修补的一个特定应用程序(病人病情进展报告)。
  • 为一个网站(医疗行业)开发的一组应用程序(病人跟踪、医院用品)。
  • 多个网站(医疗、化工、采购)的应用程序进行漏洞扫描。

本文将会从理论和实际操作两方面介绍 SaaS 模型,并演示如何创建一个面向 SaaS 的应用程序漏洞削减策略。

SaaS 模型视图

通过使用 SaaS 模型,SaaS 终端用户仅有的控制就是从台式机或笔记本访问 AppScan OnDemand 或 AppScan OnDemand Production Site Monitoring。这种模型的一个缺点就是不允许终端用户控制应用程序、操作系统、存储和网络。只有作为 SaaS 供应商的 IBM 才能控制它们。

SaaS 用户有哪些?

SaaS 用户大体分为三类:非技术用户、应用程序开发人员和网站维护人员。每一组对 SaaS 模型都有不同的需求:

  • 非技术用户使用 SaaS 模型查看特定的 Web 应用程序。该应用程序可能已经修补或升级。
  • 同一个团队中的应用程序开发人员使用 SaaS 模型检查从开发阶段转到测试阶段的应用程序,即应用到程序生命周期管理中。这些开发人员可能不在同一个地理位置。
  • 网站维护人员使用 SaaS 模型监控跨多个应用程序和域的网站,查找漏洞。他们查找开发人员将应用程序投入生产网站后产生的漏洞。

Rational AppScan OnDemand

非技术用户可以使用 Rational AppScan OnDemand 在识别特定应用程序的漏洞并排序后主动预防漏洞。应用程序开发人员可以在将开发出的应用程序部署到生产网站之前用它检查一套应用程序的漏洞。

Rational AppScan OnDemand Production Site Monitoring

网站维护人员使用 SaaS 模型,通过不断识别并排序跨多个应用程序和域的动态 Web 内容中的安全风险来预防漏洞。Rational AppScan OnDemand Production Site Monitoring 提供了基于角色的报告访问和扫描权限,并使用 AppScan 测试策略的非侵入式子集和无需登录权限来确保对生产网站进行安全扫描。

当与其他的 Rational AppScan 方案结合用于代码测试或预生产 Web 应用程序扫描时,Rational AppScan OnDemand Production Site Monitoring 能实现应用程序整个生命周期的测试安全策略。


实际使用的 SaaS 模型视图

当业务需求发生变化时,SaaS 模型的用户和阈值要求也随之改变。无论是使用 Internet Explorer® 或 Firefox 访问 SaaS 模型,都有着各自的缺陷。

改变用户需求

SaaS 用户仅有的控制就是访问 SaaS 应用程序,并发访问应用程序的非技术用户数量受到用户许可证的限制。SaaS 用户可以和供应商协商,通过在新的许可证中增加并发用户的最大限制数来改变用户需求。非技术用户不可以更改用于测试漏洞的应用程序。

由于应用程序开发人员控制了应用程序开发的整个业务生命周期,因此他们可以修改或增加 SaaS 用户想要在应用程序或网站中具有的任务。对于应用程序或网站上的每一项行为变化,开发人员都应按照要求进行漏洞检测、扫描、修复。

网站维护人员具有对网站的控制。他们应该在开发人员推出新的或升级应用程序后对非技术用户和应用程序开发人员的改变用户需求的行为作出响应。网站维护人员应该更改网站设置,以扩展网站资源,从而可以进行动态调整。非技术用户和应用程序开发人员不允许更改网站配置。

改变阈值需求

SaaS 用户应该能控制阈值需求,将来自供应商的用户许可证中指定限制设置在阈值水平或之下。他们应该与供应商协商提高用户许可证中的用户限制。

供应商可以控制资源阈值策略,从而确保资源消耗能动态平衡,用于测试漏洞的应用程序。SaaS 用户应该与供应商协商根据每个用户角色(非技术用于、应用程序开发人员、网站管理员)分配给每个用户的动态资源。

供应商能够控制数据请求阈值,从而确保在低于或到达阈值水平时能立刻处理应用程序的数据请求。SaaS 用户应该与供应商协商改变数据请求的最大数。可以增加的最大数取决于每个用户的角色和分配给 SaaS 用户的资源。

避免 IE 和 Firefox 的陷阱

Internet Explorer 和 Firefox 是用来访问 Rational AppScan OnDemand 和 Rational AppScan OnDemand Production Site Monitoring 的两个最流行的浏览器。选择哪个浏览器由用户决定。

虽然 Firefox 启动时加载页面比 Internet Explorer 快,但缺点是会大量消耗内存。Firefox 增加内存的使用比 Internet Explorer 要快。当 Firefox 空闲时,它还会继续增加内存的消耗。

以下变量决定了 Firefox 会消耗多少内存:

  • Firefox 中包含了哪些附件和扩展。
  • 使用 Rational AppScan 测试 Web 应用程序和监控 Web 网站查找漏洞有多长时间。
  • 未使用 Firefox 时,空闲了多久。
  • 台式机或笔记本上还使用了其他什么应用程序。
  • 有多少个 CPU,每个的最大内存是多少。
  • SaaS 用户使用 Rational AppScan 测试应用程序漏洞的总时间。

当内存达到 CPU 的最大限制时,浏览器开始变慢。

为了避免 Firefox 大量消耗内存的陷阱,我们建议采取以下七个步骤:

  1. 测试漏洞一结束就立刻登出 Rational AppScan OnDemand 和 Rational AppScan OnDemand Production Site Monitoring。
  2. 打开 Windows Task Manager。
  3. 打开 Processes 选项卡。
  4. 查找 firefox.exe(和 iexplore.exe)镜像(并查看每一个的内存消耗增加了多少)。
  5. 选中 Firefox 进程。
  6. 单击任务管理器底部的 End Process 按钮。
  7. 当出现提示您是否结束进程的时候,再次单击 End Process 按钮。

然后重启浏览器。安装 Firefox 插件/Active X 控件时需要相应的权限。


如何为此创建策略?

由于用来测试漏洞的 Web 应用程序基于用户所属的组(非技术用户、应用开发开发人员和网站维护人员)而不同,因此你需要创建一个面向 SaaS 的 Web 应用程序漏洞削减策略,可应用于所有的 SaaS 用户。

这是一个简化的创建策略的场景,在您的策略中应该包含以下内容:

  • 用途:这是关于什么的?
  • 范围:划定策略的界限。
  • 背景:还需要知道什么?
  • 行动:采取行动。
  • 约束:在这些条件下使用。

要达到实施安全策略的目标,先要简要陈述安全策略是用来做什么的。您可以使用这样的模板,提醒您如何陈述此用途:

用途:这是关于什么的?

策略的目的是为终端用户(包括非技术用户、应用程序开发人员和网站维护人员)使用面向 SaaS 的 Rational AppScan OnDemand 和 Rational AppScan OnDemand Production Site Monitoring 而实现安全策略。该策略重点关注阈值级别、用户需求与漏洞识别,以及监控。

范围:划定策略的界限

通过在安全策略中 “划定” 界限来定义范围。在此界限之内,指定策略包含哪些用户,以及他们是否代表企业和政府机构。指定最大和最佳的用户、数据和资源的阈值级别,哪些用户的要求必须得到满足,以及如何识别和监控漏洞。

供应商还要知道当用户访问 Rational AppScan OnDemand 和 Rational AppScan OnDemand Production Site Monitoring 是否处在范围之内(遵守访问控制方面的安全策略条款)。如果用户同意之后超出了范围,那么移动设备用户就冒着破坏策略的危险。在这种情况下,供应商必须说明违规的后果以确保用户处于范围之内。

以下是说明范围时可使用的模板:

该策略适用于所有使用 Rational AppScan OnDemand 和 Rational AppScan OnDemand Production Site Monitoring 的 SaaS 终端用户。他们必须同意此安全策略的所有规定,并同意遵守所有访问控制的条款和条件。所有的最终用户、开发人员、网站维护人员,如果行为违反了这项策略、IT 策略和法规,则应当受到供应商的服务限制或承担相关损失。

背景:看看策略背后还有什么

用户最想知道的就是供应商处于内部还是外部、供应商与 SaaS 用户之间控制管理的界限是什么(例如,SaaS 的最终用户拥有最低级别的控制)、供应商如何管理访问控制、提供数据保护、管理虚拟机,以及如何对云安全攻击或移动设备事件作出响应。

SaaS 用户想要知道安全策略如何描述将系统(以及用户、数据和阈值等级)恢复到台式机上,以及如何快速获取信用、空闲时间,或终止 SLA 中设置的权利。

SaaS 用户想要知道如何访问 Rational AppScan 产品中可能的漏洞及消除这些漏洞措施的 IBM Security Bulletin。

以下是一个模板,可以让您知道应该包含哪些内容。

Rational AppScan OnDemand 和 Rational AppScan OnDemand Production Site Monitoring 由电信行业成员 IBM 进行外部托管。

如果工作负载需求激增,会导致系统性能从保证的 30 天可用期开始下降,供应商必须提供 SaaS 用户信用、空闲时间,或终止 SLA 中设置的权利。

供应商必须通知用户阈值和​​漏洞削减策略略额例外和限制。

用户许可证包含三种类型的最大限制:

  • 并发访问应用程序的用户数量。
  • 分配给每个用户的资源实例数量。
  • 用户在工作负载要求激增时能处理的数据请求数量。

措施:采取措施

以下的 7 条措施建议可让用户满意:

  • 措施 #1. 在用户注册 Rational AppScan OnDemand 和 Rational AppScan OnDemand Production Site Monitoring 之前,将需要审查面向 SaaS 的 Web 应用程序漏洞削减策略副本和需要解决的问题发送给用户。
  • 措施 #2. 在 SaaS 用户许可中指明并发用户、用户的资源实例以及每个用户可处理数据请求的最大限制。
  • 措施 #3. 指明 Rational AppScan OnDemand 和 Rational AppScan OnDemand Production Site Monitoring 能扫描哪些类型的漏洞。
  • 措施 #4. 在授权用户访问云之前,需要调查这些潜在云用户的背景。要调查的背景深度取决于要测试漏洞的应用程序类型和用户所处的行业类型。
  • 措施 #5. 漏洞测试完成后,要对已批准的云用户进行培训,并让他们知道如何标记、处理数据。
  • 措施 #6. 对基于 SaaS 模型底层的硬件、软件和网络基础架构的定期维护和升级,要提前通知用户。
  • 措施 #7.使用虚拟或测试数据来测试软件漏洞时,要通知用户。禁止使用敏感数据。

以下是您可以使用的模板:

安全培训:供应商设置了让已批准用户了解漏洞和漏洞削减的安全培训的最低要求。

定期维护:供应商设置了包括升级在内的维护日程。

背景调查:供应商设置了对潜在云用户进行背景调查的要求。

SaaS 用户许可:供应商对以下内容设置了最大限制:

  • 并发访问应用程序的用户。
  • 用户能够用来访问和运行应用程序的资源实例。
  • 用户使用资源实例来同时发送和接受的数据请求。

测试数据:供应商设置了使用要测试漏洞的应用程序运行测试数据的最低要求。

约束:在这些条件下使用

您所在的环境可能有某些限制,例如:

  • 不同用户组的服务优先级取决于组织分配给用户的角色。具有管理权限的终端用户在访问 SaaS 应用程序方面比不具有管理员权限的终端用户优先级更高。
  • 改变管理组。要反映变更,需要更新安全策略、阈值策略和 SLA。
  • 云服务类型的服务例外。以下是一个小提示:意外的光纤交割不在供应商直接控制、定期的维护(计划的和未计划的),以及对应用程序的主动更新的范围内。
  • 对不遵守安全策略的任一条款和条件的安全处罚。说明不遵守安全策略和 IT 策略规定产生的后果。

以下是您可以使用的模板。

具有管理员用户许可的 SaaS 终端用户在访问授权应用程序时比其他终端用户拥有更高的优先级。

由于最近组织发生变动,策略管理小组已经从 FGH 部分转移到 RST 部门。这需要对面向 SaaS 的 Web 应用程序漏洞削减策略进行更新。

目前的服务例外包括:

  • 预期的主动应用程序行为变更或升级。
  • 对供应商的主机的僵尸网络攻击。
  • 供应商的定期维护。
  • 供应商从上午 7 点至下午 6 点的正常服务和从晚 8 点到 11 点的限制服务。

结束语

创建任何安全策略都需要提前计划好如何说明策略用途、范围和背景:由于云环境中的数据暴露的机会更多,所以需要考虑构建一个强有力的 Web 应用程序策略。

开发人员应该与云服务用户和供应商进行沟通,讨论用户应有多大的控制权、供应商应该采取什么措施、策略的限制是什么。最重要的是,用户在与供应商协商之前,应该根据从供应商那里获得的安全策略的副本(以及阈值策略的副本)进行评审,还应获得需要解决的问题。

参考资料

学习

获得产品和技术

  • 查看 IBM SmartCloud Enterprise 可用的 产品映像

讨论

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

所有提交的信息确保安全。

选择您的昵称



当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

 


所有提交的信息确保安全。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Cloud computing, Rational
ArticleID=799094
ArticleTitle=创建面向 SaaS 的漏洞削减策略
publish-date=02292012