基于usb通信数据进行恶意设备检测的方法及装置的制造方法

xiaoxiao2021-2-27  212

基于usb通信数据进行恶意设备检测的方法及装置的制造方法
【技术领域】
[0001]本发明涉及信息安全技术领域,尤其涉及一种基于USB通信数据进行恶意设备检测的方法及装置。
【背景技术】
[0002]USB总线是一种计算机与外设之间互联的标准接口,外设、计算机以及越来越多的嵌入式设备都支持通过USB通信。在实际应用中,主机和外设都不可避免地与陌生的设备连接并通信,这就使得主机可能面临恶意USB设备的攻击,同时USB设备也可能被恶意主机通过非法操作而被篡改,引起信息安全隐患。
[0003]随着USB总线和USB接口设备的应用普及,在日常应用中,主机和设备都面临着恶意互联对象发起的信息安全攻击。目前针对USB外设发起对主机的攻击或者是主机对USB外设发起攻击都没有一个很好的解决办法,其根本原因是无法区分USB外设的恶意行为,因此安全防护需要针对USB外设恶意行为的检测能力,从而防止USB设备攻击主机,或者主机恶意修改USB设备。

【发明内容】

[0004]传统的审计或者防御系统基本是通过USB设备的PID/VID (Product ID/VenderID),或者设备类型等USB基本信息来区分和识别USB种类,以及对其进行是否可疑的鉴定。然而随着技术发展,USB设备的基本信息可以伪造,使得传统的识别方法效果不明显。
[0005]通过对已知攻击的分析后发现,USB设备对主机设备进行攻击往往都会在内部执行特殊的指令,返回特殊的数据。因为攻击者需要保证USB设备原本的功能都能够继续有效,因此,就不能占用标准指令,可能会使用一些非标准指令来完成攻击。基于此,本发明提供了基于USB通信数据进行恶意设备检测的方法及装置,通过获取主机设备和USB设备间的通信数据,将认为属于异常通信行为的规则存储到恶意行为规则库中,解析通信数据后,判断是否存在恶意行为规则库中定义的异常通信行为,从而,能够有效识别和防御伪造的恶意设备。
[0006]本发明采用如下方法来实现:一种基于USB通信数据进行恶意设备检测的方法,包括:
获取主机设备与USB设备间的通信数据;
解析所述通信数据,判断是否存在恶意行为规则库中定义的异常通信行为;
若存在,则判定所述主机设备和/或USB设备为恶意设备,否则认为不存在恶意设备。
[0007]进一步地,所述异常通信行为,包括:不符合USB设备各层协议标准的数据传输行为。
[0008]进一步地,所述异常通信行为,包括:所述主机设备和/或USB设备在工作过程中,前后逻辑不一致的行为。
[0009]进一步地,所述异常通信行为,包括:解析所述通信数据获取涉及到的指令类型,存在所述指令类型与预设指令库中的类型不相匹配的行为。
[0010]进一步地,所述异常通信行为,包括:一组复杂通信行为的组合。
[0011]本发明可以采用如下装置来实现:一种基于USB通信数据进行恶意设备检测的装置,包括:
两个双向USB接口,用于将检测判定模块与主机设备和USB设备相串接,并对通信数据进行传输和监测;
检测判定模块,用于解析所述通信数据,判断是否存在恶意行为规则库中定义的异常通信行为,若存在,则判定所述主机设备和/或USB设备为恶意设备,否则认为不存在恶意设备;
恶意行为规则库,用于存储定义的异常通信行为。
[0012]进一步地,所述双向USB接口为利用USB物理层接口芯片实现。
[0013]进一步地,还包括报警模块,用于当检测判定模块发现存在恶意设备时,发出报警信号。
[0014]进一步地,所述发出报警信号包括:指示灯闪烁、液晶屏显示或者通过网络、USB或者RS232接口向上位机发送报警输出。
[0015]进一步地,当检测判定模块发现存在恶意设备时,则阻断恶意设备的通信行为。
[0016]综上,本发明给出一种基于USB通信数据进行恶意设备检测的方法及装置,预先在恶意行为规则库中定义各种异常通信行为的规则,该恶意行为规则库中的规则可以根据用户需要进行增删。当所述装置捕获到主机设备和USB设备间的通信数据后,则解析后与恶意规则库中的规则进行匹配,若匹配成功,则认为存在恶意设备。
[0017]有益效果为:通过获取主机设备和USB设备之间的通信数据,对通信数据本身进行解析,并判断是否存在预先定义的各种类型的异常通信行为。所述检测过程不依赖与设备信息本身,从而能够更加有效和准确的识别恶意行为和恶意设备,必要时进行及时的阻断和报警;同时,本发明所述的方法及装置,不仅可以有效识别恶意USB设备,也可以有效识别恶意主机设备。
【附图说明】
[0018]为了更清楚地说明本发明的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0019]图1为本发明提供的一种基于USB通信数据进行恶意设备检测的方法实施例流程图;
图2为本发明提供的一种基于USB通信数据进行恶意设备检测的装置实施例结构图。
【具体实施方式】
[0020]本发明给出了一种基于USB通信数据进行恶意设备检测的方法及装置实施例,为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明中技术方案作进一步详细的说明:
本发明首先提供了一种基于USB通信数据进行恶意设备检测的方法实施例,如图1所示,包括:
S101获取主机设备与USB设备间的通信数据;
S102解析所述通信数据,判断是否存在恶意行为规则库中定义的异常通信行为;若存在,则判定所述主机设备和/或USB设备为恶意设备,否则认为不存在恶意设备。
[0021]优选地,所述异常通信行为,包括:不符合USB设备各层协议标准的数据传输行为。
[0022]例如:枚举阶段的描述符长度不符合USB标准等类似数据传输行为。
[0023]优选地,所述异常通信行为,包括:所述主机设备和/或USB设备在工作过程中,前后逻辑不一致的行为。
[0024]例如:后续通信过程中通信数据包超出枚举阶段端点通信长度属性等类似前后逻辑不一致的行为。
[0025]优选地 ,所述异常通信行为,包括:解析所述通信数据获取涉及到的指令类型,存在所述指令类型与预设指令库中的类型不相匹配的行为。
[0026]例如:上层数据中违反了已知协议的属性值,在USB Mass Storage设备中,SCSI协议中只有Read和Write等14种标准指令类型,若解析所述通信数据后,发现涉及到除了这14种标准指令类型之外的指令类型,则认为存在异常通信行为;所述预设指令库中存储有认为相对安全的指令类型,可以根据需要增删。
[0027]优选地,所述异常通信行为,包括:一组复杂通信行为的组合。
[0028]例如:对于比较复杂的恶意行为和更加隐蔽的恶意设备,通过上述单一的异常通信行为规则来匹配有些困难,此时,可以选择一组复杂通信行为的组合,以模式匹配方式识别和匹配。
[0029]更为优选地,所述异常通信行为,包括:用来修改USB固件的特定指令。一旦匹配后认为通信数据中存在相关异常通信行为,则认为存在恶意设备,可以防止主机设备恶意修改USB设备。
[0030]本发明还提供了一种基于USB通信数据进行恶意设备检测的装置实施例,如图2所示,包括:
两个双向USB接口,用于将检测判定模块与主机设备和USB设备相串接,并对通信数据进行传输和监测;
其中,第一双向USB接口 201,用于将检测判定模块203与主机设备相串接,并对通信数据进行传输和监测;
第二双向USB接口 202,用于将检测判定模块203与USB设备相串接,并对通信数据进行传输和监测;
检测判定模块203,用于解析所述通信数据,判断是否存在恶意行为规则库204中定义的异常通信行为,若存在,则判定所述主机设备和/或USB设备为恶意设备,否则认为不存在恶意设备;
恶意行为规则库204,用于存储定义的异常通信行为。
[0031]优选地,所述双向USB接口为利用USB物理层接口芯片实现。
[0032]优选地,还包括报警模块,用于当检测判定模块发现存在恶意设备时,发出报警信号。
[0033]优选地,所述发出报警信号包括:指示灯闪烁、液晶屏显示或者通过网络、USB或者RS232接口向上位机发送报警输出。
[0034]优选地,当检测判定模块发现存在恶意设备时,则阻断恶意设备的通信行为。
[0035]更为优选地,上述装置中的模块功能可使用FPGA来实现,两个双向USB接口都通过ULPI接口与FPGA芯片相连,FPGA芯片获取双向USB接口传来的通信数据,FPGA内置可控的直接转发链路和数据镜像逻辑,其中镜像数据被传递给检测判定模块,该检测判定模块鉴定通信数据中是否有异常通信行为。
[0036]如上所述,上述装置在正常通信时两个双向USB接口间的通信是透明的,在主机设备和USB设备看来本装置如同一根传统的USB直连电缆。但是,本装置内置有恶意行为规则库,在监测通信数据的同时,判断是否存在恶意行为规则库中定义的各种异常通信行为,若存在,则认为发现恶意设备,否则主机设备和USB设备之间正常通信。
[0037]综上,由于主机设备与USB设备之间的通信是经过USB总线进行的,USB标准对总线上的通信格式有严格的定义。经由USB总线进行的信息安全攻击一定会在通信行为上有所体现。本发明通过对USB总线上的通信数据进行监控和分析,并配合恶意行为规则库来判断是否存在恶意设备或者恶意行为,从而实现主机设备与USB设备间的异常通信行为的检测。
[0038]以上实施例用以说明而非限制本发明的技术方案。不脱离本发明精神和范围的任何修改或局部替换,均应涵盖在本发明的权利要求范围当中。
【主权项】
1.一种基于USB通信数据进行恶意设备检测的方法,其特征在于,包括: 获取主机设备与USB设备间的通信数据; 解析所述通信数据,判断是否存在恶意行为规则库中定义的异常通信行为; 若存在,则判定所述主机设备和/或USB设备为恶意设备,否则认为不存在恶意设备。2.如权利要求1所述的方法,其特征在于,所述异常通信行为,包括:不符合USB设备各层协议标准的数据传输行为。3.如权利要求1所述的方法,其特征在于,所述异常通信行为,包括:所述主机设备和/或USB设备在工作过程中,前后逻辑不一致的行为。4.如权利要求1所述的方法,其特征在于,所述异常通信行为,包括:解析所述通信数据获取涉及到的指令类型,存在所述指令类型与预设指令库中的类型不相匹配的行为。5.如权利要求1所述的方法,其特征在于,所述异常通信行为,包括:一组复杂通信行为的组合。6.一种基于USB通信数据进行恶意设备检测的装置,其特征在于,包括: 两个双向USB接口,用于将检测判定模块与主机设备和USB设备相串接,并对通信数据进行传输和监测; 检测判定模块,用于解析所述通信数据,判断是否存在恶意行为规则库中定义的异常通信行为,若存在,则判定所述主机设备和/或USB设备为恶意设备,否则认为不存在恶意设备; 恶意行为规则库,用于存储定义的异常通信行为。7.如权利要求6所述的装置,其特征在于,所述双向USB接口为利用USB物理层接口芯片实现。8.如权利要求6所述的装置,其特征在于,还包括报警模块,用于当检测判定模块发现存在恶意设备时,发出报警信号。9.如权利要求8所述的装置,其特征在于,所述发出报警信号包括:指示灯闪烁、液晶屏显示或者通过网络、USB或者RS232接口向上位机发送报警输出。10.如权利要求6所述的装置,其特征在于,当检测判定模块发现存在恶意设备时,则阻断恶意设备的通信行为。
【专利摘要】本发明公开了一种基于USB通信数据进行恶意设备检测的方法,包括:获取主机设备与USB设备间的通信数据;解析所述通信数据,判断是否存在恶意行为规则库中定义的异常通信行为;若存在,则判定所述主机设备和/或USB设备为恶意设备,否则认为不存在恶意设备。本发明同时给出了一种基于USB通信数据进行恶意设备检测的装置。本发明所给出的技术方案,克服了由于USB设备信息可以伪造,从而无法有效审计或者防御恶意USB设备的问题,能够有效识别恶意设备并及时阻断恶意通信行为。
【IPC分类】G06F21/55
【公开号】CN105488395
【申请号】CN201510302442
【发明人】李鹏, 桑胜田
【申请人】哈尔滨安天科技股份有限公司
【公开日】2016年4月13日
【申请日】2015年6月4日

最新回复(0)