CN114253479B - 一种can总线入侵检测方法及系统 - Google Patents

一种can总线入侵检测方法及系统 Download PDF

Info

Publication number
CN114253479B
CN114253479B CN202111562672.8A CN202111562672A CN114253479B CN 114253479 B CN114253479 B CN 114253479B CN 202111562672 A CN202111562672 A CN 202111562672A CN 114253479 B CN114253479 B CN 114253479B
Authority
CN
China
Prior art keywords
data
intrusion detection
message
checked
detection rule
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.)
Active
Application number
CN202111562672.8A
Other languages
English (en)
Other versions
CN114253479A (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.)
Guoqi Beijing Intelligent Network Association Automotive Research Institute Co ltd
Original Assignee
Guoqi Beijing Intelligent Network Association Automotive Research Institute 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 Guoqi Beijing Intelligent Network Association Automotive Research Institute Co ltd filed Critical Guoqi Beijing Intelligent Network Association Automotive Research Institute Co ltd
Priority to CN202111562672.8A priority Critical patent/CN114253479B/zh
Publication of CN114253479A publication Critical patent/CN114253479A/zh
Application granted granted Critical
Publication of CN114253479B publication Critical patent/CN114253479B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Burglar Alarm Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种CAN总线入侵检测方法及系统,方法包括:将入侵检测规则二进制文件分块压缩后存储至flash中,并建立报文ID与数据块的对应关系表,从而不需要使用大容量flash即可实现对全部入侵检测规则二进制文件的存储;根据待检查数据报文ID,查找对应关系表,得到存储待检查数据报文的入侵检测规则数据所在数据块,将该数据块解压至RAM中,从而实现不需要使用大容量RAM即可实现对入侵检测规则二进制文件的解压,降低具有CAN总线入侵检测功能的MCU的成本;入侵检测程序根据RAM中解压的入侵检测规则数据,对待检查数据报文进行检测,从而实现对报文的检测。

Description

一种CAN总线入侵检测方法及系统
技术领域
本发明涉及网络安全技术领域,具体涉及一种CAN总线入侵检测方法及系统。
背景技术
车载内网CAN总线入侵检测是根据已配置好的入侵检测规则,通过收集和分析车载内网CAN总线的数据报文,检查当前数据报文中是否存在违反入侵检测规则的入侵行为和被攻击的迹象。车载内网CAN总线入侵检测规则主要包括:(1)消息ID异常检测,其需要配置正常ID的范围。(2)报文健康检测,其包括DLC有效性检测、信号值有效范围检测,DLC有效性检测需要配置每个ID的字节长度,信号值有效范围检测需要配置每个信号有效范围的最大值和最小值。(3)报文周期检测,其需要配置每个ID的正常周期。(4)报文信号关系检测,其包括信号变化率检测、同一报文中信号关系检测、不同报文中信号关系检测,信号变化率检测需要配置每个信号变化率的最大值和最小值,同一报文中信号关系检测需要配置同一报文中的哪些信号需要进行关系检测,不同报文中信号检测需要配置不同报文的哪些信号需要进行关系检测。(5)报文序列检测包括特定报文序列检测,特定报文序列检测需要配置特定报文的序列。(6)报文负载率检测包括接收报文占总线负载率占比检测,报文占总线负载率占比检测需要配置接收报文占总线负载率占比的阈值。(7)网络管理报文检测包括检测网络管理报文,检测网络管理报文需要配置网络管理报文,上述规则仅用于举例,但并不以此为限制。
配置好的入侵检测规则通常是以二进制文件的形式存放于具有CAN总线入侵检测功能的MCU的flash中。由于整车CAN总线通讯矩阵中的报文数量众多,其携带的信号量数目也是巨大的,可达到成千上万个信号量,因此,配置好的入侵检测规则的二进制文件的大小也是巨大的,并且,会随着整车CAN总线通讯矩阵中的报文及其携带信号数量的增多而增大,可以达到100~200K字节,会占用具有CAN总线入侵检测功能MCU的100~200K字节的flash空间,这样会占用较大flash、需要更大容量的flash,增加了MCU成本。而为了降低MCU成本,现有技术会将整体压缩入侵检测规则二进制文件后存储于flash中,使用时将整体压缩入侵检测规则二进制文件解压至RAM中,但是这样会占用较大RAM,需要更大容量的RAM,同样增加了MCU成本。
发明内容
因此,本发明要解决的技术问题在于克服现有技术中对入侵检测规则二进制文件的存储造成MCU成本较大的缺陷,从而提供一种CAN总线入侵检测方法及系统。
为达到上述目的,本发明提供如下技术方案:
第一方面,本发明实施例提供一种CAN总线入侵检测方法,包括如下步骤:将入侵检测规则二进制文件分块压缩后存储至flash中,并建立报文ID与数据块的对应关系表,入侵检测规则二进制文件包括所有报文ID的入侵检测规则数据;根据待检查数据报文ID,查找对应关系表,得到存储待检查数据报文的入侵检测规则数据所在数据块,将该数据块解压至RAM中;入侵检测程序根据RAM中解压的入侵检测规则数据,对待检查数据报文进行检测。
在一实施例中,将入侵检测规则二进制文件分块压缩后存储至flash中的步骤,包括:根据报文ID的周期大小,对每个报文对应的入侵检测规则数据进行排序;对排序后的入侵检测规则二进制文件进行分块,得到多个数据块,每个数据块包含至少一个报文ID对应的入侵检测规则数据;将每个数据块分别压缩后存储至flash中。
在一实施例中,每个数据块中只包括高频报文的入侵检测规则数据,或数据块中只包括低频报文的入侵检测规则数据。
在一实施例中,建立对应关系表的过程,包括:建立报文ID、入侵检测规则数据所在数据块的块号、数据块中的对应入侵检测数据的条目号的对应关系表。
在一实施例中,在查找待检查数据报文的入侵检测规则数据所在数据块之前,还包括:在RAM中开辟两个缓冲区:静态缓冲区及动态缓冲区。
在一实施例中,将该数据块解压至RAM的过程,包括:根据报文ID的周期的大小,判断待检查数据报文是否为低频报文;当待检查数据报文为低频报文,无论是初次还是再次对该待检查数据报文进行检测,均将该待检查数据报文对应的数据块解压至动态缓冲区。
在一实施例中,将该数据块解压至RAM的过程,包括:根据报文ID的周期的大小,判断待检查数据报文是否为高频报文;当待检查数据报文为高频报文、且初次对该待检查数据报文进行检测时,将该待检查数据报文对应的数据块解压至静态缓冲区中,解压后的入侵检测规则数据储存在静态缓冲区中;当待检查数据报文为高频报文、且再次对该待检查数据报文进行检测时,无需再将该待检查数据报文对应得到数据块进行解压,入侵检测程序直接根据静态缓冲区储存的入侵检测规则数据对该待检查数据报文进行检测。
第二方面,本发明实施例提供一种CAN总线入侵检测系统,包括:分块压缩模块,用于将入侵检测规则二进制文件分块压缩后存储至flash中,并建立报文ID与数据块的对应关系表,入侵检测规则二进制文件包括所有报文ID的入侵检测规则数据;解压模块,用于根据待检查数据报文ID,查找对应关系表,得到存储待检查数据报文的入侵检测规则数据所在数据块,将该数据块解压至RAM中;检测模块,用于入侵检测程序根据RAM中解压的入侵检测规则数据,对待检查数据报文进行检测。
第三方面,本发明实施例提供一种计算机设备,包括:至少一个处理器,以及与至少一个处理器通信连接的存储器,其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器执行本发明实施例第一方面的CAN总线入侵检测方法。
第四方面,本发明实施例提供一种计算机可读存储介质,计算机可读存储介质存储有计算机指令,计算机指令用于使计算机执行本发明实施例第一方面的CAN总线入侵检测方法。
本发明技术方案,具有如下优点:
1.本发明提供的CAN总线入侵检测方法及系统,将入侵检测规则二进制文件分块压缩后存储至flash中,并建立报文ID与数据块的对应关系表,从而不需要使用大容量flash即可实现对全部入侵检测规则二进制文件的存储;根据待检查数据报文ID,查找对应关系表,得到存储待检查数据报文的入侵检测规则数据所在数据块,将该数据块解压至RAM中,从而实现不需要使用大容量RAM即可实现对入侵检测规则二进制文件的解压,降低具有CAN总线入侵检测功能的MCU的成本;入侵检测程序根据RAM中解压的入侵检测规则数据,对待检查数据报文进行检测,从而实现对报文的检测。
2.本发明提供的CAN总线入侵检测方法及系统,在RAM中开辟两个缓冲区:静态缓冲区及动态缓冲区,对高频报文进行初次检测时,将高频使用的入侵检测规则数据所在数据块解压至静态缓冲区,静态缓冲区存储高频使用的入侵检测规则数据,再次对高频报文进行再次检测时,仅需要调用静态缓冲区存储高频使用的入侵检测规则数据即可,从而提高MCU的工作效率,减小MCU解压每个数据块的工作负荷,对低频报文无论是初次还是再次对该待检查数据报文进行检测,均将该待检查数据报文对应的数据块解压至动态缓冲区。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的入侵检测方法的一个具体示例的流程图;
图2为本发明实施例提供的现有技术中入侵检测方法的一个具体示例的示意图;
图3为本发明实施例提供的入侵检测方法的一个具体示例的示意图;
图4为本发明实施例提供的入侵检测方法的另一个具体示例的流程图;
图5为本发明实施例提供的入侵检测方法的另一个具体示例的流程图;
图6为本发明实施例提供的入侵检测方法的另一个具体示例的流程图;
图7为本发明实施例提供的入侵检测系统的一个具体示例的组成图;
图8为本发明实施例提供的计算机设备一个具体示例的组成图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
实施例1
本发明实施例提供一种CAN总线入侵检测方法,如图1所示,包括如下步骤:
步骤S11:将入侵检测规则二进制文件分块压缩后存储至flash中,并建立报文ID与数据块的对应关系表,入侵检测规则二进制文件包括所有报文ID的入侵检测规则数据。
步骤S12:根据待检查数据报文ID,查找对应关系表,得到存储待检查数据报文的入侵检测规则数据所在数据块,将该数据块解压至RAM中。
步骤S13:入侵检测程序根据RAM中解压的入侵检测规则数据,对待检查数据报文进行检测。
现有技术针对入侵检测规则的二进制文件过大的问题,其将入侵检测二进制文件进行整体压缩后存储至flash中,且在检测时,将压缩后的入侵检测二进制文件进行整体解压至RAM中,但是这样需要较大的RAM,同样增加了MCU成本,现以100K字节的入侵检测规则二进制文件举例,将100K字节大小的入侵检测规则二进制文件整体压缩,现代成熟的压缩算法可以达到大约10%的压缩率,因此,100K字节大小的入侵检测规则二进制文件整体压缩后,生成的压缩文件大概是10K字节左右,这可以节省了90K字节的flash空间,然后在使用时,整体解压至RAM中。
而如图3所示,本发明实施例首先将全部的入侵检测规则二进制文件进行分块,并根据每个报文ID及其对应的入侵检测规则数据所在的数据块,建立对应关系表,然后将全部的数据块整体压缩至flash中,当需要对待检查数据报文进行检测时,根据对应关系表,查找出该待检查数据报文所对应的数据块,将该数据块解压至RAM中,入侵检测程序根据RAM中已解压的入侵检测规则数据对该报文进行检测,因此,本发明实施例对入侵检测规则二进制文件采用分块压缩后存储至flash的方法,从而不需要大容量的flash,之后当对待检查数据报文进行检测时,仅将该报文对应的数据块进行解压至RAM中,而不需要将全部的数据块进行解压,因此不需要大容量的RAM,从而降低了成本。
在一具体实施例中,如图4所示,将入侵检测规则二进制文件分块压缩后存储至flash中的步骤,包括:
步骤S21:根据报文ID的周期大小,对每个报文对应的入侵检测规则数据进行排序。
具体地,由于全部的报文的报文ID的周期不同,即会频繁接收到某类报文,并且需要对其进行检测,因此本发明实施例将报文分为高频报文及低频报文,分类方法为:预先设置参考周期值,若报文ID的周期大于该参考周期值,则判定该报文为低频报文,若报文ID的周期小于该参考周期值,则判定该报文为高频报文。
具体地,如果对全部的入侵检测规则数据不按照报文ID的周期大小进行排序就分块,则会造成频繁对多个数据块进行解压,例如:报文#1、报文#3、报文#4均为高频报文,报文#2、报文#5、报文#6均为低频报文,报文#1、报文#2所对应的入侵检测规则数据存储于数据块#1中,报文#3、报文#4所对应的入侵检测规则数据存储于数据块#2中,报文#5、报文#6所对应的入侵检测规则数据存储于数据块#3中,则当对三个高频报文进行检测时,需要频繁对数据块#1、数据块#2进行解压。即使将报文#1、报文#2、报文#3所对应的入侵检测规则数据存储于数据块#1中,将报文#4、报文#5、报文#6所对应的入侵检测规则数据存储于数据块#2中,则当对三个高频报文进行检测时,同样需要频繁对数据块#1、数据块#2进行解压。
具体地,如果对整体入侵检测规则二进制文件按照报文ID的周期大小进行排序分块,则不会造成对多个数据块进行解压,例如:报文#1、报文#3、报文#4均为高频报文,报文#2、报文#5、报文#6均为低频报文,现对六个报文所对应的入侵检测规则二进制文件进行排序,将报文#1、报文#3、报文#4所对应的入侵检测规则数据存储于数据块#1中,将报文#2、报文#5、报文#6所对应的入侵检测规则数据存储于数据块#2中,则当对三个高频报文进行检测时,仅需要频繁对数据块#1进行解压即可。
步骤S22:对排序后的入侵检测规则二进制文件进行分块,得到多个数据块,每个数据块包含至少一个报文ID对应的入侵检测规则数据。
具体地,每个数据块中只包括高频报文的入侵检测规则数据,或数据块中只包括低频报文的入侵检测规则数据,即本发明实施例的数据块所包含的入侵检测规则二进制文件的数量可以相等,可以不相等,具体根据实际情况判断,例如:现有50个报文,其中报文#1~报文#16为高频报文,其余报文为低频报文,则可以将报文#1~报文#10所对应的入侵检测规则二进制文件存储于数据块#1中,将报文#11~报文#16所对应的入侵检测规则二进制文件存储于数据块#2中,报文#17~报文#27所对应的入侵检测规则二进制文件存储于数据块#3中,报文#28~报文#38所对应的入侵检测规则二进制文件存储于数据块#4中,报文#39~报文#50所对应的入侵检测规则二进制文件存储于数据块#5中。
具体地,本发明实施例对全部的入侵检测规则二进制文件进行分块后,所分的数据块的数量越多,则检测时,将数据块解压到RAM后所占用的RAM的缓冲区越小,成本越低。
步骤S23:将每个数据块分别压缩后存储至flash中。
在一具体实施例中,建立对应关系表的过程,包括:建立报文ID、入侵检测规则数据所在数据块的块号、数据块中的对应入侵检测数据的条目号的对应关系表。
具体地,本发明实施例对全部的入侵检测规则数据进行排序后分块后,每个数据块包含至少一个报文ID对应的入侵检测规则数据,即每个数据块包括至少一个条目,每一个条目就是一个ID的入侵检测规则数据,因此可以先对每个数据块进行标号,然后根据每个报文ID与其对应的数据块的块号进行映射,并将每个数据块的块号与每个娶亲检测规则数据的条目号进行映射。
在一具体实施例中,在查找待检查数据报文的入侵检测规则数据所在数据块之前,还包括:在RAM中开辟两个缓冲区:静态缓冲区及动态缓冲区。
具体地,由于报文分为高频报文及低频报文,为了避免频繁解压高频报文所对应的数据块,减小MCU解压每个数据块的工作负荷,提高MCU的工作效率,本发明实施例在RAM中开辟两个缓冲区,其中,静态缓冲区用于解压并存放高频报文的入侵二进制检测数据,动态缓冲区仅用于解压低频报文的入侵二进制检测数据。
具体地,静态缓冲区大小是可配置的,根据高频报文的数量和MCU的运算能力而定的,对于多少周期的报文界定为高频报文还是低频报文,也是可以配置的,也是根据高频报文的数量、低频报文的数据和MCU的运算能力而定的。
具体地,如图5所示,将低频报文对应的数据块解压至RAM的过程,包括步骤S31~步骤S32,具体如下:
步骤S31:根据报文ID的周期的大小,判断待检查数据报文是否为低频报文。
步骤S32:当待检查数据报文为低频报文,无论是初次还是再次对该待检查数据报文进行检测,均将该待检查数据报文对应的数据块解压至动态缓冲区。
具体地,如图6所示,将高频报文对应的数据块解压至RAM的过程,包括步骤S41~步骤S42,具体如下:
步骤S41:根据报文ID的周期的大小,判断待检查数据报文是否为高频报文。
步骤S42:当待检查数据报文为高频报文、且初次对该待检查数据报文进行检测时,将该待检查数据报文对应的数据块解压至静态缓冲区中,解压后的入侵检测规则数据储存在静态缓冲区中;当待检查数据报文为高频报文、且再次对该待检查数据报文进行检测时,无需再将该待检查数据报文对应得到数据块进行解压,入侵检测程序直接根据静态缓冲区储存的入侵检测规则数据对该待检查数据报文进行检测。
实施例2
本发明实施例提供一种CAN总线入侵检测系统,如图7所示,包括:
分块压缩模块1,用于将入侵检测规则二进制文件分块压缩后存储至flash中,并建立报文ID与数据块的对应关系表,入侵检测规则二进制文件包括所有报文ID的入侵检测规则数据;此模块执行实施例1中的步骤S11所描述的方法,在此不再赘述。
解压模块2,用于根据待检查数据报文ID,查找对应关系表,得到存储待检查数据报文的入侵检测规则数据所在数据块,将该数据块解压至RAM中;此模块执行实施例1中的步骤S12所描述的方法,在此不再赘述。
检测模块3,用于入侵检测程序根据RAM中解压的入侵检测规则数据,对待检查数据报文进行检测;此模块执行实施例1中的步骤S13所描述的方法,在此不再赘述。
实施例3
本发明实施例提供一种计算机设备,如图8所示,包括:至少一个处理器401,例如CPU(Central Processing Unit,中央处理器),至少一个通信接口403,存储器404,至少一个通信总线402。其中,通信总线402用于实现这些组件之间的连接通信。其中,通信接口403可以包括显示屏(Display)、键盘(Keyboard),可选通信接口403还可以包括标准的有线接口、无线接口。存储器404可以是高速RAM存储器(Ramdom Access Memory,易挥发性随机存取存储器),也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器404可选的还可以是至少一个位于远离前述处理器401的存储装置。其中处理器401可以执行实施例1的CAN总线入侵检测方法。存储器404中存储一组程序代码,且处理器401调用存储器404中存储的程序代码,以用于执行实施例1的CAN总线入侵检测方法。
其中,通信总线402可以是外设部件互连标准(peripheral componentinterconnect,简称PCI)总线或扩展工业标准结构(extended industry standardarchitecture,简称EISA)总线等。通信总线402可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一条线表示,但并不表示仅有一根总线或一种类型的总线。
其中,存储器404可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(英文:random-access memory,缩写:RAM);存储器也可以包括非易失性存储器(英文:non-volatile memory),例如快闪存储器(英文:flash memory),硬盘(英文:hard diskdrive,缩写:HDD)或固降硬盘(英文:solid-state drive,缩写:SSD);存储器404还可以包括上述种类的存储器的组合。
其中,处理器401可以是中央处理器(英文:central processing unit,缩写:CPU),网络处理器(英文:network processor,缩写:NP)或者CPU和NP的组合。
其中,处理器401还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(英文:application-specific integrated circuit,缩写:ASIC),可编程逻辑器件(英文:programmable logic device,缩写:PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(英文:complex programmable logic device,缩写:CPLD),现场可编程逻辑门阵列(英文:field-programmable gate array,缩写:FPGA),通用阵列逻辑(英文:generic arraylogic,缩写:GAL)或其任意组合。
可选地,存储器404还用于存储程序指令。处理器401可以调用程序指令,实现如本申请执行实施例1中的CAN总线入侵检测方法。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机可执行指令,该计算机可执行指令可执行实施例1的CAN总线入侵检测方法。其中,存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(RandomAccess Memory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,缩写:HDD)或固降硬盘(Solid-State Drive,SSD)等;存储介质还可以包括上述种类的存储器的组合。
显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引申出的显而易见的变化或变动仍处于本发明创造的保护范围之中。

Claims (10)

1.一种CAN总线入侵检测方法,其特征在于,包括如下步骤:
将入侵检测规则二进制文件分块压缩后存储至flash中,并建立报文ID与数据块的对应关系表,所述入侵检测规则二进制文件包括所有报文ID的入侵检测规则数据;
根据待检查数据报文ID,查找所述对应关系表,得到存储待检查数据报文的入侵检测规则数据所在数据块,将该数据块解压至RAM中;
入侵检测程序根据RAM中解压的入侵检测规则数据,对所述待检查数据报文进行检测。
2.根据权利要求1所述的CAN总线入侵检测方法,其特征在于,所述将入侵检测规则二进制文件分块压缩后存储至flash中的步骤,包括:
根据报文ID的周期大小,对每个报文对应的入侵检测规则数据进行排序;
对排序后的入侵检测规则二进制文件进行分块,得到多个数据块,每个所述数据块包含至少一个报文ID对应的入侵检测规则数据;
将每个数据块分别压缩后存储至flash中。
3.根据权利要求2所述的CAN总线入侵检测方法,其特征在于,
每个所述数据块中只包括高频报文的入侵检测规则数据,或所述数据块中只包括低频报文的入侵检测规则数据。
4.根据权利要求1所述的CAN总线入侵检测方法,其特征在于,建立所述对应关系表的过程,包括:
建立报文ID、入侵检测规则数据所在数据块的块号、数据块中的对应入侵检测数据的条目号的对应关系表。
5.根据权利要求1所述的CAN总线入侵检测方法,其特征在于,在查找所述待检查数据报文的入侵检测规则数据所在数据块之前,还包括:
在RAM中开辟两个缓冲区:静态缓冲区及动态缓冲区。
6.根据权利要求5所述的CAN总线入侵检测方法,其特征在于,所述将该数据块解压至RAM的过程,包括:
根据报文ID的周期的大小,判断所述待检查数据报文是否为低频报文;
当所述待检查数据报文为低频报文,无论是初次还是再次对该待检查数据报文进行检测,均将该待检查数据报文对应的数据块解压至所述动态缓冲区。
7.根据权利要求5所述的CAN总线入侵检测方法,其特征在于,所述将该数据块解压至RAM的过程,包括:
根据报文ID的周期的大小,判断所述待检查数据报文是否为高频报文;
当所述待检查数据报文为高频报文、且初次对该待检查数据报文进行检测时,将该待检查数据报文对应的数据块解压至所述静态缓冲区中,解压后的入侵检测规则数据储存在所述静态缓冲区中;当所述待检查数据报文为高频报文、且再次对该待检查数据报文进行检测时,无需再将该待检查数据报文对应得到数据块进行解压,入侵检测程序直接根据静态缓冲区储存的入侵检测规则数据对该待检查数据报文进行检测。
8.一种CAN总线入侵检测系统,其特征在于,包括:
分块压缩模块,用于将入侵检测规则二进制文件分块压缩后存储至flash中,并建立报文ID与数据块的对应关系表,所述入侵检测规则二进制文件包括所有报文ID的入侵检测规则数据;
解压模块,用于根据待检查数据报文ID,查找所述对应关系表,得到存储待检查数据报文的入侵检测规则数据所在数据块,将该数据块解压至RAM中;
检测模块,用于入侵检测程序根据RAM中解压的入侵检测规则数据,对所述待检查数据报文进行检测。
9.一种计算机设备,其特征在于,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行权利要求1-7中任一所述的CAN总线入侵检测方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行权利要求1-7中任一所述的CAN总线入侵检测方法。
CN202111562672.8A 2021-12-20 2021-12-20 一种can总线入侵检测方法及系统 Active CN114253479B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111562672.8A CN114253479B (zh) 2021-12-20 2021-12-20 一种can总线入侵检测方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111562672.8A CN114253479B (zh) 2021-12-20 2021-12-20 一种can总线入侵检测方法及系统

Publications (2)

Publication Number Publication Date
CN114253479A CN114253479A (zh) 2022-03-29
CN114253479B true CN114253479B (zh) 2023-06-20

Family

ID=80793150

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111562672.8A Active CN114253479B (zh) 2021-12-20 2021-12-20 一种can总线入侵检测方法及系统

Country Status (1)

Country Link
CN (1) CN114253479B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115225327B (zh) * 2022-06-17 2023-10-27 北京启明星辰信息安全技术有限公司 一种基于fpga网卡的具有预匹配规则的入侵检测方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1866908A (zh) * 2005-05-18 2006-11-22 中兴通讯股份有限公司 一种在无分片特定环境中压缩ip-udp报文头的方法
CN107347057A (zh) * 2016-05-06 2017-11-14 阿里巴巴集团控股有限公司 入侵检测方法、检测规则生成方法、装置及系统
CN109639768A (zh) * 2018-11-20 2019-04-16 北京凝思科技有限公司 一种分布式分块文件传输方法及系统
CN112311692A (zh) * 2019-07-31 2021-02-02 华为技术有限公司 报文处理方法及装置、端设备
CN112420115A (zh) * 2020-11-05 2021-02-26 深圳市宏旺微电子有限公司 一种动态随机存取存储器的故障检测方法
CN112468378A (zh) * 2020-10-30 2021-03-09 中国航发西安动力控制科技有限公司 一种基于can总线的大容量数据传输设备及方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100833488B1 (ko) * 2005-11-25 2008-05-29 한국전자통신연구원 침해 규칙 저장 방법 및 장치
EP4030738A1 (en) * 2018-03-16 2022-07-20 Acklio Method and apparatus for processing message data
US11388186B2 (en) * 2020-07-04 2022-07-12 Kumar Srivastava Method and system to stitch cybersecurity, measure network cyber health, generate business and network risks, enable realtime zero trust verifications, and recommend ordered, predictive risk mitigations

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1866908A (zh) * 2005-05-18 2006-11-22 中兴通讯股份有限公司 一种在无分片特定环境中压缩ip-udp报文头的方法
CN107347057A (zh) * 2016-05-06 2017-11-14 阿里巴巴集团控股有限公司 入侵检测方法、检测规则生成方法、装置及系统
CN109639768A (zh) * 2018-11-20 2019-04-16 北京凝思科技有限公司 一种分布式分块文件传输方法及系统
CN112311692A (zh) * 2019-07-31 2021-02-02 华为技术有限公司 报文处理方法及装置、端设备
CN112468378A (zh) * 2020-10-30 2021-03-09 中国航发西安动力控制科技有限公司 一种基于can总线的大容量数据传输设备及方法
CN112420115A (zh) * 2020-11-05 2021-02-26 深圳市宏旺微电子有限公司 一种动态随机存取存储器的故障检测方法

Also Published As

Publication number Publication date
CN114253479A (zh) 2022-03-29

Similar Documents

Publication Publication Date Title
RU2608464C2 (ru) Устройство, способ и сетевой сервер для обнаружения структур данных в потоке данных
US20110295779A1 (en) Regular expression matching method and system
CN107305586B (zh) 索引生成方法、索引生成装置及搜索方法
US9106251B2 (en) Data compression utilizing longest common subsequence template
US10862507B2 (en) Variable-sized symbol entropy-based data compression
CN109191021B (zh) 电网异常事件的关联规则匹配方法及装置
CN114253479B (zh) 一种can总线入侵检测方法及系统
CN107426055B (zh) 异常流量监测方法、装置及计算机可读存储介质
US10831669B2 (en) Systems, methods and computer program products using multi-tag storage for efficient data compression in caches
CN111752811A (zh) 异常告警信息处理方法、电子设备及存储介质
CN111930924A (zh) 基于布隆过滤器的数据查重系统及方法
CN111930923A (zh) 布隆过滤器系统及过滤方法
US9760836B2 (en) Data typing with probabilistic maps having imbalanced error costs
US8618960B1 (en) Selective recompression of a string compressed by a plurality of diverse lossless compression techniques
CN109413166B (zh) 一种工业网关及其数据管理方法
CN113051498B (zh) 一种基于多重布隆过滤的url去重方法及系统
CN115334013B (zh) 一种流量统计方法、网卡及电子设备
CN111857604A (zh) 分组管理映射反查表快速重建方法、装置、设备及介质
WO2021203741A1 (zh) 一种基准测试方法、系统及终端设备
CN112818347A (zh) 一种文件标签确定方法、装置、设备及存储介质
CN109739858B (zh) 基于ansi c12.19的数据分类存储方法、装置和电子设备
CN112712610A (zh) 车辆诊断日志处理方法、装置、终端设备及可读存储介质
CN114356630B (zh) 内存泄漏的检测方法、电子设备、存储介质及系统
CN112836212B (zh) 邮件数据的分析方法、钓鱼邮件的检测方法及装置
CN109885402B (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