随着智能网联汽车时代的加速到来,网络安全成为行业关注的焦点。2024年8月28日,在汽车新技术展上,维克多汽车技术(上海)有限公司咨询顾问孙斯领深入解析了维克多在网络安全领域的最新服务与实践,从网络安全测试平台概览到具体测试方法,再到培训与技术支持,全方位展示了维克多如何助力车企应对新技术挑战,共筑智能出行的安全防线。

通过先进的模糊测试和渗透测试,维克多不仅帮助企业提前识别并修复高危漏洞,还强调了深度防御的重要性,确保智能网联汽车在各个层级都具备抵御新型攻击的能力。

孙斯领 | 维克多汽车技术(上海)有限公司咨询顾问

以下为演讲内容整理:

关于维克多咨询

维克多的话,大家可能都比较了解。但在此,我想简要介绍一下我们的咨询服务部门。我们提供的服务覆盖多个行业,不局限于某一特定领域,在汽车、航天等领域都有涉及。提及此点的原因在于,我们在安全领域积累了许多最佳实践、宝贵经验和成功案例,这些都可以借鉴并应用于汽车安全的开发与测试中。 

图源:维克多

我们的核心服务涵盖四大领域:技术转型、新技术应用、可信安全服务和培训。特别是在当前,功能安全和网络安全领域备受关注。随着新技术和法规的实施,企业常常面临将这些技术新要求有效融入产品开发及实现法规合规的挑战。我们致力于帮助企业应对这些挑战,确保顺利通过合规认证并保持竞争力。

值得一提的是,2024年8月23日,与网络安全相关的两项强制性国家标准(GB_44495& GB_44496)已经正式发布。意味着在车辆开发中必须考虑网络安全来满足法规要求。

网络安全测试概览

网络安全测试与传统测试同样基于V模型展开,主要包括模糊测试和渗透测试两个方面。与功能验证不同,这些测试更侧重于系统的鲁棒性层级。这里展示的是我们的测试流程概览图,它清晰地显示了测试需求和设计之间的关系。在网络安全设计阶段,网络安全需求必须得到充分考虑,特别是在硬件选型和软件架构设计过程中。例如,如果有国密要求,在选择硬件加解密模块时,需要确保其支持国家加密标准。此外,还需评估MCU是否有SHE等硬件扩展模块。

图源:维克多

网络安全测试方法

接下来,我们将逐一介绍几种网络安全设计的测试方法。首先是静态代码测试。在特定ECU开发中,静态代码测试的要求可能因安全等级的不同而有所差异,比如,覆盖的代码行数,声明,分支,MCDC覆盖-(Modified Condition Decision Coverage) 修正条件/判定覆盖等

100%的代码覆盖率确实意味着代码的每一部分都被执行了(基于覆盖率标准)。但在单元测试和静态分析中并不意味着:代码是正确的,代码是完整的,测试是完整的。因为需要增加基于需求(函数级)的测试设计与执行,这部分一般客户做的比较少,因为函数级的需求设计一般客户不做,只做到功能级。如果在前期没有严格遵守编码规范,那么在后期的测试中可能会发现安全相关的问题,导致必须回过头去修复这些漏洞。

接下来在进行模糊测试介绍之前,我们首先要明确其目的。因为传统功能测试中的某些用例可能无法覆盖到潜在漏洞,而模糊测试则可以深入挖掘这些功能测试以外的用例,以检测系统中可能存在的隐患。

那么,什么是模糊测试呢?简单来说,模糊测试就是通过生成大量随机半正确的测试用例并注入到被测系统中,来评估系统在各种随机输入下的表现。需要注意的是,这些随机用例如果不能通过协议解析器,那就不会传到上层应用,因此都是一些无效case。因此对于协议栈不同层级,我们需要有针对性地生成测试用例,而不是简单地生成随机测试用例,导致测试时间和资源的浪费。

在模糊测试中,我们可以通过异常检测来识别系统潜在漏洞。我们的工具集成了多种检查功能,例如信号异常、记录ECU reset的次数、监控关键性报文的周期等。此外,再实际的测试中,客户也还可以检查内存、ECU的资源消耗以及电源或电流的消耗。这可能需要外接一些硬件设备来进行监控。模糊测试case的生成方法通常包含顺序配对、组合以及穷举等测试方法。在选择这些方法时,需要平衡时间成本与测试覆盖率。虽然组合测试覆盖率高,但可能导致组合爆炸,从项目时间或成本的角度来看,未必是最佳选择。

在选择测试方法时,需要根据具体的报文或信号长度以及项目的周期和测试资源来做出决策。要有针对性地选择测试方法。 

一般做完模糊测试,我们会进行渗透测试,渗透测试起源于互联网领域,已有多种成熟的测试框架可供使用。例如,MetaSploit. 渗透测试框架涵盖从信息收集、攻击路径分析到渗透测试实施,判断系统是否可被利用的完整测试流程。那么,为什么不选择黑盒测试呢?主要原因是黑盒测试需要大量的信息收集工作,例如了解ECU或控制器的操作系统、端口、传输协议以及功能等,这些信息收集需要耗费大量时间和精力。

通常我们的测试流程如下:首先定义测试范围,接着进行信息收集,然后构建微型模型。在此过程中,网络安全工程师会分析工具路径,寻找可利用的漏洞。最后,我们生成相应的报告或评分,并针对高风险项目进行漏洞修复,并进行进一步的回归测试。

网络安全测试是基于网络安全防御体系构建的。以某控制器为例,其防御深度可能需要达到内核层级,这意味着测试需要从端口、通信到内核等各个层面逐层进行,而不仅仅是单独测试某一层。即使当前测试显示安全,也不意味着未来不会被新兴攻击手段突破,因此我们对安全防御深度提出了更高要求。

除了汽车行业,我们的测试服务也适用于其他领域,如医疗行业。我们提供的工具可以生成多个测试用例,其中一些渗透测试需要编写脚本,如暴力破解脚本。在选择字典时,需要根据不同测试案例进行相应考量。目前,基于开源机器学习模型生成密码字典的方法也越来越多,使得生成的密码组合更为精确。

新技术的出现对网络安全提出了新的挑战,这也是我们强调防御深度的重要原因。网络安全测试是一个全生命周期的管理过程。我们的网络安全咨询服务部门可以提供安全分析、安全架构设计等服务,同时我们也能帮助客户进行模糊测试和渗透测试等相关服务。

此外,我们还拥有一些工具,如TARA分析工具以及安全开发,诊断,测试等相关的工具,比如Secure Manager,它们可以用于E2E或者证书的测试。

关于培训方面,我们将定期举办网络安全测试培训,欢迎关注我们的公众号。同时,每月还会举办线上研讨会活动。9月25号在上海,我们还将举办一个技术日活动,分享网络安全的开发和测试方案,希望各位专家届时参加,谢谢。

(以上内容来自维克多汽车技术(上海)有限公司咨询顾问孙斯领于2024年8月28日在汽车新技术展发表的《网络安全测试与防御深度——构建智能出行安全基石》主题演讲。)

追加内容

本文作者可以追加内容哦 !