您的位置:首页 > 新车 >

基于CANoe与TESTstudio实现ISO21434规范的安全测试

2022-09-25 12:00 来源:盖世汽车  阅读量:8140   

为维克多汽车及相关行业的主机厂和供应商提供专业的开放开发平台在安全领域,它提供各种安全开发和测试工具,安全软件组件和安全咨询服务,应用于创建嵌入式系统基础协议站在MICROSAR的网络安全部署中起着关键作用

维克多汽车技术有限公司商业开发经理范可发发表了车端网络安全一站式解决方案的演讲。以下是演讲内容:

维克多汽车技术有限公司商务发展经理范可发

ISO 21434标准下的车辆端部安全测试

今天的话题主要围绕车内安全通信以及相应测试技术的应用比如七层架构的以太网,需要实现各层之间的通信,所以各层都会存在潜在的网络攻击点,这就需要我们相应的应对各种入侵手段具体来说,汽车行业已经给出了明确的答案,每一层都有相应的技术手段保证通信能够安全进行,比如SecOC,TLS,IPsec,MACsec等

我的同事刚刚介绍了Victor在设计和实施阶段提供的安全方案现在我来说说测试端的安全测试后面我会提到如果客户使用加密技术,从开发到调试如何解密安全系统ISO 21434中有一些方法与功能安全ISO 26262测试中的方法不同,但大多数方法是相似的

车辆安全测试主要包括涉及安全的功能测试,主要测试安全相关功能的正确行为和系统的健壮性它是对产品安全性的测试,其次是漏洞扫描,模糊测试和渗透测试

CANoe在SIL/HIL网络安全测试中的应用

Victor在测试领域继续努力,在网络安全引入车载系统时也构建了完整的测试解决方案一般来说,供应商会接触到大量不同的OEM加解密项目需求,因此选择的工具也需要支持不同的OEM加解密系统,以衔接后续的生产,测试,DV,PV等阶段工具仅仅捕捉数据是不够的,还要将数据转化为可识别的消息,然后服务于开发,测试和生产环节

从工具层面来说,近几年OEM加密解密通信时,都有可能使用密钥或证书使用的加密和解密算法以及不同级别使用的加密和解密技术是不同的,尤其是在HPC和区域控制器领域因此,供应商需要在项目中花费大量的时间来提前了解不同的加密和解密技术,最后在开发环境中进行调试和测试,这似乎是一件非常麻烦的事情

此外,安全,新鲜度,证书等状态在ECU开发,量产交付,售后维修三个阶段都是不同的,这就带来了一个问题:供应商在生产线上部署的工具系统能否支持不同阶段的应用Victor推出的CANoe作为一款既定工具,也是希望更好的满足网络安全领域的工程化应用

此外,Victor CANoe可以为专门的安全插件提供所需的服务我们部门主要做的是明文呈现加密报文,支持OEM要求的特定变体的AUTOSAR标准和SecOC通信,实现报文加密和新鲜值管理,为以太网通信安全提供相应的支持

汽车网络安全模糊测试工具:vTESTstudio

接下来是模糊测试,可以通过CANoe将通信测试系统上的加密消息转换成明码,这样后续的测试就可以按照传统的测试步骤进行了在测试完安全功能和安全通信模块后,需要做相应的模糊测试模糊测试的区别主要有两个:第一个是针对信号应用层做模糊,第二个是基于通信和消息做模糊

模糊测试中的核心概念是:模糊测试时应该监控什么,应该发现什么问题这个在业内还是没有明确的定义可以测试应用程序和ECU不同层次的工程师对它的重视程度不同

接下来,我们来说说什么是模糊测试模糊测试由三部分组成:测试环境,模糊测试用例生成器和监控数据流需要易于使用的测试工具来模拟各种攻击,即自动生成模糊测试用例,从而为测试系统提供高利润用于模糊测试的模糊测试器可以分为两类:基于变异的模糊测试器,通过变异已有的数据样本来创建测试用例,基于生成的模糊测试器,被测系统使用的协议或文件被用于建模,基于模型生成输入并相应地创建测试用例

以上,模糊测试最重要的定义其实就是模糊测试器简单来说,测试人员只要修改工具系统中的模糊测试器,就可以根据算法规则生成相应的随机数并交给ECU,可以定义为模糊测试,只是生成器需要的数据不同

Victor的方案重用了HIL和SIL的自动化脚本开发工具vTESTstudio,并嵌入了用于模糊测试的模糊测试引擎相应的测试数据主要配置在以太网和CAN通信的消息级,以太网和CAN传输的信号级,I/O或A2L信号级等以DBC定义的三个信号为例,这三个信号通过vTEST studio中的模糊引擎在工具中进行配置,每个信号都会根据配置的规则生成模糊测试数据当生成三个信号时,将根据顺序,成对和组合的规则来配置和组合信号组合后,测试仪会将这些数据输入到测试环境和ECU中

在模糊测试中,最难的部分是测试需要监测观察项目比如有可能给ECU一组数据,使得对应任务的CPU利用率非常高如果观察者要监控数据输入中的CPU利用率,此时应该怎么做毫无疑问,要在板卡中设置一个测量功能,监测某段时间内的CPU占用率,就需要在测试过程中使用控制器本身的调试端口将其CPU占用率传输到CANoe

除了在消息级别进行模糊化,Victor还可以在I/O级别进行模糊化,因为CANoe本身就是HIL环境的测试工具CANoe结合vTESTstudio为嵌入式系统开发工程师提供了攻击者视角的类似攻击注入,并通过重用已有的配置工程数据生成模糊测试用例CANoe强大的功能有助于强化汽车电子行业的模糊测试环境:可以适应不同的OEM厂商,不同的网络协议和数据库,支持数据记录和数据回放,提供详细的自动化测试报告

另外,动态测试方案既可以覆盖HIL的真实ECU,也可以覆盖SIL的虚拟ECU,Victor都可以提供,只是在实板测试中需要提前插桩,通过调试口获取数据,这样在执行过程中就可以覆盖Victor在工具中给出的每一个测试速率。

接下来说一下CANoe对于模糊测试的优势简单来说,测试人员可以直接使用R&D部门开发的CANoe项目,在上面嵌入一个模糊测试器,然后直接进行相应的模糊测试

通常,模糊测试引擎基于黑盒测试技术,但白盒测试技术可以通过重用汽车电子行业开发和验证系统中现有的配置工程和工具来实现此外,当软件功能发生变化时,结合持续集成环境可以实现验证的快速迭代

因为CANoe的存在,Victor会更多的使用灰箱模糊测试黑盒是对通信消息的模糊测试,它利用已有的数据库及其内部的信号和变量直接操纵消息中传递的信号,从而更高效地获得结果,因为灰盒模糊测试的效率比暴力黑盒更能确定系统中存在的问题

渗透测试,漏洞扫描和诊断测试

模糊测试的下一步是渗透测试一般OEM会委托指定机构进行渗透测试渗透测试中最常用的技术手段就是刚才提到的模糊测试测试人员会通过模糊的方式检查ECU的漏洞,也有白盒,灰盒,黑盒不同的方式Victor咨询部在ECU和整车层面为OEM和tier1提供独立的渗透测试和进一步的运营保障基于灰箱方法,适用于增量回归测试,比传统的渗透测试效率更高

最后,我们来谈谈漏洞扫描和诊断测试漏洞扫描主要是针对已知的进行测试,需要提前积累漏洞库,也就是对代码规则和行业规则有一个早期的掌握Victor在行业内有多年这方面的积累

伴随着车辆ECU的日益复杂,诊断测试的测试范围以及完成诊断功能验证所需的时间和精力也在不断增加虽然诊断测试的范围在不断扩大,但是创建和执行测试用例的时间和人力投入是相对稳定的基于CANoe的自动诊断测试方案DiVa显著减少了诊断验证的时间和人力投入,同时大大增加了测试的广度和深度如果每个ECU都有一个CDD或ODX格式的诊断数据库,那么从诊断需求规格到全面的自动化协议测试只需要一小步,并且只需要很少的准备工作就可以检测到协议错误独木舟DiVa的测试后处理能力包括:对测试报告进行分类过滤,从而获得想要的测试结果,将失败的测试用例与测试数据流链接起来,为每个测试结果添加注释,便于对错误及其原因进行分类记录纠正措施并控制故障排除,将测试解决方案链接到现有的测试数据管理系统或需求管理系统,以便于集成到现有的流程中目前,全球许多汽车制造商都在使用CANoe实现诊断测试

在安全测试服务方面,Victor不仅提供工具咨询,还提供安全测试系统建设和升级服务。

公司业务拓展经理范可发于2022年8月25日在盖世汽车主办的2022中国汽车信息安全与功能安全大会上发表了《车端网络安全一站式解决方案》主题演讲。)

郑重声明:此文内容为本网站转载企业宣传资讯,目的在于传播更多信息,与本站立场无关。仅供读者参考,并请自行核实相关内容。