0
点赞
收藏
分享

微信扫一扫

react17+antd4 动态渲染导航菜单中的icon

目录

一、概述

二、威胁建模分析

2.1 威胁建模的概念

2.2 威胁建模起到的作用

2.3 威胁建模的流程

2.3.1 威胁建模流程图

2.3.2 威胁建模流程内容

2.3.2.1 绘制数据流图

2.3.2.2 威胁识别与分析

2.3.2.2.1 STRIDE威胁分析方法论

2.3.2.3 制定消减措施

2.3.2.3.1 消减措施表

2.3.2.3.2 DREAD 威胁评级模型

2.3.2.4 验证消减措施

三、CSA云安全威胁分析

3.1 概述

3.2 报告内容说明

3.2.1 数据泄露

3.2.2 配置错误和变更控制不足

3.2.3 缺乏云安全架构和策略

3.2.4 身份、凭据、访问和密钥管理的不足

3.2.5 账户劫持

3.2.6 内部威胁

3.2.7 不安全接口和API

3.2.8 控制面薄弱

3.2.9 元结构和应用结构失效

3.2.10 有限的云使用可见性

3.2.11 滥用及违法使用云服务


一、概述

云计算承载了多种不同的应用,汇集了许多用户的信息,甚至包含许多敏感信息,容易成为黑客和不法分子的攻击对象。对云计算面临的威胁进行分析,并采取适当的安全措施来消减威胁,是云安全的核心工作之一。

二、威胁建模分析

2.1 威胁建模的概念

威胁建模(Threat Modeling)是分析应用程序安全性的一种结构化方法,通过识别威胁理解信息系统存在的安全风险,发现系统设计中存在的安全问题,制定风险消减措施,将消减措施落入系统设计中。

2.2 威胁建模起到的作用

威胁建模可以在产品设计阶段、架构评审阶段或者产品运行时开展,强迫我们站在攻击者的角度去评估产品的安全性,分析产品中每个组件是否可能被篡改、仿冒,是否可能会造成信息泄露、拒绝攻击等。

2.3 威胁建模的流程

2.3.1 威胁建模流程图

在微软的软件开发生命周期中,一直将威胁建模当作最核心的一部分,并通过威胁建模消除绝大部分的安全风险。下图展示了微软威胁建模的流程。

从上图图中可以看到,威胁建模包含绘制数据流图、威胁识别与分析、制定消减措施、验证消减措施4个流程。

2.3.2 威胁建模流程内容

2.3.2.1 绘制数据流图

数据流图一般是根据业务的系统上下文、逻辑架构图、网络边界、服务或组件调用关系,由安全人员与业务方一起绘制。绘制数据流图的过程可以帮助安全人员更好地理解业务、确保安全视角没有遗漏。可以使用一些威胁建模工具绘制数据流图,典型的有微软提供的威胁建模工具Microsoft Threat Modeling Tool和OWASP安全组织提供的OWASP Threat Dragon。

微软微软提供的威胁建模工具官网地址:

Microsoft Threat Modeling Tool 概述 - Azure | Microsoft Learn

OWASP Threat Dragon官网地址:

OWASP Threat Dragon | OWASP Foundation

下图为微软威胁建模工具绘制的某业务数据流图。

数据流图主要由外部实体、处理过程、数据存储、数据流及信任边界组成,在上图的数据流图中,矩形表示外部实体,圆形表示处理过程,中间带标签的两条平行线表示数据存储,带箭头的曲线表示数据流,蓝色虚线表示信任边界。

下图详细列举了构成数据流图的5个部分。

2.3.2.2 威胁识别与分析

通过数据流图和信任边界的划分,我们对容易产生威胁的地方也有了一定的理解。要识别威胁,首先需要知道攻击者的目标,明确需要保护的重点资产,如代码、服务器、敏感数据等;其次定义可能的攻击者,如内部员工、竞争对手、外部的攻击团队等,并找出这些潜在的攻击者可能的攻击路径,如利用安全漏洞、弱口令、钓鱼邮件等,可以看到攻击路径的确定会影响到最终的信任边界划分;最后需要对这些识别到的威胁进行分析,剖析可能会出现的具体威胁。

2.3.2.2.1 STRIDE威胁分析方法论

STRIDE方法是微软提供的用于威胁分析的方法论,它从攻击者的角度把威胁划分成六个类别,分别是Spooling(仿冒)、Tampering(篡改)、Repudiation(抵赖)、Information Disclosure(信息泄露)、Dos(拒绝服务)和Elevation of Privilege(权限提升),几乎能够覆盖目前绝大部分安全问题。但随着近年来隐私保护的问题越来越严重,隐私安全也成了业务一个重要威胁,因此STRIDE新增了一项Privacy(隐私),演变成现在的ASTRIDE(Advanced STRIDE)。下图列举了ASTRIDE的7类威胁与信息安全三要素、三属性的对应关系。

接下来可以结合数据流图的基本元素,使用ASTRIDE威胁分析方法来对基本元素进行威胁分析,可以得出下图的对应关系。

上表直观地表现了数据流图基本元素会面临哪些类别的威胁。外部实体可以被伪造,如发起中间人攻击、认证信息伪造等;处理过程会面临上述所有的威胁,如业务系统的Web服务面临爬虫攻击、DDOS攻击等;数据存储往往面临数据被篡改、敏感数据泄露等威胁,如数据库被脱库,敏感数据未加密等。对所有元素进行威胁分析后,就会获得该系统的威胁清单,后面就可以依据威胁清单来制定消减措施。

2.3.2.3 制定消减措施
2.3.2.3.1 消减措施表

可以根据不同的数据流图元素和威胁定义消减措施,当然不同的威胁对应的消减措施一般也不一样。例如,在绘制数据流图小节中的业务数据图中,用户登录Web应用程序这一行为会存在仿冒威胁,消减措施可以是强的身份认证、防止登陆口令暴力破解等,详细方案就是账号、密码、证书认证,增加验证码机制,密码尝试次数限制,账号黑名单机制等。下表列出了ASTRIDE威胁对应的消减措施。

通常在提出消减措施时,要综合考虑业务的实际情况,不能因制定的消减措施导致业务性能、易用性等大打折扣,有时安全和业务之间要做一个平衡,一般有4种应对措施:

  • 缓解。采取一定的措施增加攻击时间和攻击成本。
  • 解决。彻底消除风险,例如,可以是代码和组件方式实现,或安全认证方案等。
  • 转移。将威胁转移至第三方或其他系统,例如,购买第三方安全服务,签订用户协议和免责声明等。
  • 接受。接受风险是基于成本和安全的一个综合考量,例如,有的风险受到战争、自然灾害等不可抗力因素限制,出于成本考虑,选择接受此类风险。

实际上也并不是所有的威胁都必须及时修复,例如,有些威胁可能风险不大,但如果消减措施会导致整个架构调整就可以考虑暂时不修复。

2.3.2.3.2 DREAD 威胁评级模型

因此需要对威胁进行评级,定义严重程度和优先级,可以使用DREAD威胁评级模型。

DREAD威胁评级模型分别对应5个指标:破坏程度(Damage)、可复现性(Reproducibility)、可利用性(Exploitability)、受影响的用户(Affected users)、可发现性(Discoverability),下表详细列出了这5个指标的等级划分。

从表中可以看到,这5个指标中每个指标的评级分为高、中、低三等,最终威胁的危险评级由这5个指标的加权平均算出。

DREAD威胁评级模型官网地址:

owasp.org/www-pdf-archive/AdvancedThreatModeling.pdf

2.3.2.4 验证消减措施

在完成威胁建模后,需要回顾整个过程,验证威胁是否已经完成闭环,数据流图表是否符合设计,代码实现是否符合预期设计,是否列举所有威胁,以及威胁是否都采取消减措施。验证过程不是一次性工作,过程中需要和业务经常保持沟通,反复执行整个威胁建模的活动识别安全风险,同时确保每个风险都在及时跟进处理。最后整理所有的威胁建模材料并归档,作为后面业务威胁建模的参考材料。

三、CSA云安全威胁分析

3.1 概述

为了使企业对云安全问题有全新的认识和了解,做出更有效的采购决策,云安全联盟(CSA)2020年推出了最新版本的《云计算11大威胁报告》。这一报告反映了云计算安全联盟安全专家就云计算中最重要的安全问题所达成的共识。《云计算11大威胁报告》中的云安全威胁主要如下。

《云计算11大威胁报告》内容参考地址:

CSA发布2020最新版《云计算11大威胁报告》 (baidu.com)

云安全联盟:云计算的11类顶级威胁(47页).pdf_三个皮匠报告 (sgpjbg.com)

3.2 报告内容说明

3.2.1 数据泄露

数据泄露是指敏感、受保护或机密信息被未经授权的个人发布、查看、窃取或使用的网络安全事件。数据泄露可能是蓄意攻击的主要目的,也可能仅仅是人为错误、应用程序漏洞或安全措施不足的结果。数据泄露涉及所有非公开发布的信息,包括但不限于个人健康信息、财务信息、个人可识别信息(PII)、商业秘密和知识产权。

云资源的配置错误是导致数据泄露的主要原因,还可能会导致删除或修改资源以及服务中断。

3.2.2 配置错误和变更控制不足

当计算资产设置不正确时,就会产生配置错误,这时常会使它们面对恶意活动时倍显脆弱。常见的例子包括不安全的数据存储要素(元素)或容器、过多的权限、默认凭证和配置设置保持不变、标准的安全控制措施被禁用。

在云环境中,缺乏有效的变更控制是导致配置错误的常见原因。云环境和云计算方法与传统信息技术的不同之处在于,它们使变更流程更难控制。传统的变更流程涉及多个角色和批准,可能需要几天或几周才能到达生产阶段(环境)。

3.2.3 缺乏云安全架构和策略

部分IT基础设施迁移到公有云之上的过渡期中最大的挑战之一就是实现能够承受网络攻击的安全架构。然而这个过程对于很多组织而言仍然是模糊不清的。当组织把上云迁移判定为简单地将现有的IT栈和安全控制“直接迁移”到云环境时,数据可能会被暴露在各种威胁面前。

通常而言,迁移过程中的功能性和速度通常是优先于安全的。这些因素导致了迁移过程中云安全架构和策略缺失的组织容易成为网络攻击的受害者。另外,缺乏对共享安全责任模型的理解也是一个诱因。

实现适合的安全体系结构和开发健壮的安全策略将为组织在云上开展业务活动提供坚实的基础。利用云原生工具来增强云环境中的可视化,也可以最小化风险和成本。采取预防措施可以显著降低安全风险。

3.2.4 身份、凭据、访问和密钥管理的不足

云计算在传统内部系统的身份和访问管理(IAM)方面引入了多种变化。在公有云和私有云设置中,都需要云服务提供商(CSP)和云服务使用者在不损害安全性的情况下管理IAM。

凭据保护不足,缺乏加密秘钥、密码和证书的定期自动更新机制,缺乏可扩展的身份、凭据及访问控制系统,无法使用多因子认证方式,无法使用强密码等,可能会造成安全事件及数据泄露。

3.2.5 账户劫持

通过账户劫持,恶意攻击者可能获得并滥用特权或敏感账户。在云环境中,风险最高的账户是云服务或订阅账户。网络钓鱼攻击、对基于云的系统的入侵或登录凭据被盗等都可能危害这些账户。这些独特、潜在且非常强大的威胁可能会导致数据和资产丢失和系统入侵,甚至造成云业务应用的严重中断。

账户和服务劫持意味着对账户及其服务以及内部数据控制的完全失陷。在这种情况下,跟账户相关的所有业务逻辑、功能、数据和应用程序都有风险。这种失陷的后果有时会造成严重的运营和业务中断,包括组织资产、数据和能力完全丧失。账户劫持的后果包括导致声誉受损的数据泄露、品牌价值下降、涉及法律责任以及敏感个人和商业信息泄露。

3.2.6 内部威胁

卡内基·梅隆计算机应急响应小组(CERT)将内部威胁定义为“对组织资产拥有访问权限的个人,恶意或无意地使用其访问权限,以可能对组织造成负面影响的方式行事的可能性”。内部人员可以是在职或离职的雇员、承包商或其他值得信赖的商业伙伴。内部人员在公司的安全边界内工作,得到公司信任,他们可以直接访问网络、计算机系统和敏感的公司数据。与外部威胁参与者不同,内部人员不必穿透防火墙、虚拟专用网络(VPN)和其他外围安全防御。

内部威胁可能导致专有信息和知识产权的损失。与攻击相关的系统停机事件会对公司的生产效率产生负面影响。此外,数据丢失或引起对其他客户的伤害会降低客户对公司服务的信心。

3.2.7 不安全接口和API

云计算提供商开放了一系列软件的用户界面(UI)和API,以允许用户管理云服务并与之交互。常见云服务的安全性和可用性取决于这些API的安全性。

从身份验证和访问控制到加密和活动监视,这些接口必须设计成可防御无意和恶意规避安全策略的行为。设计不好的API可能会被滥用,甚至导致数据泄露。被破坏、暴露或攻击的API已导致了一些重大的数据泄露事件。使用一系列安全性薄弱的接口和API会使组织面对各种安全问题,如机密性、完整性、可用性和相关责任的安全问题。

3.2.8 控制面薄弱

薄弱的控制面意味着负责人(无论是系统架构师还是DevOps工程师)不能完全控制数据基础设施的逻辑、安全和验证能力。在这种情况下,利益相关者如果对安全配置、数据如何流动以及架构的盲点和脆弱点控制不足,就可能导致数据损坏、不可用或泄露。

薄弱的控制面可能会因被窃取或损坏而导致数据丢失,这可能会导致巨大的业务影响,还可能招致对数据丢失的监管处罚。例如,根据欧盟通用数据保护条例(GDPR)的规定,产生的罚款可能高达2000万欧元或企业全球收入的4%。在控制层面薄弱的情况下,用户也可能无法保护其基于云的业务数据和应用程序,这可能会导致用户对所提供的服务或产品失去信心。最终,这可能会转化为云服务商收入的减少。

3.2.9 元结构和应用结构失效

为了提高云服务对用户的可见性,云服务提供商通常通过API接口提供在基准线上的安全流程交互。但是,不成熟的云服务提供商通常不确定如何向其用户提供API,以及在多大程度上提供API。例如,允许云服务用户检索日志或审计系统访问情况的API接口,可能包含高度敏感的信息。但是,这一过程对于云服务用户来说是非常必要的,用于检测未经授权的访问。

元结构和应用结构是云服务的关键组件。云服务提供商在这些功能上的故障可能会严重影响所有云服务的用户。

3.2.10 有限的云使用可见性

当组织不具备可视化和分析组织内使用的云服务是否安全、能力是否适当时,就会出现有限的云使用可见性。这个概念被分解为两个关键的挑战。

  • 未经批准的应用程序使用。当员工使用云应用程序和资源而没有获得公司IT和安全部门的特别许可和支持时,就会发生这种情况。
  • 批准程序滥用。企业往往无法分析使用授权应用程序的内部人员是如何使用其已获批准的应用程序的。通常,这种使用在没有得到公司明确许可的情况下发生,或者由外部威胁行动者使用凭证盗窃、SQL注入、域名系统(DNS)攻击等方法来攻击服务。在大多数情况下,可以通过判断用户的行为是否正常或是否遵守公司政策来区分有效用户和无效用户。

3.2.11 滥用及违法使用云服务

恶意攻击者可能会利用云计算能力来攻击用户、组织以及云供应商,也会使用云服务来搭建恶意软件。搭建在云服务中的恶意软件看起来是可信的,因为他们使用了云服务提供商的域名。另外,基于云的恶意软件可以利用云共享工具来进行传播。

一旦攻击者成功入侵用户的云基础设施管理平台,攻击者可以利用云服务来做非法事情,而用户还需要对此买单。如果攻击者一直在消耗资源,比如进行电子货币挖矿,那用户还需一直为此买单。另外,攻击者还可以使用云来存储和传播恶意或钓鱼攻击。公司必须要注意该风险,并且有办法来处理这些新型攻击方式。这可以包含对云上基础架构或云资源API调用进行安全监控。

解决云服务滥用的办法包含云服务提供商检测支付漏洞及云服务的滥用。云服务提供商必须要建立事件响应框架,对这些滥用资源的行为进行识别并及时报告给用户。云服务提供商也需要采取相应的管控措施允许用户来监控其云负载及文件共享或存储应用程序的运行状况。

好了,本次内容就分享到这,欢迎大家关注《云计算安全》专栏,后续会继续输出相关内容文章。如果有帮助到大家,欢迎大家点赞+关注+收藏,有疑问也欢迎大家评论留言!

举报

相关推荐

0 条评论