写点什么

物联网渗透测试(九):IoT 移动应用威胁建模

  • 2020-05-17
  • 本文字数:1585 字

    阅读完需:约 5 分钟

物联网渗透测试(九):IoT 移动应用威胁建模

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

IoT 移动应用威胁建模

在下一个威胁建模演练中,我们将对 DVR 系统中的 IoT 移动应用进行分析。代理商和不同的 OEM 为 DVR 系统(和 IoT 中的其他系统一样)开发了多套移动应用。出于演示的目的,我们只分别选择了一款 Android 应用和一款 iOS 应用进行威胁建模。

测试流程

在前面的章节中,我们已经绘制了很多数据流图,本节中我们将继续使用微软威胁建模工具 Threat Modeling Tool 进行图表绘制。


步骤 1 架构概况构建与分解


与之前绘制图表的步骤类似,这里我们直接展示构建完成的数据流图,其中包括了移动应用中的所有已知资产。图 1 是移动应用的数据流图。


可以看到,应用每次查看账户信息和摄像头视频时,都需要与第三方厂商的云平台建立连接,即使用户与 DVR 系统处于同一网络中。而远程访问 DVR 系统所需的用户名和口令就存储在移动设备中。在这里,我们尚不清楚同应用厂商后台系统通信时如何存储或发送这些数据。带着这些疑问,我们开展下一步工作,进行威胁识别。



图 1 DVR 系统移动应用数据流分解示意图


步骤 2 威胁识别


  • 攻击者可以利用移动应用进行以下操作:

  • 监视 API 调用。

  • 访问移动设备中的本地资源。

  • 泄露用户敏感信息。

  • 定位在移动设备中以明文存储的用户敏感信息。

  • 通过 SQL(ite)注入漏洞转储数据库中的数据。

  • 通过 WebView 控件的 JavaScript 接口实现任意脚本执行。

  • 获取其他用户账户的访问权限。

  • 在厂商的云平台环境中追踪用户。

  • 访问存储在设备上的摄像头回放视频。

  • 删除摄像头回放视频。

  • 篡改用户信息。

  • 在未经认证的情况下为摄像头添加共享用户。

  • 建立永久会话,该会话具有持久访问权限不会过期。

  • 截屏并发送给第三方。


步骤 3 威胁建档


接下来,同之前的工作类似,我们将选取部分威胁用例并形成文档,评估其风险等级,见表 1~表 3。


威胁 1


表 1 威胁 1


威胁描述攻击者在移动设备中访问本地资源
威胁目标移动应用
攻击技术攻击者发现API通信中的漏洞,如果漏洞能够将WebView控件暴露给JavaScript bridge,那么攻击者进而就可以实现对本地对象的访问。攻击者还可以利用移动设备中的SQL注入漏洞连接本地SQLite数据库,并创建拥有本地资源访问权限的文件
对抗措施在应用中禁用WebView控件中的JavaScript脚本,或者创建白名单,只接收白名单中的脚本。在应用中对用户输入进行验证,并禁用动态查询


威胁 2


表 2 威胁 2


威胁描述攻击者定位移动设备中用户以明文存储的敏感信息
威胁目标移动应用
攻击技术攻击者在运行时监控文件存储过程,并且截获到从厂商云平台同步到移动设备上的数据,从而导致敏感信息暴露
对抗措施只在设备中存储需要用到的数据


威胁 3


表 3 威胁 3


|威胁描述|攻击者在未经认证的情况下为摄像头添加共享用户|攻击技术|攻击者利用 CSRF 漏洞向被攻击者发送请求,自动添加共享用户|


|-|-|


|威胁目标|移动应用|对抗措施|使用 anti-CSRF token|


步骤 4 威胁评级


从表 4 中选择某种威胁并评估其风险等级。


表 4 威胁风险等级评定表


威胁风险等级:攻击者访问在移动设备中的本地资源


类别分数
潜在危害3
可复现性2
可利用性1
受影响用户1
发现难度2
威胁综合得分:中9


在移动领域中,常见威胁都与数据以及数据的存储和传输方式有关。因此,除非该漏洞能够对大量用户造成影响,或者导致泄露大量用户数据,否则移动应用漏洞风险一般相对较低。在对移动应用的测试过程中,移动应用的漏洞基本不会导致攻击者获取服务器或者移动设备的 shell。


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



相关阅读


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


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


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


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


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


物联网渗透测试(六):IoT 设备威胁建模剖析


物联网渗透测试(七):固件威胁建模


物联网渗透测试(八):IoT Web 应用威胁建模


2020-05-17 10:001300

评论

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

解锁企业数据管理的利器——DataOps

数造万象

云计算引领数字化时代

Finovy Cloud

云服务 云计算,

Java-WebSocket vs Netty-WebSocket 资源占用

FunTester

动力电池电芯正负极缺陷检测

矩视智能

深度学习 机器视觉

【问题记录】Nginx使用域名作为upstream时,需要配置SNI

陈德伟

nginx 虚拟主机 proxy_pass SNI

低代码实现探索(六十)从ERP软件学习低代码

零道云-混合式低代码平台

软件测试/测试开发丨ChatGPT自动生成基于PO的数据驱动测试框架

测试人

Python 人工智能 软件测试 数据驱动 ChatGPT

智慧地球质押挖矿系统开发详情

l8l259l3365

GitHub下载量从19暴涨到5W,这份架构师学习路线只用了一晚

程序员万金游

学习资料 #java #编程 #程序员 #学习

文心一言 VS 讯飞星火 VS chatgpt (110)-- 算法导论10.2 1题

福大大架构师每日一题

福大大架构师每日一题

如何使用CSS和JavaScript实施暗模式?

互联网工科生

CSS JavaScript 暗模式

为什么都在说实时数据传输?

RestCloud

ETL 实时数据 CDC

设计行业中如何保证图纸设计稿在数据传输中不会泄密

镭速

数据传输 文件传输

关于企业如何替换FTP和加速FTP的问题

镭速

替换FTP 加速FTP

Spring扩展-BeanFactoryPostProcessor

技术干货:解密最受欢迎的开源 Serverless 框架弹性技术实现

阿里巴巴云原生

阿里云 开源 Serverless 云原生

OpenHarmony Meetup深圳站招募令

OpenHarmony开发者

玩转HarmonyOS专项测试,轻松上架“五星”高品质应用

HarmonyOS开发者

IDO官网预售 设置您的IDO:开始您的IDO开发之旅

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 IDO代币预售

物联网渗透测试(九):IoT 移动应用威胁建模_安全_亚伦·古兹曼,阿迪蒂亚·古普塔_InfoQ精选文章