WO2023184303A1 - 一种安全检测方法、装置和车辆 - Google Patents
一种安全检测方法、装置和车辆 Download PDFInfo
- Publication number
- WO2023184303A1 WO2023184303A1 PCT/CN2022/084290 CN2022084290W WO2023184303A1 WO 2023184303 A1 WO2023184303 A1 WO 2023184303A1 CN 2022084290 W CN2022084290 W CN 2022084290W WO 2023184303 A1 WO2023184303 A1 WO 2023184303A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- security
- data packet
- security detection
- detection result
- threat
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 80
- 238000007689 inspection Methods 0.000 title abstract description 23
- 238000001514 detection method Methods 0.000 claims description 491
- 238000012545 processing Methods 0.000 claims description 64
- 238000004590 computer program Methods 0.000 claims description 17
- 238000010586 diagram Methods 0.000 description 27
- 230000008569 process Effects 0.000 description 26
- 230000006870 function Effects 0.000 description 21
- 238000004891 communication Methods 0.000 description 9
- 238000011084 recovery Methods 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 7
- 238000010801 machine learning Methods 0.000 description 6
- 230000002159 abnormal effect Effects 0.000 description 5
- 238000013461 design Methods 0.000 description 5
- 239000000284 extract Substances 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 3
- 230000004888 barrier function Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000010354 integration Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000002265 prevention Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 241001124569 Lycaenidae Species 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000005242 forging Methods 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000011895 specific detection Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
Abstract
一种安全检测方法、装置和车辆,该方法包括:获取第一数据包;将该第一数据包输入第一安全检测装置进行安全检测,得到第一安全检测结果;若该第一安全检测结果指示该第一数据包存在安全威胁,获取第二数据包且将该第二数据包输入第二安全检测装置进行安全检测,得到第二安全检测结果;根据该第二安全检测结果,对该第二数据包进行转发或者执行第一安全指令。该技术方案可以应用于新能源汽车或者智能汽车,可以实现对数据包的安全威胁的多层次检测,有助于提升车辆的安全性能。
Description
本申请实施例涉及安全领域,并且更具体地,涉及一种安全检测方法、装置和车辆。
车载通信安全是未来车辆的关键属性之一,是保证乘客生命安全的安全屏障。某些安全威胁可能会引起安全事故,例如,当车载传感器被攻击者恶意替换,向中央计算机(central computer)或者车载执行器传递错误数据可能会导致车辆采取危险的动作。
当前为了实现数据从一个节点至另一个节点的快速转发,转发数据的节点可以不对数据进行安全检测。如果这部分未经检测的数据存在安全威胁,那么就可能会对车辆安全造成威胁。
发明内容
本申请实施例提供一种安全检测方法、装置和车辆,有助于提升车辆的安全性能。
本申请中的车辆(有时简称为车)为广义概念上的车辆,可以是交通工具(如:汽车,卡车,摩托车,火车,飞机,轮船等),工业车辆(如:叉车,挂车,牵引车等),工程车辆(如:挖掘机,推土机,吊车等),农用设备(如割草机、收割机等),游乐设备,玩具车辆等,本申请对车辆的类型不做限定。
第一方面,提供了一种安全检测方法,包括:获取第一数据包;将该第一数据包输入第一安全检测装置进行安全检测,得到第一安全检测结果;若该第一安全检测结果指示该第一数据包存在安全威胁,获取第二数据包且将该第二数据包输入第二安全检测装置进行安全检测,得到第二安全检测结果;根据该第二安全检测结果,对该第二数据包进行转发或者执行第一安全指令。
本申请实施例中,可以通过第一安全检测装置对第一数据包进行安全检测,在第一安全检测结果指示该第一数据包存在安全威胁时,通过第二安全检测装置对第二数据包进行安全检测,这样可以实现对数据包的安全威胁的多层次检测,有助于降低由单一的安全检测装置进行安全检测时所带来的安全风险,从而有助于提升车辆的安全性能。
在一些可能的实现方式中,该第一数据包可以为待进行快速转发的数据包。
本申请实施例中,车辆可以通过第一安全检测装置对待进行快速转发的第一数据包进行安全检测,若该第一数据包存在安全威胁,车辆可以通过第二安全检测装置对第二数据包进行安全检测,从而有助于在保证快速转发效率的同时降低由于数据快速转发带来的安全隐患。
在一些可能的实现方式中,该第一数据包为第一时间段内获取的待进行安全检测的数据包中的部分或者全部数据包且该第一数据包为待快速转发的数据包,当为部分数据包时可以保证较高的快速转发效率,当为全部数据包时可以覆盖较大的检测范围以提升安全 性。该第二数据包为第二时间段内获取的待进行安全检测的数据包中的全部数据包;其中,该第一时间段位于该第二时间段之前。
本申请实施例中,待快速转发的第一数据包存在安全威胁时,第二时间段内获取的待进行安全检测的数据包可以均输入到第二安全检测装置进行安全检测,有助于降低单一安全检测装置对数据包进行安全检测时的安全风险,从而有助于提升车辆的安全性能。
在一些可能的实现方式中,该第一数据包为第一时间段内获取的待进行安全检测的数据包中的部分数据包时,第一时间段内获取的待进行安全检测的数据包中的另一部分数据包(例如,第三数据包)可以通过该第二安全检测装置进行安全检测。
在一些可能的实现方式中,该第一时间段内获取的待进行安全检测的数据包可以由该第一数据包和该第三数据包组成。
本申请实施例中,第一时间段内的第一数据包可以通过第一安全检测装置进行安全检测且第三数据包可以通过第二安全检测装置进行安全检测,这样第二安全检测装置可以忽略由第一安全检测装置进行检测的第一数据包,有助于提升第二安全检测装置进行数据包安全检测时的效率。当第一数据包存在安全威胁时,可以将第二时间段内的所有待进行安全检测的数据包通过第二安全检测装置进行安全检测,从而可以弥补第一安全检测装置在进行安全检测时的不足。
在一些可能的实现方式中,该第二安全检测装置的检测能力相比于该第一安全检测装置的检测能力更强。该第一安全检测装置的检测速度相比于该第二安全检测装置的检测速度更快。
示例性的,该第二安全检测装置为通过软件进行安全检测的检测装置,该第一安全检测装置为通过硬件进行安全检测的检测装置。该第二安全检测装置可以位于车辆中,或者,也可以位于云端服务器中。
这样,在对第一数据包进行快速转发的同时,可以通过第一安全检测装置实现对第一数据包更快速的安全检测。由于第一时间段内的第三数据包可以是无需快速转发的数据包,通过第二安全检测装置可以实现对该第三数据包更为准确的安全检测。在弥补快速转发数据造成的安全漏洞的同时,将第三数据包的安全检测放在第二安全检测装置中,将第一数据包的安全检测放在第一安全检测装置中,可以实现硬件成本与安全性的平衡。
在一些可能的实现方式中,该第一时间段内获取的待进行安全检测的数据包可以包括第一数据包、第三数据包和第四数据包。
该第一数据包可以为待进行快速转发的数据包,该第三数据包和该第四数据包为无需快速转发的数据包。该第一数据包可以通过第一安全检测装置进行安全检测,第三数据包可以通过第二安全检测装置进行安全检测且该第四数据包可以通过第三安全检测装置进行安全检测。
这样,在对第一数据包进行快速转发的同时,可以通过第一安全检测装置实现对第一数据包更快速的安全检测。同时,第三数据包和第四数据包可以分别通过第二安全检测装置和该第三安全检测装置进行安全检测,从而有助于提升数据包安全检测时的效率。
示例性的,该第三安全检测装置的检测能力相比于该第二安全检测装置的检测能力更强。
示例性的,该第一安全检测装置和该第二安全检测装置可以位于车辆中,该第三安全 检测装置可以位于云端服务器中。
在一些可能的实现方式中,相比于第三数据包,该第四数据包可以为对安全检测结果的准确度要求更高的数据包。
这样,对安全检测结果的准确度要求更高的第四数据包通过检测能力更强的第三安全检测装置进行安全检测,从而保证了第四数据包的检测结果的准确性,进一步提升了车辆的安全性能。
以上仅仅是以第一时间段内获取的待进行安全检测的数据包通过第一安全检测装置进行安全检测,或者,通过第一安全检测装置和第二安全检测装置进行安全检测,或者,通过第一安全检测装置、第二安全检测装置和第三安全检测装置进行安全检测为例进行说明的。本申请实施例并不限于此,第一时间段内获取的待进行安全检测的数据包还可以通过更多数量(例如,4个或4个以上)的安全检测装置进行安全检测。
在一些可能的实现方式中,该第一安全指令用于控制车辆执行安全操作。示例性的,该第一指令可以控制车辆安全停车;或者,该第一指令可以控制车辆的车速将至预设速度阈值或者该预设速度阈值以下;或者,若车辆处于自动驾驶状态,该第一安全指令可以用于提示用户接管车辆。
在一些可能的实现方式中,该第二数据包包括该第一数据包中存在安全威胁的数据包。
结合第一方面,在第一方面的某些实现方式中,根据该第二安全检测结果,对该第二数据包进行转发或者执行第一安全指令,包括:若该第二安全检测结果指示该第二数据包存在安全威胁,向第一服务器发送该第二数据包;接收该第一服务器发送的第三安全检测结果,该第三安全检测结果指示该第二数据包是否存在安全威胁;根据该第三安全检测结果,对该第二数据包进行转发或者执行该第一安全指令。
本申请实施例中,车辆可以将第二数据包发送给第一服务器并接收第一服务器对该第二数据包的安全检测结果,通过车云协同的方式对数据包进行安全检测,有助于提升数据包安全检测时的效率以及准确性。
在一些可能的实现方式中,该第一服务器可以是实体服务器,也可以是虚拟服务器。
结合第一方面,在第一方面的某些实现方式中,根据该第三安全检测结果,对该第二数据包进行转发或者执行第一安全指令,包括:若该第三安全检测结果指示该第二数据包不存在安全威胁,对该第二数据包进行转发;或者,若该第三安全检测结果指示该第二数据包存在安全威胁,执行该第一安全指令。
本申请实施例中,车辆可以根据第一服务器指示的第三安全检测结果来判断对第二数据包进行转发或者执行第一安全指令,在该第三安全检测结果指示该第二数据包不存在安全威胁,对该第二数据包进行转发,有助于实现第二数据包的快速且安全的转发;在该第三安全检测结果指示该第二数据包存在安全威胁,执行该第一安全指令,有助于提升车辆的安全性能。
结合第一方面,在第一方面的某些实现方式中,根据该第二安全检测结果,对该第二数据包进行转发或者执行第一安全指令,包括:若该第二安全检测结果指示该第二数据包不存在安全威胁,对该第二数据包进行转发;或者,若该第二安全检测结果指示该第二数据包存在安全威胁,执行该第一安全指令。
本申请实施例中,通过第一安全检测装置和第二安全检测装置协同的方式,可以在第一安全检测装置检测到第一数据包存在安全威胁时将第二数据包输入到第二安全检测装置中进行安全检测,通过车辆中不同安全检测装置的协同检测,有助于提升数据包安全检测的准确性,从而有助于提升车辆的安全性能。
结合第一方面,在第一方面的某些实现方式中,该第一安全检测装置包括规则库,该规则库中保存有安全检测规则,该方法还包括:接收第二服务器发送的安全检测规则更新信息;根据该安全检测规则更新信息,对该规则库中的该安全检测规则进行更新。
本申请实施例中,该第二服务器可以对第一安全检测装置的规则库中的安全检测规则进行更新,这样第二服务器可以对车辆中的安全检测规则进行实时更新,从而使得车辆中实时更新的安全检测规则可以应对多变的安全威胁,有助于提升车辆的安全性能。
在一些可能的实现方式中,该第二服务器可以是实体服务器,也可以是虚拟服务器。
在一些可能的实现方式中,该第一服务器和该第二服务器可以是不同的服务器,也可以是同一服务器。
结合第一方面,在第一方面的某些实现方式中,该获取第一数据包,包括:在第一时间段内,获取该第一数据包和第三数据包;其中,该方法还包括:将该第三数据包输入该第二安全检测装置进行安全检测,得到第四安全检测结果;根据该第四安全检测结果,对该第三数据包进行转发或者执行第二安全指令。
本申请实施例中,第一时间段内的部分数据包可以通过第一安全检测装置进行安全检测且另一部分数据包可以通过第二安全检测装置进行安全检测,这样第二安全检测装置可以忽略部分数据包的安全检测,有助于提升第二安全检测装置进行数据包安全检测时的效率。当第一数据包存在安全威胁时,可以将第二时间段内的所有待进行安全检测的数据包通过第二安全检测装置进行安全检测,从而可以弥补第一安全检测装置在进行安全检测时的不足。
在一些可能的实现方式中,该第二安全指令用于控制车辆执行安全操作。示例性的,该第二指令可以控制车辆安全停车;或者,该第二指令可以控制车辆的车速将至预设速度阈值或者该预设速度阈值以下;或者,若车辆处于自动驾驶状态,该第二安全指令可以用于提示用户接管车辆。
结合第一方面,在第一方面的某些实现方式中,该方法还包括:对该第一数据包进行转发。
本申请实施例中,在通过第一安全检测装置对第一数据包进行安全检测后可以对该第一数据包进行转发,从而可以实现数据转发节点对数据包的快速转发。
结合第一方面,在第一方面的某些实现方式中,该第一安全检测装置为第一入侵检测系统(intrusion detection system,IDS)或第一入侵检测与拦截系统(intrusion detection and prevention system,IDPS);和/或,该第二安全检测装置为第二IDS或者第二IDPS。
结合第一方面,在第一方面的某些实现方式中,该第一安全检测装置位于现场可编程门阵列(field programmable gate array,FPGA)中;和/或,该第二安全检测装置位于微控制器单元(micro controller unit,MCU)中。
本申请实施例的技术方案可以应用于区架构中,通过在区控制器中部署第一安全检测装置和第二安全检测装置,可以实现第一安全检测装置和第二安全检测装置协同对数据包 进行安全检测的框架。从而在FPGA中的第一安全检测装置判断出数据包存在安全威胁或者无法判断该数据包是否存在安全威胁时,发送告警信号给MCU。MCU可以对第二数据包进行安全检测,有助于提升数据包安全检测的效率和准确性。
结合第一方面,在第一方面的某些实现方式中,该第一安全检测装置位于快速转发引擎中;和/或,该第二安全检测装置运行在主应用核上。
本申请实施例中,该第一安全检测装置和该第二安全检测装置可以位于网关芯片中,通过将第一安全检测装置作为知识产权核(intellectual property core,IP core)与数据转发引擎一同集成进片上系统(system-on-a-chip,SOC)中,与主应用核通过总线相连。当第一安全检测装置检测到存在安全威胁的数据包时可以通过总线直接将安全威胁的信号发送给主应用核,从而有助于节省主应用核的响应时间。此外,通过将系统整合在同一SOC中,可以节省额外的硬件设备开销,降低硬件成本。
第二方面,提供了一种安全检测装置,该装置包括:获取单元,用于获取第一数据包;第一安全检测单元,用于将该第一数据包输入第一安全检测装置进行安全检测,得到第一安全检测结果;该获取单元,还用于若该第一安全检测结果指示该第一数据包存在安全威胁,获取第二数据包;第二安全检测单元,用于将该第二数据包输入第二安全检测装置进行安全检测,得到第二安全检测结果;处理单元,用于根据该第二安全检测结果,对该第二数据包进行转发或者执行第一安全指令。
结合第二方面,在第二方面的某些实现方式中,该装置还包括发送单元和接收单元,该处理单元具体用于:若该第二安全检测结果指示该第二数据包存在安全威胁,控制该发送单元向第一服务器发送该第二数据包;控制该接收单元接收该第一服务器发送的第三安全检测结果,该第三安全检测结果指示该第二数据包是否存在安全威胁;根据该第三安全检测结果,对该第二数据包进行转发或者执行该第一安全指令。
结合第二方面,在第二方面的某些实现方式中,该处理单元具体用于:若该第三安全检测结果指示该第二数据包不存在安全威胁,控制该发送单元对该第二数据包进行转发;或者,若该第三安全检测结果指示该第二数据包存在安全威胁,执行该第一安全指令。
结合第二方面,在第二方面的某些实现方式中,该装置还包括发送单元,该处理单元具体用于:若该第二安全检测结果指示该第二数据包不存在安全威胁,控制该发送单元对该第二数据包进行转发;或者,若该第二安全检测结果指示该第二数据包存在安全威胁,执行该第一安全指令。
结合第二方面,在第二方面的某些实现方式中,该第一安全检测装置包括规则库,该规则库中保存有安全检测规则,该处理单元,还用于根据第二服务器发送的安全检测规则更新信息,对该规则库中的该安全检测规则进行更新。
结合第二方面,在第二方面的某些实现方式中,该获取单元具体用于:在第一时间段内,获取该第一数据包和第三数据包;其中,该第二安全检测单元,还用于将该第三数据包输入该第二安全检测装置进行安全检测,得到第四安全检测结果;根据该第四安全检测结果,对该第三数据包进行转发或者执行第二安全指令。
结合第二方面,在第二方面的某些实现方式中,该装置还包括发送单元,该发送单元,用于对该第一数据包进行转发。
结合第二方面,在第二方面的某些实现方式中,该第一安全检测装置为第一入侵检测 系统IDS或第一入侵检测与拦截系统IDPS;和/或,该第二安全检测装置为第二IDS或者第二IDPS。
结合第二方面,在第二方面的某些实现方式中,该第一安全检测装置位于现场可编程门阵列FPGA中;和/或,该第二安全检测装置位于微控制器单元MCU中。
结合第二方面,在第二方面的某些实现方式中,该第一安全检测装置位于快速转发引擎中;和/或,该第二安全检测装置运行在主应用核上。
第三方面,提供了一种装置,该装置包括:存储器,用于存储计算机指令;处理器,用于执行该存储器中存储的计算机指令,以使得该装置执行上述第一方面中的方法。
第四方面,提供了一种车辆,该车辆包括上述第二方面或者第三方面中任一项所述的装置。
第五方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码在计算机上运行时,使得计算机执行上述第一方面中的方法。
上述计算机程序代码可以全部或者部分存储在第一存储介质上,其中第一存储介质可以与处理器封装在一起的,也可以与处理器单独封装,本申请实施例对此不作具体限定。
第六方面,提供了一种计算机可读介质,所述计算机可读介质存储有程序代码,当所述计算机程序代码在计算机上运行时,使得计算机执行上述第一方面中的方法。
第七方面,本申请实施例提供了一种芯片系统,该芯片系统包括处理器,用于调用存储器中存储的计算机程序或计算机指令,以使得该处理器执行上述第一方面所述的方法。
结合第七方面,在一种可能的实现方式中,该处理器通过接口与存储器耦合。
结合第七方面,在一种可能的实现方式中,该芯片系统还包括存储器,该存储器中存储有计算机程序或计算机指令。
图1是本申请实施例提供的车辆的一个功能示意框图。
图2是本申请实施例提供的两种车辆架构的示意图。
图3是本申请实施例提供的对数据包进行安全检测的示意图。
图4是本申请实施例提供的对数据包进行安全检测的另一示意图。
图5是本申请实施例提供的区架构的另一示意图。
图6是本申请实施例提供的VIU中FPGA与MCU的协同关系的示意图。
图7是本申请实施例提供的并行处理单元的结构的示意框图。
图8是本申请实施例提供的安全检测系统的示意图。
图9是本申请实施例提供的安全检测方法的示意性流程图。
图10是本申请实施例提供的FPGA与MCU进行安全检测的另一示意图。
图11是本申请实施例提供的安全检测系统的另一示意图。
图12是本申请实施例提供的安全检测方法的另一示意性流程图。
图13是本申请实施例提供的网关芯片的示意图。
图14是本申请实施例提供的安全检测方法的另一示意性流程图。
图15是本申请实施例提供的安全检测装置的示意性框图。
图16是本申请实施例提供的装置的示意性框图。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
本申请实施例中采用诸如“第一”、“第二”的前缀词,仅仅为了区分不同的描述对象,对被描述对象的位置、顺序、优先级、数量或内容等没有限定作用。例如,被描述对象的数量并不受序数词的限制,可以是一个或者多个,以“第一安全检测装置”为例,其中“安全检测装置”的数量可以是一个或者多个。此外,不同前缀词修饰的对象可以相同或不同,例如,被描述对象为“安全检测装置”,则“第一安全检测装置”和“第二安全检测装置”可以是相同类型的安全检测装置或者不同类型的安全检测装置;再如,被描述对象为“数据包”,则“第一数据包”和“第二数据包”可以是相同内容的数据包或者不同内容的数据包。总之,本申请实施例中对序数词等用于区分描述对象的前缀词的使用不对所描述对象构成限制,对所描述对象的陈述参见权利要求或实施例中上下文的描述,不应因为使用这种前缀词而构成多余的限制。此外,在本实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
图1是本申请实施例提供的车辆100的一个功能示意框图。车辆100可以包括感知系统120、显示装置130和计算平台150。其中,感知系统120可以包括感测关于车辆100周边的环境的信息的若干种传感器。例如,感知系统120可以包括定位系统,定位系统可以是全球定位系统(global positioning system,GPS),也可以是北斗系统或者其他定位系统,例如惯性测量单元(inertial measurement unit,IMU);又如,感知系统120可以包括激光雷达、毫米波雷达、超声雷达以及摄像装置中的一种或者多种。
车辆100的部分或所有功能可以由计算平台150控制。计算平台150可包括处理器151至15n(n为正整数),处理器是一种具有信号的处理能力的电路,在一种实现中,处理器可以是具有指令读取与运行能力的电路,例如中央处理单元(central processing unit,CPU)、微处理器、图形处理器(graphics processing unit,GPU)(可以理解为一种微处理器)、或数字信号处理器(digital signal processor,DSP)等;在另一种实现中,处理器可以通过硬件电路的逻辑关系实现一定功能,该硬件电路的逻辑关系是固定的或可以重构的,例如处理器为专用集成电路(application-specific integrated circuit,ASIC)或可编程逻辑器件(programmable logic device,PLD)实现的硬件电路,例如现场可编程门阵列FPGA。在可重构的硬件电路中,处理器加载配置文档,实现硬件电路配置的过程,可以理解为处理器加载指令,以实现以上部分或全部单元的功能的过程。此外,还可以是针对人工智能设计的硬件电路,其可以理解为一种ASIC,例如神经网络处理单元(neural network processing unit,NPU)、张量处理单元(tensor processing unit,TPU)、深度学习处理单元(deep learning processing unit,DPU)等。此外,计算平台150还可以包括存储器,存储器用于存储指令,处理器151至15n中的部分或全部处理器可以调用存储器中的指令,执行质量,以实现相应的功能。
图2示出了本申请实施例提供的两种车辆架构的示意图。其中,图2中的(a)示出了域架构(domain architecture)的示意图。域架构的特点是运算处理单元分别为中央计算机(central computer)和域控制器(domain controller)。不同的域控制器按照专属功能进行划分,如对车内娱乐系统进行控制的娱乐域控制器(infotainment domain controller)、对车体运行状态进行控制的控制域控制器(control domain controller)等。不同的域控制器可以与不同功能的传感器执行器进行连接。车辆运行时,中央计算机都是通过不同的域控制器接收信号并发出指令。
图2中的(b)示出了区架构(zonal architecture)的示意图。区架构的特点是运算处理单元分为中央计算机与区控制器(zonal controller)。按照车载传感器与执行器的位置区域划分给不同的区控制器。如车左前方的区控制器就可以与部署在车左前方区域的传感器与控制执行器相连。相比于域架构,区架构更加适应电气化的发展趋势。一方面,可以大量减少随着传感器、执行器增多带来的布线成本。另一方面,不同域之间的通信可以不再依赖中央计算机进行转发。不同功能域之间可以通过区控制器组成的环形网络结构进行快速转发,减少数据传播的延时。
本申请实施例中的技术方案可以适用于上述两种车辆架构,但并不限于上述两种车辆架构。
车载通信安全是未来车辆的关键属性之一,是保证乘客生命安全的安全屏障。常见安全威胁包括:(1)中央计算机或娱乐域用户界面被攻击者攻破,攻击者可以通过伪造恶意数据包向车身控制器发送恶意命令造成安全事故;(2)车载传感器被攻击者恶意替换,向中央计算机或车载执行器传递错误数据导致车辆采取危险动作。
为保障车载通信安全,可以在车辆中部署入侵检测系统IDS或入侵检测与拦截系统IDPS,其中,IDS是一种网络安全装置,可以对攻击行为产生报警;IDPS是一种网络安全装置,可以主动和自动的阻挡攻击行为。如图2中的(a)所示,在域架构下,IDS或IDPS通常部署在中央计算机和/或域处理器上。如图2中的(b)所示,在区架构下,IDS或IDPS通常部署在中央计算机和/或区控制器上。
图3示出了本申请实施例提供的对数据包进行安全检测的示意图。通常IDS或IDPS部署在应用层(application level)和/或内核层(kernel level)中。通过以太网接口(ethernet interface,ETH IF)接收数据包,数据包可以经过数据通路1(data path 1)进行传输。经过数据通路1传输的数据包经过网络接口由硬件层(hardware level)解析为数字信号,再由应用层或内核层的IDS(或IDPS)对数据包进行解包,再对数据包内的负载进行解析,从而根据一定规则识别该数据包的安全威胁。若该数据包无安全威胁,则通过ETH IF继续转发至下一个节点。
如前所述,区架构的一个特点便是不同区之间的数据包交换不再经过中央计算机进行转发,而是通过区控制器进行转发。图4示出了本申请实施例提供的对数据包进行安全检测的另一示意图。为进一步增强这一特性,区控制器中加入了基于硬件的快速转发引擎(fast forwarding engine),通过基于FPGA的硬件控制逻辑,部分数据包不再经过应用层与内核层而是直接在硬件层进行转发。数据包可以部分经过数据通路1传输进行传输且另一部分经过数据通路2(data path 2)进行传输。从数据传输时延上考虑,数据通路2中的数据包基于硬件的快速转发引擎实现了数据快速转发,省去了应用层和内核层的软件处理 时间,减少了数据包转发时间。但从安全性上考虑,这种设计使得经过数据通路2传输的数据包对位于应用层与内核层的IDS(或IDPS)不可见,IDS(或IDPS)无法对其进行安全检测,如果这部分数据包存在安全风险,将对车辆安全威胁。
基于此,本申请实施例提供了一种安全检测的方法、装置以及交通工具,通过在数据转发节点中部署安全检测装置,可以降低由快速转发引擎转发的数据包带来的安全威胁,从而有助于提升交通工具的安全性能。
下面以该安全检测装置部署在区架构中的区控制器上为例进行说明。图5示出了本申请实施例提供的区架构的另一示意图。图1所示的中央计算机可以包括图5所示的移动数据中心(mobile data center,MDC),其中,MDC可以用于实现自动驾驶功能。MDC负责处理外界信号并发出指令。图1所示的区控制器可以包括图5所示的车辆集成单元(vehicle integration unit,VIU)。VIU负责从外围设备(如摄像头)接收信号并发送给MDC。并将MDC发出的控制指令转发给执行器,如:电机控制单元(integrated power unit,IPU)、电控转向系统(electrical power system,EPS)、电控制动系统(electrical brake system,EBS)等。下文中将用MDC与VIU对本申请实施例在实际应用场景中的运用情况进行描述。
以上区控制器是以VIU为例进行说明的,区控制器还可以是其他类型或者以其他名称命名的控制器,本申请实施例对此不做限定。
以上图5中示意MDC分别和VIU2、VIU4相连为例进行说明的,MDC还可以分别与VIU1、VIU3相连。
以上是以中央计算机包括MDC为例进行说明的,中央计算机还可以包括智能座舱域控制器(cockpit domain controller,CDC)以及整车域控制器(vehicle domain controller,VDC)等。其中,CDC可以用于实现座舱控制,VDC可以用于实现车辆功能控制(例如,转向或者制动等)。
本申请实施例中所述的中央计算机、移动数据中心、座舱域控制器、整车域控制器、区控制器、车辆集成单元等还可以有其他名称,本申请仅以MDC、CDC、VDC、VIU等作为举例,并不是对具体实施方式的限制。
VIU作为通信接口单元,可以部署于车辆传感器与执行器密集位置,使得车辆的传感器与执行器可以进行就近接入;同时,VIU可以具备一定计算与驱动能力(例如,VIU可以吸纳部分执行器的驱动计算功能);传感器包括但不限于摄像头、麦克风、超声波雷达、毫米波雷达、激光雷达、车速传感器、电机功率传感器以及发动机转速传感器等。
VIU可以吸纳部分传感器与执行器的驱动计算功能,这样当CDC或者VDC发生故障时,VIU可以直接对传感器采集的数据进行处理,进而驱动外围执行器执行相应的控制指令。
VIU中包括两个计算处理模块:微控制器单元MCU与FPGA。MCU上运行完整的软件栈(例如,MCU中的应用层和内核层中可以运行完整的软件栈),包括操作系统与数据处理转发程序。FPGA可以包括上述快速转发引擎。
下面以MDC向EBS发送控制命令为例说明数据从MDC向EBS的传输流程与数据直通引擎在该场景下的作用:
当MDC通过摄像头或其他传感器检测到障碍时,决定向EBS发送制动指令。于是 MDC上运行的程序将制动指令封包成数据报文,发送给相邻VIU(例如,VIU4),数据报文中会封装报文目的地(网际互连协议(internet protocol,IP)地址)与指令信息。MDC在将制动指令封包为数据报文后,可以发送给默认的VIU(例如,VIU4)。
VIU4上网络接口在接收到MDC传输的数据报文后,网络接口对数据报文中的IP地址与高速转发目标列表进行比对。若该数据报文中的IP地址属于高速转发目标,则基于FPGA的快速转发引擎对数据报文进行处理并直接向下一个节点转发(例如,VIU3)。VIU3上网络接口接收到VIU4传输来的数据报文后,网络接口对数据报文内的IP地址与高速转发目标列表进行比对。当该数据报文的目的地的IP地址属于高速转发目标,则基于FPGA的高速转发引擎直接将数据报文向EBS转发。
一个实施例中,每个VIU中可以包括路由列表,其中该路由列表中包括常用格式、VIU标识以及该IP地址对应的目标执行器的对应关系。例如,表1示出了一种常用格式、VIU标识以及目标执行器的对应关系。
表1
常用格式 | VIU标识 | 目标执行器 |
192.168.0.1 | 3 | EBS |
192.168.0.2 | 3 | EPS |
192.168.0.3 | 1 | 副驾驶区域氛围灯 |
192.168.0.4 | 2 | 二排右侧氛围灯 |
… | … | … |
当VIU4接收到该数据报文后,可以通过表1所示的对应关系确定该常用格式对应的VIU标识与VIU4的标识不同,则VIU4在确定该常用格式属于高速转发目标后将该数据报文转发到下一个节点(例如,VIU3)。当VIU3接收到该数据报文后,可以通过表1所示的对应关系确定该常用格式对应的VIU标识与VIU3的标识相同,则VIU3在确定该常用格式属于高速转发目标后将该数据报文转发给目标执行器。
一个实施例中,若该数据报文中的IP地址不属于高速转发目标,则VIU4可以将该数据报文经VIU4中的MCU上的软件栈进行安全处理后,再发送给下一节点。
图6示出了本申请实施例提供的VIU中FPGA与MCU的协同关系的示意图。数据通路1表示由MCU处理的数据通路,数据通路2表示由FPGA数据直通引擎处理的数据通路。数据通路1与数据通路2间的关系不一定是包含或互斥的关系,数据通路上的数据可以根据具体场景可以进行配置。
FPGA中可以包括ETH IF、快速转发引擎以及控制器局域网接口(controller area network interface,CAN IF)。其中,FPGA可以根据接口读入或者输出的数据报文格式确定数据报文读入或者输出的接口类型。
本申请实施例中,在FPGA的快速转发引擎上接入并行处理单元(parallel processing unit),并行处理单元的结构可以如图7所示。并行处理单元主要包括三个模块:数据包分类模块(packet classification module),有状态数据包对比模块(stateful packet matching module),规则设定模块(rule configuration set module)。
数据包分类模块用于将快速转发数据中与安全无关的数据报文过滤掉。
示例性的,数据包分类模块根据数据报文中的IP地址,将发向与安全无关的器件的 数据报文过滤掉。
示例性的,数据包分类模块根据数据报文的数据类型,将与安全无关的数据报文(如显示器显示数据)过滤掉。
规则设定模块用于存储数据。规则设定模块中可以包括数据由协议数据单元(protocol data unit,PDU)报文检测规则与控制器局域网(controller area network,CAN)信号检测规则。PDU报文检测规则包括但不限于对PDU标识信息(例如,PDU ID)、PDU ID对应报文长度、PDU ID对应正常传输速率的检测规则。CAN信号检测规则包括但不限于对CAN信号地址,CAN信号(中携带的数据值)的最大/最小值,CAN信号(中携带的数据值的变化量)最大增长/减少量。示例性的,以下通过三个实际攻击场景对检测规则的运用进行说明
防重放(replay attack)攻击场景:有状态数据包对比模块中的PDU报文处理模块提取当前数据报文的PDU ID与报文序列号(例如,seq1)。PDU报文处理模块对比处理报文缓存中该PDU ID最后一次出现时数据报文的序列号(例如,seq2)。若seq2大于等于seq1,则检测到重放攻击。
防CAN信号异常攻击场景:有状态数据包对比模块中的CAN信号处理模块提取当前处理CAN信号的信号地址与信号值。CAN信号处理模块对比预先设定的信号值范围,如果CAN信号的信号值超出范围,则检测到CAN信号异常。
防拒绝服务(denial of service)攻击场景:PDU报文处理模块提取当前数据报文的PDU ID与报文的时间戳并提取该PDU ID在处理报文缓存中存储的过往数据包,拿到其中每一个数据包的时间戳。PDU报文处理模块根据时间戳之间的时间间隔计算PDU报文传输速率,再与PDU报文正常速率对比。若当前计算速率超出正常速率,则检测到拒绝服务攻击。
有状态数据包对比模块用于接收来自经数据包分类模块过滤的数据报文,通过规则设定模块中存储的检测规则对数据报文进行检测,最终向外输出检测结果信号。有状态数据包对比模块内部包含四个子模块:
PDU报文处理模块,用于根据检测规则对PDU报文进行分析并给出分析结果,并解析PDU报文提取CAN信号信息。
CAN信号处理模块,用于根据检测规则对CAN信号进行分析并给出分析结果。
处理报文缓存,用于存储过去一段时间内处理的报文,记录过去的处理状态。PDU报文处理模块与CAN信号处理模块可以结合过去状态分析当前数据报文的安全性。
例如,PDU报文处理模块提取当前数据报文的PDU ID与报文序列号(例如,seq1),PDU报文处理模块可以对比处理报文缓存中该PDU ID最后一次出现时数据报文的序列号(例如,seq2)来确定当前数据报文的安全性。若seq2大于等于seq1,则检测到重放攻击。
决策单元,用于综合PDU报文处理模块与CAN信号处理模块的输出结果,输出最终能检查结果。
图8示出了本申请实施例提供的安全检测系统的示意图。其中,该安全检测系统可以包括MCU和FPGA,其中,MCU中包括入侵检测系统1(IDS1),FPGA中包括入侵检测系统2(IDS2)。其中,IDS1可以部署于MCU的应用层或内核层中;IDS2的结构可 以为图7所示的并行处理单元的结构。下面以数据通路2中的数据为数据通路1中的数据的子集(即数据通路1中包括所有的数据报文)为例进行说明。
在IDS1处于非哨兵模式下时,VIU接收到某个节点转发的数据报文后,可以将其中的一部分数据报文经过数据通路2发送至IDS2进行安全检测。数据通路1中的数据经过MCU后,MCU可以忽略掉由IDS2进行安全检测的数据报文,而对未由IDS2进行安全检测的数据报文进行安全检测。
示例性的,当车辆处于行车状态时,可以将数据报文中安全攻击的威胁程度分为三类:直接威胁、潜在威胁和无威胁。
直接威胁:当IDS或者IDPS将数据报文的威胁程度确定为直接威胁时,IDS或者IDPS可以确定该数据报文会直接威胁到车辆的行驶安全。示例性的,若该数据报文为防拒绝服务攻击场景中的PDU报文,若该PDU报文的传输速率大于第一预设速率m,则可以认为该PDU报文存在直接威胁。示例性的,若该数据报文为防CAN信号异常攻击场景中的CAN信号,若该CAN信号的信号值不在第一预设范围内(例如,第一预设范围为[a,b))且不在第二预设信号值范围内(例如,第二预设范围为[b,c))时,可以认为该CAN信号存在直接威胁。
潜在威胁:当IDS或者IDPS将数据报文的威胁程度确定为潜在威胁时,IDS或者IDPS可以确定该数据报文不会直接威胁到车辆的行驶安全,但是存在潜在威胁到行驶安全的风险。示例性的,若该数据报文为防拒绝服务攻击场景中的PDU报文,若该PDU报文的传输速率小于或者等于第一预设速率m且大于第二预设速率n(m>n),则可以认为该PDU报文存在潜在威胁。示例性的,若该数据报文为防CAN信号异常攻击场景中的CAN信号,若该CAN信号的信号值在第二预设范围内(例如,第二预设范围为[b,c))时,可以认为该CAN信号存在潜在威胁。
无威胁:当IDS或者IDPS将数据报文的威胁程度确定为无威胁时,IDS或者IDPS可以确定该数据报文是安全的或者对车辆的行驶安全是无威胁的。示例性的,若该数据报文为防拒绝服务攻击场景中的PDU报文,若该PDU报文的传输速率小于或者等于第二预设速率n,则可以认为该PDU报文无威胁。示例性的,若该数据报文为防CAN信号异常攻击场景中的CAN信号,若该CAN信号的信号值在第一预设范围内(例如,第一预设范围为[a,b))时,可以认为该CAN信号存在潜在威胁。
以上对直接威胁、潜在威胁和无威胁的确定过程仅仅是示意性的,直接威胁、潜在威胁和无威胁的确定过程还可以通过其他方式来实现,以上并不是对具体实施方式的限制。
以上威胁程度的分级还可以有其他方式,本处仅为举例。
当IDS2检测到直接威胁时,那么IDS2可以向MCU中的主CPU(host CPU)发送攻击检测信号(attack detection signal),从而使得MCU启动容灾措施实现安全停车。当IDS2检测到无威胁时,IDS2不采取任何动作。当IDS2检测到潜在威胁时(例如,同一个PDU ID的数据报文发送频率出现异常,但无法确定为直接威胁),IDS2中的决策单元可以向MCU中的host CPU发送报警信号(warning signal),从而使得MCU启动IDS1的哨兵模式。在切换至哨兵模式后,IDS1可以对数据通路1中的所有数据报文进行安全检测。如上所述,数据通路1中可以包含所有的数据报文。在非哨兵模式下,IDS1将忽略掉由IDS2处理的数据报文,减小IDS1的处理压力。当IDS1处于哨兵模式下时,IDS1将对所有的 数据报文进行安全检测。
以上针对IDS1对数据通路1中数据报文不同的检测量,将IDS1的安全检测模式分为了哨兵模式和非哨兵模式。在哨兵模式下,IDS可以对所有待进行安全检测的数据报文进行安全检测;在非哨兵模式下,IDS1可以对所有待进行安全检测的数据报文中的一部分数据报文进行安全检测,而忽略掉由IDS2进行安全检测的另一部分数据报文。
当IDS1确定数据通路1中的数据是直接威胁时,则启动MCU中的容灾措施实现安全停车。当IDS1在一段时间内检测到数据通路1中的数据报文无威胁时,则IDS1关闭哨兵模式退回非哨兵模式。
以上是以安全攻击的威胁程度分为直接威胁、潜在威胁和无威胁为例进行说明,本申请实施例并不限于此。例如,还可以将威胁程度分为其他等级(例如,一级威胁、二级威胁、三级威胁、无威胁等)。
对于处于行车状态的车辆,当IDS2或者IDS1检测到直接威胁时,MCU启动容灾措施实现安全停车,本申请实施例并不限于此。例如,在高速公路上行驶时,车速在[80Km/h,120Km/h]时检测到直接威胁,MCU可以进行减速并向减速车道并道。又例如,在市区行驶时,车速在[20Km/h,60Km/h]时检测到直接威胁,MCU可以根据行驶状态进行停车。又例如,在低速行驶阶段(例如,车速在[5Km/h,10Km/h]时)或停止状态时,若检测到直接威胁,MCU可以直接停车,同时车辆可以通知驾驶员对规则库中的安全检测规则进行更新,或者,车辆可以通过空中下载(over the air,OTA)接口对规则库中的安全检测规则进行更新。
图9示出了本申请实施例提供的安全检测方法900的示意性流程图。如图9所示,该方法900可以由上述IDS1和IDS2执行,该方法900包括:
S901,数据包分类模块过滤掉与安全无关的数据报文,并将与安全相关的数据包发送给有状态数据报文对比模块。
例如,数据包分类模块根据数据报文中的IP地址,将发向与安全无关的器件的数据报文过滤掉。
又例如,数据包分类模块根据数据报文的数据类型,将与安全无关的数据报文(如显示器显示数据)过滤掉。
S902,有状态数据包对比模块读取规则设定模块中保存的数据报文检测规则,判断数据报文是否存在直接威胁。
一个实施例中,有状态数据包对比模块还可以将处理过的数据报文存储在处理报文缓存中。
若有状态数据包对比模块判断该数据报文存在安全威胁,则执行S903;否则,有状态数据包对比模块执行S904。
S903,若该数据报文存在直接威胁,则有状态数据包对比模块向MCU发送攻击检测信号,从而使得MCU中断处理并启动容灾措施实现安全停车。
中断处理为计算机术语。对于主CPU而言,其接收到攻击检测信号可以理解为是一种中断,中断处理可以针对不同的中断进行不同的处理。
S904,若该数据报文不存在直接威胁,则有状态数据包对比模块读取规则设定模块中保存的数据报文检测规则,判断数据报文是否存在潜在威胁。
示例性的,若同一个PDU ID的数据报文发送频率出现异常,有状态数据包对比模块无法确定其为直接威胁时,则可以将该数据报文的威胁程度确定为潜在威胁。
若有状态数据包对比模块判断该数据报文无潜在威胁,则执行S905;否则,有状态数据包对比模块执行S906。
S905,若该数据报文无潜在威胁,则IDS2不做处理。
以上若该数据报文无潜在威胁,则数据报文的安全检测流程结束,IDS2可以继续对下一个数据报文进行安全检测,即对下一个数据报文继续执行以上S901-S904。
S906,若该数据报文存在潜在威胁,则有状态数据包对比模块向MCU发送报警信号,从而使得MCU中断处理并将IDS1由非哨兵模式切换至哨兵模式。
一个实施例中,在IDS1处于非哨兵模式下时,数据通路1中的数据报文经过MCU后,MCU可以忽略掉由IDS2进行安全检测的数据报文,而对未由IDS2进行安全检测的数据报文进行安全检测。在IDS1处于由非哨兵模式切换至哨兵模式后,IDS1将对所有的数据报文进行安全检测。
S907,IDS1判断数据报文是否存在直接威胁。
若IDS1判断数据报文存在直接威胁,则可以执行S908;否则,执行S909。
一个实施例中,IDS1可以在预设时长内,判断数据通路1中的所有数据报文是否存在直接威胁。
示例性的,该预设时长可以为1分钟或者30秒。
一个实施例中,该预设时长可以结合具体场景进行设定。示例性的,当车辆在高速公路上行驶时,该预设时长可以为1分钟;当车辆在城市道路行驶时,该预设时长可以为30秒。示例性的,当车辆处于自动驾驶状态时,该预设时长可以为1分钟;当车辆处于驾驶员手动驾驶状态时,该预设时长可以为30秒。
S908,若IDS1判断数据报文存在直接威胁,则IDS1可以向host CPU发送攻击检测信号,从而使得MCU中断处理并启动容灾措施实现安全停车。
S909,若IDS1判断数据报文存在无直接威胁,则根据安全策略执行相应的安全措施。
一个实施例中,IDS1根据安全策略执行相应的安全措施,包括:IDS1从哨兵模式切换至非哨兵模式。
本申请实施例中,IDS1上可以处理相比于IDS2更为复杂的安全检测过程,例如,IDS1可以对比发向两个不同ECU的数据包,从而判断这个两个不同的数据包的综合行为是否会造成安全威胁;IDS2可以是对发向两个不同ECU(例如,ECU1和ECU2)的数据包进行区分,从而分别对发向ECU1的数据包和发送ECU2的数据包进行安全检测。
本申请实施例中,通过部署IDS2这一硬件检测装置,有助于提升处理数据包时的处理速度。
以上的安全策略可以是不同类型的,例如,可以将安全策略分为保守型的安全策略和冒险型的安全策略。示例性的,若该安全策略为保守型的安全策略,则IDS1在确定该数据报文存在直接威胁时,可以控制车辆直接安全停车。示例性的,若该安全策略为冒险型的安全策略,则IDS1可以忽略IDS2的告警,从哨兵模式切换至非哨兵模式或者其他模式。
以上是以在FGPA和MCU中分别部署IDS2和IDS1为例进行说明的。也可以是在FGPA和MCU中分别部署IDPS2和IDPS1;或者,还可以在FGPA和MCU中分别部署 IDPS2和IDS1;或者,还可以是在FGPA和MCU中分别部署IDS2和IDPS1。
本申请实施例中,在数据报文的安全检测过程中可以使用交通工具本地的IDS1和IDS2,可以有效避免快速转发引擎直接转发数据报文带来的安全隐患。
除了对数据报文进行安全检测以外,本申请实施例中IDS2中规则设定模块还可以连接支持远程升级的空中下载(over the air,OTA)接口。图10示出了本申请实施例提供的FPGA与MCU进行安全检测的另一示意图。可以看出,IDS2中的规则设定模块可以连接OTA接口。
OTA升级接口可以包括以下两个步骤:
(1)OTA接口与远端建立安全连接
OTA接口在出厂时注入公私钥对中的公钥,私钥由更新服务的提供方所有不对外公开。当更新服务的提供方需要更新规则时,服务器会将更新信息(更新规则、更新版本)用私钥加密后发送给OTA接口。OTA接口通过公钥验证更新信息来自授权方后,对规则设定模块中存储的安全检测规则进行更新。
一个实施例中,该更新服务的提供方可以为一级(Tier 1)制造商或者第三方安全公司。
以上是以基于公私钥对的信道建立方案为例进行说明的,目的是建立OTA接口与更新服务提供商间的安全信道,本申请实施例并不限于此。例如,OTA接口和服务器中可以保存有相同的密钥,当更新服务的提供方需要更新规则时,服务器可以通过该密钥对更新信息加密后发送给OTA接口。OTA接口在接收到经过加密后的更新信息后,可以使用其保存的密钥对其进行解密,从而获得更新信息。
(2)OTA接口接收更新数据包并更新存储的检测规则
OTA接口将接收到的数据包经公钥解密后,对比更新信息中的更新版本与当前版本是否匹配,若不匹配则放弃此次更新。若匹配,则对规则设定模块中的安全检测规则进行更新。其中,更新信息中可以包括更新命令,例如增加规则、删除规则、修改规则等。
例如,若是增加规则,OTA接口将更新信息中的安全检测规则添加到规则设定模块中。
又例如,若是删除规则,OTA接口将更新信息中的安全检测规则与规则设定模块中安全检测规则进行对比,将一致的数据进行删除。
又例如,若是修改规则,OTA接口会根据更新信息提供的索引在规则设定模块中寻找(索引可以是PDU ID、CAN信号地址等单个索引,也可以是多个属性的组合),当找到相应安全检测规则时对其进行更新。
以上结合图8至图10介绍了通过车辆本地的安全检测装置(IDS1和IDS2)对数据报文进行安全检测的过程,下面结合图11至图12介绍通过车辆本地以及云端服务器对数据报文进行安全检测的过程。
图11示出了本申请实施例提供的安全检测系统的另一示意图。其中,该安全检测系统可以包括MCU、FPGA和云端服务器,其中,MCU中包括IDS1,FPGA中包括IDS2,云端服务器中包括机器学习推断模型。下面以数据通路2中的数据为数据通路1中的数据的子集(即数据通路1中包括所有的数据报文)为例进行说明。
在IDS1处于非哨兵模式下时,VIU接收到某个节点转发的数据报文后,可以将其中 的一部分数据报文经过数据通路2发送至IDS2进行安全检测。数据通路1中的数据经过MCU后,MCU可以忽略掉由IDS2进行安全检测的数据报文,而对未由IDS2进行安全检测的数据报文进行安全检测。
当IDS2检测到直接威胁时,那么IDS2可以向主CPU发送攻击检测信号,从而使得MCU启动容灾措施实现安全停车。当IDS2检测到无威胁时,IDS2不采取任何动作。当IDS2检测到潜在威胁时(例如,同一个PDU ID的数据报文发送频率出现异常,但无法确定为直接威胁),IDS2可以向MCU中的host CPU发送报警信号,从而使得MCU启动IDS1的哨兵模式。在切换至哨兵模式后,IDS1可以对数据通路1中的所有数据报文进行安全检测。
当IDS1确定数据通路1中的数据是直接威胁时,则同样启动MCU中的容灾措施实现安全停车。当IDS1在一段时间内检测确定无威胁时,则IDS1从哨兵模式切换回非哨兵模式。若IDS1的检测结果仍然是潜在威胁,则IDS1可以将从启动哨兵模式起处理的数据报文发送至云端服务器。
一个实施例中,云端服务器中可以搭载机器学习推断模型。机器学习推断模型可以是基于整体车队(例如,某个车辆制造商所有生产的车辆)的运行数据训练得来,并对上传数据进行检查。若不存在威胁,则通知IDS1无威胁,IDS1在接收到无威胁的指示后,可以从哨兵模式切换回非哨兵模式。若存在威胁,则机器学习推断模型可以基于IDS1上传的数据报文生成新的检测规则,并通过OTA接口更新IDS2中规则设定模块的安全检测规则。
示例性的,IDS1确定同一PDU ID的数据报文的发送频率出现异常(例如,频率为a)时,IDS1可以确定该数据报文存在潜在威胁并向云端服务器发送该数据报文。云端服务器通过机器学习推断模型确定该数据报文存在直接威胁,从而通过OTA接口向车辆发送该PDU ID对应的数据报文的频率小于或者等于b(例如,a大于或者等于b)这一安全检测规则,从而车辆可以更新规则库中的安全检测规则。
本申请实施例中,云端服务器中搭载的机器学习推断模型可以起到两个作用:一是作为安全检测的最后屏障,可以最终决定性的确认是否存在安全攻击;二是作为云端服务器为包括受攻击车辆(或者整个车队中的车辆)更新安全检测规则。
图12示出了本申请实施例提供的安全检测方法1200的示意性流程图。如图12所示,该方法1200可以由上述IDS1、IDS2和云端服务器执行,该方法1200包括:
S1201,数据包分类模块过滤掉与安全无关的数据报文,并将与安全相关的数据包发送给有状态数据报文对比模块。
S1202,有状态数据包对比模块读取规则设定模块中保存的数据报文检测规则,判断数据报文是否存在直接威胁。
若有状态数据包对比模块判断该数据报文存在安全威胁,则执行S1203;否则,有状态数据包对比模块执行S1204。
S1203,若该数据报文存在直接威胁,则有状态数据包对比模块向MCU发送攻击检测信号,从而使得MCU中断处理并启动容灾措施实现安全停车。
S1204,若该数据报文不存在直接威胁,则有状态数据包对比模块读取规则设定模块中保存的数据报文检测规则,判断数据报文是否存在潜在威胁。
若有状态数据包对比模块判断该数据报文无潜在威胁,则执行S1205;否则,有状态数据包对比模块执行S1206。
S1205,若该数据报文无潜在威胁,则IDS2不做处理。
S1206,若该数据报文存在潜在威胁,则有状态数据包对比模块向MCU发送报警信号,从而使得MCU中断处理并将IDS1由非哨兵模式切换至哨兵模式。
S1207,IDS1判断数据报文是否存在直接威胁。
若IDS1判断数据报文存在直接威胁,则可以执行S1208;否则,执行S1209。
一个实施例中,IDS1可以在预设时长内,判断数据通路1中的所有数据报文是否存在直接威胁。
S1208,若IDS1判断数据报文存在直接威胁,则IDS1可以向host CPU发送攻击检测信号,从而使得MCU中断处理并启动容灾措施实现安全停车。
以上S1201-S1208的过程可以参考上述S901-S908的过程,为了简洁,此处不再赘述。
S1209,若IDS1判断数据报文存在无直接威胁,则IDS1可以继续确定数据报文是否存在潜在威胁。
若IDS1确定数据报文中无潜在威胁,则执行S1210;否则,执行S1211。
S1210,若IDS1确定数据报文无潜在威胁,则IDS1可以向host CPU指示数据报文无威胁,从而host CPU可以将IDS1从哨兵模式切换至非哨兵模式。
S1211,若IDS1确定数据报文存在潜在威胁,则IDS1可以向云端服务器发送从IDS1启动哨兵模式起处理的数据报文。
一个实施例中,若IDS1确定数据报文存在潜在威胁,则IDS1也可以向云端服务器发送IDS1确定的存在潜在威胁的数据报文。
S1212,云端服务器判断IDS1发送的数据报文是否存在安全威胁。
若云端服务器确定数据报文不存在安全威胁,则执行S1213;否则,执行S1214。
S1213,若云端服务器确定数据报文不存在安全威胁,则云端服务器通知IDS1数据报文无安全威胁,从而使得IDS1从哨兵模式切换回非哨兵模式。
S1214,若云端服务器确定数据报文存在安全威胁,则云端服务器可以根据该存在安全威胁的数据报文生成安全检测规则,并通过OTA接口更新IDS2中的安全检测规则。
本申请实施例中,当IDS1和IDS2均确认数据报文存在潜在威胁时,车辆可以将数据报文发送至云端服务器进行安全检测,从而可以由云端服务器最终确定数据报文是否存在安全威胁。同时,通过车云结合进行安全检测的方式,云端服务器还可以根据该存在安全威胁的数据报文生成新的安全检测规则,并通过OTA接口对车辆(或者,整个车队)本地保存的安全检测规则进行更新,从而有助于车辆中安全检测规则的实时更新,有助于车辆应对未知的安全攻击。
以上结合图8至图12介绍了基于FPGA的安全检测方法,其中,IDS1和IDS2位于2块不同的芯片上。本申请实施例还提供了一种基于知识产权核(intellectual property core,IP core)的片上系统集成方案,图13示出了本申请实施例提供的网关芯片的示意图。本申请实施例中,快速转发引擎可以集成在网关芯片中。IDS1可以运行在主应用核(application core)上,IDS2作为IP核集成在快速转发引擎中。快速转发引擎通过系统总线与主应用核互联。
安全检测规则可以存储于闪存(Flash)中,IDS2发送读取请求读取安全检测规则。一个实施例中,主应用核与IDS2都可以通过发送读取请求给Flash,从而读取安全检测规则。通过出厂时预先配置的地址范围,Flash可以将一部分存储空间分配给主应用核,一部分分配给IDS2进行安全检测规则的保存,这样可以保证主应用核上的程序不会修改安全检测规则。在需要主应用核修改安全检测规则的场景下,可以将安全检测规则的存储空间访问权限开放给主应用核。
以上应用核可以为CPU或者应用处理器。
图13中的对数据包的具体检测流程可以参考上述图9和图12所示的安全检测方法。例如,当数据包通过以太网接口EHT IF读入后,分别经过总线发送给主应用核与快速转发引擎。在分别对数据包进行解包封包后,通过CAN IF进行发送。同时主应用核上的IDS1与快速转发引擎中的IDS2通过既定的安全检测规则对数据包进行安全检测,具体方式可以参考上述实施例中的描述,此处不再赘述。
本申请实施例中,安全检测装置可以应用在各种具有网络结构的安全检测中,且安全检测不限于对外部输入进行安全检查的IDS,也可以对内部通信、资源访问进行监控。如在芯片设计中,不同IP芯片间通过系统总线进行互联,本申请实施例可以通过修改检测规则格式与检测逻辑,对IP芯片间的通信进行监控。
图14示出了本申请实施例提供的安全检测方法1400的示意性流程图。如图14所示,该方法包括:
S1401,获取第一数据包。
示例性的,如图8所示,该第一数据包可以为数据通路1中的数据包。
一个实施例中,该第一数据包可以为待进行安全检测的数据包中的部分或者全部。
S1402,将该第一数据包输入第一安全检测装置进行安全检测,得到第一安全检测结果。
示例性的,该第一安全检测装置可以为图8中的IDS2。
示例性的,该第一安全检测装置可以为图10中的IDS2。
一个实施例中,该第一安全检测结果可以指示该第一数据包存在安全威胁或者无威胁。示例性的,该第一数据包存在安全威胁可以包括该第一数据包存在直接威胁或者潜在威胁。
对于直接威胁、潜在威胁或者无威胁的描述可以参考上述实施例,此处不再赘述。
S1403,若该第一安全检测结果指示该第一数据包存在安全威胁,获取第二数据包且将该第二数据包输入第二安全检测装置进行安全检测,得到第二安全检测结果。
示例性的,该第二安全检测装置可以为图8中的IDS1。
示例性的,该第二安全检测装置可以为图10中的IDS1。
一个实施例中,若该第一安全检测结果指示该第一数据包存在安全威胁,获取第二数据包且将该第二数据包输入第二安全检测装置进行安全检测,得到第二安全检测结果,包括:若该第一安全检测结果指示该第一数据包存在潜在威胁,获取第二数据包且将该第二数据包输入第二安全检测装置进行安全检测,得到第二安全检测结果。
一个实施例中,若该第一安全检测结果指示该第一数据包存在直接威胁,则直接执行安全指令(例如,控制车辆停车)或者提示用户当前车辆存在安全威胁。
S1404,根据该第二安全检测结果,对该第二数据包进行转发或者执行第一安全指令。
可选地,该第一安全指令用于控制车辆执行安全操作。示例性的,该第一指令可以控制车辆安全停车;或者,该第一指令可以控制车辆的车速将至预设速度阈值或者该预设速度阈值以下;或者,若车辆处于自动驾驶状态,该第一安全指令可以用于提示用户接管车辆。
一个实施例中,若车辆和第一服务器协同对数据包进行安全检测,那么该第二安全检测结果可以指示该第二数据包存在安全威胁或者无威胁,该安全威胁可以包括直接威胁或者潜在威胁。
可选地,该根据该第二安全检测结果,对该第二数据包进行转发或者执行第一安全指令,包括:若该第二安全检测结果指示该第二数据包存在安全威胁,向第一服务器发送该第二数据包;接收该第一服务器发送的第三安全检测结果,该第三安全检测结果指示该第二数据包是否存在安全威胁;根据该第三安全检测结果,对该第二数据包进行转发或者执行该第一安全指令。
可选地,若该第二安全检测结果指示该第二数据包存在安全威胁,向第一服务器发送该第二数据包,包括:若该第二安全检测结果指示该第二数据包存在潜在威胁,向第一服务器发送该第二数据包。
可选地,若该第二安全检测结果指示该第二数据包存在直接威胁,则直接执行安全指令(例如,控制车辆停车)或者提示用户当前车辆存在安全威胁。
可选地,该根据该第三安全检测结果,对该第二数据包进行转发或者执行第一安全指令,包括:若该第三安全检测结果指示该第二数据包不存在安全威胁,对该第二数据包进行转发;或者,若该第三安全检测结果指示该第二数据包存在安全威胁,执行该第一安全指令。
一个实施例中,若车辆通过车辆本地的安全策略对数据包进行安全检测,那么该第二安全检测结果可以指示该第二数据包存在安全威胁或者无威胁。
可选地,该根据该第二安全检测结果,对该第二数据包进行转发或者执行第一安全指令,包括:若该第二安全检测结果指示该第二数据包不存在安全威胁,对该第二数据包进行转发;或者,若该第二安全检测结果指示该第二数据包存在安全威胁,执行该第一安全指令。
可选地,该第一安全检测装置包括规则库,该规则库中保存有安全检测规则,该方法还包括:接收第二服务器发送的安全检测规则更新信息;根据该安全检测规则更新信息,对该规则库中的该安全检测规则进行更新。
示例性的,如图10所示,该第一安全检测装置可以为IDS2。IDS2中包括规则设定模块,规则设定模块通过OTA接口可以接收服务器发送的安全检测规则更新信息,从而实现对规则设定模块中的安全检测规则的实时更新,有助于避免单一的安全检测规则难以应对多变的攻击手段。
可选地,该获取第一数据包,包括:在第一时间段内,获取该第一数据包和第三数据包;其中,该方法还包括:将该第三数据包输入该第二安全检测装置进行安全检测,得到第四安全检测结果;根据该第四安全检测结果,对该第三数据包进行转发或者执行第二安全指令。
可选地,该第二安全指令用于控制车辆执行安全操作。示例性的,该第二指令可以控制车辆安全停车;或者,该第二指令可以控制车辆的车速将至预设速度阈值或者该预设速度阈值以下;或者,若车辆处于自动驾驶状态,该第二安全指令可以用于提示用户接管车辆。
示例性的,如图8所示,在第一时间段内VIU获取到第一数据包和第三数据包,其中,数据通路1中可以包括该第一数据包和第三数据包,数据通路2中可以包括该第一数据包。数据通路2中的第一数据包可以经过IDS2进行安全检测,数据通路1中的数据包在经过IDS1进行安全检测时,IDS1可以忽略由IDS2进行安全检测的第一数据包,而对第三数据包进行安全检测。这样,IDS1可以忽略数据通路1中的部分数据包,有助于加快IDS1对数据包进行安全检测时的效率。
可选地,该方法还包括:对该第一数据包进行转发。
示例性的,如图8所示,IDS2在对数据通路1中的数据包进行安全检测的同时,FPGA还可以对数据通路1中的数据包进行转发。这样在IDS2确定数据通路1中的数据包不存在安全威胁的同时可以实现数据包的快速转发;而在IDS2确定数据通路1中的数据包存在安全威胁时,IDS2向主CPU发送报警信号,使得IDS1切换至哨兵模式,所有待检测的数据包可以经过IDS1进行安全检测,从而有助于提升数据转发时的安全性。
可选地,该第一安全检测装置为第一入侵检测系统IDS或第一入侵检测与拦截系统IDPS;和/或,该第二安全检测装置为第二IDS或者第二IDPS。
可选地,该第一安全检测装置位于现场可编程门阵列FPGA中;和/或,该第二安全检测装置位于微控制器单元MCU中。
可选地,该第一安全检测装置和该第二安全检测装置可以位于区控制器中。例如,该区控制器可以为上述VIU。
可选地,该第一安全检测装置位于快速转发引擎中;和/或,该第二安全检测装置运行在主应用核上。
可选地,该第一安全检测装置和该第二安全检测装置可以位于网关芯片中。
本申请实施例提供用于实现以上任一种方法的装置,例如,提供一种装置包括用以实现以上任一种方法中车辆所执行的各步骤的单元(或手段)。图15示出了本申请实施例提供的安全检测装置1500的示意性框图。如图15所示,该装置1500包括:获取单元1501,用于获取第一数据包;第一安全检测单元1502,用于将该第一数据包输入第一安全检测装置进行安全检测,得到第一安全检测结果;该获取单元1501,还用于若该第一安全检测结果指示该第一数据包存在安全威胁,获取第二数据包;第二安全检测单元1503,用于将该第二数据包输入第二安全检测装置进行安全检测,得到第二安全检测结果;处理单元1504,用于根据该第二安全检测结果,对该第二数据包进行转发或者执行第一安全指令。
可选地,该装置1500还包括发送单元和接收单元,该处理单元1504具体用于:若该第二安全检测结果指示该第二数据包存在安全威胁,控制该发送单元向第一服务器发送该第二数据包;控制该接收单元接收该第一服务器发送的第三安全检测结果,该第三安全检测结果指示该第二数据包是否存在安全威胁;根据该第三安全检测结果,对该第二数据包进行转发或者执行该第一安全指令。
可选地,该处理单元1504具体用于:若该第三安全检测结果指示该第二数据包不存在安全威胁,控制该发送单元对该第二数据包进行转发;或者,若该第三安全检测结果指示该第二数据包存在安全威胁,执行该第一安全指令。
可选地,该装置1500还包括发送单元,该处理单元1504具体用于:若该第二安全检测结果指示该第二数据包不存在安全威胁,控制该发送单元对该第二数据包进行转发;或者,若该第二安全检测结果指示该第二数据包存在安全威胁,执行该第一安全指令。
可选地,该第一安全检测装置包括规则库,该规则库中保存有安全检测规则,该处理单元1504,还用于根据第二服务器发送的安全检测规则更新信息,对该规则库中的该安全检测规则进行更新。
可选地,该获取单元1501具体用于:在第一时间段内,获取该第一数据包和第三数据包;其中,该第二安全检测单元,还用于将该第三数据包输入该第二安全检测装置进行安全检测,得到第四安全检测结果;根据该第四安全检测结果,对该第三数据包进行转发或者执行第二安全指令。
可选地,该装置1500还包括发送单元,该发送单元,用于对该第一数据包进行转发。
可选地,该第一安全检测装置为第一入侵检测系统IDS或第一入侵检测与拦截系统IDPS;和/或,该第二安全检测装置为第二IDS或者第二IDPS。
可选地,该第一安全检测装置位于现场可编程门阵列FPGA中;和/或,该第二安全检测装置位于微控制器单元MCU中。
可选地,该第一安全检测装置位于快速转发引擎中;和/或,该第二安全检测装置运行在主应用核上。
图16示出了本申请实施例提供的装置1600的示意性框图,该装置1600包括存储器1601,用于存储计算机指令;处理器1602,用于执行该存储器中存储的计算机指令,以使得该装置1600执行上述方法900、方法1200或者方法1400。
本申请实施例还提供了一种车辆,该车辆可以包括上述装置1500或者装置1600。
本申请实施例还提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码在计算机上运行时,使得计算机执行上述方法。
本申请实施例还提供了一种计算机可读介质,所述计算机可读介质存储有程序代码,当所述计算机程序代码在计算机上运行时,使得计算机执行上述方法。
以上装置中各单元的划分仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。此外,装置中的单元可以以处理器调用软件的形式实现;例如装置包括处理器,处理器与存储器连接,存储器中存储有指令,处理器调用存储器中存储的指令,以实现以上任一种方法或实现该装置各单元的功能,其中处理器例如为通用处理器,例如CPU或微处理器,存储器为装置内的存储器或装置外的存储器。或者,装置中的单元可以以硬件电路的形式实现,可以通过对硬件电路的设计实现部分或全部单元的功能,该硬件电路可以理解为一个或多个处理器;例如,在一种实现中,该硬件电路为ASIC,通过对电路内元件逻辑关系的设计,实现以上部分或全部单元的功能;再如,在另一种实现中,该硬件电路为可以通过PLD实现,以FPGA为例,其可以包括大量逻辑门电路,通过配置文件来配置逻辑门电路之间的连接关系,从而实现以上部分或全部单元的功能。以上装置的所有单元可以全部通过处理器调用软件的形式实现,或全部 通过硬件电路的形式实现,或部分通过处理器调用软件的形式实现,剩余部分通过硬件电路的形式实现。
在本申请实施例中,处理器是一种具有信号的处理能力的电路,在一种实现中,处理器可以是具有指令读取与运行能力的电路,例如CPU、微处理器、GPU、或DSP等;在另一种实现中,处理器可以通过硬件电路的逻辑关系实现一定功能,该硬件电路的逻辑关系是固定的或可以重构的,例如处理器为ASIC或PLD实现的硬件电路,例如FPGA。在可重构的硬件电路中,处理器加载配置文档,实现硬件电路配置的过程,可以理解为处理器加载指令,以实现以上部分或全部单元的功能的过程。此外,还可以是针对人工智能设计的硬件电路,其可以理解为一种ASIC,例如NPU、TPU、DPU等。
可见,以上装置中的各单元可以是被配置成实施以上方法的一个或多个处理器(或处理电路),例如:CPU、GPU、NPU、TPU、DPU、微处理器、DSP、ASIC、FPGA,或这些处理器形式中至少两种的组合。
此外,以上装置中的各单元可以全部或部分可以集成在一起,或者可以独立实现。在一种实现中,这些单元集成在一起,以片上系统(system-on-a-chip,SOC)的形式实现。该SOC中可以包括至少一个处理器,用于实现以上任一种方法或实现该装置各单元的功能,该至少一个处理器的种类可以不同,例如包括CPU和FPGA,CPU和人工智能处理器,CPU和GPU等。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的 介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (24)
- 一种安全检测方法,其特征在于,包括:获取第一数据包;将所述第一数据包输入第一安全检测装置进行安全检测,得到第一安全检测结果;若所述第一安全检测结果指示所述第一数据包存在安全威胁,获取第二数据包且将所述第二数据包输入第二安全检测装置进行安全检测,得到第二安全检测结果;根据所述第二安全检测结果,对所述第二数据包进行转发或者执行第一安全指令,所述第一安全指令用于控制车辆执行安全操作。
- 根据权利要求1所述的方法,其特征在于,所述根据所述第二安全检测结果,对所述第二数据包进行转发或者执行第一安全指令,包括:若所述第二安全检测结果指示所述第二数据包存在安全威胁,向第一服务器发送所述第二数据包;接收所述第一服务器发送的第三安全检测结果,所述第三安全检测结果指示所述第二数据包是否存在安全威胁;根据所述第三安全检测结果,对所述第二数据包进行转发或者执行所述第一安全指令。
- 根据权利要求2所述的方法,其特征在于,所述根据所述第三安全检测结果,对所述第二数据包进行转发或者执行第一安全指令,包括:若所述第三安全检测结果指示所述第二数据包不存在安全威胁,对所述第二数据包进行转发;或者,若所述第三安全检测结果指示所述第二数据包存在安全威胁,执行所述第一安全指令。
- 根据权利要求1所述的方法,其特征在于,所述根据所述第二安全检测结果,对所述第二数据包进行转发或者执行第一安全指令,包括:若所述第二安全检测结果指示所述第二数据包不存在安全威胁,对所述第二数据包进行转发;或者,若所述第二安全检测结果指示所述第二数据包存在安全威胁,执行所述第一安全指令。
- 根据权利要求1至4中任一项所述的方法,其特征在于,所述第一安全检测装置包括规则库,所述规则库中保存有安全检测规则,所述方法还包括:接收第二服务器发送的安全检测规则更新信息;根据所述安全检测规则更新信息,对所述规则库中的所述安全检测规则进行更新。
- 根据权利要求1至5中任一项所述的方法,其特征在于,所述获取第一数据包,包括:在第一时间段内,获取所述第一数据包和第三数据包;其中,所述方法还包括:将所述第三数据包输入所述第二安全检测装置进行安全检测,得到第四安全检测结 果;根据所述第四安全检测结果,对所述第三数据包进行转发或者执行第二安全指令,所述第二安全指令用于控制车辆执行安全操作。
- 根据权利要求1至6中任一项所述的方法,其特征在于,所述方法还包括:对所述第一数据包进行转发。
- 根据权利要求1至7中任一项所述的方法,其特征在于,所述第一安全检测装置为第一入侵检测系统IDS或第一入侵检测与拦截系统IDPS;和/或,所述第二安全检测装置为第二IDS或者第二IDPS。
- 根据权利要求1至8中任一项所述的方法,其特征在于,所述第一安全检测装置位于现场可编程门阵列FPGA中;和/或,所述第二安全检测装置位于微控制器单元MCU中。
- 根据权利要求1至8中任一项所述的方法,其特征在于,所述第一安全检测装置位于快速转发引擎中;和/或,所述第二安全检测装置运行在主应用核上。
- 一种安全检测装置,其特征在于,包括:获取单元,用于获取第一数据包;第一安全检测单元,用于将所述第一数据包输入第一安全检测装置进行安全检测,得到第一安全检测结果;所述获取单元,还用于在所述第一安全检测结果指示所述第一数据包存在安全威胁时,获取第二数据包;第二安全检测单元,用于将所述第二数据包输入第二安全检测装置进行安全检测,得到第二安全检测结果;处理单元,用于根据所述第二安全检测结果,对所述第二数据包进行转发或者执行第一安全指令,所述第一安全指令用于控制车辆执行安全操作。
- 根据权利要求11所述的装置,其特征在于,所述装置还包括发送单元和接收单元,所述处理单元具体用于:若所述第二安全检测结果指示所述第二数据包存在安全威胁,控制所述发送单元向第一服务器发送所述第二数据包;控制所述接收单元接收所述第一服务器发送的第三安全检测结果,所述第三安全检测结果指示所述第二数据包是否存在安全威胁;根据所述第三安全检测结果,对所述第二数据包进行转发或者执行所述第一安全指令。
- 根据权利要求12所述的装置,其特征在于,所述处理单元具体用于:若所述第三安全检测结果指示所述第二数据包不存在安全威胁,控制所述发送单元对所述第二数据包进行转发;或者,若所述第三安全检测结果指示所述第二数据包存在安全威胁,执行所述第一安全指令。
- 根据权利要求11所述的装置,其特征在于,所述装置还包括发送单元,所述处理单元具体用于:若所述第二安全检测结果指示所述第二数据包不存在安全威胁,控制所述发送单元对所述第二数据包进行转发;或者,若所述第二安全检测结果指示所述第二数据包存在安全威胁,执行所述第一安全指令。
- 根据权利要求11至14中任一项所述的装置,其特征在于,所述第一安全检测装置包括规则库,所述规则库中保存有安全检测规则,所述处理单元,还用于根据第二服务器发送的安全检测规则更新信息,对所述规则库中的所述安全检测规则进行更新。
- 根据权利要求11至15中任一项所述的装置,其特征在于,所述获取单元具体用于:在第一时间段内,获取所述第一数据包和第三数据包;其中,所述第二安全检测单元,还用于将所述第三数据包输入所述第二安全检测装置进行安全检测,得到第四安全检测结果;根据所述第四安全检测结果,对所述第三数据包进行转发或者执行第二安全指令,所述第二安全指令用于控制车辆执行安全操作。
- 根据权利要求11至16中任一项所述的装置,其特征在于,所述装置还包括发送单元,所述发送单元,用于对所述第一数据包进行转发。
- 根据权利要求11至17中任一项所述的装置,其特征在于,所述第一安全检测装置为第一入侵检测系统IDS或第一入侵检测与拦截系统IDPS;和/或,所述第二安全检测装置为第二IDS或者第二IDPS。
- 根据权利要求11至18中任一项所述的装置,其特征在于,所述第一安全检测装置位于现场可编程门阵列FPGA中;和/或,所述第二安全检测装置位于微控制器单元MCU中。
- 根据权利要求11至18中任一项所述的装置,其特征在于,所述第一安全检测装置位于快速转发引擎中;和/或,所述第二安全检测装置运行在主应用核上。
- 一种车辆,其特征在于,所述车辆包括如权利要求11至20中任一项所述的装置。
- 一种计算机可读存储介质,其特征在于,所述计算机可读介质存储有程序代码,当所述程序代码在计算机上运行时,使得计算机执行如权利要求1至10中任意一项所述的方法。
- 一种芯片,其特征在于,所述芯片包括处理器与数据接口,所述处理器通过所述数据接口读取存储器上存储的指令,以执行如权利要求1至10中任一项所述的方法。
- 一种计算机程序产品,其特征在于,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码在计算机上运行时,使得所述计算机执行如权利要求1至10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2022/084290 WO2023184303A1 (zh) | 2022-03-31 | 2022-03-31 | 一种安全检测方法、装置和车辆 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2022/084290 WO2023184303A1 (zh) | 2022-03-31 | 2022-03-31 | 一种安全检测方法、装置和车辆 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023184303A1 true WO2023184303A1 (zh) | 2023-10-05 |
Family
ID=88198579
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2022/084290 WO2023184303A1 (zh) | 2022-03-31 | 2022-03-31 | 一种安全检测方法、装置和车辆 |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2023184303A1 (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105141604A (zh) * | 2015-08-19 | 2015-12-09 | 国家电网公司 | 一种基于可信业务流的网络安全威胁检测方法及系统 |
CN108183886A (zh) * | 2017-12-07 | 2018-06-19 | 交控科技股份有限公司 | 一种轨道交通信号系统安全网关的安全增强设备 |
CN110572412A (zh) * | 2019-09-24 | 2019-12-13 | 南京大学 | 云环境下基于入侵检测系统反馈的防火墙及其实现方法 |
US10673880B1 (en) * | 2016-09-26 | 2020-06-02 | Splunk Inc. | Anomaly detection to identify security threats |
CN111274583A (zh) * | 2020-01-17 | 2020-06-12 | 湖南城市学院 | 一种大数据计算机网络安全防护装置及其控制方法 |
CN112491784A (zh) * | 2020-10-14 | 2021-03-12 | 新浪网技术(中国)有限公司 | Web网站的请求处理方法及装置、计算机可读存储介质 |
CN112491917A (zh) * | 2020-12-08 | 2021-03-12 | 物鼎安全科技(武汉)有限公司 | 一种物联网设备未知漏洞识别方法及装置 |
-
2022
- 2022-03-31 WO PCT/CN2022/084290 patent/WO2023184303A1/zh unknown
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105141604A (zh) * | 2015-08-19 | 2015-12-09 | 国家电网公司 | 一种基于可信业务流的网络安全威胁检测方法及系统 |
US10673880B1 (en) * | 2016-09-26 | 2020-06-02 | Splunk Inc. | Anomaly detection to identify security threats |
CN108183886A (zh) * | 2017-12-07 | 2018-06-19 | 交控科技股份有限公司 | 一种轨道交通信号系统安全网关的安全增强设备 |
CN110572412A (zh) * | 2019-09-24 | 2019-12-13 | 南京大学 | 云环境下基于入侵检测系统反馈的防火墙及其实现方法 |
CN111274583A (zh) * | 2020-01-17 | 2020-06-12 | 湖南城市学院 | 一种大数据计算机网络安全防护装置及其控制方法 |
CN112491784A (zh) * | 2020-10-14 | 2021-03-12 | 新浪网技术(中国)有限公司 | Web网站的请求处理方法及装置、计算机可读存储介质 |
CN112491917A (zh) * | 2020-12-08 | 2021-03-12 | 物鼎安全科技(武汉)有限公司 | 一种物联网设备未知漏洞识别方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11652827B2 (en) | Virtualized intrusion detection and prevention in autonomous vehicles | |
CN109714421B (zh) | 基于车路协同的智能网联汽车运行系统 | |
US20220006669A1 (en) | In-vehicle communications system, in-vehicle communication method, and device | |
CN109117313B (zh) | 一种带隔离灾备管控机制的车辆智慧安全网关及管控方法 | |
US10275955B2 (en) | Methods and systems for utilizing information collected from multiple sensors to protect a vehicle from malware and attacks | |
US20180109622A1 (en) | System and method for anomaly detection in diagnostic sessions in an in-vehicle communication network | |
US20210044612A1 (en) | In-vehicle apparatus and incident monitoring method | |
WO2021194590A1 (en) | Dynamic contextual road occupancy map perception for vulnerable road user safety in intelligent transportation systems | |
JP2020035433A (ja) | レンジ外ビークルのための中間ビークルリピータ | |
US20190334897A1 (en) | Monitoring device, monitoring method, and computer program | |
EP3531331B1 (en) | Providing secure inter-vehicle data communications | |
KR20200108374A (ko) | 차량에 대한 공격의 검출 및 예방을 위한 디바이스 | |
Hasan et al. | Cognitive internet of vehicles: motivation, layered architecture and security issues | |
WO2022047617A1 (zh) | 提高车辆安全性的方法和系统 | |
CN112600839A (zh) | 基于车联网平台构建安全威胁关联视图的方法及装置 | |
JP2023524383A (ja) | 脆弱道路ユーザの基本サービス通信プロトコルフレームワークおよび動的状態 | |
JP2023002832A (ja) | 監視装置、監視システム及び監視方法 | |
Xue et al. | {SAID}: State-aware defense against injection attacks on in-vehicle network | |
CN111191980A (zh) | 一种证据的生成方法、装置、设备及存储介质 | |
WO2023184303A1 (zh) | 一种安全检测方法、装置和车辆 | |
Hasan et al. | Security, privacy and trust: cognitive internet of vehicles | |
CN112537316A (zh) | 用于至少部分自动化地引导机动车的方法 | |
EP4292315A1 (en) | Method and system for protecting proprietary information used to determine a misbehavior condition for vehicle-to-everything (v2x) reporting | |
CN111225033A (zh) | 一种车辆的管理方法、装置、设备及存储介质 | |
US20240121258A1 (en) | System and method for dynamically updating firewall rules for a vehicle network of a vehicle |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22934152 Country of ref document: EP Kind code of ref document: A1 |