由于PaaS是一 种基于平台的模型,而不是基于基础架构的模型,因此,与IaaS 相比存在着略微不同的安全问题。 系统隔离(System Isolation) 在一 个典型的PaaS 环境中,如果云客户有任何访问权限,那么云客户的系统级访问权限将非常少且受到高度限制。通常是在虚拟机上没有管理权限的情况下,授予系统级或shell访问权限,以防止云客户执行任何平台或基础架构级别的变更。这使得云提供商能在其平台内保持PaaS实现所需的一 致性级别,并严格控制环境的安全性。如果云客户能更改平台的底层配置,那么云提供商就很难执行正确的修补和安全控制措施。允许云客户更改配置会增加支持成本,来自一 个云客户的安全事件也可能会蔓延并影响云环境中的其他云客户。 用户权限(User Permission) 任何应用程序和系统,无论采用哪种部署模型,都需要特别注意用户访问权限以及角色和组的正确建立。云环境与传统数据中心模型没有什么不同,但是用户权限也在PaaS实现中额外增加了一 些复杂性。对于云安全专家而言,随着系统的调配和扩展,确保角色和访问同时得到正确配置至关重要。不仅要确保软件研发人员和用户拥有正确的权限,还要确保权限不会随着时间的推移而扩展,或者因继承关系而变得混乱。当然,如果配置和持续监测机制得当,则自动伸缩特性更可能顺利运转,可高效地实现PaaS的全部收益。 用户访问 在任何应用程序中,用户访问对于业务运营和安全都至关重要。用户需要能够正确、快速地访问其工作、生产和研发所需的系统必须有一 个在非常流畅的云环境中快速正确地提供这种访问的模型。作为第一 步,云安全专家需要分析用户访问的合理业务需求,设计一 套适用于云环境工作的模型。这种情况下,用户访问与传统数据中心模型没有太大差异,仅增加了快速创建、禁用或丢弃系统的复杂性。 一 旦完全满足业务需求,重点就转移到正确地实现身份验证和授权机制上。由于云环境的弹性和自动伸缩特性,用户访问管理调配的适当自动化变得至关重要。但是,如果用户访问模型在云环境中设计和实现得当,将允许组织恰当地利用云环境的所有好处,使用户能在扩展和添加系统时快速获得适当的访问权限。 恶意软件、特洛伊木马、后门和管理难题 除了典型的恶意特洛伊木马和恶意软件的威胁外,许多软件研发人员常在系统中嵌入后门,以便于管理、在正常访问方法不可用或者出现故障时用作失效保护。在PaaS模型中,这些后门可能带来特殊风险,因为这些后门会使云环境中的所有系统暴露在潜在的攻击之下,还可用来访问虚拟机并将利用其攻击平台的管理程序层。随着系统的扩展和自动伸缩,可以发现和利用的潜在后门数量相应增加。因为自动缩放过程是自动化的,缺少安全专家的主动持续监测,潜在问题会不断蔓延。
SaaS模型的安全问题Saas模型是一 个功能齐全的软件应用平台,SaaS 的大多数安全解决方案和问题都属于云提供商侧,但仍然有很多问题需要云安全专家时刻关注。Web应用稻字安纣生托管在SaaS模型中的应用程序应该具有高可用性,并且 “永远在线保证可用性”。由于 SaaS 应用程序直接暴露在 Internet上,并且预期有大量的访问,这也意味着SaaS应用程序经常受到攻击和潜在的漏洞利用。在高可用性预期下,由于安全漏洞和漏洞利用而造成的任何中断,即使是轻微的中断,都会给依赖SaaS应用程序的云客户和需要满足合同和SLA要求的云提供商带来重大问题。 尽管面向公众和面向Internet的所有应用程序都面临不断的扫描和黑客攻击尝试,但许多SaaS实现都是知名的应用程序,规模庞大、易于发现且占用海量资源,这也使大型SaaS服务商成为有利可图极度诱人的攻击目标更不用说拥有庞大用户群带来的潜在数据暴露。 在SaaS服务商中,云客户依赖云提供商完成执行代码扫描、履行安全流程并维护日常安全活动等安全程序,以实时捕获和阻止攻击。SaaS系统是独一 无二的,一 旦云客户决定使用某系统客户群体就会牢牢锁定在与生产活动相关的系统中,客户群体会逐渐失去相当程度的灵活性,无法像使用IaaS甚至PaaS的云客户那样在出现安全事件或漏洞利用时迁移到不同的云提供商。SaaS在云环境中实现,可能无法实施传统数据中心模型中成熟的监视措施,如部署 IDS/IPS 系统和扫描工具等,因此云安全专家们在云环境中需要格外警觉。 数据策略提供SaaS解决方案的云提供商必须谨慎地平衡数据策略和访问。SaaS的数据策略和访问需要考虑单个云客户的需求,但不能过于苛刻,以至于妨碍云提供商提供可供多个云客户利用的多样化解决方案的能力。云安全专家必须有能力审查现有的数据访问策略,并将其与云提供商提供的可定制化灵活性相结合。某些情况下,云客户策略可能需要在某种程度上裁剪或修订,以适应云提供商提供的灵活性范例。当一 个组织评价SaaS 解决方案时,现有的策略和可能提供的任何灵活性都需要与SaaS提供商所能支持的进行权衡。由于使用SaaS解决方案的是多个云客户甚至是大量云客户,因此可能允许进行某种程度的数据访问自定义,但肯定达不到自行托管其解决方案的组织能完成的程度。不仅要确保云客户数据受到的保护不受同一 SaaS 实现平台中的其他云客户的影响,还要确保单个云客户可在自己的组织内提供访问粒度。这样用户的各个部门或受众(如人力资源部门与软件研发人员;经理与员工)只能看到适合其工作角色和职责的数据。 数据保护和机密性对于同一 SaaS 环境中的多名云客户,做好数据隔离和保护非常重要,正如前面提到的数据策略。由于所有数据都在一 个应用程序和一 个数据存储区中,因此防范SQL注入攻击和跨站脚本攻击(XSS)变得更加紧迫。如果SaaS实现平台中存在这两类漏洞中的任何一 种,那么系统中的每个云客户的数据都可能暴露出来并易受攻击。SaaS 提供商应该以这种方式构建其数据模型,以便尽可能将每个云客户的数据隔离开来,包括为每个云客户使用不同的数据存储,并提供非常严格的访问控制。开展代码扫描和渗透测试活动将变得非常重要,以确保不存在类似XSS和SQL注入的意外暴露和漏洞,以及其他利用代码和暴露漏洞的标准攻击。云安全专家必须深入评价任何SaaS实现平台的安全策略和数据策略,并对应用程序审计和渗透测试有严格的合同要求;云客户要验证是否符合合同要求。无论云提供商是谁,云客户最终者阱各为任何数据泄露或暴露、由此对其声誉造成的负面影响,以及可能的法律后果负有根本责任。
参考文献GB/T 35293-2017 信息技术 云计算 虚拟机管理通用要求 GB/T 36325-2018 信息技术 云计算 云服务级别协议基本要求 GB/T 36326-2018 信息技术 云计算 云服务运营通用要求 GB/T 36327-2018 信息技术 云计算 平台即服务(PaaS)应用程序管理要求 信通院 云计算白皮书