用于防止程序代码对车辆恶意攻击的设备、系统和方法技术方案

技术编号:27878567 阅读:30 留言:0更新日期:2021-03-31 01:05
本申请提供了用于防止程序代码对车辆恶意攻击的设备、系统的方法,其中,所述程序代码被设置成在车辆电子系统的隔离执行环境中运行。所述设备包括:确定模块,配置成确定所述程序代码的操作的操作类型和操作对象区域;计算模块,根据操作类型和操作对象区域计算出影响值,所述影响值表示假如在车辆电子系统的原始执行环境中运行所述程序代码以执行所述操作将对车辆安全性产生的影响程度;以及决策模块,配置成评估所述影响值以确定所述程序代码是否为恶意代码;并且在确定为程序代码是恶意代码的情况下,禁止程序代码在所述原始执行环境中运行。

【技术实现步骤摘要】
用于防止程序代码对车辆恶意攻击的设备、系统和方法
本申请涉及用于防止程序代码对车辆恶意攻击的设备、系统和方法。
技术介绍
车联网由于能够实现本车与其它车辆和通信网络的交互而具有诸多优点,例如,能够降低车辆发生碰撞事故的几率,帮助车主实时导航,以及提高交通通行的效率。但是,随着车辆与外界交互的增加,车内软件和车内电子系统也变得更加复杂,随之带来潜在的车辆安全性问题。例如,车辆系统漏洞的增加,黑客通过网络对车辆的恶意攻击更容易得逞,即便是在车内网也存在恶意程序经由各种接口进入车内系统进而在车内网本地发起恶意控制的风险。另外,有些恶意程序在被静态观察时难以发现问题,一旦在特定环境中运行就诱导出攻击性,进而对车内电子系统的关键部件进行改动以至于破坏车内系统,导致车内系统中可怕的安全隐患。因此,亟需一种技术方案来解决现有技术中的上述问题。
技术实现思路
鉴于现有技术中的上述问题,本申请提供了一种防止程序代码对车辆恶意攻击的技术方案,其能够有效地保证程序代码的恶意操作不对车内系统产生任何有害影响。根据本申请的一个方面,提供了一种用于防止程序代码对车辆恶意攻击的设备,其中,所述程序代码被设置成在车辆电子系统的隔离执行环境中运行,所述设备包括:确定模块,配置成确定所述程序代码的操作的操作类型和操作对象区域;计算模块,根据操作类型和操作对象区域计算出影响值,所述影响值表示若在车辆电子系统的原始执行环境中运行所述程序代码以执行所述操作将对车辆安全性产生的影响程度;以及决策模块,配置成评估所述影响值以确定所述程序代码是否为恶意代码;并且在确定为程序代码是恶意代码的情况下,禁止程序代码在所述原始执行环境中运行。根据一种可行实施方式,其中,所述决策模块还配置成:在确定为程序代码是恶意代码的情况下,使得程序代码退出隔离执行环境并将该情况作为异常事件提供给车辆电子系统的存储器以便存储;并且在确定为程序代码不是恶意代码的情况下,将所述程序代码输出至所述原始执行环境,以便在原始执行环境中执行所述程序代码。根据一种可行实施方式,其中,所述决策模块通过如下方式评估所述影响值:在存储于车辆电子系统的存储器中的多个预定阈值中选择针对所述操作对象区域的预定阈值;将计算出的影响值与选定的预定阈值相比较以获得比较结果;当比较结果为影响值大于等于预定阈值的情况下,确定为所述程序代码是恶意代码;并且当比较结果为影响值小于预定阈值的情况下,确定为所述程序代码不是恶意代码。根据一种可行实施方式,其中,所述设备还包括验证模块,配置成借助存储于车辆电子系统的存储器中的验证数据来验证所述程序代码,可选地,所述验证数据是数字化的白名单;所述验证模块配置成在程序代码的标签数据符合所述验证数据的情况下,允许程序代码通过所述验证模块以进入所述确定模块;并且在程序代码的标签数据不符合所述验证数据的情况下,使得程序代码退出隔离执行环境并禁止所述程序代码在原始执行环境中运行,并且将该情况作为异常事件提供给所述存储器以便存储。根据一种可行实施方式,其中,所述程序代码为加密的程序代码,所述设备还包括解密模块,连接在验证模块与确定模块之间,配置成对通过所述验证模块的加密的程序代码进行解密,并将经解密的程序代码传输给所述确定模块。根据一种可行实施方式,其中,所述计算模块还配置成获取车辆的当前状态,至少包含车辆处于行驶中或熄火的当前状态;并且计算模块通过以下方式计算所述影响值:使用预先构建的影响值模型计算所述影响值,其中,操作类型、操作对象区域和当前状态是模型输入,影响值是模型输出。根据一种可行实施方式,所述影响值模型是机器学习模型。根据一种可行实施方式,所述机器学习模型包括随机森林支持向量机模型和卷积神经网络模型中的至少一种。根据一种可行实施方式,其中,所述设备还包括握手模块,配置成通过握手协议来将所述程序代码同步到车辆电子系统中;并且所述握手模块还配置成借助存储于车辆电子系统的存储器中的身份认证数据来完成握手协议。根据一种可行实施方式,其中,隔离执行环境和原始执行换是位于车辆电子系统中的彼此独立的执行环境,并且所述设备被设置于所述隔离执行环境中;并且所述隔离执行环境包括用于虚拟地运行所述程序代码的虚拟执行环境,可选地,所述虚拟执行环境是虚拟机或沙盒。根据一种可行实施方式,其中,所述操作类型包括以下至少一项:读操作、写操作、擦除操作;并且所述操作对象区域包括以下至少一项:底座系统、影音娱乐系统、驾驶辅助系统、动力系统、制动系统。根据本申请的另一个方面,提供了一种用于防止程序代码对车辆恶意攻击的系统,可选地,所述系统是车辆电子系统或者与车辆电子系统耦接的系统或者车辆电子系统的控制器,所述系统包括:隔离执行环境,包括用于虚拟地执行所述程序代码的虚拟执行环境;以及如上所述的设备,设置于所述隔离执行环境中,所述设备包括确定模块、计算模块和决策模块,确定模块用于确定所述程序代码的操作类型和操作对象区域,计算模块用于根据所述操作类型和操作对象区域计算出影响值,决策模块用于评估所述影响值以确定所述程序代码是否为恶意代码;以及存储器,配置成存储用于辅助所述设备的各模块的参考数据以及异常事件;其中,在决策模块确定为程序代码是恶意代码的情况下,禁止所述程序代码在原始执行环境中运行并将该情况作为异常事件存储到存储器中;并且其中,在决策模块确定为程序代码不是恶意代码的情况下,使得所述程序代码输出至所述原始执行环境,以便在所述原始执行环境中执行所述程序代码。根据一种可行实施方式,其中,所述系统还包括与云端存储器进行无线通信的通信接口,其中,所述存储器经由所述通信接口将异常事件上传至云端存储器,并经由所述通信接口从云端存储器获取更新的参考数据。根据本申请的又一个方面,提供了一种用于防止程序代码对车辆恶意攻击的方法,可选地,所述方法由如上所述的设备和/或如上所述的系统执行,所述方法包括:将所述程序代码同步至车辆电子系统的隔离执行环境中;确定所述程序代码的操作的操作类型和操作对象区域;根据操作类型和操作对象区域计算出影响值,所述影响值表示假如在车辆电子系统的原始执行环境中运行程序以执行所述操作将对车辆安全性产生的影响程度;评估所述影响值以确定所述程序代码是否为恶意代码;以及在确定为程序代码是恶意代码的情况下,禁止程序代码在所述原始执行环境中运行。根据申请的技术方案,通过虚拟地运行进入车端的程序代码来获得该程序代码的操作的影响值,并通过影响值来决策程序代码是否包含恶意操作,在确定为包含恶意操作的情况下,禁止该恶意代码在车辆电子系统的原始执行环境中运行,从而能够有效地检测出进入车端的恶意代码并确保该恶意代码不会对车内系统产生任何有害影响。附图说明图1示出了根据本申请的一种可行实施方式的用于防止程序代码对车辆恶意攻击的设备的示意性框图。图2示出了根据本申请的一种可行实施方式的用于防止程序代码对车辆恶意攻击的系统,其包括图1中的设备和执行环境。图3示出了根据本申请的一种可行实施本文档来自技高网...

【技术保护点】
1.一种用于防止程序代码(21)对车辆恶意攻击的设备(10),其中,所述程序代码被设置成在车辆电子系统的隔离执行环境中运行,所述设备包括:/n确定模块(13),配置成确定所述程序代码的操作的操作类型和操作对象区域;/n计算模块(15),根据操作类型和操作对象区域计算出影响值,所述影响值表示若在车辆电子系统的原始执行环境中运行所述程序代码以执行所述操作将对车辆安全性产生的影响程度;以及/n决策模块(16),配置成评估所述影响值以确定所述程序代码是否为恶意代码;并且在确定为程序代码是恶意代码的情况下,禁止程序代码在所述原始执行环境中运行。/n

【技术特征摘要】
1.一种用于防止程序代码(21)对车辆恶意攻击的设备(10),其中,所述程序代码被设置成在车辆电子系统的隔离执行环境中运行,所述设备包括:
确定模块(13),配置成确定所述程序代码的操作的操作类型和操作对象区域;
计算模块(15),根据操作类型和操作对象区域计算出影响值,所述影响值表示若在车辆电子系统的原始执行环境中运行所述程序代码以执行所述操作将对车辆安全性产生的影响程度;以及
决策模块(16),配置成评估所述影响值以确定所述程序代码是否为恶意代码;并且在确定为程序代码是恶意代码的情况下,禁止程序代码在所述原始执行环境中运行。


2.根据权利要求1所述的设备(10),其中,所述决策模块还配置成:
在确定为程序代码是恶意代码的情况下,使得程序代码退出隔离执行环境并将该情况作为异常事件提供给车辆电子系统的存储器以便存储;并且
在确定为程序代码不是恶意代码的情况下,将所述程序代码输出至所述原始执行环境,以便在原始执行环境中执行所述程序代码。


3.如权利要求1或2所述的设备(10),其中,所述决策模块通过如下方式评估所述影响值:
在存储于车辆电子系统的存储器中的多个预定阈值中选择针对所述操作对象区域的预定阈值;
将计算出的影响值与选定的预定阈值相比较以获得比较结果;
当比较结果为影响值大于等于预定阈值的情况下,确定为所述程序代码是恶意代码;并且
当比较结果为影响值小于预定阈值的情况下,确定为所述程序代码不是恶意代码。


4.根据权利要求1至3中任一项所述的设备(10),其中,所述设备还包括验证模块(12),配置成借助存储于车辆电子系统的存储器中的验证数据来验证所述程序代码,可选地,所述验证数据是数字化的白名单;
所述验证模块配置成在程序代码的标签数据符合所述验证数据的情况下,允许程序代码通过所述验证模块以进入所述确定模块;并且
在程序代码的标签数据不符合所述验证数据的情况下,使得程序代码退出隔离执行环境并禁止所述程序代码在原始执行环境中运行,并且将该情况作为异常事件提供给所述存储器以便存储。


5.根据权利要求4所述的设备(10),其中,所述程序代码为加密的程序代码,所述设备还包括解密模块(13),连接在验证模块与确定模块之间,配置成对通过所述验证模块的加密的程序代码进行解密,并将经解密的程序代码传输给所述确定模块。


6.根据权利要求1-5中任一项所述的设备(10),其中,所述计算模块还配置成获取车辆的当前状态,至少包含车辆处于行驶中或熄火的当前状态;并且计算模块通过以下方式计算所述影响值:
使用预先构建的影响值模型计算所述影响值,其中,操作类型、操作对象区域和当前状态是模型输入,影响值是模型输出;
可选地,所述影响值模型是机器学习模型;
进一步可选地,所述机器学习模型包括随机森林支持向量机模型和卷积神经网络模型中的至少一种。

【专利技术属性】
技术研发人员:陈增星
申请(专利权)人:罗伯特·博世有限公司
类型:发明
国别省市:德国;DE

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1