车机的合规性测试方法、装置、电子设备及存储介质与流程

专利2024-10-17  57



1.本技术涉及车辆技术领域,特别涉及一种车机的合规性测试方法、装置、电子设备及存储介质。


背景技术:

2.近年汽车信息安全越来越收到重视,相关部门也出台了汽车相关的法律法规、标准。在汽车信息安全中,车机尤为重要,因为大部分汽车主要的对外接口都在车机,比如蜂窝网络、wifi、蓝牙等,我们常用的通信接口都是通过车机来连接的,因此,车机的合规性测试尤为重要。
3.相关技术中,通过服务器接收检测终端发送的安全合规性检测命令;根据安全合规性检测命令获取对应的安全合规性检测规则;将安全合规性检测规则下发到agent;接收agent反馈的根据安全合规性检测规则执行相应的安全合规性检测策略获得的检测结果;对检测结果进行整合统计后发送给检测终端,以便检测终端在显示界面中显示整合统计后的检测结果。通过上述方法,使得在安全合规性检测过程中,实现了针对不同的安全合规性检测命令对安全合规性检测规则的自动调整,从而提高了安全合规性检测的检测效率,检测安全性,检测正确率以及检测灵活性。
4.然而,相关技术未描述针对车机标准方面的测试,未详细阐述车机合规性的测试方法,仅有测试方向,亟待解决。


技术实现要素:

5.本技术提供一种种车机的合规性测试方法、装置、电子设备及存储介质,以解决相关技术没有满足车机测试标准的车机合规性测试方法的问题,覆盖车机测试标准的所有要求项,详细描述了车机检测各个方面所需要的测试方法及测试工具,能指导进行合规性测试。
6.本技术第一方面实施例提供一种车机的合规性测试方法,包括以下步骤:获取车辆的至少一个待测试项目,其中,所述待测试项目包括硬件安全测试、通信协议与接口安全测试、操作系统安全测试、应用软件安全和数据安全测试;控制所述车辆以每个待测试项目对应的安全测试策略进行测试,并采集测试过程中所述车辆的硬件安全测试结果、通信协议与接口安全测试结果、操作系统安全测试结果、应用软件安全结果和数据安全测试结果;以及根据所述车辆的硬件安全测试结果、所述通信协议与接口安全测试结果、所述操作系统安全测试结果、所述应用软件安全结果和所述数据安全测试结果中的一项或多项生成所述车辆的合规性测试结果。
7.根据上述技术手段,本技术可以解决相关技术没有满足车机测试标准的车机合规性测试方法的问题,覆盖车机测试标准的所有要求项,详细描述了车机检测各个方面所需要的测试方法及测试工具,能指导进行合规性测试。
8.进一步地,在一些实施例中,所述控制所述车辆以每个待测试项目对应的安全测
试策略进行测试,包括:所述待测试项目为所述硬件安全测试时,审查所述车辆的车机设计文档、车机内调试状态和车机内芯片管角暴露状态;根据所述车机设计文档、所述车机调试状态和所述车机内芯片管角暴露状态中的一项或多项生成所述硬件安全测试结果。
9.根据上述技术手段,本技术可以针对车机测试标准中的硬件安全部分,给出相应的测试方法及测试工具,指导车辆进行硬件安全方面的合规性测试。
10.进一步地,在一些实施例中,所述控制所述车辆以每个待测试项目对应的安全测试策略进行测试,包括:所述待测试项目为所述通信协议与接口安全测试时,检测所述车辆的车机联网状态、车机通信状态、车机交互接口、车机蓝牙状态、车机网络防御状态和车机模拟状态;根据所述所述车机联网状态、所述车机通信状态、所述车机交互接口、所述车机蓝牙状态、所述车机网络防御状态和所述车机模拟状态中的一项或多项生成所述通信协议与接口安全测试结果。
11.根据上述技术手段,本技术可以针对车机测试标准中的通信协议与接口安全部分,给出相应的测试方法及测试工具,指导车辆进行通信协议与接口安全方面的合规性测试。
12.进一步地,在一些实施例中,所述控制所述车辆以每个待测试项目对应的安全测试策略进行测试,包括所述待测试项目为所述操作系统安全测试时,检测所述车辆的车机安全配置、车机权限设置、车机运行进程、车机端口连接状态、车机隐私设置、车机启动结果、车机升级状态、车机网络异常反馈设置和车机日志上传设置;根据所述车机安全配置、所述车机权限设置、所述车机运行进程、所述车机端口连接状态、所述车机隐私设置、所述车机启动结果、所述车机升级状态、所述车机网络异常反馈设置和所述车机日志上传设置中的一项或多项生成所述操作系统安全测试结果。
13.根据上述技术手段,本技术可以针对车机测试标准中的操作系统安全部分,给出相应的测试方法及测试工具,指导车辆进行操作系统安全方面的合规性测试。
14.进一步地,在一些实施例中,所述控制所述车辆以每个待测试项目对应的安全测试策略进行测试,包括:所述待测试项目为所述应用软件安全测试时,获取所述车辆的车机应用安装结果、车机漏洞扫描结果、车机数据外传结果、车机数据存储结果、车机根证书目录显示结果、车机保护测试结果、车机安全测试结果、车机调试结果、车机权限测试结果、车机接口校验结果和车机身份认证结果;根据所述车机应用安装结果、所述车机漏洞扫描结果、所述车机数据外传结果、所述车机数据存储结果、所述车机根证书目录显示结果、所述车机保护测试结果、所述车机安全测试结果、所述车机调试结果、所述车机权限测试结果、所述车机接口校验结果和所述车机身份认证结果中的一项或多项生成所述应用软件安全结果。
15.根据上述技术手段,本技术可以针对车机测试标准中的应用软件安全部分,给出相应的测试方法及测试工具,指导车辆进行应用软件安全方面的合规性测试。
16.进一步地,在一些实施例中,所述控制所述车辆以每个待测试项目对应的安全测试策略进行测试,包括:所述待测试项目为所述数据安全测试时,获取所述车辆的车机数据采集状态、车机敏感信息位置、车机删除结果状态、车机数据保护措施和车机数据恢复措施;根据所述车机数据采集状态、所述车机敏感信息位置、所述车机删除结果状态、所述车机数据保护措施和所述车机数据恢复措施中的一项或多项生成所述数据安全测试结果。
17.根据上述技术手段,本技术可以针对车机测试标准中的数据安全部分,给出相应的测试方法及测试工具,指导车辆进行数据安全方面的合规性测试。
18.本技术第二方面实施例提供一种车机的合规性测试装置,包括获取模块,用于获取车辆的至少一个待测试项目,其中,所述待测试项目包括硬件安全测试、通信协议与接口安全测试、操作系统安全测试、应用软件安全和数据安全测试;测试模块,用于控制所述车辆以每个待测试项目对应的安全测试策略进行测试,并采集测试过程中所述车辆的硬件安全测试结果、通信协议与接口安全测试结果、操作系统安全测试结果、应用软件安全结果和数据安全测试结果;以及生成模块,用于根据所述车辆的硬件安全测试结果、所述通信协议与接口安全测试结果、所述操作系统安全测试结果、所述应用软件安全结果和所述数据安全测试结果中的一项或多项生成所述车辆的合规性测试结果。
19.进一步地,在一些实施例中,所述测试模块,具体用于:所述待测试项目为所述硬件安全测试时,审查所述车辆的车机设计文档、车机内调试状态和车机内芯片管角暴露状态;根据所述车机设计文档、所述车机调试状态和所述车机内芯片管角暴露状态中的一项或多项生成所述硬件安全测试结果。
20.进一步地,在一些实施例中,所述测试模块,还用于:所述待测试项目为所述通信协议与接口安全测试时,检测所述车辆的车机联网状态、车机通信状态、车机交互接口、车机蓝牙状态、车机网络防御状态和车机模拟状态;根据所述所述车机联网状态、所述车机通信状态、所述车机交互接口、所述车机蓝牙状态、所述车机网络防御状态和所述车机模拟状态中的一项或多项生成所述通信协议与接口安全测试结果。
21.进一步地,在一些实施例中,所述测试模块,还用于:所述待测试项目为所述操作系统安全测试时,检测所述车辆的车机安全配置、车机权限设置、车机运行进程、车机端口连接状态、车机隐私设置、车机启动结果、车机升级状态、车机网络异常反馈设置和车机日志上传设置;根据所述车机安全配置、所述车机权限设置、所述车机运行进程、所述车机端口连接状态、所述车机隐私设置、所述车机启动结果、所述车机升级状态、所述车机网络异常反馈设置和所述车机日志上传设置中的一项或多项生成所述操作系统安全测试结果。
22.进一步地,在一些实施例中,所述测试模块,还用于:所述待测试项目为所述应用软件安全测试时,获取所述车辆的车机应用安装结果、车机漏洞扫描结果、车机数据外传结果、车机数据存储结果、车机根证书目录显示结果、车机保护测试结果、车机安全测试结果、车机调试结果、车机权限测试结果、车机接口校验结果和车机身份认证结果;根据所述车机应用安装结果、所述车机漏洞扫描结果、所述车机数据外传结果、所述车机数据存储结果、所述车机根证书目录显示结果、所述车机保护测试结果、所述车机安全测试结果、所述车机调试结果、所述车机权限测试结果、所述车机接口校验结果和所述车机身份认证结果中的一项或多项生成所述应用软件安全结果。
23.进一步地,在一些实施例中,所述测试模块,还用于:所述待测试项目为所述数据安全测试时,获取所述车辆的车机数据采集状态、车机敏感信息位置、车机删除结果状态、车机数据保护措施和车机数据恢复措施;根据所述车机数据采集状态、所述车机敏感信息位置、所述车机删除结果状态、所述车机数据保护措施和所述车机数据恢复措施中的一项或多项生成所述数据安全测试结果。
24.本技术第三方面实施例提供一种电子设备,包括:存储器、处理器及存储在所述存
储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现如上述实施例所述的车机的合规性测试方法。
25.本技术第四方面实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行,以用于实现如上述实施例所述的车机的合规性测试方法。
26.由此,通过获取车辆的至少一个待测试项目,包括硬件安全测试、通信协议与接口安全测试、操作系统安全测试、应用软件安全和数据安全测试,并控制车辆以每个待测试项目对应的安全测试策略进行测试,并采集测试过程中车辆的硬件安全测试结果、通信协议与接口安全测试结果、操作系统安全测试结果、应用软件安全结果和数据安全测试结果,并根据其中的一项或多项生成车辆的合规性测试结果。由此,解决相关技术没有满足车机测试标准的车机合规性测试方法的问题,覆盖车机测试标准的所有要求项,详细描述了车机检测各个方面所需要的测试方法及测试工具,能指导进行合规性测试。
27.本技术附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本技术的实践了解到。
附图说明
28.本技术上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
29.图1为根据本技术实施例提供的车机的合规性测试方法的流程图;
30.图2为根据本技术实施例提供的车机的合规性测试装置的方框示意图;
31.图3为根据本技术实施例提供的电子设备的示意图。
具体实施方式
32.下面详细描述本技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本技术,而不能理解为对本技术的限制。
33.下面参考附图描述本技术实施例的车机的合规性测试方法、装置、电子设备及存储介质。针对上述背景技术中心提到的相关技术没有满足车机测试标准的车机合规性测试方法的问题,本技术提供了一种车机的合规性测试方法,在该方法中,通过获取车辆的至少一个待测试项目,包括硬件安全测试、通信协议与接口安全测试、操作系统安全测试、应用软件安全和数据安全测试,并控制车辆以每个待测试项目对应的安全测试策略进行测试,并采集测试过程中车辆的硬件安全测试结果、通信协议与接口安全测试结果、操作系统安全测试结果、应用软件安全结果和数据安全测试结果,并根据其中的一项或多项生成车辆的合规性测试结果。由此,解决相关技术没有满足车机测试标准的车机合规性测试方法的问题,覆盖车机测试标准的所有要求项,详细描述了车机检测各个方面所需要的测试方法及测试工具,能指导进行合规性测试。
34.具体而言,图1为本技术实施例所提供的一种车机的合规性测试方法的流程示意图。
35.如图1所示,该车机的合规性测试方法包括以下步骤:
36.在步骤s101中,获取车辆的至少一个待测试项目,其中,待测试项目包括硬件安全
测试、通信协议与接口安全测试、操作系统安全测试、应用软件安全和数据安全测试。
37.其中,硬件安全测试需要符合硬件层面的安全要求,包括:对调试口、后门、管脚、通信线路、丝印的安全,可以通过对硬件芯片、pcb(printed circuit board,印制电路板)板的探测、分析来确认是否满足要求。使用到的工具可以有螺丝刀、放大镜、ttl(transistor transistor logic,集成电路制造工艺)工具、终端仿真程序、电脑。螺丝刀可以用于拆卸车机外壳;放大镜可以用于观察管脚、丝印、通信线路;ttl工具、终端仿真程序、电脑可以用于调试口、后门的分析。
38.通信协议与接口安全测试需要符合通信连接、传输、响应过程的安全要求,可以通过抓包、篡改、重放等方式来确认是否满足要求,使用到的工具可以有tcpdump、wireshark、burpsuite、aircrack、hcitool、bertooth、canoe(can open environment,总线开发环境),其中,tcpdump用于抓取车机通信数据包;wireshark用于分析数据包等;burpsuite用于篡改、重放;aircrack用于wifi爆破;hcitool用于蓝牙抓包分析;canoe用于抓取、模拟can总线数据。
39.操作系统安全测试符合系统的配置、调用控制能力、安全启动、更新、隔离、管理方面的安全要求,可以通过对系统配置信息分析、功能调用、版本刷写等方式来确认是否满足要求,使用到的工具可以有adb(android debug bridge,安卓调试桥)、系统漏洞扫描工具等,其中,adb用于对系统的调试;系统漏洞扫描工具用于对系统的漏洞发现。
40.应用软件安全测试需要符合应用的基础功能、代码访问控制、运行、通信、日志的安全要求,可以通过对软件的逆向、抓包、代码审计等方式来确认是否满足需求,使用到的工具可以有app(application,应用)漏洞扫描工具、berpsuit、二进制逆向工具、adb、tcpdum等,其中,app漏洞扫描工具用于漏洞发现,二进制逆向工具用于对apk的逆向以便分析。
41.数据安全测试需要符合对数据采集、存储、传输、销毁过程的安全要求,可以通过对敏感数据的分析、查看、篡改、伪造等方式确认是否满足要求。使用到的工具有adb、navicat、burpsuit、mysql等,其中,navicat和mysql用于数据库的查看、分析。
42.在步骤s102中,控制车辆以每个待测试项目对应的安全测试策略进行测试,并采集测试过程中车辆的硬件安全测试结果、通信协议与接口安全测试结果、操作系统安全测试结果、应用软件安全结果和数据安全测试结果。
43.进一步地,在一些实施例中,控制车辆以每个待测试项目对应的安全测试策略进行测试,包括:待测试项目为硬件安全测试时,审查车辆的车机设计文档、车机内调试状态和车机内芯片管角暴露状态;根据车机设计文档、车机调试状态和车机内芯片管角暴露状态中的一项或多项生成硬件安全测试结果。
44.具体地,在本技术实施例中,硬件安全测试可以按照以下步骤进行:
45.a)首先审查设计文档,确认硬件是否保留调试接口,有哪些调试口及暴露管脚、通信线路、芯片丝印的考量,如无详细设计文档,可通过访谈的方式进行记录并形成文档确认。
46.b)然后测试验证,使用拆卸工具拆卸车机外壳,对设计文档中的调试接口进行连接访问,确认是否有访问限制,查看pcb上是否存在其他疑似调试接口的接触点,一般此类接触点为均匀排布的四个或多个点,发现后可用调试工具进行探测,确认是否带有调试功
能;
47.c)再观察主要芯片,例如cpu(central processing unit,中央处理器)、mcu(main computational unit,主要计算部件)、4g(fourth-generation,第四代移动通信)芯片等,是否有明显暴露的管脚,是否存在带有端口信息、管脚信息这类敏感信息的丝印。
48.进一步地,在一些实施例中,控制车辆以每个待测试项目对应的安全测试策略进行测试,包括:待测试项目为通信协议与接口安全测试时,检测车辆的车机联网状态、车机通信状态、车机交互接口、车机蓝牙状态、车机网络防御状态和车机模拟状态;根据车机联网状态、车机通信状态、车机交互接口、车机蓝牙状态、车机网络防御状态和车机模拟状态中的一项或多项生成通信协议与接口安全测试结果。
49.具体地,在本技术实施例中,通信协议与接口安全测试可以按照以下步骤进行:
50.a)车机联网,通过adb,安装tcpdump,更改权限,监听wlan0端口抓取数据包,将车机端抓取的数据包导出至电脑,wireshark打开,分析数据包,尝试删除车机内置的根证书,查看与后台通信的app能否正常工作;
51.b)车机和电脑处于同一局域网,配置burpsuite代理ip和端口,将车机连接wifi的ip和端口配置成电脑的,导出burpsuite证书到车机根证书目录下,使用车机与后台通信,电脑端burpsuite抓取数据包,查看是否有加密、身份认证过程,对数据包进行篡改、重放,查看与后台通信的app能否正常工作;
52.c)审查设计方案,查看私有是否有远程通信协议密钥衍生,远程通信协议密钥存储,远程通信协议密钥更新策略;
53.d)收集2个以上具备热点功能的车机;打开所有车机热点,查看密码是否相同;
54.e)打开车机热点,查看密码复杂度是否符合要求,对密码设置为弱口令,查看是否有弱口令限制及提示,查看是否有弱口令限制及提示;
55.f)审查设计文档,是否有人机交互的接口,是否有跨信任网络不同交互系统间的接口;
56.g)查看车机是否有wifi密码设置功能,设置后是否需要输入密码登录;
57.h)使用手机连接车机蓝牙,查看是否有登录认证;
58.i)通过adb,篡改热点信息配置文件,查看能否直接篡改;
59.j)暴力破解wifi密码,查看能否成功;
60.k)使用kali虚拟机自带的软件,搜索是否有隐藏蓝牙;
61.l)通过蓝牙抓包,查看是否使用安全协议;
62.m)用手机蓝牙连接车机蓝牙,查看车机端是否有配对确认;
63.n)审查设计文档,查看是否有蓝牙连接的认证机制;
64.o)通过蓝牙抓包,查看通信是否加密;
65.p)确定wifi加密方式至少为wpa2+psk;
66.q)通过canoe破环can网络、以太网络数据包的完整性,查看能否正常使用;
67.r)审查设计文档,确认正常业务所需端口,通过nmap扫描端口,查看是否有多余开放端口,对端口进行连接,查看是否存在shell界面;
68.s)审查设计文档,是否有apn专网,不同区域数据是否有隔离,是否有apn使用;
69.t)审查设计文档,确定can白名单指令范围,使用canoe连接车机,模拟非白名单内
的指令并发送,抓取总线数据,查看是否有模拟的指令。
70.进一步地,在一些实施例中,控制车辆以每个待测试项目对应的安全测试策略进行测试,包括待测试项目为操作系统安全测试时,检测车辆的车机安全配置、车机权限设置、车机运行进程、车机端口连接状态、车机隐私设置、车机启动结果、车机升级状态、车机网络异常反馈设置和车机日志上传设置;根据车机安全配置、车机权限设置、车机运行进程、车机端口连接状态、车机隐私设置、车机启动结果、车机升级状态、车机网络异常反馈设置和车机日志上传设置中的一项或多项生成操作系统安全测试结果。
71.具体地,在本技术实施例中,操作系统安全测试可以按照以下步骤进行:
72.a)首先对安全配置进行检测,使用adb连接车机,查看进入后是否为root(用户)账户,是否有登录密码或其他安全访问措施,密码强度是否满足要求;
73.b)普通账户使用su指令,查看是否能提权或提权有无限制;
74.c)对系统的数据库、app的数据库、密码证书存储文件等关键文件的系统权限进行查看,是否有安全的权限设置;
75.d)使用ps指令查看运行中的进程,并根据当前情况判断是否存在非必要的进程;
76.e)使用namp扫描逻辑端口,使用adb connect指令尝试对扫描出的逻辑端口连接,查看是否存在有远程接入的端口;
77.f)正常使用电话、三方通话、短信、彩信邮件、wifi、4g、定位、录音、人机交互等功能,查看使用前是否有相应的安全或敏感信息使用授权,使用过程中查看是否有相应的使用状态提示,关闭后是否还在进行信息采集;
78.g)获取可信根、签名的物理地址,对固件中地址位置的数据分别篡改,使用烧录工具分别烧录至车机中,查看车机能否正常启动;
79.h)将车机升级包的版本降低进行升级,查看是否能正常升级或有无限制措施;
80.i)将车机升级包使用二进制工具打开,任意篡改数据后,查看是否能升级成功;
81.j)将车机升级包重新签名再升级,查看是否能升级成功;
82.k)使用正常升级包升级,升级过程中断电,再重启查看车机能否正常使用;
83.l)对系统隔离的测试,主要通过设计文档的审查来查看是否满足要求;
84.m)车机连接手机热点,制造网络异常,将手机热点关闭,查看车机状态是否有网络异常反馈;
85.n)审查文档,确定操作系统是否有审计功能(auditd服务),确认操作系统是否将日志上传至服务器;
86.o)使用adb获取日志文档,查询日志是否对重要日志记录,同时对日志进行篡改、删除查看有无相关防护;
87.p)使用普通权限账户登录,能否查看root权限的文件;使用漏洞扫描工具对系统进行扫描;
88.q)通过编写脚本模拟应用进行控车行为,查看能否成功。
89.进一步地,在一些实施例中,控制车辆以每个待测试项目对应的安全测试策略进行测试,包括:待测试项目为应用软件安全测试时,获取车辆的车机应用安装结果、车机漏洞扫描结果、车机数据外传结果、车机数据存储结果、车机根证书目录显示结果、车机保护测试结果、车机安全测试结果、车机调试结果、车机权限测试结果、车机接口校验结果和车
机身份认证结果;根据车机应用安装结果、车机漏洞扫描结果、车机数据外传结果、车机数据存储结果、车机根证书目录显示结果、车机保护测试结果、车机安全测试结果、车机调试结果、车机权限测试结果、车机接口校验结果和车机身份认证结果中的一项或多项生成应用软件安全结果。
90.具体地,在本技术实施例中,应用软件安全测试可以按照以下步骤进行:
91.a)使用adb push指令安装网上下载的应用查看能否安装成功;
92.b)使用app漏扫工具对车机进行漏洞检测;
93.c)打开app查看其明确授权需要采集的信息范围,使用app隐私合规检测工具,遍历查看是否有非授权收集信息,使用burpsuite工具app抓包,查看有无数据外传;
94.d)通过adb打开app的data/data目录,该目录下存储着app的数据库,使用find指令找到以“.db”结尾的文件,导出文件至电脑使用navicat查看数据是否安全存储;
95.e)将车机和测试电脑处于同一局域网,配置burpsuite代理ip和端口,将车机连接wifi的ip和端口配置成电脑的,导出burpsuite证书到车机根证书目录下;
96.f)打开app抓取数据包,查看app通信时的会话是否有保护(随机id等);打开app查看其有无登录功能,若有,检查app是否检查用户输入的密码,禁止用户设置弱口令;
97.g)使用逆向软件jadx查看app代码中是否使用加密算法、是否存在私钥,签名是否正常,若有,查看其使用的加密算法和参数是否为已验证的、安全的,分析代码逻辑,查看私钥琐使用的范围,是否用于多种用途;审查文档,查看app使用的随机数是否由已验证的、安全的随机数生成器生成;
98.h)使用app代码扫描工具、开源组件扫描工具扫描app,查看是否存在漏洞;使用apktool工具反编译app,查看反编译后的androidmainfest.xml文件,搜索查看是否有debug字段,若有,检查debug的值是否为true;
99.i)adb输入命令打印app日志adb logout》applog.log,操作app界面功能,查看输出日志中是否存在调试信息cat applog.log;
100.j)使用apk查壳工具pkid,查看app是否加壳java-jar apkscan-pkid.jar,使用jadx逆向app查看代码中的函数名变量是否更改为abc等或看不懂逻辑的字符;
101.k)审查设计文档,检查是否授予超出其实际业务需求的权限;
102.l)检查app是否有输入的接口,若有,抓包分析查看其对输入的信息是否进行校验;
103.m)审查设计文档,检查身份认证在本地进行;
104.n)使用android killer对关键app(控制车辆、支付相关的)进行反编译,尝试篡改app,篡改后push到车机中查看能否正常启动;
105.o)查看app是否有输入敏感信息的功能,例如支付密码等,查看是否使用安全键盘或防录屏措施;
106.p)打开运行app,正常退出后查看缓存文件中是否存在敏感信息缓存文件目录位置:/data/data/xxxx/cache/;
107.q)使用burpsuit抓包,打开app遍历其所有功能并抓包,查看有无接口提供敏感信息,查看app通信时的敏感信息是否加密;
108.r)使用tcpdump将车机端抓取的数据包,导出至电脑,wireshark打开,分析数据
包,检查app与后台通信是否进行双向认证,检查参数设置是否已验证,wireshark过滤关键字ssl,查看带certificatez的包,将其证书导出,检查证书是否为私有的;
109.s)查看日志目录的权限,切换到非授权用户查看是否能读写文件;
110.t)使用rm指令尝试删除日志区域,查看存储有无安全防护,尝试覆盖日志区域,查看有无防护;
111.u)将日志pull到电脑,使用文本编辑软件查看日志,利用全局搜索(关键字)查看有无敏感信息。
112.进一步地,在一些实施例中,控制车辆以每个待测试项目对应的安全测试策略进行测试,包括:待测试项目为数据安全测试时,获取车辆的车机数据采集状态、车机敏感信息位置、车机删除结果状态、车机数据保护措施和车机数据恢复措施;根据车机数据采集状态、车机敏感信息位置、车机删除结果状态、车机数据保护措施和车机数据恢复措施中的一项或多项生成数据安全测试结果。
113.具体地,在本技术实施例中,数据安全测试可以按照以下步骤进行:
114.a)审查设计文档,确认哪些app会采集用户数据,打开app查看是否明确告知用户采集行为,对其他未采集用户数据app,任意挑选3个进行抽样检查,检测.db文件是否有用户数据、个人敏感信息;使用手机对车机下发控车指令,查看手机端在下发前是否有明确告知用户,启动一项服务,检查是否在服务启动之后才进行数据采集,终止服务时停止数据采集;
115.b)审查设计文档,确认哪些app有存储敏感信息,使用adb将db文件导出,查看是否存在敏感信息;
116.c)通过查看设计文档,检查是否有效实现重要安全参数的安全存储和运算;审查涉及文档,确认哪些文件有权限限制,进入adb,使用system权限对文件进行读写,查看结果,检查存储在车载信息交互系统中的个人生物识别信息,是否使用了仅存摘要等技术措施;
117.d)通过adb,使用system权限对用户数据进行删除,查看删除结果,在用户同意后删除,查看删除结果;
118.e)审查设计文档,查看是否有操作日志存储功能,若有,查看日志;截取传输过程的数据,删除、篡改等操作破坏数据,重放,查看是否有相应的保护措施;
119.f)安装应用程序,查看.db文件中是否存在用户数据,卸载应用程序,查看.db文件中用户数据是否清空,重新安装该程序,查看用户数据是否恢复;
120.g)确认是否存在共享应用程序,若存在,登录帐号,然后退出,检查db文件中是否有个人敏感信息存在。
121.在步骤s103中,根据车辆的硬件安全测试结果、通信协议与接口安全测试结果、操作系统安全测试结果、应用软件安全结果和数据安全测试结果中的一项或多项生成车辆的合规性测试结果。
122.由此,根据车机检测标准,覆盖所有车机检测标准中的所有要求项,生成车辆的合规性测试结果。
123.根据本技术实施例提出的车机的合规性测试方法,通过获取车辆的至少一个待测试项目,包括硬件安全测试、通信协议与接口安全测试、操作系统安全测试、应用软件安全
和数据安全测试,并控制车辆以每个待测试项目对应的安全测试策略进行测试,并采集测试过程中车辆的硬件安全测试结果、通信协议与接口安全测试结果、操作系统安全测试结果、应用软件安全结果和数据安全测试结果,并根据其中的一项或多项生成车辆的合规性测试结果。由此,解决相关技术没有满足车机测试标准的车机合规性测试方法的问题,覆盖车机测试标准的所有要求项,详细描述了车机检测各个方面所需要的测试方法及测试工具,能指导进行合规性测试。
124.其次参照附图描述根据本技术实施例提出的车机的合规性测试装置。
125.图2是本技术实施例的车机的合规性测试装置的方框示意图。
126.如图2所示,该车机的合规性测试装置10包括:获取模块100、测试模块200和生成模块300。
127.其中,获取模块100,用于获取车辆的至少一个待测试项目,其中,待测试项目包括硬件安全测试、通信协议与接口安全测试、操作系统安全测试、应用软件安全和数据安全测试;
128.测试模块200,用于控制车辆以每个待测试项目对应的安全测试策略进行测试,并采集测试过程中车辆的硬件安全测试结果、通信协议与接口安全测试结果、操作系统安全测试结果、应用软件安全结果和数据安全测试结果;以及
129.生成模块300,用于根据车辆的硬件安全测试结果、通信协议与接口安全测试结果、操作系统安全测试结果、应用软件安全结果和数据安全测试结果中的一项或多项生成车辆的合规性测试结果。
130.进一步地,在一些实施例中,测试模块200,具体用于:待测试项目为硬件安全测试时,审查车辆的车机设计文档、车机内调试状态和车机内芯片管角暴露状态;根据车机设计文档、车机调试状态和车机内芯片管角暴露状态中的一项或多项生成硬件安全测试结果。
131.进一步地,在一些实施例中,测试模块200,还用于:待测试项目为通信协议与接口安全测试时,检测车辆的车机联网状态、车机通信状态、车机交互接口、车机蓝牙状态、车机网络防御状态和车机模拟状态;根据车机联网状态、车机通信状态、车机交互接口、车机蓝牙状态、车机网络防御状态和车机模拟状态中的一项或多项生成通信协议与接口安全测试结果。
132.进一步地,在一些实施例中,测试模块200,还用于:待测试项目为操作系统安全测试时,检测车辆的车机安全配置、车机权限设置、车机运行进程、车机端口连接状态、车机隐私设置、车机启动结果、车机升级状态、车机网络异常反馈设置和车机日志上传设置;根据车机安全配置、车机权限设置、车机运行进程、车机端口连接状态、车机隐私设置、车机启动结果、车机升级状态、车机网络异常反馈设置和车机日志上传设置中的一项或多项生成操作系统安全测试结果。
133.进一步地,在一些实施例中,测试模块200,还用于:待测试项目为应用软件安全测试时,获取车辆的车机应用安装结果、车机漏洞扫描结果、车机数据外传结果、车机数据存储结果、车机根证书目录显示结果、车机保护测试结果、车机安全测试结果、车机调试结果、车机权限测试结果、车机接口校验结果和车机身份认证结果;根据车机应用安装结果、车机漏洞扫描结果、车机数据外传结果、车机数据存储结果、车机根证书目录显示结果、车机保护测试结果、车机安全测试结果、车机调试结果、车机权限测试结果、车机接口校验结果和
车机身份认证结果中的一项或多项生成应用软件安全结果。
134.进一步地,在一些实施例中,测试模块200,还用于:待测试项目为数据安全测试时,获取车辆的车机数据采集状态、车机敏感信息位置、车机删除结果状态、车机数据保护措施和车机数据恢复措施;根据车机数据采集状态、车机敏感信息位置、车机删除结果状态、车机数据保护措施和车机数据恢复措施中的一项或多项生成数据安全测试结果。
135.需要说明的是,前述对车机的合规性测试方法实施例的解释说明也适用于该实施例的车机的合规性测试装置,此处不再赘述。
136.根据本技术实施例提出的车机的合规性测试装置,通过获取车辆的至少一个待测试项目,包括硬件安全测试、通信协议与接口安全测试、操作系统安全测试、应用软件安全和数据安全测试,并控制车辆以每个待测试项目对应的安全测试策略进行测试,并采集测试过程中车辆的硬件安全测试结果、通信协议与接口安全测试结果、操作系统安全测试结果、应用软件安全结果和数据安全测试结果,并根据其中的一项或多项生成车辆的合规性测试结果。由此,解决相关技术没有满足车机测试标准的车机合规性测试方法的问题,覆盖车机测试标准的所有要求项,详细描述了车机检测各个方面所需要的测试方法及测试工具,能指导进行合规性测试。
137.图3为本技术实施例提供的电子设备的结构示意图。该电子设备可以包括:
138.存储器301、处理器302及存储在存储器301上并可在处理器302上运行的计算机程序。
139.处理器302执行程序时实现上述实施例中提供的车机的合规性测试方法。
140.进一步地,电子设备还包括:
141.通信接口303,用于存储器301和处理器302之间的通信。
142.存储器301,用于存放可在处理器302上运行的计算机程序。
143.存储器301可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
144.如果存储器301、处理器302和通信接口303独立实现,则通信接口303、存储器301和处理器302可以通过总线相互连接并完成相互间的通信。总线可以是工业标准体系结构(industry standard architecture,简称为isa)总线、外部设备互连(peripheral component,简称为pci)总线或扩展工业标准体系结构(extended industry standard architecture,简称为eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图3中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
145.可选的,在具体实现上,如果存储器301、处理器302及通信接口303,集成在一块芯片上实现,则存储器301、处理器302及通信接口303可以通过内部接口完成相互间的通信。
146.处理器302可能是一个中央处理器(central processing unit,简称为cpu),或者是特定集成电路(application specific integrated circuit,简称为asic),或者是被配置成实施本技术实施例的一个或多个集成电路。
147.本技术实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上的车机的合规性测试方法。
148.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特
点包含于本技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或n个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
149.此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本技术的描述中,“n个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
150.流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更n个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本技术的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本技术的实施例所属技术领域的技术人员所理解。
151.在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或n个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
152.应当理解,本技术的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,n个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
153.本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
154.此外,在本技术各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机
可读取存储介质中。
155.上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本技术的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本技术的限制,本领域的普通技术人员在本技术的范围内可以对上述实施例进行变化、修改、替换和变型。

技术特征:
1.一种车机的合规性测试方法,其特征在于,包括以下步骤:获取车辆的至少一个待测试项目,其中,所述待测试项目包括硬件安全测试、通信协议与接口安全测试、操作系统安全测试、应用软件安全和数据安全测试;控制所述车辆以每个待测试项目对应的安全测试策略进行测试,并采集测试过程中所述车辆的硬件安全测试结果、通信协议与接口安全测试结果、操作系统安全测试结果、应用软件安全结果和数据安全测试结果;以及根据所述车辆的硬件安全测试结果、所述通信协议与接口安全测试结果、所述操作系统安全测试结果、所述应用软件安全结果和所述数据安全测试结果中的一项或多项生成所述车辆的合规性测试结果。2.根据权利要求1所述的方法,其特征在于,所述控制所述车辆以每个待测试项目对应的安全测试策略进行测试,包括:所述待测试项目为所述硬件安全测试时,审查所述车辆的车机设计文档、车机内调试状态和车机内芯片管角暴露状态;根据所述车机设计文档、所述车机调试状态和所述车机内芯片管角暴露状态中的一项或多项生成所述硬件安全测试结果。3.根据权利要求2所述的方法,其特征在于,所述控制所述车辆以每个待测试项目对应的安全测试策略进行测试,包括:所述待测试项目为所述通信协议与接口安全测试时,检测所述车辆的车机联网状态、车机通信状态、车机交互接口、车机蓝牙状态、车机网络防御状态和车机模拟状态;根据所述所述车机联网状态、所述车机通信状态、所述车机交互接口、所述车机蓝牙状态、所述车机网络防御状态和所述车机模拟状态中的一项或多项生成所述通信协议与接口安全测试结果。4.根据权利要求1所述的方法,其特征在于,所述控制所述车辆以每个待测试项目对应的安全测试策略进行测试,包括:所述待测试项目为所述操作系统安全测试时,检测所述车辆的车机安全配置、车机权限设置、车机运行进程、车机端口连接状态、车机隐私设置、车机启动结果、车机升级状态、车机网络异常反馈设置和车机日志上传设置;根据所述车机安全配置、所述车机权限设置、所述车机运行进程、所述车机端口连接状态、所述车机隐私设置、所述车机启动结果、所述车机升级状态、所述车机网络异常反馈设置和所述车机日志上传设置中的一项或多项生成所述操作系统安全测试结果。5.根据权利要求1所述的方法,其特征在于,所述控制所述车辆以每个待测试项目对应的安全测试策略进行测试,包括:所述待测试项目为所述应用软件安全测试时,获取所述车辆的车机应用安装结果、车机漏洞扫描结果、车机数据外传结果、车机数据存储结果、车机根证书目录显示结果、车机保护测试结果、车机安全测试结果、车机调试结果、车机权限测试结果、车机接口校验结果和车机身份认证结果;根据所述车机应用安装结果、所述车机漏洞扫描结果、所述车机数据外传结果、所述车机数据存储结果、所述车机根证书目录显示结果、所述车机保护测试结果、所述车机安全测试结果、所述车机调试结果、所述车机权限测试结果、所述车机接口校验结果和所述车机身
份认证结果中的一项或多项生成所述应用软件安全结果。6.根据权利要求1所述的方法,其特征在于,所述控制所述车辆以每个待测试项目对应的安全测试策略进行测试,包括:所述待测试项目为所述数据安全测试时,获取所述车辆的车机数据采集状态、车机敏感信息位置、车机删除结果状态、车机数据保护措施和车机数据恢复措施;根据所述车机数据采集状态、所述车机敏感信息位置、所述车机删除结果状态、所述车机数据保护措施和所述车机数据恢复措施中的一项或多项生成所述数据安全测试结果。7.一种车机的合规性测试装置,其特征在于,包括:获取模块,用于获取车辆的至少一个待测试项目,其中,所述待测试项目包括硬件安全测试、通信协议与接口安全测试、操作系统安全测试、应用软件安全和数据安全测试;测试模块,用于控制所述车辆以每个待测试项目对应的安全测试策略进行测试,并采集测试过程中所述车辆的硬件安全测试结果、通信协议与接口安全测试结果、操作系统安全测试结果、应用软件安全结果和数据安全测试结果;以及生成模块,用于根据所述车辆的硬件安全测试结果、所述通信协议与接口安全测试结果、所述操作系统安全测试结果、所述应用软件安全结果和所述数据安全测试结果中的一项或多项生成所述车辆的合规性测试结果。8.根据权利要求7所述的装置,其特征在于,所述测试模块,具体用于:所述待测试项目为所述硬件安全测试时,审查所述车辆的车机设计文档、车机内调试状态和车机内芯片管角暴露状态;根据所述车机设计文档、所述车机调试状态和所述车机内芯片管角暴露状态中的一项或多项生成所述硬件安全测试结果。9.一种电子设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现如权利要求1-6任一项所述的车机的合规性测试方法。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行,以用于实现如权利要求1-6任一项所述的车机的合规性测试方法。

技术总结
本申请特别涉及一种车机的合规性测试方法、装置、电子设备及存储介质,其中,方法包括:获取车辆的至少一个待测试项目,包括硬件安全测试、通信协议与接口安全测试、操作系统安全测试、应用软件安全和数据安全测试;控制车辆以每个待测试项目对应的安全测试策略进行测试,并采集测试过程中车辆的硬件安全测试结果、通信协议与接口安全测试结果、操作系统安全测试结果、应用软件安全结果和数据安全测试结果;并根据其中的一项或多项生成车辆的合规性测试结果。由此,解决了相关技术没有满足车机测试标准的车机合规性测试方法的问题,覆盖车机测试标准的所有要求项,详细描述了车机检测各个方面所需要的测试方法及测试工具,能指导进行合规性测试。导进行合规性测试。导进行合规性测试。


技术研发人员:张剑雄 何文 汪向阳 谭成宇 曾涛
受保护的技术使用者:重庆长安汽车股份有限公司
技术研发日:2022.06.30
技术公布日:2022/11/1
转载请注明原文地址: https://tieba.8miu.com/read-10043.html

最新回复(0)