TARA-威胁建模方案1

       威胁模型可以包含多个层级。如果模型中的某个过程过于复杂,应当考虑通过在模型框图中增加层级,将该过程进一步分解。但是,在建模初始阶段,你往往只能分解到Level 2 级。下面将从Level 0 级开始介绍各个不同的层级。

Level 0 级:鸟瞰视图

        进行本级建模时,需要参考在分析攻击面时建立的检查表。分析数据通过何种方式进入车辆。将车辆绘制在中心,并标注出内部空间和外部空间。Level 0 框图的范例如图所示

TARA-威胁建模方案1_第1张图片

    在图1-1 中,矩形框表示输入,中心的圆形代表整辆汽车,在输入到达车的过程中穿过的两条点虚线则分别表示外部和内部威胁的边界。车辆周围的圆形并不表示某个输入,而表示一个复杂过程——也就是一系列可进一步分解的任务。所有过程都有编号,如图1-1 所示,图1-1 中的过程被编号为1.0。如果在威胁模型中有多个复杂过程,则将编号顺延。例如,第二个过程编号为2.0,第三个则是3.0,以此类推。随着对汽车功能了解的逐步深入,对模型框图作相应的更新。

2Level1 级:接收端

         要继续进行 Level 1 级框图建模,需要选择一个过程进行分析。由于图1-1 中只有一个“车辆”过程,因此本节将深入该过程内部,聚焦于各个输入与哪些对象交互。图1-2 中的Level 1 级映射图与Level 0 级中的几乎相同,唯一的区别是在Level 1 级映射图中标识出了一些接收Level 0 级输入的车辆数据连接。在本级中暂时不对接收端作深入分析,而只关注与输入交互的各个基本设备或区域。

TARA-威胁建模方案1_第2张图片

       请注意,在图1-2 中对每一个接收端进行了编号。第一位数字代表Level 0 级框图(见图1-1)中的过程编号,第二位数字则代表该接收端的编号。由于信息娱乐单元既是一个复杂的过程,也是数据输入源,因此这里用一个圆形过程符号表示它。另外还有其他3个过程:防盗系统、ECU(Electronic Control Unit,电子控制单元)和TPMS(Tire PressureMonitoring System,胎压监测系统)接收器。Level 1 级框图中的点虚线表示信任域的边界。框图顶部的输入是最不被信任的,而框图底部的信任级别最高。通信信道穿过的信任边界数量越多,意味着它的风险程度越高。

3Level2级:接收端分解

         在 Level 2 级,对车辆内部的通信进行分析。示例框图(见图1-3)关注了某个基于Linux的信息娱乐控制台,即图1-2 中的接收端1.1。它是接收端中较为复杂的之一,且往往直接连接到车辆内部网络。在图1-3 中,使用代表信任边界的虚线框对通信信道进行分组。现在,信息控制台内部新增了一条称为内核空间的信任边界。能直接与内核交互的外部系统的风险级别高于与系统应用程序交互的外部系统,因为前者可能绕过信息娱乐单元上的访问控制机制。例如,蜂窝移动(手机)通信信道的风险级别比WiFi高,因为蜂窝移动(手机)信道穿过了一条信任边界直达内核空间。另一方面,WiFi则与用户空间中的WPA 客户端进程通信。

TARA-威胁建模方案1_第3张图片

     该系统是一个基于Linux 的IVI(In-Vehicle-Infotainment,车载信息娱乐)系统,它使用与Linux 环境通用的部件。在内核空间中,可以看到对udev、HSI 和Kvaser 这3 个接收本威胁模型输入的内核模块的引用。其中,udev 加载USB 设备,HSI 是处理蜂窝通信的串口驱动程序,而Kvaser 则用于驱动车辆的内部网络。Level 2 级威胁模型的编号形式为x.x.x,继续沿用如前所述的标识系统。在Level 0级框图中,将整辆汽车的信息处理过程标识为1.0,在对该过程进行更深入分析的Level 1级框图中,将其中的过程分别标识为1.1、1.2 等,依次顺延。由于在Level 2 级框图中选择了信息娱乐控制台过程1.1 并对其进行了进一步分解,因此在Level 2 级框图中将复杂过程标识为1.1.1、1.1.2 等,依次顺延(在深入分析过程时,可以继续使用该编号方案。该编号方案旨在满足文档编制需求,通过它可以准确引用合适层次的某个过程)。

注意:理想情况下,本阶段应能标注出哪个过程处理哪个输入的对应关系,但目前还只能依赖猜测。在现实条件下,往往需要对信息娱乐系统进行逆向工程以获取这一信息。在建造或设计汽车系统的过程中,应当对尽可能多的复杂过程进行持续“下钻”式分析。邀请开发团队参与工作,讨论每个应用程序所用的库和方法,以将这些库和方法纳入该应用程序自身的威胁框图。在进行应用程序级的建模分析时,往往会发现信任边界通常处于应用程序和内核之间、应用程序和库之间、应用程序相互之间,甚至是应用程序内部的函数与函数之间。在分析这些连接时,标出那些具有更高权限或处理更敏感信息的方法。

 

 

你可能感兴趣的:(汽车信息安全,信息安全)