制定一个面向 SaaS 的 Web 应用程序漏洞缓解策略

组织依赖基于 Web 的软件来运行业务流程,进行交易,并为客户提供服务;当最后期限迫在眉睫时,企业可能会变得紧张并牺牲安全特性,以便更迅速地将应用程序迁移到生产中。这种反应往往造成不合格的应用程序。更具前瞻性的解决方案是建立一个面向软件即服务 (SaaS) 的 Web 应用程序漏洞缓解策略(利用一个基于 SaaS 的应用程序漏洞扫描器完成),从而预测应用程序故障点,并包含若干个修复它们的预配置解决方案。作者对这种策略提供了一个路线图,并说明如何使用 IBM® Rational® AppScan 中的扫描器工具。

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

Judith M. Myerson 是一名系统工程师兼架构师。她感兴趣的领域包括企业级系统、中间件技术、数据库技术、云计算、阈值策略、服务级别协议、行业、网络管理、安全性、 RFID 技术、演示管理和项目管理。她是首批编写和运行资源安全程序并且通过编程实现 COBOL 与 Fortran 和其他语言的交互的 COBOL 程序员。



2012 年 8 月 13 日

云服务度量策略可供云服务供应商在极端的动态和规模下使用其来跟踪虚拟化资源和物理基础架构的状态。云服务用户与供应商就用于服务水平协议的度量策略进行协商的程度,取决于用户拥有的控制程度:用户对云服务的控制越多,制定策略时可用的变量越多。

本文从理论上介绍了 SaaS 模型视图;实际上,您会看到如何制定一个面向 SaaS 的 Web 应用程序漏洞缓解策略。

SLA:虚拟资源

云服务类型决定用于服务水平协议 (SLA) 的要跟踪或度量的虚拟化资源的可用性,即要求保证 99% 的服务可用性。在制定云服务度量策略时,云服务类型和虚拟化资源的可用性都会影响应包括的变量。

基于 SaaS 的虚拟资源

SaaS 用户大致分为三组:

  • 非技术用户
  • 应用程序开发人员
  • 网站维护人员

每一组对 SaaS 模型都有不同需求:

  • SaaS 用户:最终用户拥有的惟一控制是从笔记本电脑、网络或移动设备访问供应商的应用程序。用户没有度量工具的访问权限。
  • SaaS 供应商:供应商最起码可以控制虚拟化资源,包括操作系统、硬件、网络基础架构、应用程序的升级和补丁。供应商控制度量工具。

基于 PaaS 的虚拟资源

基于平台即服务 (PaaS) 的虚拟资源的可用性反映在 PaaS 订户与供应商协商的 SLA 中。除了管理应用程序的访问之外,SLA 的重点是由虚拟资源提供的用于保护数据的服务的可用性。

Rational AppScan OnDemand Production Site Monitoring

网站维护者使用 SaaS 模型跨多个应用程序和域不断地识别在动态 Web 内容中固有的安全风险,并设置其优先级别,从而防止漏洞。Rational AppScan OnDemand Production Site Monitoring (AppScan Monitoring) 提供基于角色的报告访问和扫描权限,并利用非侵入性的 AppScan 测试策略子集,无需登录就可确保生产站点的安全扫描。

若与另一个 Rational AppScan 解决方案相结合,并执行代码测试或预生产的 Web 应用程序扫描,AppScan Monitoring 会在整个应用程序生命周期中完成一个安全性测试策略。


现实中的 SaaS 模型视图

若业务需求发生变化,SaaS 模型的用户和阈值需求也随之变化。无论您正在使用 Windows® Internet Explorer 还是 Mozilla Firefox 浏览器访问 SaaS 模型,两者都各有自己的缺陷。

更改用户需求

SaaS 用户拥有的惟一控制是访问 SaaS 应用程序;可以同时访问应用程序的非技术用户数量受限于用户许可证。SaaS 订户可以与供应商协商,通过在新许可证中提高并发用户的最大限制,从而更改用户要求。不允许非技术用户更改要接受漏洞测试的应用程序。

由于应用程序开发人员可以控制应用程序开发的业务生命周期,他们可以在一个应用程序或网站中更改或添加 SaaS 用户所希望的任务。对于应用程序或网站行为中的每一个变化,开发人员都应执行按需漏洞检测、扫描和修复。

网站维护人员可以控制网站。在开发人员发布新的或升级的应用程序后,网站维护人员应该响应非技术用户和应用程序开发人员的用户需求变更。维护人员应该更改站点配置,以便扩展可以动态缩放的资源。不允许非技术性用户和应用程序开发人员更改网站配置。

更改阈值需求

SaaS 订户应该可以控制用户阈值需求,根据来自供应商的用户许可证中所规定的限制,将访问应用程序的并发用户数量设置为不高于阈值水平。他们应该与供应商协商,提高用户许可证中的用户限制。

供应商可以控制资源阈值策略,确保资源消耗对于接受漏洞测试的应用程序是动态平衡的。SaaS 订户应与供应商就每个用户(非技术用户、应用程序开发人员、网站维护人员)的角色分配给每个用户的动态资源量进行协商。

供应商可以控制数据请求阈值,确保对应用程序的数据请求在不高于阈值水平的情况下可以被立即处理。SaaS 订户应与供应商协商更改数据请求的最大数量。可以根据每个用户的角色和对 SaaS 用户的资源分配来增加最大数量。

避免 IE 和 Firefox 的缺陷

Internet Explorer 和 Firefox 是用于访问 Rational AppScan OnDemand 和 AppScan Monitoring 的两款最流行的浏览器(在发布时的统计,我不能确定 Google Chrome 的使用统计,虽然可能在不断上升)。浏览器的选择是一个用户首选项。

虽然 Firefox 在启动时加载页面比 Internet Explorer 快,但其缺陷是它可能会导致高内存消耗。Firefox 比 Internet Explorer 更快地增加内存使用。当 Firefox 闲置时,它也不会停止增加内存的消耗。

Firefox 可以消耗的内存量会受到以下变量的影响:

  • 在 Firefox 中所包括的插件和扩展。
  • 使用 Rational AppScan 测试 Web 应用程序和监控网站安全漏洞的时间。
  • 当不使用 Firefox 时的闲置时间。
  • 在台式机或笔记本上正在使用的其他应用程序。
  • CPU 的数量,以及每个 CPU 消耗的最大内存量。
  • SaaS 用户使用 Rational AppScan 测试应用程序漏洞的总时间。

当内存接近 CPU 的最高限制时,浏览器开始减慢。

为了避免 Firefox 的内存使用消耗过高,请遵循以下七个建议步骤:

  1. 完成漏洞测试后,立即从 Rational AppScan OnDemand 和 AppScan 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 用户的面向 SaaS 的 Web 应用程序漏洞缓解策略。

在制定策略的这个简化场景中,以下是应包括在策略中的每个检查表项的一些提示:

  • 目的:关于什么?
  • 范围:画出策略的边界。
  • 背景:想了解更多?
  • 行动:卷起袖子开始。
  • 约束条件:处理它们。

目的:关于什么?

要达到实现安全策略的目标,简述安全策略的目的是做什么。您可以使用类似这样的模板,了解如何陈述目的:

该策略的目的是帮助实现安全策略,以便最终用户使用面向 SaaS 的 Rational AppScan OnDemand 和 Rational AppScan OnDemand Production Site Monitoring。最终用户指的是非技术用户、应用开发人员和网站维护人员。该策略着重于阈值水平、用户需求并将漏洞识别、监测作为策略的一部分。

范围:画出策略的边界

通过 “画出” 安全策略的边界来定义范围。在其边界内指定策略覆盖哪些最终用户,以及他们是否代表企业或政府机构。指定最大和最佳的用户、数据和资源阈值水平、必须满足的用户需求,以及如何识别和监控漏洞。

供应商需要查明用户在访问 Rational AppScan OnDemand 和 AppScan 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 天,供应商必须按照 SLA 规定,向 SaaS 用户提供积分、空闲时间和终止服务的权利。

供应商必须通知消费者有关阈值和​​漏洞缓解策略异常约束。

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

  • 用户同时访问应用程序。
  • 被分配给每个用户的资源实例。
  • 在工作负载需求激增时用户可以处理的数据请求。

行动:卷起袖子开始

建议采取以下七个行动,以使消费者满意:

  • 行动 #1. 将面向 SaaS 的 Web 应用程序漏洞缓解策略的副本发送给消费者进行审查,并在消费者签约 Rational AppScan OnDemand 和 AppScan Monitoring 之前将要解决的问题发送给消费者。
  • 行动 #2. 在 SaaS 用户许可证中说明并发用户、这些用户的资源实例,以及每个用户可以处理的数据请求的最大限制。
  • 行动 #3. 说明 Rational AppScan OnDemand 和 AppScan Monitoring 可以扫描的漏洞类型。
  • 行动 #4. 在向所有预期云用户授予云的访问权限之前,需要对他们进行背景审查。背景审查的深度取决于接受漏洞测试的应用程序的类型和预期用户所代表的行业类型。
  • 行动 #5. 需要向批准的云用户提供安全意识的培训计划,并需要在完成漏洞测试后标记和处理数据。
  • 行动 #6. 向支持基于 SaaS 模型的硬件、软件和网络基础架构提供计划维护或升级的预先通知。
  • 行动 #7. 在测试软件漏洞时通知使用虚拟或测试数据。禁止使用敏感数据。

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

安全性培训:供应商为批准的 SaaS 用户设置有关漏洞意识和缓解的安全培训的最低要求。

计划维护:供应商设置维护计划,包括升级。

背景检查:供应商为预期云用户设置背景审查需求。

SaaS 用户许可证:供应商设置以下参数的最大限制:

  • 可以同时访问应用程序的用户。
  • 用户可以用于访问和运行应用程序的资源实例。
  • 用户使用可用的资源实例可以同时发送和接收的数据请求。

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

约束条件:处理它们

很有可能存在一些阻碍您的约束条件,如:

  • 根据组织分配给消费者的角色,不同的用户群体具有不同的服务优先级。在访问 SaaS 应用程序时,具有管理权限的最终用户比没有管理权限的最终用户拥有更高的优先级。
  • 更改管治组。为了反映更改,更新安全策略、阈值策略和 SLA。
  • 云服务类型的服务异常。提示:光纤的意外割断不在提供者、定期维护(计划内和计划外)和应用程序的计划前瞻式式行为升级的直接控制范围内。
  • 不遵守安全策略的所有条款和条件的治安处罚。指定违反安全策略和 IT 政策法规的后果。

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

作为用户许可证管理员的 SaaS 最终用户,在访问许可的应用程序时,比其他最终用户具有更高的优先级。

由于最近的组织变更,策略治理小组从 Department FGH 转移到 Department RST。这需要更新面向 SaaS 的 Web 应用程序漏洞缓解策略。

服务异常目前包括:

  • 计划的前瞻式式应用程序行为变更或升级。
  • 对供应商主机的僵尸网络攻击。
  • 供应商的计划维护。
  • 供应商从 7AM 到 6PM 的正常服务可用性,以及从 8PM 到 11PM 的受限服务可用性。

结束语

制定任何安全策略都需要提前规划,解决应当如何说明策略的目的、范围和背景的问题:由于数据明显代表着有更大机会会出现在云计算产业中,所以必须构建一个有说服力的 Web 应用程序安全策略。

开发人员应与云服务消费者和供应商进行沟通,沟通内容包括消费者应该拥有多大控制权、供应商应采取什么行动,以及策略的约束条件等问题。最重要的是,消费者应该从供应商获得安全策略的副本(以及阈值策略的副本)进行审查,并获得在与供应商进行协商之前要解决的问题。

参考资料

学习

获得产品和技术

讨论

条评论

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=830167
ArticleTitle=制定一个面向 SaaS 的 Web 应用程序漏洞缓解策略
publish-date=08132012