CN114489008A - 车辆系统固件安全保护方法、装置和计算机设备 - Google Patents

车辆系统固件安全保护方法、装置和计算机设备 Download PDF

Info

Publication number
CN114489008A
CN114489008A CN202210080358.4A CN202210080358A CN114489008A CN 114489008 A CN114489008 A CN 114489008A CN 202210080358 A CN202210080358 A CN 202210080358A CN 114489008 A CN114489008 A CN 114489008A
Authority
CN
China
Prior art keywords
firmware
data
vehicle
protection
safety
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202210080358.4A
Other languages
English (en)
Other versions
CN114489008B (zh
Inventor
章维
刘云飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Xingka Software Technology Development Co Ltd
Original Assignee
Shenzhen Xingka Software Technology Development Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Xingka Software Technology Development Co Ltd filed Critical Shenzhen Xingka Software Technology Development Co Ltd
Priority to CN202210080358.4A priority Critical patent/CN114489008B/zh
Publication of CN114489008A publication Critical patent/CN114489008A/zh
Application granted granted Critical
Publication of CN114489008B publication Critical patent/CN114489008B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0218Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
    • G05B23/0221Preprocessing measurements, e.g. data collection rate adjustment; Standardization of measurements; Time series or signal analysis, e.g. frequency analysis or wavelets; Trustworthiness of measurements; Indexes therefor; Measurements using easily measured parameters to estimate parameters difficult to measure; Virtual sensor creation; De-noising; Sensor fusion; Unconventional preprocessing inherently present in specific fault detection methods like PCA-based methods
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/023Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
    • B60R16/0231Circuits relating to the driving or the functioning of the vehicle
    • B60R16/0232Circuits relating to the driving or the functioning of the vehicle for measuring vehicle parameters and indicating critical, abnormal or dangerous conditions
    • B60R16/0234Circuits relating to the driving or the functioning of the vehicle for measuring vehicle parameters and indicating critical, abnormal or dangerous conditions related to maintenance or repairing of vehicles

Abstract

本申请涉及车辆诊断技术领域,公开了一种车辆系统固件安全保护方法、装置和计算机设备,基于车载数据对车辆各系统的固件的安全性能进行检测,并生成检测报告,能够了解到系统中的固件安全风险信息,根据固件安全风险信息获取选取指令,从而使得诊断设备进入与该固件对应的系统内,这样能够便于诊断设备对该系统的系统数据进行提取与分析,从而便于根据获取到的系统数据生成与系统数据对应的固件保护数据,并将该固件保护数据发送至系统,以使系统能够根据固件保护数据对系统内的固件进行安全保护,从而能够对已经出现固件安全风险的固件进行安全保护,避免固件的原始数据被进一步恶意篡改或造成关键数据泄漏,提高车辆各系统内固件的安全性。

Description

车辆系统固件安全保护方法、装置和计算机设备
技术领域
本申请涉及车辆诊断技术领域,特别涉及一种车辆系统固件安全保护方法、装置和计算机设备。
背景技术
在现代汽车中,车体控制和车载服务两大电子系统组成了汽车的电子系统,其中车载诊断系统(On-Board Diagnosis System,OBD)设备能够接入车内控制器局域网络,并通过诊断会话对车内控制器发起信息获取或状态控制,从而帮助维修人员快速定位、修复车辆内的故障。由于OBD的广泛运用,对设备固件进行破坏将对汽车维修甚至是行车安全构成影响,加之OBD自身结构复杂又与整车在通信和控制上有紧密联系,因此对其固件保护既困难,又重要。
现有的车载诊断设备为一个独立于车体的嵌入式设备,一般为车载诊断人员在进行车辆检修时的手持设备,具备串口通信功能和车内CAN总线通信功能,支持网络通信及高计算能力。其可以向车内控制器(如车门、发动机等含控制器的设备)发起诊断会话,实现对车内控制器的信息收集、动作控制,因此其固件安全往往将影响到车辆安全。
发明内容
本申请的主要目的为提供一种车辆系统固件安全保护方法,旨在解决现有技术中使用诊断设备对车辆进行故障诊断造成车辆固件安全性能降低的技术问题。
本申请提出一种车辆系统固件安全保护方法,应用于车辆诊断设备,所述车辆诊断设备与车辆通信连接,包括:
获取车辆的车载数据,并根据所述车载数据对车辆的固件安全进行检测,得到检测报告,其中,所述检测报告中包括车辆各个系统的固件安全风险信息;
根据所述固件安全风险信息获取选取指令,并根据所述选取指令进入与所述固件安全风险信息对应的系统;
获取系统数据,并根据所述系统数据向所述系统发送固件保护数据,以使所述系统根据所述固件保护数据执行固件安全保护动作。
作为优选,所述根据所述车载数据对车辆的固件安全进行检测的步骤,包括:
根据所述车载数据对车辆系统进行划分,得到多个系统的系统数据;
根据每个系统的系统数据查找与所述系统对应的密码算法;
根据所述密码算法对所述系统内的固件进行解包,得到解包后的固件信息;
根据所述固件信息对固件安全进行检测,得到包括各个固件的安全风险评估检测报告。
作为优选,所述根据每个系统的系数数据查找与所述系统对应的密码算法的步骤,包括:
获取所述系统数据中每一个固件可执行二进制的文件;
对每一个所述文件进行密码函数识别,得到多个文件的密码函数特征,其中,所述密码函数特征包括指令统计特征、循环结构特征、函数结构特征与数据流分析特征;
获取开源密码库的应用特征,并根据所述应用特征与所述密码函数特征查找与所述系统中每一个固件所对应的密码算法。
作为优选,所述获取系统数据,并根据所述系统数据向所述系统发送固件保护数据的步骤,包括:
根据所述车载数据获取每一个系统中的固件代码;
对所述固件代码的重要属性进行优先级划分,得到固件核心可信代码、固件普通可信代码、以及固件非可信代码;
根据所述系统数据获取固件配置数据,其中,所述固件配置数据包括所述固件的历史诊断数据和允许车辆诊断设备对固件进行配置的配置数据;
根据所述固件的历史诊断数据和允许诊断设备对固件进行配置的配置数据对所述固件配置数据的保护等级进行优先级划分,得到第一保护数据集、第二保护数据集与第三保护数据集;
对所述固件核心可信代码、固件普通可信代码、固件非可信代码以及所述第一保护数据集、第二保护数据集、第三保护数据集建立代码数据匹配关联表,其中,所述固件核心可信代码匹配所述第一保护数据集,所述固件普通可信代码匹配所述第二保护数据集,所述固件非可信代码匹配所述第三保护数据集;
根据所述代码数据匹配关联表生成与所述代码数据匹配关联表对应的固件保护数据。
作为优选,所述根据所述代码数据匹配关联表生成与所述代码数据匹配关联表对应的固件保护数据的步骤,包括:
根据所述固件核心可信代码与所述第一保护数据集查找第一内核基址;
根据所述第一内核基址获取第一内核静态数据;
对所述第一内核静态数据进行第一代码混淆,得到第一固件保护数据;
根据所述固件普通可信代码与所述第二保护数据集查找第二内核基址;
根据所述第二内核基址获取第二内核静态数据;
对所述第二内核静态数据进行第二代码混淆,得到第二固件保护数据;
根据所述固件非可信代码与所述第三保护数据集查找第三内核基址;
根据所述第三内核基址获取第三内核静态数据;
对所述第三内核静态数据进行第三代码混淆,得到第三固件保护数据。
作为优选,所述根据所述固件安全风险信息获取选取指令,并根据所述选取指令进入与所述固件安全风险信息对应的系统的步骤之后,还包括:
获取所述系统中各个固件的安全软件的版本信息;
判断所述安全软件的版本信息是否是预设版本信息;
若所述安全软件的版本信息不是预设版本信息,获取与所述固件对应的安全软件升级包,以使所述固件根据所述安全软件升级包对固件安全软件进行升级。
作为优选,所述车辆诊断设备与车辆远程通信连接。
本申请还提供一种车辆系统固件安全保护装置,包括:
第一获取模块,用于获取车辆的车载数据,并根据所述车载数据对车辆的固件安全进行检测,得到检测报告,其中,所述检测报告中包括车辆各个系统的固件安全风险信息;
第二获取模块,用于根据所述固件安全风险信息获取选取指令,并根据所述选取指令进入与所述固件安全风险信息对应的系统;
发送模块,用于获取系统数据,并根据所述系统数据向所述系统发送固件保护数据,以使所述系统根据所述固件保护数据执行固件安全保护动作。
本申请还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述车辆系统固件安全保护方法的步骤。
本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述车辆系统固件安全保护方法的步骤。
本申请的有益效果为:通过获其车辆的车载数据,从而基于车载数据对车辆各系统的固件的安全性能进行检测,并生成检测报告,这样能够了解到系统中的固件安全风险信息,再可根据实际需求对某个固件执行固件保护,具体的,可根据固件安全风险信息获取选取指令,从而使得诊断设备进入与该固件对应的系统内,这样能够便于诊断设备对该系统的系统数据进行提取与分析,从而便于根据获取到的系统数据生成与系统数据对应的固件保护数据,并将该固件保护数据发送至系统,以使系统能够根据固件保护数据对系统内的固件进行安全保护,从而能够对已经出现固件安全风险的固件进行安全保护,避免固件的原始数据被进一步恶意篡改或造成关键数据泄漏,提高车辆各系统内固件的安全性。
附图说明
图1为本申请一实施例的车辆系统固件安全保护方法流程示意图。
图2为本申请一实施例的车辆系统固件安全保护装置结构示意图。
图3为本申请一实施例的计算机设备内部结构示意图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
如图1-图3所示,本申请提出一种车辆系统固件安全保护方法,应用于车辆诊断设备,所述车辆诊断设备与车辆通信连接,包括:
S1、获取车辆的车载数据,并根据所述车载数据对车辆的固件安全进行检测,得到检测报告,其中,所述检测报告中包括车辆各个系统的固件安全风险信息;
S2、根据所述固件安全风险信息获取选取指令,并根据所述选取指令进入与所述固件安全风险信息对应的系统;
S3、获取系统数据,并根据所述系统数据向所述系统发送固件保护数据,以使所述系统根据所述固件保护数据执行固件安全保护动作。
如上述步骤S1-S3所述,首先可通过获其车辆的车载数据,从而基于车载数据对车辆各系统的固件的安全性能进行检测,并生成检测报告,例如,检测报告中包括中央电子装置系统、车载导航系统、车载监控系统等,每个系统中都有实现其功能对应的固件,固件通常包括硬件信息、各种应用功能信息以及参数配置等信息,因此固件的安全性直接影响着软硬件的运行,故通过对各系统中的固件进行检测,这样可基于生成的检测报告,了解到系统中的固件安全风险信息,并对每个固件的安全风险系数进行标记,这样便于维修人员直观了解到哪些固件目前的安全风险系数较高,从而可对于风险较高的固件采取优先保护措施;具体的,维修人员可根据实际需求对某个固件执行固件保护,具体的,可根据固件安全风险信息获取选取指令,从而使得诊断设备进入与该固件对应的系统内,这样能够便于诊断设备对该系统的系统数据进行提取与分析,从而便于根据获取到的系统数据生成与系统数据对应的固件保护数据,并将该固件保护数据发送至系统,以使系统能够根据固件保护数据对系统内的固件进行安全保护,从而能够对已经出现固件安全风险的固件进行安全保护,避免固件的原始数据被进一步恶意篡改或造成关键数据泄漏,提高车辆各系统内固件的安全性。
在一个实施例中,所述根据所述车载数据对车辆的固件安全进行检测的步骤S1,包括:
S11、根据所述车载数据对车辆系统进行划分,得到多个系统的系统数据;
S12、根据每个系统的系统数据查找与所述系统对应的密码算法;
S13、根据所述密码算法对所述系统内的固件进行解包,得到解包后的固件信息;
S14、根据所述固件信息对固件安全进行检测,得到包括各个固件的安全风险评估检测报告。
如上述步骤S11-S14所述,对车辆的固件安全进行检测时,可先基于车载数据对车辆系统进行划分,这样能够得到多个系统的系统数据,由于每个系统所实现的功能并不相同,固件也不相同,因此每种固件所应用的密码算法也不相同,故可先基于系数数据查找与该系统对应的密码算法,由于系统数据中的固件信息通常打包成镜像或压缩包提供给车辆诊断设备,而不同的打包或压缩方式对后续处理会产生较大影响,因此可先对固件进行解包,解包之后得到固件信息,固件信息包括固件文件头信息和文件系统信息,这样可基于固件文件头信息和文件系统信息对固件安全进行检测,从而得到各个固件的安全风险评估检测报告,这样用户可根据安全风险评估检测报告了解到每个固件的安全情况。
在一个实施例中,所述根据每个系统的系数数据查找与所述系统对应的密码算法的步骤S12,包括:
S121、获取所述系统数据中每一个固件可执行二进制的文件;
S122、对每一个所述文件进行密码函数识别,得到多个文件的密码函数特征,其中,所述密码函数特征包括指令统计特征、循环结构特征、函数结构特征与数据流分析特征;
S123、获取开源密码库的应用特征,并根据所述应用特征与所述密码函数特征查找与所述系统中每一个固件所对应的密码算法。
如上述步骤S121-S123所述,通过获取每一个固件可执行二进制的文件,从而可以得到二进制文件的反汇编数据,反汇编数据包括执行入口数据、内存地址范围数据、函数地址关系数据等内容,这样能够根据反汇编数据进行密码函数识别,具体的,可判断反汇编数据中是否含有密码函数,若有密码函数,则判断密码函数的类型,例如密码函数的类型包括对称密码函数、公钥密码函数以及散列函数;再基于密码函数的类型,获取与密码函数对应的密码函数特征,例如,可通过函数地址关系数据判断是否存在多轮散列函数对相同数据进行重复处理,若存在,则该密码函数特征为指令统计特征;可通过执行入口数据判断对称密码函数是否在函数调用控制流程图的最底层,若对称密码函数在函数调用控制流程图的最底层,则该密码函数特征为循环结构特征;为了便于车辆系统中各固件的开发和使用,维修厂商或生产商都提供有密码函数的开源密码库,该开源密码库允许直接调用和使用其提供的功能,且由于一个固件中包括多个二进制文件,而每个二进制文件的密码函数特征不一定相同,因此一个固件可能包括多个密码函数特征,故可通过获取开源密码库中的应用特征,再基于应用特征和多个密码函数特征,在开源密码库中查找到与每一个固件所对应的密码算法,从而便于根据密码算法对固件的安全隐患进行分析检测,从而使得得到的各个固件的安全风险评估检测报告更加准确;例如,某一个固件所对应的密码算法为分组密码算法,由于使用分组密码算法生成的密钥需要依赖伪随机数生成器,而开发人员在密钥的生产中为了方便,会选用固定字符作为随机源,例如产品信息、产品名称等,这样导致生成的密钥容易被仿造,因此当固件的密码算法为分组密码算法时,可判定该固件的安全风险系数较高。
在一个实施例中,获取系统数据,并根据所述系统数据向所述系统发送固件保护数据的步骤S3,包括:
S31、根据所述车载数据获取每一个系统中的固件代码;
S32、对所述固件代码的重要属性进行优先级划分,得到固件核心可信代码、固件普通可信代码、以及固件非可信代码;
S33、根据所述系统数据获取固件配置数据,其中,所述固件配置数据包括所述固件的历史诊断数据和允许车辆诊断设备对固件进行配置的配置数据;
S34、根据所述固件的历史诊断数据和允许诊断设备对固件进行配置的配置数据对所述固件配置数据的保护等级进行优先级划分,得到第一保护数据集、第二保护数据集与第三保护数据集;
S35、对所述固件核心可信代码、固件普通可信代码、固件非可信代码以及所述第一保护数据集、第二保护数据集、第三保护数据集建立代码数据匹配关联表,其中,所述固件核心可信代码匹配所述第一保护数据集,所述固件普通可信代码匹配所述第二保护数据集,所述固件非可信代码匹配所述第三保护数据集;
S36、根据所述代码数据匹配关联表生成与所述代码数据匹配关联表对应的固件保护数据。
如上述步骤S31-S36所述,通过获取固件代码,并对固件代码的重要属性进行优先级划分,这样能够对固件代码中的核心代码部分以及非核心代码部分进行区分,再通过系统数据获取固件配置数据,配置数据包括固件的历史诊断数据以及允许车辆诊断设备对固件进行配置的配置数据,这样,可根据历史诊断数据以及允许车辆诊断设备对固件进行配置的配置数据从而对固件配置数据也进行重要性区分,对较为重要的固件配置数据着重进行保护,具体的对固件配置数据进行重要性区分时,将由固件核心可信代码所生成的配置数据为第一保护数据集,由固件普通可信代码所生成的配置数据为第二保护数据集,由固件非可信代码所生成的配置数据为第三保护数据集;区分之后,建立代码数据匹配关联表,从而将固件核心可信代码与第一保护数据集相关联,固件普通可信代码与第二保护数据集相关联,固件非可信代码与第三保护数据集相关联,这样便于根据代码数据匹配关联表生成与述代码数据匹配关联表对应的固件保护数据,这样能够使得对固件核心可信代码以及第一保护数据集采取高度保护措施,对固件普通可信代码以及第二保护数据集采取中度保护措施,对固件非可信代码以及第三保护数据集采取低度保护措施,而不是对固件的所有代码均采用高度保护措施,这样能够减少车辆诊断设备的运算损耗,提高执行固件安全保护措施的效率。
在一个实施例中,所述根据所述代码数据匹配关联表生成与所述代码数据匹配关联表对应的固件保护数据的步骤S36,包括:
S361、根据所述固件核心可信代码与所述第一保护数据集查找第一内核基址;
S362、根据所述第一内核基址获取第一内核静态数据;
S363、对所述第一内核静态数据进行第一代码混淆,得到第一固件保护数据;
S364、根据所述固件普通可信代码与所述第二保护数据集查找第二内核基址;
S365、根据所述第二内核基址获取第二内核静态数据;
S366、对所述第二内核静态数据进行第二代码混淆,得到第二固件保护数据;
S367、根据所述固件非可信代码与所述第三保护数据集查找第三内核基址;
S368、根据所述第三内核基址获取第三内核静态数据;
S369、对所述第三内核静态数据进行第三代码混淆,得到第三固件保护数据。
如上述步骤S361-S369所述,可根据固件核心可信代码与第一保护数据集查找第一内核基址,再基于内核基址获取第一内核静态数据,从而可根据第一内核静态数据进行第一代码混淆,混淆的目的是抵抗静态反汇编分析,因此,通过对第一内核静态数据、第二内核静态数据、第三内核静态数据分别进行第一代码混淆、第二代码混淆、第三代码混淆,这样能够有效降低外部计算机设备使用反汇编软件翻译出源代码的可读性,从而使得生成的第一固件保护数据、第二固件保护数据以及第三固件保护数据能够更好的对固件进行安全保护,在一定程度上能够降低固件代码被随意篡改的可能性;具体的,代码混淆的方式包括隐藏跳转地址,通过隐藏跳转地址,则无法确定此时栈的位置以及栈顶的值;插入无效数据,通过插入无效数据,将无效数据翻译成代码后,这样会使得后续真实代码无法得到正确翻译。
在一个实施例中,所述根据所述固件安全风险信息获取选取指令,并根据所述选取指令进入与所述固件安全风险信息对应的系统步骤S2之后,还包括:
S21、获取所述系统中各个固件的安全软件的版本信息;
S22、判断所述安全软件的版本信息是否是预设版本信息;
S23、若所述安全软件的版本信息不是预设版本信息,获取与所述固件对应的安全软件升级包,以使所述固件根据所述安全软件升级包对固件安全软件进行升级。
如上述步骤S21-S23所述,通过获取各个固件的安全软件的版本信息,这样能够了解到当前的固件的安全软件是否已经进行更新,若当前安全软件的版本信息不是预设版本信息,则可获取固件对应的安全软件升级包,从而能够对当前固件的安全软件升级,这样能够修补安全软件存在的漏洞,降低固件被“攻击”的风险。
在一个实施例中,所述车辆诊断设备与车辆远程通信连接,这样使得车辆诊断设备能够远程的对车辆固件进行安全保护,提高车辆维修效率。
本申请还提供了一种车辆系统固件安全保护装置,包括:
第一获取模块1,用于获取车辆的车载数据,并根据所述车载数据对车辆的固件安全进行检测,得到检测报告,其中,所述检测报告中包括车辆各个系统的固件安全风险信息;
第二获取模块2,用于根据所述固件安全风险信息获取选取指令,并根据所述选取指令进入与所述固件安全风险信息对应的系统;
发送模块3,用于获取系统数据,并根据所述系统数据向所述系统发送固件保护数据,以使所述系统根据所述固件保护数据执行固件安全保护动作。
在一个实施例中,所述第一获取模块1,包括:
划分单元,用于根据所述车载数据对车辆系统进行划分,得到多个系统的系统数据;
查找单元,用于根据每个系统的系统数据查找与所述系统对应的密码算法;
解包单元,用于根据所述密码算法对所述系统内的固件进行解包,得到解包后的固件信息;
检测单元,用于根据所述固件信息对固件安全进行检测,得到包括各个固件的安全风险评估检测报告。
在一个实施例中,所述查找单元,包括:
第一获取单元,用于获取所述系统数据中每一个固件可执行二进制的文件;
识别单元,用于对每一个所述文件进行密码函数识别,得到多个文件的密码函数特征,其中,所述密码函数特征包括指令统计特征、循环结构特征、函数结构特征与数据流分析特征;
第二获取单元,用于获取开源密码库的应用特征,并根据所述应用特征与所述密码函数特征查找与所述系统中每一个固件所对应的密码算法。
在一个实施例中,所述发送模块3,包括:
第三获取单元,用于根据所述车载数据获取每一个系统中的固件代码;
重要属性划分单元,用于对所述固件代码的重要属性进行优先级划分,得到固件核心可信代码、固件普通可信代码、以及固件非可信代码;
第四获取单元,用于根据所述系统数据获取固件配置数据,其中,所述固件配置数据包括所述固件的历史诊断数据和允许车辆诊断设备对固件进行配置的配置数据;
保护等级划分单元,用于根据所述固件的历史诊断数据和允许诊断设备对固件进行配置的配置数据对所述固件配置数据的保护等级进行优先级划分,得到第一保护数据集、第二保护数据集与第三保护数据集;
建立匹配单元,用于对所述固件核心可信代码、固件普通可信代码、固件非可信代码以及所述第一保护数据集、第二保护数据集、第三保护数据集建立代码数据匹配关联表,其中,所述固件核心可信代码匹配所述第一保护数据集,所述固件普通可信代码匹配所述第二保护数据集,所述固件非可信代码匹配所述第三保护数据集;
生成单元,用于根据所述代码数据匹配关联表生成与所述代码数据匹配关联表对应的固件保护数据。
在一个实施例中,所述生成单元,包括:
第一查找单元,用于根据所述固件核心可信代码与所述第一保护数据集查找第一内核基址;
第五获取单元,用于根据所述第一内核基址获取第一内核静态数据;
第一代码混淆单元,用于对所述第一内核静态数据进行第一代码混淆,得到第一固件保护数据;
第二查找单元,用于根据所述固件普通可信代码与所述第二保护数据集查找第二内核基址;
第六获取单元,用于根据所述第二内核基址获取第二内核静态数据;
第二代码混淆单元,用于对所述第二内核静态数据进行第二代码混淆,得到第二固件保护数据;
第三查找单元,用于根据所述固件非可信代码与所述第三保护数据集查找第三内核基址;
第七获取单元,用于根据所述第三内核基址获取第三内核静态数据;
第三代码混淆单元,用于对所述第三内核静态数据进行第三代码混淆,得到第三固件保护数据。
在一个实施例中,所述车辆系统固件安全保护装置,还包括:
第三获取模块,用于获取所述系统中各个固件的安全软件的版本信息;
判断模块,用于判断所述安全软件的版本信息是否是预设版本信息;
第四获取模块,用于若所述安全软件的版本信息不是预设版本信息,获取与所述固件对应的安全软件升级包,以使所述固件根据所述安全软件升级包对固件安全软件进行升级。
在一个实施例中,所述车辆系统固件安全保护装置与车辆远程通信连接。
如图3所示,本申请还提供了一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储车辆系统固件安全保护方法的过程需要的所有数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现车辆系统固件安全保护方法。
本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任意一个车辆系统固件安全保护方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储与一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM通过多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

Claims (10)

1.一种车辆系统固件安全保护方法,应用于车辆诊断设备,所述车辆诊断设备与车辆通信连接,其特征在于,包括:
获取车辆的车载数据,并根据所述车载数据对车辆的固件安全进行检测,得到检测报告,其中,所述检测报告中包括车辆各个系统的固件安全风险信息;
根据所述固件安全风险信息获取选取指令,并根据所述选取指令进入与所述固件安全风险信息对应的系统;
获取系统数据,并根据所述系统数据向所述系统发送固件保护数据,以使所述系统根据所述固件保护数据执行固件安全保护动作。
2.根据权利要求1所述的车辆系统固件安全保护方法,其特征在于,所述根据所述车载数据对车辆的固件安全进行检测的步骤,包括:
根据所述车载数据对车辆系统进行划分,得到多个系统的系统数据;
根据每个系统的系统数据查找与所述系统对应的密码算法;
根据所述密码算法对所述系统内的固件进行解包,得到解包后的固件信息;
根据所述固件信息对固件安全进行检测,得到包括各个固件的安全风险评估检测报告。
3.根据权利要求2所述的车辆系统固件安全保护方法,其特征在于,所述根据每个系统的系数数据查找与所述系统对应的密码算法的步骤,包括:
获取所述系统数据中每一个固件可执行二进制的文件;
对每一个所述文件进行密码函数识别,得到多个文件的密码函数特征,其中,所述密码函数特征包括指令统计特征、循环结构特征、函数结构特征与数据流分析特征;
获取开源密码库的应用特征,并根据所述应用特征与所述密码函数特征查找与所述系统中每一个固件所对应的密码算法。
4.根据权利要求1所述的车辆系统固件安全保护方法,其特征在于,所述获取系统数据,并根据所述系统数据向所述系统发送固件保护数据的步骤,包括:
根据所述车载数据获取每一个系统中的固件代码;
对所述固件代码的重要属性进行优先级划分,得到固件核心可信代码、固件普通可信代码、以及固件非可信代码;
根据所述系统数据获取固件配置数据,其中,所述固件配置数据包括所述固件的历史诊断数据和允许车辆诊断设备对固件进行配置的配置数据;
根据所述固件的历史诊断数据和允许诊断设备对固件进行配置的配置数据对所述固件配置数据的保护等级进行优先级划分,得到第一保护数据集、第二保护数据集与第三保护数据集;
对所述固件核心可信代码、固件普通可信代码、固件非可信代码以及所述第一保护数据集、第二保护数据集、第三保护数据集建立代码数据匹配关联表,其中,所述固件核心可信代码匹配所述第一保护数据集,所述固件普通可信代码匹配所述第二保护数据集,所述固件非可信代码匹配所述第三保护数据集;
根据所述代码数据匹配关联表生成与所述代码数据匹配关联表对应的固件保护数据。
5.根据权利要求4所述的车辆系统固件安全保护方法,其特征在于,所述根据所述代码数据匹配关联表生成与所述代码数据匹配关联表对应的固件保护数据的步骤,包括:
根据所述固件核心可信代码与所述第一保护数据集查找第一内核基址;
根据所述第一内核基址获取第一内核静态数据;
对所述第一内核静态数据进行第一代码混淆,得到第一固件保护数据;
根据所述固件普通可信代码与所述第二保护数据集查找第二内核基址;
根据所述第二内核基址获取第二内核静态数据;
对所述第二内核静态数据进行第二代码混淆,得到第二固件保护数据;
根据所述固件非可信代码与所述第三保护数据集查找第三内核基址;
根据所述第三内核基址获取第三内核静态数据;
对所述第三内核静态数据进行第三代码混淆,得到第三固件保护数据。
6.根据权利要求1所述的车辆系统固件安全保护方法,其特征在于,所述根据所述固件安全风险信息获取选取指令,并根据所述选取指令进入与所述固件安全风险信息对应的系统的步骤之后,还包括:
获取所述系统中各个固件的安全软件的版本信息;
判断所述安全软件的版本信息是否是预设版本信息;
若所述安全软件的版本信息不是预设版本信息,获取与所述固件对应的安全软件升级包,以使所述固件根据所述安全软件升级包对固件安全软件进行升级。
7.根据权利要求1-6任一项所述的车辆系统固件安全保护方法,其特征在于,所述车辆诊断设备与车辆远程通信连接。
8.一种车辆系统固件安全保护装置,其特征在于,包括:
第一获取模块,用于获取车辆的车载数据,并根据所述车载数据对车辆的固件安全进行检测,得到检测报告,其中,所述检测报告中包括车辆各个系统的固件安全风险信息;
第二获取模块,用于根据所述固件安全风险信息获取选取指令,并根据所述选取指令进入与所述固件安全风险信息对应的系统;
发送模块,用于获取系统数据,并根据所述系统数据向所述系统发送固件保护数据,以使所述系统根据所述固件保护数据执行固件安全保护动作。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述车辆系统固件安全保护方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述车辆系统固件安全保护方法的步骤。
CN202210080358.4A 2022-01-24 2022-01-24 车辆系统固件安全保护方法、装置和计算机设备 Active CN114489008B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210080358.4A CN114489008B (zh) 2022-01-24 2022-01-24 车辆系统固件安全保护方法、装置和计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210080358.4A CN114489008B (zh) 2022-01-24 2022-01-24 车辆系统固件安全保护方法、装置和计算机设备

Publications (2)

Publication Number Publication Date
CN114489008A true CN114489008A (zh) 2022-05-13
CN114489008B CN114489008B (zh) 2024-04-02

Family

ID=81473693

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210080358.4A Active CN114489008B (zh) 2022-01-24 2022-01-24 车辆系统固件安全保护方法、装置和计算机设备

Country Status (1)

Country Link
CN (1) CN114489008B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105021922A (zh) * 2015-07-06 2015-11-04 深圳市赛格导航科技股份有限公司 自动测试系统及自动测试方法
KR20160129662A (ko) * 2015-04-30 2016-11-09 삼성전자주식회사 자가 진단 장치와 이를 포함하는 장치
GB201817986D0 (en) * 2018-11-02 2018-12-19 Caura Ltd Encryted automotive data
CN112148312A (zh) * 2020-09-15 2020-12-29 中国第一汽车股份有限公司 一种电子控制器的固件升级管理方法、装置、设备和介质
CN113138775A (zh) * 2020-01-20 2021-07-20 上海交通大学 车载诊断系统固件保护方法及系统
CN113468522A (zh) * 2021-07-19 2021-10-01 泰安北航科技园信息科技有限公司 一种车载ota升级服务器信息安全的检测系统
CN113778065A (zh) * 2021-09-23 2021-12-10 深圳市星卡科技有限公司 车辆动作测试方法、装置和计算机设备

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160129662A (ko) * 2015-04-30 2016-11-09 삼성전자주식회사 자가 진단 장치와 이를 포함하는 장치
CN105021922A (zh) * 2015-07-06 2015-11-04 深圳市赛格导航科技股份有限公司 自动测试系统及自动测试方法
GB201817986D0 (en) * 2018-11-02 2018-12-19 Caura Ltd Encryted automotive data
CN113138775A (zh) * 2020-01-20 2021-07-20 上海交通大学 车载诊断系统固件保护方法及系统
CN112148312A (zh) * 2020-09-15 2020-12-29 中国第一汽车股份有限公司 一种电子控制器的固件升级管理方法、装置、设备和介质
CN113468522A (zh) * 2021-07-19 2021-10-01 泰安北航科技园信息科技有限公司 一种车载ota升级服务器信息安全的检测系统
CN113778065A (zh) * 2021-09-23 2021-12-10 深圳市星卡科技有限公司 车辆动作测试方法、装置和计算机设备

Also Published As

Publication number Publication date
CN114489008B (zh) 2024-04-02

Similar Documents

Publication Publication Date Title
CN106828362B (zh) 汽车信息的安全测试方法及装置
CN108600193B (zh) 一种基于机器学习的工控蜜罐识别方法
CN103729597A (zh) 系统启动校验方法、系统启动校验装置和终端
CN104077531A (zh) 基于开放漏洞评估语言的系统漏洞评估方法、装置和系统
CN110929264B (zh) 漏洞检测方法、装置、电子设备及可读存储介质
CN108600162B (zh) 用户认证方法及装置、计算设备及计算机存储介质
CN113315767B (zh) 一种电力物联网设备安全检测系统及方法
CN110674479B (zh) 异常行为数据实时处理方法、装置、设备及存储介质
Strandberg et al. Securing the connected car: A security-enhancement methodology
CN113190839A (zh) 一种基于SQL注入的web攻击防护方法及系统
CN112052156B (zh) 一种模糊测试方法、装置和系统
CN110704816A (zh) 接口破解的识别方法、装置、设备及存储介质
CN108322458B (zh) Web应用入侵检测方法、系统、计算机设备和存储介质
CN104038488A (zh) 系统网络安全的防护方法及装置
JP2019192101A (ja) 脆弱性情報生成装置および脆弱性評価装置
CN115185823A (zh) 一种车载信息交互系统信息安全测试方法和系统
CN112422527A (zh) 变电站电力监控系统的安全防护系统、方法和装置
CN116992438A (zh) 基于代码疫苗的实时漏洞修复的方法、装置、设备及介质
CN114489008A (zh) 车辆系统固件安全保护方法、装置和计算机设备
US20210377289A1 (en) Information processing apparatus, log analysis method and program
CN109871703B (zh) 大数据交易管理方法、装置、存储介质及服务器
CN116049822A (zh) 应用程序的监管方法、系统、电子设备及存储介质
CN114257404B (zh) 异常外联统计告警方法、装置、计算机设备和存储介质
CN111752819A (zh) 一种异常监控方法、装置、系统、设备和存储介质
CN114253847A (zh) 一种程序安全测试方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant