阿里、蚂蚁、晟腾、中科加禾精彩分享 AI 基础设施洞见,现购票可享受 9 折优惠 |AICon 了解详情
写点什么

物联网渗透测试(五):威胁建模概念简介

  • 2020-05-13
  • 本文字数:4070 字

    阅读完需:约 13 分钟

物联网渗透测试(五):威胁建模概念简介

编者按:本文节选自华章网络空间安全技术丛书《物联网渗透测试》一书中的部分章节。

威胁建模概念简介

威胁建模同软件开发存在一定联系,因为威胁建模是在软件设计阶段之后、软件部署阶段之前开展的一次演练。演练通常由软件开发团队、系统运维团队、网络运维团队以及安全团队在重大软件发布之前开展,通过绘制完整的端-端数据流图,或者通过绘制数据流与网络图,都能够对部署安全控制措施与入侵对抗措施提供帮助。上述图表可以画在白板上也可以借助软件来绘制,例如微软就提供了免费的威胁建模工具 Threat Modeling Tool,此外还有 Web 应用https://draw.io也可以用来完成这项工作,链接中给出的 Web 应用提供了大量模板可以用于绘制多种用途的图表。图表绘制的思路是将设备的所有功能、特性同与之关联的技术建立映射。而如何绘制威胁模型的版式则取决于机构或者绘制者自身。需要谨记的是,当将组件逐个分解时,威胁模型会进一步细化。对于威胁建模而言,非常重要的一方面在于需要不断进行文档迭代,因为当设备添加了新特性之后或者对设备所采用的技术有了更深了解时,对威胁的认识也会不断深化。


一旦确定了 IoT 设备的攻击面之后,就需要使用 STRIDE 等方法确定威胁用例,STRIDE 方法将会放在后面的章节中进行讨论。这些威胁需要通过评级系统进行评级,进而确定所识别出的威胁的风险等级。在不同的行业中,可以采用不同的威胁评级系统,其中最常见的是 DREAD 评级系统以及通用安全漏洞评分系统(Common Vulnerability Scoring System,CVSS)。下面分别对 CVSS 评分系统和 DREAD 评级系统进行介绍。


CVSS 系统的评分粒度更加细致,该系统囊括了 3 个度量组共 14 个度量维度,3 个度量组分别是:基本得分、临时得分和环境得分。这 3 个度量组又分别包含了 6 个基本度量维度、3 个临时度量维度和 5 个环境度量维度。当向厂商提交漏洞时,CVSS 系统的评级结果是非常有用的,但是对于威胁建模来说则可能不够直观。想要了解更多关于 CVSS 系统的内容可以访问链接https://www.first.org/cvss/user-guide


DREAD 评级系统名称中的每个字母分别表示如下含义:


  • 潜在危害(Damage potential):如果漏洞利用成功可能造成的危害有多大?

  • 可重现性(Reproducibility):重现攻击的难易度如何?

  • 可利用性(Exploitability):发起攻击的难易度如何?

  • 受影响用户(Affected users):大概会有多少用户受到影响?

  • 发现难度(Discoverability):发现该漏洞的难易度如何?


DREAD 评级系统的风险评级范围为 1~3。其中 1 代表低风险,2 代表中风险,3 代表高风险。


表 1 展示了各评级类别的评级结果所对应的含义。


表 1 DREAD 评级系统风险对照表


评级高风险(3)中风险(2)低风险(1)
D潜在危害能够规避所有的安全控制措施,获取设备的完全信任进而接管整个IoT生态系统导致敏感信息泄露导致敏感信息泄露
R可重现性攻击总是可复现的只有在特定时间范围内或者满足特定条件的情况下才能够复现攻击即便拥有关于漏洞的特定信息,也很难复现攻击
E可利用性经验欠缺的攻击者就能够开展漏洞利用具备一定经验的攻击者能够反复发起攻击只有深入掌握漏洞利用技术的攻击者才能够发起攻击
A受影响用户所有用户、默认配置、所有设备影响部分用户、部分设备、特定配置通过不确定的特性影响一小部分用户或设备
D发现难度可以在公开信息中较为容易地找到漏洞利用方法影响较少使用的功能特性,攻击者需要精心构造利用代码才能实现恶意利用成因不明攻击者不太清楚或者基本不可能发现漏洞利用的方法


在开展威胁评级之前,需要识别出威胁。为了准确地阐释安全隐患,进而识别出潜在威胁,可以采用 STRIDE 模型。STRIDE 模型将威胁分为 6 种类型。这 6 种威胁类型分别对应于英文缩写 STRIDE 的首字母,其含义如下:


  • 身份欺骗(Spoofing Identity):身份欺骗即通过使用虚假身份信息来尝试获取系统的访问权限。攻击者可以使用窃取的用户认证信息或者伪造的 IP 地址来实现身份欺骗。当攻击者以合法用户或者本地主机的身份成功获得目标系统访问权限后,就可以进一步以授权身份开展权限提升或者其他恶意操作。

  • 数据篡改(Tampering with Data):篡改是指在未经授权的情况下恶意修改数据,例如篡改网络中两台计算机之间的通信数据。

  • 抵赖(Repudiation):抵赖是指用户能够(以合法或者不合法的形式)否认其执行了某项操作或业务。如果未配备适当的审计措施,则难以证实攻击者发起了抵赖攻击。

  • 信息泄露(Information Disclose):信息泄露是指私有数据的意外公开。例如,用户能够查阅未授权表格或文件的内容,或者监控通过网络发送的明文数据。信息泄露漏洞的部分实例包括隐藏的表单字段、Web 页面注释中遗留的数据库连接语句和连接信息,以及可能向用户泄露内部系统信息的不完善的异常处理等。所有这些信息对于攻击者实施攻击都大有帮助。

  • 拒绝服务(Denial of Service):拒绝服务是指导致系统或应用不可用的过程。举个例子,通过向服务器发送海量请求消耗掉目标系统所有可用的系统资源就可以实现针对目标的拒绝服务攻击,此外,发送足以导致应用进程崩溃的畸形输入也可以实现拒绝服务攻击。

  • 权限提升(Elevation of Privilege):当拥有有限权限的用户以特权用户的身份取得了某应用的特权操作权限时即实现了权限提升。例如,权限受限的攻击者通过提权可以实现入侵,或者接管具有较高权限并且受信任的进程或账户。


可以通过以下链接来了解关于 STRIDE 模型的更多细节:

https://msdn.microsoft.com/en-us/library/ee823878(v=cs.20).aspx

https://msdn.microsoft.com/en-us/library/ff648641.aspx


微软公司提出了一种非常好的威胁建模方法,该方法采用多步处理来确定新应用或者新系统所引入威胁的严重程度。其威胁建模处理步骤如图 1 所示。



图 1 威胁建模处理步骤


了解微软威胁建模过程的更多内容可以参考以下链接:

https://msdn.microsoft.com/en-us/library/ff648644.aspx


后面我们将采用 STRIDE 模型和 DREAD 评级系统以黑盒测试的方式开展威胁建模演练,并将 IoT 设备进行分解,对其中的各个组件分别进行威胁建模。这里我们建议,读者无论在开展任何安全测试之前,最好都先进行威胁建模,通过威胁建模来保障测试的覆盖面。思考所有潜在威胁发生的概率并对其分类的过程很有意思,需要读者好好动动脑筋。

准备工作

在逐一介绍威胁建模方法时,我们将会用到微软公司提供的免费威胁建模工具 Threat Modeling Tool 以及基于制图网站https://draw.io所绘制的图表。在本书撰写阶段,我们从链接https://www.microsoft.com/en-us/download/details.aspx?id=49168下载了微软的威胁建模工具 Threat Modeling Tool 2016。

测试流程

在本节中,我们使用微软威胁建模工具 Threat Modeling Tool 来进行图表绘制,采用该工具绘制网络图表非常简单:


1)启动微软威胁建模工具 Threat Modeling Tool 2016。选择“创建模型”(Create A Model)选项,如图 2 所示。



图 2 创建威胁模型


2)然后,熟悉工具中所提供的用于表示设备、通信传输以及输入输出可信边界的模板(Stencils)。微软针对不同的模板与选项提供了用户指南,当下载工具时可以一并下载,但并不做强制要求。


2016 版的微软威胁建模工具 Threat Modeling Tool 中允许用户自定义模板,用户可以创建模板(Stencils),从而更加准确地刻画各个组件同威胁之间的关系,如图 3 所示。



图 3 创建威胁模板


3)每套模板的属性都可以根据设备、网络或者应用的实际情况加以调整,如图 4 所示。


4)至此,我们通常就可以从一个较高的角度来识别 IoT 系统的资产了,并且,当通过研究或逆向分析对目标设备具备了更深的了解之后,可以进一步聚焦于所感兴趣的领域。资产识别的过程可以采用表格或者思维导图的形式加以记录。表 2 列出了一份基本的资产清单,其中对各项资产进行了简要说明。


5)图 5 展示了部署了智能门铃、LED 灯具、移动应用以及 IoT Hub 的智能家居环境。



图 4 修改模板属性


表 2 IoT 系统资产清单


ID资产描述
1智能门铃智能门铃主要用于监控户外动向,向用户发送告警信息,以及通过应用提供实时监控视频。数据可以存储在门铃自身设备中也可以存储在应用之中。如果用户在本地网络查看摄像头视频,或者在无须开放路由器端口的情况下,利用基于STUN/TURN服务器的应用来查看摄像头视频,那么可以基于SIP/RTP视频传输协议采用P2P方式建立同智能门铃之间的连接。所有数据都会被传送到路由器以便远程访问
2LED灯具LED灯具采用ZigBee协议传输数据到IoT Hub,继而通过Wi-Fi进行通信。用户可以通过IoT Hub或应用接口对LED灯具加以控制
3移动应用移动应用能够控制网络中的各种设备。这些移动应用可以直接由设备厂商开发,也可以由IoT Hub厂商开发。设备的配置数据与敏感信息均可以存放在移动应用中。数据可以通过API或Web服务传输到设备或后台系统
4IoT Hub(IoT中心)IoT Hub将所有协议聚合到一台设备中以便管理。用户可以通过IoT Hub的应用接口控制设备。IoT Hub通过无线或者以太网网线连接到路由器。IoT Hub中存储有配置信息,并且可以从外部将配置信息发送到后台系统进行处理
5路由器所有的网络通信都由路由器进行管理。路由器可以拦截针对设备的外部访问,也可以不对流量加以限制而让其直接通过



图 5 IoT 智能家居环境


上面的例子只是威胁建模演练的开始。我们已经介绍了如何下载微软威胁建模工具 Threat Model Tool,并熟悉了模板及其相关属性。然后,我们通过研究或逆向分析对智能家居环境进行了简单描述,进行了智能家居环境中的资产识别。接下来我们绘制了架构图,形象地展示了识别出的资产。下一步将是威胁建模的核心,即通过分解 IoT 系统的各个组成部分,帮助读者发现攻击入口点、确定攻击方法,以及分析 IoT 系统的某一部分遭受攻击后所造成的影响。与其他安全分析工作一样,测试人员对目标测试平台越熟悉,成功实施入侵的可能性也就越大。


图书简介https://item.jd.com/12623610.html



相关阅读


物联网渗透测试(一):简介


物联网渗透测试(二):IoT 中的 Web 应用


物联网渗透测试(三):IoT 中的 移动应用


物联网渗透测试(四):IoT 渗透测试环境的部署


2020-05-13 10:001977

评论

发布
暂无评论
发现更多内容

BetterMouse for Mac(鼠标增强软件)

展初云

Mac BetterMouse Mac鼠标辅助软件

Wireshark的捕获过滤器

小魏写代码

IBM SPSS Statistics for Mac:强大统计分析工具,助力数据洞察与决策

晴雯哥

Comsol Multiphysics for Mac(建模仿真软件) v6.2中文版

展初云

Mac COMSOL Multiphysics 物理场仿真软件

天翼云以科技硬实力亮相第八届IDC中国数字化转型年度盛典

Geek_2d6073

Moho Pro 14 for Mac(2D动画制作软件)附注册机v14.1激活版

Rose

Moho Pro 14下载 Moho Pro 14中文版 Moho Pro 14破解 二维动画制作

GitKraken for Mac(Git客户端) v9.10中文版

展初云

git Mac软件 GitKraken

万能蓝光播放器:Apeaksoft Blu-ray Player for Mac

Rose

Mac蓝光播放软件 Apeaksoft Blu-ray Player

​🔒 一文带你了解多文件混淆加密

文心一言 VS 讯飞星火 VS chatgpt (142)-- 算法导论12.1 2题

福大大架构师每日一题

福大大架构师每日一题

【代码可视化实践】代码变更影响分析 | 京东云技术团队

京东科技开发者

代码可视化 企业号11月PK榜 代码变更

MacOS思维导图软件XMind for mac v24.01中文版下载

影影绰绰一往直前

Microsoft Remote Desktop for Mac激活版下载

影影绰绰一往直前

SOAP 协议和 HTTP 协议:分析比较

Apifox

程序员 后端 HTTP API soap

IBM SPSS Statistics Mac v27.0.1.0中文版 附 激活补丁

彩云

IBM SpsS Statistics 统计分析工具

macbook屏幕亮度调整工具:Lunar Pro for Mac破解版 附Lunar Pro注册机

Rose

Mac屏幕亮度调整工具 Lunar Pro破解版 Lunar Pro注册机 Lunar Pro下载

Mac云电视:CloudTV mac破解版 能够接通全球400多个电视频道

Rose

Mac破解软件 CloudTV for Mac Mac云电视播放 CloudTV破解版

字节2面真题,你能答对几道?

王磊

Java 面试

虚拟定位软件AnyGo for Mac中文激活版下载

影影绰绰一往直前

macbook翻译软件就用Translatium for Mac

Rose

翻译软件 Translatium中文版 Translatium下载 Translatium Mac Mac翻译工具

小程序又给智能电视带来新的一春?

Geek_2305a8

平台工程时代的 Kubernetes 揭秘:2023年生产状况报告深度剖析

SEAL安全

Kubernetes k8s 平台工程 企业号11月PK榜

HTTP协议抓包工具:Charles for Mac注册激活版下载

影影绰绰一往直前

使用SpringDataJPA(Hibernate)动态更新数据的正确姿势

redcoder54

Java hibernate Spring JPA

手游APP被攻击了我们如何用游戏盾防御

Geek_f19a80

服务器

PDF编辑阅读转换器:PDF Expert for Mac中文激活版下载

影影绰绰一往直前

分布式基础概念-选举算法

派大星

分布式 Java 面试题

物联网渗透测试(五):威胁建模概念简介_安全_亚伦·古兹曼,阿迪蒂亚·古普塔_InfoQ精选文章