01 云安全与原理

云安全原理

1 云计算基本概念

2014年,发布国家标准GB/T 31167-2014《信息安全技术 云计算服务安全指南》,对云计算做了如下定义:

“以按需自助获取、管理资源的方式,通过网络访问可扩展的、灵活的物理或虚拟共享资源池的模式”

  • 云计算服务:使用定义的接口,借助云计算提供一种或多种资源的能力;
  • 云服务商:提供云计算服务的参与方
  • 客户:为使用云计算服务同云服务商建立商业关系的参与方;
  • 第三方评估机构:独立于云计算服务相关方的专业评估机构;
  • 云基础设施:由硬件资源资源抽象控制组件构成的支撑云计算的基础设施;
    • 硬件资源:
      • 服务器
      • 存储组件
      • 网络组件
    • 资源抽象控制组件:对物理计算资源进行软件抽象,云服务商通过这些组件提供和管理对物理计算资源的访问;
  • 云计算平台:云服务商提供的云基础设施及其上的服务软件的集合;
  • 云计算环境:云服务商提供的云计算平台,及客户在云计算平台之上部署的软件及相关组件的集合

1.1 云计算的五大特征

  • 按需自助
  • 泛在接入:通过标准接入机制,随时随地使用服务,增强了服务的可用性;
  • 资源池化
  • 快速伸缩
  • 服务可计量

1.2 云计算服务模式

  • 软件即服务
  • 平台即服务:提供整套设计语言关联的SDK和测试环境,包括:
    • 开发和运行时所需的数据库
    • WEB服务
    • 开发工具
    • 操作系统等资源
  • 基础设施即服务:

1.3 部署模式

私有云:

公有云:

社区云

混合云:

2 云计算面临的安全威胁

CSA(Cloud Security Alliance,云安全联盟)2016年2月发布了《2016年12大顶级云计算安全威胁》

  • 数据泄露
  • 系统漏洞
  • 拒绝服务
  • 共享技术

2.1 云计算面临的技术风险

  • 传统信息技术所面临的安全风险依然威胁着云计算的安全;
  • 云计算所使用的核心技术在带来诸多新特性的同时,也带来了一些新的风险;

2.1.1 物理与环境安全风险

物理与环境安全问题会对信息系统的保密性、完整性、可用性带来严重的安全威胁。

  • 物理安全是保障物理设备安全的第一道防线。
    • 电源故障造成系统引导失败或 数据库信息丢失;
    • 报警系统的设计不足或失灵可能造成一些事故
  • 环境安全是物理安全的基本保障,是整个安全系统不可缺少和忽视的组成部分;主要保障信息网络所处环境安全
    • 对场地、机房的约束
    • 强调对于地震、水灾、火灾等自然灾害的预防措施
    • 场地安全、防火、防水、防静电、防雷击、电磁防护、线路安全;

2.1.2 主机安全风险

云主机面临的安全风险主要包括以下几点:

  • 资源虚拟化共享风险
    • 传统安全策略主要适用于物理设备,如物理主机、网络设备、磁盘阵列
    • 无法管理到每个虚机、虚拟网络,使得传统的基于物理安全边界的防护机制难以有效保护共享虚拟化环境下的用户应用及信息安全;
  • 数据安全风险:数据不可避免迁移到云上,并登录到云上进行数据管理,没有足够的安全措施,将面临数据泄露和被篡改的安全风险;
  • 平台安全防护风险
    • 由于其用户、信息资源的高度集中,更容易成为各类拒绝服务攻击的目标;
    • DDoS攻击带来的后果和破坏性将明显超过传统的企业网应用环境;
    • 云计算的安全防护更为困难;

2.1.3 虚拟化安全风险

(1) 虚拟化技术自身的安全威胁

  • 利用Hypervisor(虚拟机管理器)存在的漏洞来获取对整个主机的访问,实施虚拟机逃逸,从而可以访问或控制主机上运行的其他虚拟机。

  • 管理程序很少更新,现有漏洞可能会危及真个系统的安全性。如果发现一个漏洞,企业应该尽快修复漏洞,以防止潜在的安全事故

(2)资源分配

  • 当不再需要的虚机被删除,释放的资源被分配给其他虚机时,可能发生数据泄露
  • 新虚机获得资源后,可以使用取证调查技术来获取整个物理内存以及数据存储的镜像。
  • 该镜像可以用于分析,并获取前一台虚机遗留下的重要信息;

(3)虚拟机攻击

  • Hacker成功攻击了一台虚机后,在很长一段时间内可以攻击网络上相同主机的其他虚拟机;
  • 内部虚拟机之间的流量无法被传统的IDS/IPS设备和软件检测到,只能通过虚拟机内部部署IDS/IPS软件进行检测;

(4)迁移攻击

  • 虚拟机迁移时会通过网络被发送到另一台虚拟化服务器,并设置一个相同的虚拟机;
  • 虚拟机通过未加密的信道来发送,就有可能被执行中间人攻击的攻击者嗅探;
  • 前提是Hacker必须获得受感染网络上另一台虚拟机的访问权;

2.1.4 网络安全风险

(1) 拒绝服务攻击

  • 原理:Hacker发起成千上万的访问请求到服务器,导致服务器无法正常工作,无法响应客户端的合法访问请求;
  • 防御方式:通过入侵检测、流量过滤和多重验证,将堵塞网络带宽的流量过滤,放行正常流量;

(2)中间人攻击

  • 原理:Hacker拦截正常的网络通信数,进行数据篡改和嗅探,通信双方却毫不知情;
  • 防御方式:正确的安装配置SSL,并且通信前应由第三方权威机构对SSL的安装配置进行检查确认;

(3)网络嗅探

  • 原理:Hacker用原本用来做查找网络漏洞和检测网络性能的工具,对密码设置过于简单或未设置的数据进行破解,从而窃取到数据信息;
  • 防御方式:通信各方使用加密技术及方法,确保数据在传输过程中安全;

(4)端口扫描

  • 原理:通过向目标服务器发送一组端口扫描信息,并从返回的消息结果中探寻攻击的弱点;
  • 防御方式:启用防火墙来保护数据信息免遭端口攻击;

(5)SQL注入

  • 原理:Hacker可以向网络表格输入框中添加SQL代码以获得访问权;迫使数据库执行不良SQL代码,获取用户数据信息;

  • 防御方式:定期使用安全扫描工具对服务器的Web应用进行渗透扫描,提前发现服务器上的SQL注入漏洞,并进行加固处理;

(6)跨站脚本(Cross-site Scripting,XSS)

  • 原理:输入代码注入的一种,将恶意代码注入到网页上,其他用户在浏览网页时就会收到影响。Hacker攻击成功后可能得到更高的权限、窃取私密网页内容、会话和cookie等信息;
  • 防御方式:将用户所提供的内容进行过滤,避免恶意数据被浏览器解析;可以在客户端进行防御,如把安全级别设高,只允许信任的站点运行脚本、Java、Flash等小程序;

2.1.5 安全漏洞

安全漏洞定义:

  • 可被一个或多个威胁利用的资产或资产组的弱点;参考:ISO/IEC 27005风险管理标准
  • 威胁能力超过抵御威胁能力的几率;参考:Open Group 风险分类法

云计算所面临的安全漏洞:

1)核心技术漏洞

  • 云计算所依赖的某些现有核心技术都存在着一些漏洞:
    • 有些技术本身固有的;
    • 有一些则是普遍存在于该技术流行实现方式

(1)虚拟机逃逸:虚拟化的本质就决定了存在攻击者从一个虚拟环境中成功逃脱的可能性,应归于虚拟化固有的、与云计算高度相关;

(2)Web应用技术:从设计初衷来说,HTTP协议是无状态协议,而Web应用程序则需要一些会话状态,许多技术能实现会话处理,而许多会话处理的实现都容易遭受会话控制和劫持;

(3)加密技术:密码分析学的进步可以使任何加密机制或算法变得不再安全,总能找到新奇的破解方法。更为普遍的情况是,加密算法的实现被发现具有关键的缺陷,可以让原本强加密退化成弱加密或者相当于不加密。加密技术保护着云上数据的保密性和完整性,不安全或过时的加密漏洞与云计算有着非常密切的关系;

2)云计算特性所带来的漏洞:

(1) 未经授权的管理页面访问(按需自助):算是一个特别相关性的漏洞,可能发生未经授权的访问的概率远远高于传统的系统,在那些系统中只有少数管理员能够访问管理功能;

(2)互联网协议漏洞(泛在接入):通过标准协议的网络来访问,互联网协议漏洞也就和云计算产生了联系,可能导致中间人攻击;

(3)数据恢复漏洞(资源池化):意味着分配一个用户的资源将有可能在稍后被重新分配到不同的用户。对于内存或存储资源来说,就有可能从中恢复出前面用户写入的数据;

(4)逃避计量和计费:服务可计量的云特性表示在某一个适合服务器类型的抽象层次上具备计量能力。计量数据被用来优化服务交付以及计费,这就有可能操纵计量或计费数据,以及逃避计费的漏洞;

3)总结

云安全问题主要会集中在虚拟机漏洞、Web漏洞、数据安全等方向上,原因如下:

  • 一个或多个用户共用一台服务器,利用虚拟机漏洞逃逸出去,进而控制主系统,Hacker就可能窃取他人的数据并执行其他恶意的越权操作;
  • Web漏洞相对其他类型的漏洞门槛会低一些,也是外部最容易接触到的层面,此处若发生安全问题可能直接导致服务器被入侵,危害严重;
  • 数据加密往往是最后一道防线,即时服务器被入侵,若采用较为坚固的数据加密方案,可以大大提高免受破解的能力,而若对敏感数据未做加密或采用不安全的加密方式,则破解数据只是时间问题;

针对上述安全问题,云计算不断壮大的同时,如下安全产品得到广泛的应用:

  • WAF
  • 云漏洞扫描器
  • 主机入侵防御系统
  • 数据加密系统
  • DDoS防御系统

2.1.6 数据安全风险

云计算意味着:

  • 更加开放的信息访问
  • 更容易的改进数据共享

云服务产生的数据的生命周期可分为六个阶段,每个阶段面临着不同方面、不同程度的安全威胁:

1)数据生成

  • 数据安全级别划分:
    • 不同用户类别,划分策略可能不同
    • 同一用户类别不同用户对用户数据的敏感分类也可能不同
    • 如果数据的安全级别划分策略混乱,就无法针对海量数据制定出切实有效的保护方案;
  • 数据的预处理
    • 用户存储在云端的数据可能是海量的
    • 预处理前,必须考虑预处理的计算、时间和存储开销
    • 避免过度追求安全性而失去云计算带来的便捷性
  • 审计策略的制定
    • 传统IT架构,审计人员制定有效的数据审计策略也很困难
    • 多用户共享存储、计算和网络等资源的云计算环境下,用户对自己的数据跟踪审计难上加难

2)数据存储

  • 数据存放位置不确定:用户无法确定自己的数据存储在哪些节点;
  • 数据混合存储:不同用户各类数据存储在云上,没有有效的隔离策略,可能造成用户的敏感数据被其他用户或者不法分子获取;
  • 数据丢失或被篡改:
    • 云服务器被病毒破坏、或遭受木马入侵;
    • 云平台运维方管理不当,误操作;
    • 自然灾害等不可抗力破坏

3)数据使用

  • 访问控制:云平台访问控制策略不合理、不全面,造成合法用户无法正常访问自己的数据或对自己的数据进行合规的操作,而未授权用户却能非法访问甚至窃取、修改其他用户的数据;
  • 数据传输风险:用户通过网络来使用云端数据,传输信道不安全,数据可能会被非法拦截;网络可能遭受攻击而发生故障,造成云服务不可用;传输时的安全操作不当可能导致数据在传输时丧失完整性和可用性;
  • 云服务的性能:用户使用数据时,会对数据的传输速度,数据处理请求的响应时间 有要求和期望,云服务的性能受用户所使用的硬件等多因素影响;

4)数据共享

  • 信息丢失:不同的数据内容、数据格式和数据质量千差万别,可能在共享前要进行格式转换,转换的过程中可能面临数据丢失的风险;
  • 应用安全:共享可能通过特定的应用实现,如果应用本身有安全漏洞,则基于该应用实现的数据共享就可能数据泄露、丢失、被篡改的风险;

5)数据归档

  • 数据归档是将不经常使用的数据转移到单独的存储设备进行长期保存
  • 本阶段会面临法律和合规性问题,某些特殊数据对归档所有的介质和归档的时间期限会有专门规定;

6)数据销毁

  • 数据删除后可被重新恢复:
    • 可以采用技术手段直接访问这些已删除数据的残留数据
    • 通过对介质进行物理访问,确定介质上的电磁参与所代表的数据;
    • 不法分子获得这些数据,可能对用户带来极大隐患;
  • 云服务商不可信:
    • 用户无法确认云服务商是否真的删除了数据;
    • 可能留有被删除数据的多个备份
    • 没有彻底删除备份数据

2.1.7 加密与密钥风险

CSA云安全联盟的云安全威胁排名中,“弱身份、凭证和访问管理”威胁位居第二位;

  • T1:数据泄露
  • T2:弱身份、凭证和访问管理
  • T3:不安全的接口和API
  • T4:系统、应用漏洞
  • T5:账号劫持
  • T6:恶意内部员工
  • T7:APT攻击
  • T8:数据丢失
  • T9:没有足够的尽职调查
  • T10:滥用云服务
  • T11:拒绝服务(DDoS)
  • T12:共享技术问题

传统的数据安全强调:

  • 数据的完整性
  • 数据的机密性
  • 数据的可用性

传统的额加密和密钥的方案向云计算环境的迁移受到了云计算环境的各种挑战,大体可分为加密方案和密钥管理两方面:

  • 对于加密防范的挑战:
    • 虚拟化技术使得单个物理主机可以承受多个不同的操作系统,导致传统的加密方案的部署环境逐步向虚拟机、虚拟网络演变
    • 云平台及其存储数据在地域上的不确定性
    • 访问控制与认证机制的有效性与可靠性
    • 单一物理主机上的多个客户操作系统之间的信息泄露
    • 海量敏感数据的存储位置、关键程度、当前状态(静止或传送中)决定加密等级
  • 对于密钥管理的挑战:
    • 本地密钥管理:主要针对在云基础设施外部的用户端的密钥管理,与传统的密钥管理风险相似;
    • 云端密钥管理:云服务商必须保证密钥信息在传输与存储过程中的安全防护,由于云的多租户特性,存在着密钥信息泄露的风险;

2.1.8 API安全风险

API的运用无疑增加了云平台的攻击面,攻击者可能会滥用或寻找流行API代码中的漏洞,实现对云用户和云服务的攻击

  • API签名安全:主要用于解决任意调用带来的风险,主要考虑如下方面
    • 请求参数是否被篡改
    • 请求来源是否合法
    • 请求是否具有唯一性
  • API防重放攻击
    • 请求唯一标识:15分钟内Appkey+API+Nonce不能重复
    • 与时间戳结合使用,时间戳的值为当前时间的毫秒数;
    • AppKey在API网关控制台生成,获得API授权才可以调用;
    • 所有云产品公用一套AppKey体系,删除Appkey时应谨慎
  • API流量控制
    • 流量控制策略和API是各自独立管理
    • 流量策略的配置对象:API、用户和APP
    • 流控单位可以是分钟、小时、天
  • API授权管理:当API发布到线上环境,需要给客户的APP授权,客户采用该APP进行调用,建立或者解除某个API与某个APP的授权关系,API网关会对权限关系进行验证;

2.2 云计算面临的管理风险

数据的所有权和管理权分离是云服务模式的重要特点

云服务商的管理规范程度、双方安全边界划分是否清晰等,将直接影响用户应用和数据的安全

2.2.1 组织与策略风险

  • 服务中断风险,可能原因如下:
    • 技术故障
    • 环境风险
    • 操作失误
    • 恶意攻击
  • 供应链风险,分类如下:
    • 第三方产品风险:云平台需采购大量服务器和网络设备,可能会存在不符合国内法律政策的标准或云服务商安全需求;
    • 第三方服务风险:云瓶体需要第三方服务主要包括基础设施服务(水电网)和外包服务
    • 内部人员风险:云开发人员和云运维人员;开发主要是开发的信息系统是否安全,设计是否遵循了安全的设计规范,最终的代码中是否存在相关漏洞,人员是否存在泄密的风险;运维方面主要包括运维方式是否科学合理、运维目的是否规范、盗窃运维数据等;

防御措施可以包括;

  • 相关人员的背景审查;
  • 专业的安全培训
  • 定期对内部人员进行权限审批
  • 操作行为审查及审计
  • 入侵识别评估和安全风险关联分析,将内部人员风险降到最低;

2.2.2 数据归属不清楚

​ 大数据时代,数据将成为最有价值的资产。云环境下,当用户的数据存储于数据维护工作都是由云服务商来完成时,很暗分清到底是谁拥有使用这些数据的权利,并对这些数据负责。一般云服务商采用如下方式限制内部人员接触数据并尽可能与用户达成一致:

  • 职责划分
  • 用户协议
  • 访问控制

2.2.3 安全边界不清楚

  • 传统网络,通过物理上或逻辑上的安全域定义将资源区域进行划分,并在不同区域边界引入边界防护设备(防火墙 IPS)进行边界防护
  • 云计算环境,服务器、存储、网络设备都高度整合,租户的资源可能跨主机甚至跨数据中心的部署
  • 传统物理防御边界被打破,租户的安全边界模糊;
  • 需要进一步发展传统意义上的边界防御手段来适应云计算的新特性;

2.2.4 内部窃密

内部泄密的情况可以分为:

  • 云服务商内部人员无意泄露内部特权信息;
  • 和外部敌手勾结窃取内部敏感信息;

云计算环境下,内部人员不仅是云服务的开发人员和运维人员,也包括为云服务商提供第三方服务的厂商内部人员。

2.2.5 权限管理混乱

云环境中权限管理还没有成熟的解决方案,各大厂商采用的方案都还存在一定缺陷,云中权限管理混乱,原因如下:

  • 云自身具有易扩展、多租户、弹性化等诸多有别于传统模型的特征
  • 传统模型下的权限模型(DAC、MAC、RBAC)并不完全适用于目前的云平台组织架构复杂权限变更频繁的场景

2.3 云计算面临的法律法规风险

2.3.1 数据跨境流动

数据跨境流动有两层含义:

  • 一方面:对数据跨越国界的存储、传输和处理;
  • 另一方面:数据并没有跨越国界,但是能够被第三方国家的主体访问;

从国外针对不同类型数据的管理模式来看,主要分为三个级别:

  • 禁止重要的数据跨境流动:威胁到国家安全的数据信息,禁止其跨境的流动
  • 有条件的限制数据跨境流动:对于政府部门和公共部门的一般数据、行业相关的技术数据,部分国家实施了有条件限制的管理模式来控制器跨境流动,例如通过安全风险评估;
  • 允许普通个人数据的跨境流动:国际通用观点是允许其自由跨境流动,但是必须满足安全的管理要求;出于个人数据安全考虑,采用问责制、合同干预来进行管理
    • 问责制:要求采集和处理数据的实体对数据进行安全管理,并要求其承担数据在跨境的整个过程中的审查和监督;
    • 合同干预:由政府来规定跨境数据的安全管理内容,制定相关的合同条款,指明数据保护的要求;

2.3.2 集体诉讼

个人或部分成员为了全体成员的共同利益,代表整个团体提出诉讼。

2.3.3 个人隐私保护不当

个人隐私问题日趋严重,云环境下的个人隐私保护制度刻不容缓,在云计算和大数据环境下,个人隐私的安全风险表现在以下几个方面:

1) 数据存储过程中对个人隐私造成侵犯:存储位置不确定,云平台用户无法对个人数据的采集、存储、使用的过程进行有效控制;

2)数据传输过程中对个人隐私造成侵犯:云环境下数据传输具有开放性和多元化的特征,传统的物理区域的隔离方法无法适应云环境下数据的远距离传输,更加无法保证数据传输过程的安全性;

3)数据处理过程中对个人隐私造成侵犯:云计算的资源动态性增加了管理的难度,账户劫持、攻击、认证失效等都将成为数据处理过程中的安全威胁;

4)数据销毁过程中对个人隐私造成侵犯:单纯对数据的删除并不能彻底的销毁数据,云计算增加了数据销毁不彻底的可能性;

2.4 云计算安全设计原则

2.4.1 最小特权

定义:在完成某种操作的过程中,赋予网络中每个参与的主题必不可少的特权。

  • 一方面保证主题能在被赋予的特权中完成需要完成的所有操作
  • 另一方面保证了主题无权执行不应由它执行的操作,即限制了每个主题可以进行的操作;

最小特权的作用:

  • 减少了程序之间潜在的相互影响
  • 减少、消除对特权无意的、不必要的或者不适当的使用

最要特权需要注意的事项:

  • 对特权的分配、管理工作十分重要;
  • 需要定期对每个主题的权限进行审计;
    • 检查权限分配是否正确
    • 不在使用的账户是否已经被禁用或删除

2.4.2 职责分离

定义:在多人之间划分任务和特定安全程序所需权限的概念;

  • 消除高风险组合限制人员对关键系统的权利与影响;
  • 降低个人因意外或恶意而造成的潜在破坏;
  • 确保开发方面最终交付物内不含有未授权的后门;
  • 确保运维方面不同人员管理不同的关键基础设施组件;
  • 安排重要岗位人员强制休假,岗位轮换,安排备份人员负责一段时间他的工作;
    • 防止重要岗位的欺诈
    • 让人员熟悉本来不属于他负责的其他工作,为业务流程的岗位安排带来人员备份和协调工作能力提升的好处

2.4.3 纵深防御

0001.png
  • 纵深防御是经典信息安全防御体系在云计算环境中的必然发展趋势;
  • 云计算环境由其结构的特殊性,攻击平面较多
    • 物理设施安全
    • 网络安全
    • 云平台安全
    • 主机安全
    • 应用安全
    • 数据安全
  • 纵深防御的特点:
    • 多点联动防御:多个安全节点协同防御、互补不足,将带来更好的防御效果;
    • 入侵容忍:当某一攻击面遭遇攻击时,可以通过安全设计手段将攻击限制在这一层面,使攻击不能持续渗透下去;

总结:

​ 针对某一方面、采取某种单一手段增强系统的安全性,无法真正解决云计算环境下的安全问题,也无法真正提高云计算环境的安全性。需要从整个系统的安全角度出发进行考虑。

2.4.4 防御单元解耦

  • 防御模块和服务模块在运行过程中不会相互影响,各自独立工作;
  • 网络模块划分:云计算环境将网络划分成VPC(Virtual Private Cloud)模式,保证各模块的网络之间进行有效的隔离;
  • 应用模块划分:将云服务商的应用和系统划分为最小的模块,这些模块之间保持独立的防御策略;
  • 多层沙箱防御策略:对某些特殊场景的应用可以配置多层沙箱防御策略;

2.4.5 面向失效的安全设计

定义:在云计算环境下的安全设计中,当某种手段失效后,还能通过补救手段进行有效防御;

  • 一种补救手段失效,还有后续补救手段;
  • 多个或多层次的防御手段可能表现在时间或空间方面,也可能表现在多样性方面;

2.4.6 回溯和审计

云计算环境特点:

  • 面临的安全威胁更多
  • 发生安全事故的可能性更大
  • 对安全事故的预警、处理、响应和恢复的效率要求也更高;

为此,云计算环境需要做的工作:

  • 建立完善的日志系统和审计系统
  • 对资源分配的审计
  • 对各角色授权的审计
  • 对各角色登录后的操作行为的审计
  • 提供系统对安全事故的审查和恢复能力

2.4.7 安全数据标准化

  • 云安全联盟CSA提出的CTP(云可信协议)协议;
  • 动态管理工作组DMTF提出的CADF(云审计数据互联)模型;

以上协议和模型还需要细化学习和研究

你可能感兴趣的:(01 云安全与原理)