翻译自five-steps-to-successful-threat-modelling,Suresh Marisetty,January 10, 2019
译者注:本文从物联网服务入手case by case介绍如何快速完成威胁建模,其中提供的5个checklist值得借鉴。另外,本文的威胁建模仍采用最流行的STRIDE模型,在威胁评估时没有采用更为流行的DREAD模型,而采用了CVSS评分模型,由于CVSS评分整体偏高,因此在实际应用中相对较少。
物联网正在改变我们与周围世界互动的方式。在接下来的几年里,数十亿个联网设备将使我们能够提高效率,提高生产力,并在个人和职业生活中提高舒适性和便利性。我们不是唯一看到这个市场潜力的人。物联网设备是越来越复杂的网络攻击的目标,创新者必须保护他们的资产和客户免受这些新出现的威胁。在一个对时间和成本敏感的环境中,安全性可能会被错误的认定成事后才考虑的事情。但这种做法使个人、组织和重要基础设施面临风险。
为了应对在这个不断变化和相互连接的世界中运行的挑战,安全不再被视为一个单独的组件。从开发阶段开始,它就必须嵌入到每个元素和过程中。Arm的平台安全体系结构(PSA)框架简化了此活动,使构建安全设备变得更快、更容易。
ARMPSA分为三个阶段:分析、构建和实现。第一个-分析阶段将在这个博客中详细讨论。
为了进行安全设计,PSA建议开发人员和制造商首先分析操作环境,了解并记录每个设备可能受到攻击的方式。这是一个被称为威胁模型和安全分析(TMSA)的过程,或者是一个英语保护模式,它已经在移动行业中使用了一段时间,但很少在物联网领域进行。
TMSA将强调你需要解决的关键问题,并要求你考虑重要问题,例如:
这个过程将帮助你决定你的安全需要有多强大,以及你需要做什么来保护你的物联网产品。它将帮助你确定设备的正确安全级别,而不是减慢开发速度,这意味着你不会消耗过大成本或使设备、组织或客户面临不必要的风险。
你可以将该方法应用于任何设备,从简单、低成本甚至一次性的应用程序,到最先进的边缘和网关设备。TMSA文档旨在使所有人都更容易访问威胁建模,因此即使你没有专用的安全知识或专业知识,也可以保护你的设备。
现在我们将一步一步地指导你完成TMSA过程,以帮助你确定你的安全需求。我们正在使用智能扬声器,例如你家中的扬声器,作为基本示例,但可以从我们的网站下载对常见物联网用例的更详细分析,包括资产跟踪器、水表和网络摄像头。
安全性设计的第一步是了解设备运行的生态系统,并在TMSA文档中确定被称为评估目标(ToE)的用例。用例是作为安全评估主体的产品或系统。
在智能扬声器的示例中,可以从设备本身和充当用户界面的应用程序开始。将有云服务支持该设备,加上一些为你创建内容的第三方。如果扬声器是在家庭环境中使用的,则可能有音乐、购物、新闻、语音助手或家庭自动化应用程序。在商业或工业环境中,应用程序的目标可能是提供与你所在行业相关的信息或服务。
一旦你了解了用例,就可以开发一个需要保护的设备主要组件的列表。
攻击者将以你设备中的资产为目标,就像一个闯入你家的小偷可能正在寻找珠宝或现金一样。因此,你需要确定他们最感兴趣的资产或数据。
如果我们回到智能扬声器的例子,我们可能需要保护的资产包括:
你的资产清单可能并不详尽,但它将包括对你和你的客户最有价值的资产或数据。
要了解对设备的威胁,你还需要确定将与产品交互的用户和外部实体。这可能包括合法用户,例如设备所有者或虚拟系统管理员,但也应扩展到潜在的攻击者或对手,以获得对设备的访问或控制。
知道谁可能在和你作对是有帮助的。通用对手模型将攻击者分为五类,可用于识别潜在对手:
在这个过程的这个阶段,你知道你需要保护什么,谁有攻击的潜力。现在,是时候考虑你的漏洞了,Arm分为四个主要类别:通信、生命周期、软件和物理设备(也称为硬件)。这些类别充当设备的入口点,为攻击者提供了一种进入的方式。应为四个主要类别中的每一个识别潜在漏洞,并将取决于你正在设计或制造的设备类型。
现在,你可以应用你的威胁模型,在本例中,我们使用了针对每个入口点的STRIDE模型来确定你的安全威胁。 STRIDE表示:
它可以帮助你识别和分类对设备的威胁。
你可以将STRIDE威胁模型应用到每个入口点。
上图显示了智能扬声器的潜在攻击面。如果我们以用户界面为切入点,通过语音命令的潜在通信攻击可能包括:
但是,在网络连接云服务器的例子中,我们可能会考虑的威胁包括:
你可以对所有入口点应用STRIDE,以帮助你识别设备面临的威胁,包括硬件攻击的威胁,例如利用调试接口或篡改本地存储,以及软件和生命周期攻击,如上面的攻击表面图所示。
现在你已经确定了你的漏洞和威胁,然后你可以考虑这些威胁如何直接影响你在流程早期确定的每个资产,使用STRIDE威胁模型作为参考。下面是一个基于智能扬声器的示例。
但这对你和你的顾客有什么影响呢?如何在设备中设计合适的安全级别?
评估攻击的严重性将使你能够适当地分配资源。我们建议使用通用漏洞评分系统CVSS来考虑你刚刚识别的威胁的影响。CVSS使用0到10的分数来帮助你了解攻击将如何影响你的设备和客户。
例如,CVSS评分9.0-10应该是你集中注意力和资源的地方,因为攻击的影响会很严重。这将帮助你确保你的设备内置了正确的安全级别。
在本节中,我们希望设定安全目标,以保持六个安全要素:
每个元素的风险将取决于发起的攻击类型。为了进一步解释,使用STRIDE威胁模型,可以确定欺骗攻击可能影响真实性,而篡改攻击可能影响设备的完整性。
利用这些信息,以及你已经掌握的有关潜在攻击严重性的知识,你现在可以确定你需要做什么来解决威胁,以及你将采用的对策。
回到智能扬声器示例,高级安全目标可以包括:
下图进一步说明了如何将步幅威胁模型映射到特定的应对措施。例如,安全身份是防止欺骗威胁以保护ToE真实性的主要措施。
作为一个合作伙伴或原始设备制造商,你需要更多的信息。你需要知道要实现什么,所以应该进一步分析你确定的高级目标,以创建直接针对你的威胁的特定安全需求。
例如,从“安全标识”的高级目标出发,你可以确定需要维护角色和授权以及受信任的通信通道、安全的远程管理和设置故障阈值限制。
到目前为止,你收集的所有信息现在都可以合并到威胁摘要表中。你应该为前面标识的每个资产创建一个单独的摘要表。下面的示例仅涵盖一个。该表将帮助你清楚地看到攻击的潜在影响,以及如何处理每个威胁。
现在通过TMSA文档来识别对你自己设备的潜在威胁并确定你的安全要求。
今年早些时候,我们开发了三个详细的示例,分析常见的物联网设备(智能水表、网络摄像头和资产跟踪器),并指导你完成整个TMSA过程。TMSA文档是免费提供的,并附有Arm TrustZone和CryptoIsland技术的摘要,可用于满足你的安全要求。除了提供有关特定设备的建议外,这些文档还可以用作参考工具,因此你可以对不同的产品执行自己的安全性分析。
威胁模型和安全分析(TMSA)只是Arm平台安全体系结构(PSA)三个阶段中的第1个。ARM PSA已被设计为一个共同的基础,这是易于遵循的,并揭秘安全设计和概念。它借鉴并建立在整个行业的最佳实践之上,面向整个供应链中的不同实体,从芯片设计师和设备开发人员到云和网络基础设施提供商和软件供应商。在你完成了TMSA文档并建立了安全需求之后,下一步是将它们付诸实施。