如何做好云渗透测试的威胁建模(上)

news2025/3/10 10:54:36

NO.1

威胁建模相关定义

微软针对威胁建模(Threat modeling)的描述:威胁建模是帮助保护系统、应用程序、网络和服务的有效方法。这是一种工程技术,用于识别潜在的威胁和建议,以帮助降低风险并在开发生命周期的早期实现安全目标。威胁建模实践使开发团队可以在计划的运行环境的背景下,以结构化的方式思考、记录并讨论系统设计的安全影响。 [1](文末附注释解析)

CSA针对云威胁建模(Cloud Threat modeling)的描述:云威胁建模扩展了标准威胁建模实践,以考虑独特的云。云威胁建模增加了攻击面的识别和扩大,帮助对不同云服务提供商的安全需求进行提取,并强化了风险管理。[2]注:CSA每年都会推出云计算顶级威胁,帮助企业实现云威胁建模,已推出的白皮书包括《云计算的11类顶级威胁》、《云原生安全威胁分析报告》、《为实现成功的网络安全威胁情报交换构建坚实基础》《云计算的顶级威胁:深度分析》等内容。

NO.2

云计算的发展与技术演进

云计算今天并不是一个新鲜的概念,随着AWS、微软、谷歌等厂商相继推出云计算产品和解决方案,让云计算技术也在不断地演进。

许多组织采用云原生技术发新型应用程序,云应用及云安全进入到了加速时代。云原生计算基金会(Cloud Native Computing Foundation)定义了云原生应用的特点是“持续交付、DevOps、容器、微服务”等多个组件[3],云原生应用本身也在发展包括但不限于FaaS,BaaS,其核心是“不可变基础设施”的概念,这也助推了企业向新兴的基础设施转型。

传统模式上,威胁建模不仅仅要考虑IT资产主体也要考虑IT资产的客体。但在云模式下,威胁建模还要充分地考虑云共享责任模型中,需要根据云供应商的特点,选择合适的管理模型与方法,定义适当的安全级别和安全控制措施。共享责任模型的不同点在于既要考虑云供应商的安全要求,也要考虑客户及用户的安全要求。

在构建应用程序时,威胁建模(Threat modeling)是安全生命周期(SDLC)的关键部分。威胁建模预测设计缺陷和实现弱点如何合理地应用到云应用程序,成为很多企业关心的问题。并且在对云原生应用程序进行威胁建模时,团队必须考虑额外的安全挑战。例如虚拟化技术、容器化编排等应用场景,对安全管控形成了一定的屏障。

云原生应用程序不是包含所有逻辑和操作功能的单一整体应用程序,即传统型“巨石”架构。云原生应用是由数多个或数百个解耦的组件组成,这些组件可以通过DevOps模式实现独立的实例化、更新或重新部署。

NO.3

云威胁建模方法

CSA推荐应用一致的STRIDE模型与方法,这一方法由微软首次提出,并广泛地应用于微软的Azure[4], 在安全开发生命周期(SDLC)中识别系统的安全问题,形成基于DevOps的DevSecOps安全交付价值流。通过分析系统中各个组件的安全弱点,产生安全风险评估报告。并且微软结合CSA云安全报告推出公有云威胁的分类法[4]。

STRIDE模型与方法的特点在于云厂商普遍应用,以微软、AWS、谷歌、腾讯、阿里等厂商为代表,其成熟度较高、支持敏捷建模、自动化建模等模式。

CSA应用STRIDE模型于多个数字安全课程包括CCSK、CDSP、CBP、CZTP、CCPTP等,帮助企业建立基于不同视角的数字安全体系。该模型对不同类型的威胁进行分类,以便更好地理解安全性。基于云环境STRIDE模型中的威胁类型的分类示例如下表所示:

NO.4

云威胁建模的价值

云威胁建模的工作是在保护有价值的事物上进行识别、交流和理解威胁和缓解措施。有价值的威胁建模工作还会对应用程序的需求、概念、设计、编码、实现等全生命周期的安全进行改进,随着云原生的应用,云威胁建模的经典价值包括但不限于:

NO.5

云威胁建模与云渗透测试

威胁建模是非常重要的云渗透测试中的关键步骤。因为云应用程序的攻击面可以频繁变化。随着企业应用微服务架构,应用程序的攻击面会动态进行变化,例如基于容器的调度、基于FaaS、BaaS等新兴基础设施以及不可变基础设施运营模式,这可能会导致新的威胁。当我们面临这些实例进行测试时,可能会出现新的攻击向量,攻击面也会不断变化。

所以云渗透测试工作的重要性与重复性就不言而喻了,通过云渗透测试可以帮助企业实现初始威胁模型之后控制措施调整 。也可能会随着应用程序的发展而暴露出关键的弱点。

以云计算为中心,渗透测试人员将不会遇到传统的数据中心设计,在这些新兴环境及新兴服务模式下,将面临界新的攻击面及攻击向量。CSA CCPTP云渗透测试帮助企业解决在新兴基础设施下的安全问题。[5]

NO.6

云威胁建模知识检查

你的组织有一个在 Azure 中托管的面向公众的网站。该网站要求用户登录并使用受信任的标识提供者(如 Microsoft 和 Google)来支持登录。黑客向组织的员工发送一封恶意电子邮件,其中包含指向看起来与实际登录页面相同的登录页面的链接,但实际上是为了欺骗毫无戒心的用户泄露其用户名和密码。此类攻击属于哪种类型的安全威胁?[6]

A.SQL 注入攻击

B. 跨站点脚本攻击

C.中间人攻击

D.钓鱼攻击

NO.7

课程推荐及近期开班信息

CCPTP(Certifified Cloud Penetration Test Professional)云渗透测试认证专家(点击跳转课程详情介绍),旨在提供针对云计算渗透测试所需的专业实操技能,弥补云渗透测试认知的差距和技能人才培养的空白,提升专业人员能力及提供认证证书,为云计算产业发展提供渗透人才队伍保障。

为满足行业的专业化要求,CCPTP云渗透线下班即将于2023年6月在上海举办开班,为您带来更加专业和前沿的云渗透学习体验。本次课程不仅有的精彩课程,CSA大中华区还将携学员走进云网基础设施安全国家工程研究中心,深入了解了当前数字安全领域发展的最新趋势,让您掌握最新技术、扩展资源圈,为未来的职业发展奠定坚实基础。

云网基础设施安全国家工程研究中心展厅

NO.8

附录及参考

[1]Microsoft 威胁建模工具

https://learn.microsoft.com/zh-cn/azure/security/develop/threat-modeling-tool

[2]CSA Cloud Threat Modeling白皮书

https://cloudsecurityalliance.org/artifacts/cloud-threat-modeling/

[3]https://www.cncf.io/

[4]云威胁分类

https://learn.microsoft.com/zh-cn/training/modules/cmu-cloud-security/2-threats

[5] https://c-csa.cn/training/course-detail/i-1840.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/703136.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

nodejs接口联动获取req的各种类型数据,搭建可视化流程引擎平台

nodejs接口联动获取req的各种类型数据,搭建可视化流程引擎平台 搭建nodejs服务创建对外开放端口,获取基础数据GET—queryGET—paramsPOST 联动MYSQL数据库获取websites表的所有书链接数据库 插入 搭建nodejs服务 考虑跨域等性能,简易的工程化…

基于SpringBoot和Mybatis用两种方式实现分页查询

上一篇文章中封装了通用的返回结果、通用分页结果。本文具体记录一下如何基于Mybatis实现分页查询。 参考文章: Github:pagehelper-spring-boot Github:HowToUse.md mybatis-plus分页查询三种方法 MyBatis-Plus分页插件 系列文章指路👉 系列文章-基于Sp…

这会是下一代的 Java 程序员的技术栈吗?

Servlet 与 Reactive 技术栈 打开 Spring 的官方文档我们在 Reactive 一栏中可以看到下面的架构图,其中可以很明显的看到 Reactive 的技术栈跟 Servlet 技术栈是完全并行的。意思是说我们日常开发的 Servlet web 类型只是一半的内容,还有另外一半世界就…

TI AM64x开发板规格书(双核ARM Cortex-A53 + 单/四核Cortex-R5F + 单核Cortex-M4F,主频1GHz)

1 评估板简介 创龙科技TL64x-EVM是一款基于TI Sitara系列AM64x双核ARM Cortex-A53 单/四核Cortex-R5F 单核Cortex-M4F多核处理器设计的高性能评估板,由核心板和评估底板组成。核心板经过专业的PCB Layout和高低温测试验证,高性能低功耗,稳…

3.2C++抽象类

C 抽象类 C的抽象类是指至少包含一个纯虚函数的类,不能被实例化。 抽象类的作用是为了实现接口的统一规范,使得不同的子类可以通过实现相同的纯虚函数来实现不同的行为。 定义抽象类时,需要在类中至少包含一个纯虚函数。 抽象类不能被实例…

idea如何连接数据库

输入数据库的用户名和密码就行 Database这里些数据库的名字 快速打开数据库设计 这句话是说时区有问题:因为Mysql用的是美国时区,要搞成中国时区: set global time_zone8:00; 打开cmd窗口: 输入 mysql -u root -p 密码&…

MySql高级篇-006 MySQL架构篇-02MySQL的数据目录:数据库下的主要目录结构、文件系统如何存储数据

第02章_MySQL的数据目录 1.MySQL8的主要目录结构 # 查询名称叫做mysql的文件目录都有哪些[rootatguigu07 ~]# find / -name mysql安装好MySQL 8之后,我们查看如下的目录结构: 1.1 数据库文件的存放路径 MySQL数据库文件的存放路径:/var/…

华为手环8 六月免费表盘上线,让你的腕上表盘更丰富多彩

在如今这个科技与艺术相互融合的时代!工程师们给华为手环8花粉朋友准备的6月这一期好看又免费表盘已经上线。你可以根据自己的审美,选择一款最适合自己的表盘,展现出自己的个性和品味。快来选择你的专属表盘,让华为手环8成为你独特…

移动WEB开发之rem适配布局

css基础(一)css基础(一)_上半场结束,中场已休息,下半场ing的博客-CSDN博客Emmet语法Emmet语法_上半场结束,中场已休息,下半场ing的博客-CSDN博客css基础(二)c…

途乐证券|股市里的游资是什么?有什么特点?

股市是一个充满风险和机会的地方,吸引了各类投资者的目光,游资就是其中一种。那么股市里的游资是什么?有什么特点?途乐证券也为大家准备了相关内容,以供参考。 股市里的游资是什么? 一般来说,股…

【JavaScript】使用qrcode生成二维码

QRCode简介: QRCode.js 是一个用于生成二维码的 JavaScript 库。主要是通过获取 DOM 的标签,再通过 HTML5 Canvas 绘制而成,不依赖任何库。 使用步骤: 点击下载:https://github.com/davidshimjs/qrcodejs 或者mirrors / davidshimjs / qrco…

selenium 自动化测试 1-如何搭建自动化测试环境,搭建环境过程应该注意的问题

目录 前言: 1、selenium的介绍 2、selenium的版本介绍 3. selenium工作原理 4. selenium安装 4.1 安装selenium 4.2 安装浏览器驱动 4.3 安装浏览器 4.4 验证安装结果 5. 浏览器基本操作 前言: 搭建Selenium自动化测试环境是进行Web应用程序自…

京东到家小程序-在性能及多端能力的探索实践 | 京东云技术团队

一、前言 京东到家小程序最初只有微信小程序,随着业务的发展,同样的功能需要支持容器越来越多,包括支付宝小程序、京东小程序、到家APP、京东APP等,然而每个端分开实现要面临研发成本高、不一致等问题。 为了提高研发效率&#…

关于栈和队列的几个题

思维导图: 1.匹配括号 题目如下: 给定一个只包括 (,),{,},[,] 的字符串 s ,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号必须以…

【灾报警主机联网问题】

火灾报警主机联网问题一直是各消防项目中的难点,特别是管廊等长距离通讯中,如何保证通讯信号长期稳定可靠的运行是需要工程重点解决的问题,而LCAN-FOBR系列环网冗余式CAN光纤转换器提供二路光通道和一路CAN通道,实现CAN与光纤之间…

基于ENVI的遥感影像的非监督分类

ENVI包括了ISODATA和K-Mean两种非监督分类方法。 ISODATA(Iterative Self-Orgnizing Data Analysize Technique)是一种重复自组织数据分析技术,计算数据空间中均匀分布的类均值,然后用最小距离技术将剩余像元进行迭代聚合&#x…

常见分子直径

He 0.26 H2 0.289 NO 0.317 CO2 0.33 Ar 0.34 O2 0.346 N2 0.364 CO 0.376 CH4 0.38 C2H4 0.39 Xe 0.396 C3H8 0.43 SO2 0.28 气体分子 分子直径/nm 水0.27~0.32 氨0.365~0.38 苯0.65~0.68 乙烷0.40~0.47 乙烯…

华为OD机试真题 Python 实现【快速开租建站】【2023Q1 200分】,附详细解题思路

一、题目描述 当前IT部门支撑了子公司颗粒化业务,该部门需要实现为子公司快速开租建站的能力,建站是指在一个全新的环境部署一套IT服务。 每个站点开站会由一系列部署任务项构成,每个任务项部署完成时间都是固定和相等的,设为1。…

项目——学生信息管理系统5

目录 教师模块功能的实现 创建一个 Teacher 实体类 创建 添加老师界面 AddTeacherFrm 注意创建成 JInternalFrame 类型 页面的制作 给添加按钮绑定事件 提供一个重置表单功能 回到 MainFrm 添加教师管理的按钮 给添加教师按钮绑定事件 测试添加教师功能 创建教师信息管…

Day8——操作系统基础windows

文章目录 操作系统基础操作系统的定义 什么是windows 操作系统基础 操作系统的定义 什么是windows