汽车网络安全需求分析方法综述

news2024/9/24 7:21:56

引言:
近年来,汽车的网络安全问题逐渐被重视,在汽车产品的全生命周期中,需要进行网络安全风险管理,其主要活动包括网络安全需求分析、安全策略设计与实施、运营阶段安全监控与应急响应等。
安全需求分析工作作为系统安全设计的第一步,将为系统后续的设计、开发、安全运营管理等活动起到重要的作用。
安全需求分析主要是对目标对象实施分析,以获得与安全相关设计需求的活动。安全需求主要用于指导后续的安全设计,以降低安全风险,为目标对象全生命周期中的安全活动提供决策依据。

01 安全需求分析框架

本章节将基于所调研的相关标准、行业指南、论文等材料,介绍目前相关行业中,主流的网络安全需求分析方法框架。
由于并非所有的方法都显式地被称为需求分析方法。因此,在调研需求分析方法时规定,只要所开展活动的目标是辨识安全需求,则认为其是所需的方法。

例如,在汽车网络安全领域中,并不常使用“安全需求分析”一词,取而代之的是“威胁分析与风险评估”(即TARA - Threat Analysis and
Risk Assessment)。根据ISO
21434标准规定,在系统设计的概念阶段,需要对目标系统实施网络安全目标的辨识。根据定义,网络安全目标是指目标对象的概念层网络安全需求,该安全需求可与一个或多个威胁场景相关联。简而言之,网络安全目标即为系统设计早期进行的最上层安全需求。而具体用于实施网络安全目标辨识活动的主要工作即为大家所熟知的TARA分析,TARA分析为安全需求分析的重要工作部分。

以下为汽车及相关领域内常用的网络安全需求分析框架:

· EVITA TARA

· NIST网络安全框架

· TVRA流程

· OCTAVE Allegro

· HEAVENS TARA

· FMVEA

· STPA-Sec

EVITA(E-Safety Vehicle Intrusion Protected
Applications)是一个起始于2008年、由欧盟资助的研究项目,其目标在于设计、验证并试制一个安全的车载网络架构。

该项目中提出了一种系统的威胁分析及风险评估方法,其首先需辨识目标系统潜在的威胁,并从安全(safety)、隐私、经济及操作方面对所获得的威胁的严重性进行评估。然后,需评估每一个威胁实现的可能性。最后,根据风险等级映射表获得最终的风险评估结果[1]。EVITA
TARA分析的输出可作为后续系统安全设计的需求输入。

NIST网络安全框架是一种由美国国家标准技术研究所(NIST:National Institute of Standards and
Technology)提出的、用于管理关键设施风险的大框架,其主要包括五个核心功能,分别为:辨识、保护、发现、响应和恢复。

其中,与TARA活动相关的步骤包括辨识并整理目标资产漏洞及风险、接收来自于共享资源的网络安全威胁信息、评估威胁潜在的商业影响及发生可能性等,并根据以上因素的分析结果,可最终获得相关风险的评估结果[2]。

1661404970_6307072af27826e41c4d9.jpg!small?1661404972031

图1 Framework Core Structure[2]

1661404975_6307072f18fea1274c5ea.jpg!small?1661404976136

图2 Function and Category Unique Identifiers[2]

TVRA(Threat, Vulnerabilities, and Implementation Risks
Analysis)是一个由欧洲电信标准协会(ETSI)提出的流程驱动型威胁分析及风险评估方法。

TVRA中一共有十个工作步骤,包括辨识需要评估的目标(TOE: Target of
Evaluation)、系统地辨识目标漏洞及威胁等级、计算攻击发生可能性及其影响等。TVRA主要基于攻击可能性及攻击对系统的影响来辨识目标系统存在的安全风险,从而采取相应的措施以避免攻击事件[3]。

1661404980_63070734b971f168679b1.jpg!small?1661404981782

图3 Structure of Security Analysis and Development in Standards Documents[3]

OCTAVE
Allegro是一个针对信息财产的流程型方法,其共有八个步骤,包括建立风险测量标准、辨识威胁场景、辨识并分析风险,以及选择减轻威胁的方法等。

OCTAVE Allegro是从OCTAVE(Operationally Critical Threat, Asset, and Vulnerability
Evaluation)方法变化而来的,前者优化了原有的信息安全风险评估流程,帮助组织能够在有限投入的情况下获得足够的评估结果。OCTAVE方法最早是于1999年由卡内基梅隆大学软件工程学院提出,并受到了美国国防部的资助[4]。

1661404986_6307073ac4a3f371be7b0.jpg!small?1661404987764

图4 OCTAVE Allegro Roadmap[4]

HEAVENS(HEAling Vulnerabilities to ENhance Software Security and
Safety)是一个针对车辆电子电器系统的系统性安全需求分析方法,其中包括了用于威胁分析及风险评估的流程及支持工具[5]。

HEAVENS安全模型首先需基于功能用例分析系统的潜在威胁,并输出所辨识获得的威胁、目标资产及安全属性。然后,根据要求评定各潜在威胁的威胁等级及影响等级,并获得目标系统的安全等级评估。最终,设计者可从分析输出中提取用于指导系统安全设计的设计需求[6]。

1661404993_630707417afda4265ceec.jpg!small?1661404994481

图5 Workflow of the HEAVENS Security Model[5]

FMVEA(Failure Mode, Vulnerabilities and Effects Analysis)是一种由FMEA(Failure
Mode and Effects Analysis)方法演变而来的、用于辨识系统漏洞因果链的分析方法。

FMVEA主要通过辨识系统的漏洞、威胁模式、威胁实施者、威胁影响、攻击概率等步骤,以最终获得目标系统的安全因果链及对各威胁模式的评价[7]。

1661405000_6307074843e8dada617a8.jpg!small?1661405001279

图6 FMVEA - Analysis Flow Chart[7]

STPA-Sec是一种由STPA(System-Theoretic Process
Analysis)方法演变而来的、用于分析系统安全损失场景的方法,其使用了系统理论过程分析框架,可自上而下地对系统的安全漏洞进行分
析。
STPA-
Sec的主要步骤包括:分析目标定义、目标系统控制结构的建立、不安全控制行为的辨识以及损失场景的辨识。最终,分析者可从所辨识出的损失场景中提取系统设计的安全需求[8]。

1661405004_6307074c9cfcbd9eb24b8.jpg!small?1661405005600

图7 Overview of the Basic STPA Method[8]

02 威胁分析及风险评估方法

上一章节中所介绍的安全需求分析方法均是在一个上层的流程或框架层面方法,而上述框架方法中的核心活动为对目标对象实施威胁分析及风险评估活动。针对这两项重点活动,相关领域内已有很多操作层面的技术,可以被灵活地运用于各个框架之中。在各类框架方法中,也涉及到了各类不同的操作方法。

关于威胁辨识部分,HEAVENS和FMVEA方法使用了微软的STRIDE模型[9]来辨识潜在的威胁。EVITA项目中使用了攻击树的方法进行深入的攻击分析,并获得攻击路径即场景[1]。在EVITA流程中也可使用威胁及操作性分析方法(THROP)来实施功能层面的威胁辨识[6]。美国国家公路交通安全管理局(NHTSA)提出了一个基于威胁矩阵的综合威胁模型以帮助安全分析中的威胁辨识[10]。WP.29
R155法规附录五的第一部分中枚举的共七大类32子类的威胁可作为安全威胁分析的基本引导词使用。该法规中也明确指出,在评估风险时,车辆制造商应该考虑附录五第一部分中罗列的所有威胁的风险,以及其他可能相关的风险(WP.29
R155 7.3.3条款)[11]。

关于风险评价部分,当前有以下几种主要的评价体系被使用:

EVITA项目从系统的操作性、安全性(safety)、隐私性以及经济性四个方面对系统的网络安全进行评价,结合攻击概率、攻击影响以及可控制性等因素,最终获得一个风险等级(R0至R7+,R0表示最低风险,R7+表示最高风险)[1]。

在HEAVENS流程中,通过对威胁等级以及影响等级打分评级后,根据映射矩阵最终获得系统的安全等级[6]。

Ben
Sapiro提出了一个二元风险分析方法(BRA),该方法首先需回答十个是与否的问题,并将问题的回答映射到对应的输入矩阵中,如威胁范围矩阵、保护能力矩阵等,然后通过可能性评价和影响评价,最终获得目标系统的风险等级。BRA是一个轻量级的用于快速构建的定性风险评价工具,可融合于现有的风险管理框架中使用[12]。

通用漏洞评分系统(CVSS)是一个用于评价软件系统漏洞的开放框架。该系统根据相关漏洞的主要特征,生成一个可以反映该漏洞严重程度的分数以及相关解释[13]。ISO/SAE
21434标准的G.3章节中,提供了基于CVSS评分标准的攻击可行性评估方法指南[14]。

此外,ISO/SAE
21434中定义了网络安全保障等级(CAL),该等级可依据系统威胁场景的影响力及暴露水平等参数而评定。标准中还依据该CAL评级,定义了一系列系统应该满足的网络安全保障需求,并可作为在产品的网络安全工程活动的决策依据[14]。正如车辆安全完整性等级(ASIL)在车辆功能安全领域内的作用一样,CAL可为参与到车辆生命周期内的相关厂商或组织提供了一个行业内统一的交流、设计及评价标准。

最后

分享一个快速学习【网络安全】的方法,「也许是」最全面的学习方法:
1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)

2、渗透测试基础(一周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等

3、操作系统基础(一周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)

4、计算机网络基础(一周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现

5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固

6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)

在这里插入图片描述

恭喜你,如果学到这里,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web 渗透、安全服务、安全分析等岗位;如果等保模块学的好,还可以从事等保工程师。薪资区间6k-15k。

到此为止,大概1个月的时间。你已经成为了一名“脚本小子”。那么你还想往下探索吗?

想要入坑黑客&网络安全的朋友,给大家准备了一份:282G全网最全的网络安全资料包免费领取!
扫下方二维码,免费领取

有了这些基础,如果你要深入学习,可以参考下方这个超详细学习路线图,按照这个路线学习,完全够支撑你成为一名优秀的中高级网络安全工程师:

高清学习路线图或XMIND文件(点击下载原文件)

还有一些学习中收集的视频、文档资源,有需要的可以自取:
每个成长路线对应板块的配套视频:


当然除了有配套的视频,同时也为大家整理了各种文档和书籍资料&工具,并且已经帮大家分好类了。

因篇幅有限,仅展示部分资料,需要的可以【扫下方二维码免费领取】

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

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

相关文章

信息安全概论之《密码编码学与网络安全----原理与实践(第八版)》

前言:在信息安全概论课程的学习中,参考了《密码编码学与网络安全----原理与实践(第八版)》一书。以下内容为以课件为主要参考,课本内容与网络资源为辅助参考,学习该课程后作出的总结。 一、信息安全概述 1…

【蓝桥杯集训9】单调栈、单调队列(模拟栈、模拟队列)专题(3 / 3)

目录 单调栈模板 1、模拟栈 单调队列模板 1、模拟队列 2、双端队列 135. 最大子序和 - 前缀和滑动窗口单调队列 单调栈模板 什么时候用单调栈? 求序列中每一个数左边或右边第一个比它大或小的数 1、单调递增栈 在保持栈内元素单调递增前提下(如果…

Redis 主从库如何实现数据一致?

目录 1、主从库间如何进行第一次同步? 2、主从级联模式分担全量复制时的主库压力 3、主从库间网络断了怎么办? 总结 // 好的文章,值得反复去读 Redis 具有高可靠性,这里有两层含义:一是数据尽量少丢失,…

2023JAVA面试题全集超全面超系统超实用!早做准备早上岸

2022年我凭借一份《Java面试核心知识点》成功拿下了阿里、字节、小米等大厂的offer,两年的时间,为了完成我给自己立的flag(拿下一线互联网企业offer大满贯),即使在职也一直在不断的学习与备战面试中!——或…

【Spark分布式内存计算框架——Spark Streaming】6. DStream(下)流式应用状态 Kafka

3.3 流式应用状态 使用SparkStreaming处理实际实时应用业务时,针对不同业务需求,需要使用不同的函数。SparkStreaming流式计算框架,针对具体业务主要分为三类,使用不同函数进行处理: 业务一:无状态Statel…

【数电基础】——数制和码制

目录 1.概述 1.信号(电路)的功能 2.信号的分类: 3.数字信号的输入和输出的逻辑关系表示方法 2.数制 1.十进制(D/d) 2.二进制(B/b) 3.八进制(O/o) 4.十六进制(H/h)…

使用huggingface微调预训练模型

官方教程:https://huggingface.co/docs/transformers/training 准备数据集(基于datasets库) train.json 数据格式: {"source":"你是谁?", "target":"我是恁爹"} {"so…

FSP:Flow of Solution Procedure (CVPR 2017) 原理与代码解析

paper:A Gift From Knowledge Distillation: Fast Optimization, Network Minimization and Transfer Learningcode:https://github.com/HobbitLong/RepDistiller/blob/master/distiller_zoo/FSP.py背景深度神经网络DNN逐层生成特征。更高层的特征更接近…

内存数据库的设计与实现(已在大型项目中应用)

一、概况 1、设计总图 组成,由Redis集群缓存,普通缓存,传统数据库,各类数据驱动 2、内存数据库的增删改查,分页查询 组成,由数据查询,分页查询,数据存储,数据修改,数据删除 3、内存数据库的驱动 组成,由驱动适配器,普通缓存驱动,Redis缓存驱动 4、内存数据库与…

C++常见类型及占用内存表

GPS生产厂家在定义数据的时候都会有一定的数据类型,例如double、int、float等,我们知道它们在内存中都对应了一定的字节大小,而我在实际使用时涉及到了端序的问题(大端序高字节在前,小端序低字节在前)&…

redis主从同步:如何实现数据一致

Redis 提供了主从库模式,以保证数据副本的一致,主从库之间采用的是读写分离的方式。读操作:主库、从库都可以接收;写操作:首先到主库执行,然后,主库将写操作同步给从库。和mysql差不多。但是同步…

自动驾驶专题介绍 ———— 毫米波雷达

文章目录介绍工作原理特点性能参数应用厂家介绍 毫米波雷达是工作在毫米波波段探测的雷达,与普通雷达相似,是通过发射无线电信号并接收反射信号来测量物体间的距离。毫米波雷达工作频率为30~300GHz(波长为1 - 10mm),波长介于厘米波和光波之间…

【数据挖掘实战】——家用电器用户行为分析及事件识别(BP神经网络)

项目地址:Datamining_project: 数据挖掘实战项目代码 目录 一、背景和挖掘目标 1、问题背景 2、原始数据 3、挖掘目标 二、分析方法与过程 1、初步分析 2、总体流程 第一步:数据抽取 第二步:探索分析 第三步:数据的预处…

为什么负责任的技术始于数据治理

每个组织都处理数据,但并非每个组织都将其数据用作业务资产。但是,随着数据继续呈指数级增长,将数据视为业务资产正在成为竞争优势。 埃森哲的一项研究发现,只有 33% 的公司“足够信任他们的数据,能够有效地使用它并从…

色环电阻的阻值如何识别

这种是色环电阻,其外表有一圈圈不同颜色的色环,现在在一些电器和电源电路中还有使用。下面的两种色环电阻它颜色还不一样,一个蓝色,一个土黄色,其实这个蓝色的属于金属膜色环电阻,外表涂的是一层金属膜&…

Qt新手入门指南 - 如何创建模型/视图(四)

每个UI开发人员都应该了解ModelView编程,本教程的目标是为大家提供一个简单易懂的介绍。Qt 是目前最先进、最完整的跨平台C开发工具。它不仅完全实现了一次编写,所有平台无差别运行,更提供了几乎所有开发过程中需要用到的工具。如今&#xff…

AJAX介绍及其应用

1.1 AJAX 简介 AJAX全称为 Asynchronous JavaScript and XML ,就是异步的js和xml。通过AJAX可以在浏览器中向服务器发送异步请求,最大的优势,无刷新获取数据。AJAX不是新的编程语言,而是一种现有的标准组合再一起使用的新方式 应…

scanpy 单细胞分析API接口使用案例

参考:https://zhuanlan.zhihu.com/p/537206999 https://scanpy.readthedocs.io/en/stable/api.html scanpy python包主要分四个模块: 1)read 读写模块、 https://scanpy.readthedocs.io/en/stable/api.html#reading 2)pp Prepr…

springBoot自动装配原理探究springBoot配置类Thymeleaf模板引擎

微服务 微服务是一种架构风格,由于单体架构不利于团队协作完成并且代码量较大,后期维护成本较高,逐渐有了微服务架构。微服务是将一个项目拆分成不同的服务,各个服务之间相互独立互不影响,互相通过轻量级机制通信比如…

(转载)STM32与LAN9252构建EtherCAT从站

目录 (一):项目简介 EtherCAT及项目简述 LAN9252工作模式 整体开发流程 移植要处理的问题 代码层面的工作 开发中使用的工具 (二):SSC的使用 SSC简介和下载 SSC构建协议栈文件和XML &#xff08…