CN110324210B - 基于icmp协议进行隐蔽信道通信的检测方法及装置 - Google Patents
基于icmp协议进行隐蔽信道通信的检测方法及装置 Download PDFInfo
- Publication number
- CN110324210B CN110324210B CN201910720720.8A CN201910720720A CN110324210B CN 110324210 B CN110324210 B CN 110324210B CN 201910720720 A CN201910720720 A CN 201910720720A CN 110324210 B CN110324210 B CN 110324210B
- Authority
- CN
- China
- Prior art keywords
- content
- transmission
- icmp
- target transmission
- character
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/12—Network monitoring probes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/18—Protocol analysers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供的一种基于ICMP协议进行隐蔽信道通信的检测方法及装置,涉及通信领域,该方法通过对获取的ICMP流量报文进行解析得到传输标识和传输内容;判断传输内容是否为杂乱;如果传输内容为杂乱,判断目标传输标识对应的请求内容和响应内容是否相同;如果目标传输标识对应的请求内容和响应内容不相同,基于目标传输标识确定隐蔽信道通信行为。该方法基于流量分析来识别是否存在基于ICMP协议的隐蔽信道通信行为,降低了对检测设备的性能要求,提高了检测效率,同时不会影响网络排查工具的使用,有利于网络的正常运行。
Description
技术领域
本发明涉及通信技术领域,尤其是涉及一种基于ICMP协议进行隐蔽信道通信的检测方法及装置。
背景技术
网络控制报文协议(Internet Control Message Protocol,ICMP)是TCP/IP协议簇的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。常用的检查网络通不通的ping、tracert等命令都是基于ICMP协议的。
基于ICMP协议的隐蔽信道通信顾名思义就是使用ICMP协议进行数据传输达到通信手段的方法。因为ICMP使用较低标准的通信协议,从而在网络中流量比较小,不容易被网络管理员和流量分析器发现。
目前,现有技术中针对基于ICMP协议的隐蔽信道的检测方法主要有两种:方案1,对ICMP数据包内容进行检查,判断ICMP数据包内容是否符合ICMP协议规范和请求评议(Request For Comments,RFC)标准;该方案1存在以下缺点:消耗性能较大,对检测设备的性能要求较高,且很多正常的ICMP通信并不严格遵守ICMP协议规范和RFC标准;方案2,完全禁止ICMP协议,该方案2由于完全禁止ICMP协议,使得检查网络通不通的ping、tracert等命令失效,导致排查网络通不通时变得非常困难。
发明内容
有鉴于此,本发明的目的在于提供基于ICMP协议进行隐蔽信道通信的检测方法及装置。
第一方面,本发明实施例提供了一种基于ICMP协议进行隐蔽信道通信的检测方法,包括以下步骤:
对获取的ICMP流量报文进行解析得到传输标识和传输内容;
判断所述传输内容是否为杂乱;
如果所述传输内容为杂乱,判断目标传输标识对应的请求内容和响应内容是否相同;
如果所述目标传输标识对应的请求内容和响应内容不相同,基于所述目标传输标识确定隐蔽信道通信行为。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,所述判断所述传输内容是否杂乱,包括:
对所述传输内容按照预设分组规则进行分组,得到多组字符组合;
确定字符组合为杂乱组合的分组在多组字符组合中的占比;
如果所述占比大于杂乱阈值,则判断传输内容为杂乱。
结合第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第二种可能的实施方式,其中,所述预设分组规则包括:
将所述传输内容中相邻且连续的预设数量的字符划分为一组。
结合第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第三种可能的实施方式,其中,所述确定字符组合为杂乱组合的分组在多组字符组合中的占比,包括:
判断每组字符组合是否为杂乱组合;
统计多组字符组合中字符组合为杂乱组合的数量;
根据下式计算得到字符组合为杂乱组合的分组在多组字符组合中的占比;
A=n/m
其中,A表示字符组合为杂乱组合的分组在多组字符组合中的占比,n表示杂乱组合的字符组合的数量,m表示多组字符组合的组数。
结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,所述如果所述目标传输标识对应的请求内容和响应内容不相同,基于所述目标传输标识确定隐蔽信道通信行为,包括:
将所述请求内容和响应内容不同的目标传输标识传输的ICMP流量报文确定为存在隐蔽信道。
结合第一方面,本发明实施例提供了第一方面的第五种可能的实施方式,其中,所述如果所述目标传输标识对应的请求内容和响应内容不相同,基于所述目标传输标识确定隐蔽信道通信行为,包括:
判断在预设时间段内统计的所述目标传输标识对应的请求内容和响应内容的统计数据是否满足预设阈值条件;所述统计数据包括以下的至少一种:请求内容和响应内容的长度为不相同的次数、请求内容和响应内容的传输次数;
如果在预设时间段内统计的所述目标传输标识对应的请求内容和响应内容的统计数据满足预设阈值条件,则确定所述目标传输标识存在基于ICMP协议进行隐蔽信道通信行为。
结合第一方面,本发明实施例提供了第一方面的第六种可能的实施方式,其中,所述方法还包括:
基于所述目标传输标识生成告警信息,并对所述告警信息进行存储。
第二方面,本发明实施例还提供一种基于ICMP协议进行隐蔽信道通信的检测装置,包括:
流量解析模块,用于对获取的ICMP流量报文进行解析得到传输标识和传输内容;
第一判断模块,用于判断所述传输内容是否为杂乱;
第二判断模块,用于如果所述传输内容为杂乱,判断目标传输标识对应的请求内容和响应内容是否相同;
信道确定模块,用于如果所述目标传输标识对应的请求内容和响应内容不相同,基于所述目标传输标识确定隐蔽信道通信行为。
第三方面,本发明实施例还提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的基于ICMP协议进行隐蔽信道通信的检测方法的步骤。
第四方面,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述的基于ICMP协议进行隐蔽信道通信的检测方法的步骤。
本发明实施例带来了以下有益效果:本发明实施例提供的基于ICMP协议进行隐蔽信道通信的检测方法、装置、电子设备以及计算机可读存储介质,通过对获取的ICMP流量报文进行解析得到传输标识和传输内容;然后判断传输内容是否为杂乱;如果传输内容为杂乱,接着判断目标传输标识对应的请求内容和响应内容是否相同;如果目标传输标识对应的请求内容和响应内容不相同,最后基于目标传输标识确定隐蔽信道通信行为。因此,本发明实施例提供的技术方案是一种从流量角度分析ICMP协议数据的检测方法,通过判断传输的内容是否杂乱、ICMP目标传输标识的请求内容和响应内容是否相同等来区别于ping等网络工具检测的通信数据包,从而识别是否存在基于ICMP协议的隐蔽信道通信行为。相比于现有技术的对ICMP数据包内容进行检查,判断ICMP数据包内容是否符合ICMP协议规范和RFC标准和完全禁止ICMP协议的方案,该方法对检测设备的性能要求较低,检测性能较好,检测效率高,而且不会影响网络排查工具的使用,有利于网络的正常运行。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于ICMP协议进行隐蔽信道通信的检测方法的流程图;
图2为本发明实施例提供的另一种基于ICMP协议进行隐蔽信道通信的检测方法的流程图;
图3为本发明实施例提供的一种基于ICMP协议进行隐蔽信道通信的检测方法的具体应用流程图;
图4为本发明实施例提供的一种基于ICMP协议进行隐蔽信道通信的检测装置的示意图;
图5为本发明实施例提供的一种电子设备的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在这里示出和描述的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制,因此,示例性实施例的其他示例可以具有不同的值。
目前现有技术中针对基于ICMP协议的隐蔽信道的检测方法主要有两种:方案1,对ICMP数据包内容进行检查,判断ICMP数据包内容是否符合ICMP协议规范和请求评议(Request For Comments,RFC)标准;该方案1存在以下缺点:消耗性能较大,对检测设备的性能要求较高,且很多正常的ICMP通信并不严格遵守ICMP协议规范和RFC标准;方案2,完全禁止ICMP协议,该方案2由于完全禁止ICMP协议,使得检查网络通不通的ping、tracert等命令失效,导致排查网络通不通时变得非常困难。
基于此,本发明实施例提供的一种基于ICMP协议进行隐蔽信道通信的检测方法及装置,可以降低检测设备的性能要求,提高检测效率,而且不会影响网络排查工具的使用,保证了网络的正常运行。
本申请中提及的术语解释如下:
隐蔽信道:隐蔽信道是一种允许进程以违背系统安全策略的形式传送信息的通信通道。简单来说,隐蔽信道就是本意不是用来传送信息的通信通道。隐蔽信道现在已经被广泛的应用于网络信息数据安全传输。
ICMP:ICMP全称为Internet Control Message Protocol,是Internet控制报文协议。它是TCP/IP协议簇的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。
为便于对本实施例进行理解,首先对本发明实施例所公开的一种基于ICMP协议进行隐蔽信道通信的检测方法进行详细介绍。
实施例一:
本发明实施例提供了一种基于ICMP协议进行隐蔽信道通信的检测方法,应用于隐蔽信道的检测领域,由对应领域的电子设备执行,电子设备例如可以是检测设备或者检测设备的控制器等。
如图1所示,该方法包括:
步骤S102,对获取的ICMP流量报文进行解析得到传输标识和传输内容;
步骤S104,判断传输内容是否为杂乱;
步骤S106,如果传输内容为杂乱,判断目标传输标识对应的请求内容和响应内容是否相同;
步骤S108,如果目标传输标识对应的请求内容和响应内容不相同,基于目标传输标识确定隐蔽信道通信行为。
本发明实施例提供的基于ICMP协议进行隐蔽信道通信的检测方法,通过对获取的ICMP流量报文进行解析得到传输标识和传输内容;然后判断传输内容是否为杂乱;如果传输内容为杂乱,接着判断目标传输标识对应的请求内容和响应内容是否相同;如果目标传输标识对应的请求内容和响应内容不相同,最后基于目标传输标识确定隐蔽信道通信行为。相比于现有技术的方案,该方法基于流量分析来识别是否存在基于ICMP协议的隐蔽信道通信行为,降低了对检测设备的性能要求,提高了检测效率,而且不会影响网络排查工具的使用,有利于网络的正常运行。
在步骤S102中,传输标识包括IP对以及ICMP会话标识(ID);传输内容包括请求内容和响应内容;上述IP对包括源IP、目的IP;通过所述传输内容还可以确定传输内容的长度(以字符或字节表示)。
进一步的,步骤S102可以通过以下步骤执行:
1、捕获ICMP流量报文;
上述流量报文又可称为流量数据包或简称为流量;具体的,通过使用数据平面开发套件(Data Plane Development Kit,DPDK)捕获流经网络设备(例如网卡)的ICMP实时流量报文(这里指一个流量数据包)。
2、对流量报文进行解析;
具体的,按照ICMP协议格式对该获取的ICMP实时流量报文进行解析,得到源IP、目的IP、ICMP会话ID、传输内容和传输内容的长度。
可选的,步骤S104可以通过以下子步骤实现:
1)对所述传输内容按照预设分组规则进行分组,得到多组字符组合;
鉴于传输内容包括请求内容和响应内容,因此,本实施例中,可以分别对请求内容和响应内容进行分组,得到请求内容的多组字符组合和响应内容的多组字符组合;上述的预设分组规则包括:将所述传输内容中相邻且连续的预设数量的字符划分为一组,即将请求内容的相邻且连续的(即存在字符重复)预设数量的字符划分为一组,将响应内容的相邻且连续的预设数量的字符划分为一组,这里的预设数量可以根据实际需求设定,本实施例中预设数量通常设定为偶数,例如设置为2个。
当然,应当理解的是,预设分组规则也可以是其他方式,例如将传输内容按照顺序不重复的将每几个字符分为一组,例如将传输内容按照按照顺序两两分为一组。
2)确定字符组合为杂乱组合的分组在多组字符组合中的占比;
具体的,该步骤2)可以通过以下步骤执行:
2.1判断每组字符组合是否为杂乱组合;
这里的杂乱组合包括字符组合为非连续字母的组合或者字符组合为非连续数字的组合或者字符组合是字母和数字的组合;
具体的,对于请求内容,则依次判断请求内容的每组字符组合是否为以下组合的任意一种:非连续字母的组合或者字符组合为非连续数字的组合或者字符组合是字母和数字的组合;如果是,则判断该组字符组合为杂乱组合;对于响应内容,则依次判断响应内容的每组字符组合是否为以下组合的任意一种:非连续字母的组合或者字符组合为非连续数字的组合或者字符组合是字母和数字的组合。
2.2统计多组字符组合中字符组合为杂乱组合的数量;
同样的,对于请求内容,统计请求内容的多组字符组合中字符组合为杂乱组合的数量;对于响应内容,统计响应内容的多组字符组合中字符组合为杂乱组合的数量。
2.3根据下面的公式(1)计算得到字符组合为杂乱组合的分组在多组字符组合中的占比;
A=n/m (1)
其中,A表示字符组合为杂乱组合的分组在多组字符组合中的占比,n表示杂乱组合的字符组合的数量,m表示多组字符组合的组数,即将传输内容分为m组。
具体的,利用公式(1)分别计算得到请求内容中字符组合为杂乱组合的分组在多组字符组合中的占比以及响应内容中字符组合为杂乱组合的分组在多组字符组合中的占比;
3)如果所述占比大于杂乱阈值,则判断传输内容为杂乱。
考虑到传输内容包括请求内容和响应内容,因此,这里的杂乱阈值也包括请求内容的杂乱阈值和响应内容的杂乱阈值;上述杂乱阈值的设置可以根据实际需求设定,通常将请求内容的杂乱阈值和响应内容的杂乱阈值均设置为50%。
具体的,如果请求内容中字符组合为杂乱组合的分组在多组字符组合中的占比大于请求内容的杂乱阈值以及响应内容中字符组合为杂乱组合的分组在多组字符组合中的占比大于响应内容的杂乱阈值,才判断传输内容为杂乱;
需要说明的是,上述仅示例性的给出了一种请求内容和响应内容的执行方式,仅为便于理解的目的,不应理解为对本发明的限制;事实上,在本发明中,对于请求内容和响应内容的执行先后顺序可不做限定,既可以先对请求内容执行上述步骤1)至步骤3),再对响应内容执行上述步骤1)至步骤3);也可以先对响应内容执行上述步骤1)至步骤3),再对请求内容执行上述步骤1)至步骤3);还可以穿插着执行。
此外,在其他实施例中,步骤S104还可以通过以下方式实现:
首先对传输内容按照预设分组规则进行分组,得到多组字符组合;然后确定字符组合为连续组合的分组在多组字符组合中的占比;上述的连续组合是指字符组合为连续字母的组合或者字符组合为连续数字的组合;最后判断字符组合为连续组合的分组在多组字符组合中的占比是否小于等于连续阈值(或者判断字符组合为杂乱组合的分组在多组字符组合中的占比是否大于杂乱阈值),如果字符组合为连续组合的分组在多组字符组合中的占比小于等于连续阈值(或者字符组合为杂乱组合的分组在多组字符组合中的占比大于杂乱阈值),判断传输内容为杂乱。
上述确定字符组合为连续组合的分组在多组字符组合中的占比可以包括:判断每组字符组合是否为连续组合;确定多组字符组合中为连续组合的字符组合在多组字符组合的占比X;然后利用1-X即可得到字符组合为杂乱组合的分组在多组字符组合中的占比;此时,则可以直接执行上述步骤3)如果占比(即字符组合为杂乱组合的分组在多组字符组合中的占比)大于杂乱阈值,则判断传输内容为杂乱。
在步骤S106中,目标传输标识是指选定的传输标识,例如可以是选定的一个ICMP会话ID,也可以是选定的一组IP对。
进一步的,本实施例中,目标传输标识是指选定的一个ICMP会话ID,上述步骤S106通过下列步骤执行:
通过ICMP会话ID、源IP、目的IP判断所选定的一个ICMP会话的请求内容和响应内容是否完全相同,这里的完全相同是指请求内容的数据内容与响应内容的数据内容相同,且请求内容的长度与响应内容的长度也相同。
进一步的,步骤S108可以通过以下方式之一实现:
方式A、
将请求内容和响应内容不同的目标传输标识传输的ICMP流量报文确定为存在隐蔽信道。
这里的请求内容和响应内容不同包括请求内容和响应内容的长度不相同以及请求内容和响应内容长度相同但是数据内容不相同。
即在目标传输标识的请求内容和响应内容存在差异的情况下,可以间接反映该目标传输标识存在隐蔽信道通信行为,换言之,该请求内容和响应内容存在区别的目标传输标识为隐蔽信道通信的疑似目标。
方式B、
B1判断在预设时间段内统计的所述目标传输标识对应的请求内容和响应内容的统计数据是否满足预设阈值条件;所述统计数据包括以下的至少一种:请求内容和响应内容的长度为不相同的次数、请求内容和响应内容的传输次数;
这里将请求内容的一次发送和响应内容的一次反馈记作传输次数的一次,即一次请求与其对应的一次响应作为传输次数的一次。
具体的,该步骤B1通过以下子步骤实现:
B11在预设时间段内对目标传输标识对应的请求内容和响应内容进行统计,得到目标传输标识对应的请求内容和响应内容的统计数据;其中所述统计数据包括请求内容的长度、请求内容的次数、响应内容的长度以及响应内容的次数;
上述的预设时间段可以根据检测需求设置,例如设置为30分钟。
具体的,以IP对为维度,每间隔30分钟统计同一IP对下请求内容的长度、次数以及响应内容的长度、次数,同时保存预设数量的请求内容和响应内容,在本实例中,最多保存20条不同的请求内容和20条不同的响应内容,将其作为缓存数据存储在缓存中。
B12基于所述统计数据确定请求内容与对应的响应内容两者长度为不同时的次数;
B13分别判断请求内容的次数、响应内容的次数、请求内容与对应的响应内容两者长度为不同时的次数是否满足对应的阈值条件;
若均满足,即请求内容的次数满足请求内容的次数阈值、响应内容的次数满足响应内容的次数阈值,请求内容与对应的响应内容两者长度为不同时的次数满足差别次数阈值,则判断在预设时间段内统计的所述目标传输标识对应的请求内容和响应内容的统计数据满足预设阈值条件。
需要说明的是,上述的统计数据还可以包括请求内容和响应内容的长度为不相同在请求内容和响应内容不相同中的占比,请求内容和响应内容的长度为不相同的次数在请求内容和响应内容的传输次数的占比。
B2如果在预设时间段内统计的所述目标传输标识对应的请求内容和响应内容的统计数据满足预设阈值条件,则确定所述目标传输标识存在基于ICMP协议进行隐蔽信道通信行为。
考虑到如何对检测结果进行验证的问题,进一步的,在前述方案的基础上,如图2所示,与前述方法的区别在于,该方法还可以包括:
步骤S202,基于目标传输标识生成告警信息,并对告警信息进行存储。
上述步骤S202,可以通过以下方式之一执行:
方式一、对于将请求内容和响应内容不同的目标传输标识传输的ICMP流量报文确定为存在隐蔽信道的情况,该步骤S202具体包括:基于目标传输标识的源IP,目的IP以及该目标传输标识下的不同的请求内容和响应内容生成告警信息,并存储至本地第一数据库中。
方式二、对应于上述的方式B,在预设时间段内统计的所述目标传输标识对应的请求内容和响应内容的统计数据满足预设阈值条件的前提下,该步骤S202则可以通过以下步骤实现:基于目标传输标识的源IP,目的IP,该目标传输标识下的不同的请求内容和响应内容,请求内容的长度、请求的内容次数和响应内容的长度、响应内容的次数,请求内容的长度与响应内容的长度为不相同的次数生成一条告警信息,并将告警信息存储至本地第二数据库中。
该方法通过上述步骤S202便于告知提醒用户,同时,便于用户进行后续检查核验,有利于提高用户的体验度。
为了便于理解,下面结合图3对该方法的具体实施过程进行论述:
参照图3,该方法包括:
步骤S302:捕获ICMP流量并解析。
通过使用DPDK捕获流经网卡的ICMP流量,然后按照ICMP协议格式进行解析,解析得到源IP、目的IP、ICMP会话ID、传输内容和传输内容的长度。
步骤S304:判断传输内容是否杂乱。
具体的,对于请求内容和响应内容分别执行下列子步骤:
1.首先将连续每2个字符划分为一个组合,得到多个字符组合;
这里以请求内容为例,例如请求内容为12345,则按照上述分组规则,则可以得到4个组合,分别为12,23,34,45。
2.判断每个字符组合是否是连续字母或者数字。
例如:字符组合12,21,ab,ba视为连续字母或者数字;而字符组合13,31,ac,ca则视为非连续字母或数字。
3.统计连续字母+连续数字的字符组合的占比,如果达到连续阈值,本实例中,连续阈值设置为50%,则认为是非杂乱的,否则视为杂乱的。
4.判断为杂乱的,则进入步骤S306,否则结束判断。
步骤S306:判断请求和响应是否相同。
通过ICMP会话ID、源IP、目的IP判断同一个ICMP会话(由ICMP会话ID确定是否为同一个)的请求内容和响应内容是否相同。如果不相同则进入步骤S308,否则结束判断。
步骤S308:基于IP对进行统计。
以IP对为维度,统计同一IP对(源IP地址和目标IP地址相同或源IP地址和目标IP地址相反的IP对)下请求内容的长度、次数以及响应内容的长度、次数,同时保存一定量的请求内容和响应内容;例如保存20条不同的请求内容和20条不同的响应内容至缓存中。
步骤S310:判断是否达到阈值。
每隔一段时间(本实例设置为半小时),对每个IP对进行判断,如果统计的请求次数和响应次数都达到阈值(本实例设置阈值为20次),且请求内容和响应内容为不同长度的数量达到阈值(本实例阈值设置为10),则识别为基于ICMP协议进行隐蔽信道通信,进入步骤S312。否则清空统计数据,结束判断。
步骤S312:产生告警数据,并进行存储。
对于步骤S310判断为基于ICMP协议进行隐蔽信道通信,保存一条告警信息,该告警信息包括源IP,目的IP,步骤S308中保存的请求内容,响应内容,请求内容的长度、次数和响应内容的长度、次数;并将告警信息存入本地预设数据库中。
本发明实施例从流量角度分析ICMP协议数据,通过统计ICMP请求响应内容是否相同、请求响应的内容长度分布范围是否较广、请求响应的内容是否杂乱等,区分ping等正常的数据包和异常的ICMP通信数据包,从而识别是否存在基于ICMP协议的隐蔽信道通信行为。该方法可以有效的检测基于ICMP协议进行隐蔽信道的通信,检测效率高,对检测设备的性能要求较低,而且不会影响网络的正常运行。
实施例二:
如图4所示,本发明实施例提供了一种基于ICMP协议进行隐蔽信道通信的检测装置,该装置包括:
流量解析模块400,用于对获取的ICMP流量报文进行解析得到传输标识和传输内容;
第一判断模块500,用于判断所述传输内容是否为杂乱;
第二判断模块600,用于如果所述传输内容为杂乱,判断目标传输标识对应的请求内容和响应内容是否相同;
信道确定模块700,用于如果所述目标传输标识对应的请求内容和响应内容不相同,基于所述目标传输标识确定隐蔽信道通信行为。
进一步的,第一判断模块500,用于对所述传输内容按照预设分组规则进行分组,得到多组字符组合;确定字符组合为杂乱组合的分组在多组字符组合中的占比;如果所述占比大于杂乱阈值,则判断传输内容为杂乱。
进一步的,第一判断模块500,用于判断每组字符组合是否为杂乱组合;
统计多组字符组合中字符组合为杂乱组合的数量;根据下式计算得到字符组合为杂乱组合的分组在多组字符组合中的占比;A=n/m式(1);其中,A表示字符组合为杂乱组合的分组在多组字符组合中的占比,n表示杂乱组合的字符组合的数量,m表示多组字符组合的组数。
进一步的,信道确定模块700,用于将所述请求内容和响应内容不同的目标传输标识传输的ICMP流量报文确定为存在隐蔽信道。
进一步的,信道确定模块700,用于判断在预设时间段内统计的所述目标传输标识对应的请求内容和响应内容的统计数据是否满足预设阈值条件;所述统计数据包括以下的至少一种:请求内容和响应内容的长度为不相同的次数、请求内容和响应内容的传输次数;如果在预设时间段内统计的所述目标传输标识对应的请求内容和响应内容的统计数据满足预设阈值条件,则确定所述目标传输标识存在基于ICMP协议进行隐蔽信道通信行为。
进一步的,该装置还包括:
告警存储模块800,用于基于所述目标传输标识生成告警信息,并对所述告警信息进行存储。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本发明实施例提供的基于ICMP协议进行隐蔽信道通信的检测装置,与上述实施例提供的基于ICMP协议进行隐蔽信道通信的检测方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
参见图5,本发明实施例还提供一种电子设备100,包括:处理器40,存储器41,总线42和通信接口43,所述处理器40、通信接口43和存储器41通过总线42连接;处理器40用于执行存储器41中存储的可执行模块,例如计算机程序。
其中,存储器41可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口43(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。
总线42可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
其中,存储器41用于存储程序,所述处理器40在接收到执行指令后,执行所述程序,前述本发明实施例任一实施例揭示的流过程定义的装置所执行的方法可以应用于处理器40中,或者由处理器40实现。
处理器40可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器40中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器40可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital SignalProcessor,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器41,处理器40读取存储器41中的信息,结合其硬件完成上述方法的步骤。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器运行时执行上述实施例提供的基于ICMP协议进行隐蔽信道通信的检测方法的步骤。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (9)
1.一种基于ICMP协议进行隐蔽信道通信的检测方法,其特征在于,包括以下步骤:
对获取的ICMP流量报文进行解析得到传输标识和传输内容;
判断所述传输内容是否为杂乱;
如果所述传输内容为杂乱,判断目标传输标识对应的请求内容和响应内容是否相同;
如果所述目标传输标识对应的请求内容和响应内容不相同,基于所述目标传输标识确定隐蔽信道通信行为。
2.根据权利要求1所述的方法,其特征在于,所述判断所述传输内容是否杂乱,包括:
对所述传输内容按照预设分组规则进行分组,得到多组字符组合;所述预设分组规则包括:将所述传输内容中相邻且连续的预设数量的字符划分为一组;
确定字符组合为杂乱组合的分组在多组字符组合中的占比;
如果所述占比大于杂乱阈值,则判断传输内容为杂乱。
3.根据权利要求2所述的方法,其特征在于,所述确定字符组合为杂乱组合的分组在多组字符组合中的占比,包括:
判断每组字符组合是否为杂乱组合;
统计多组字符组合中字符组合为杂乱组合的数量;
根据下式计算得到字符组合为杂乱组合的分组在多组字符组合中的占比;
A=n/m
其中,A表示字符组合为杂乱组合的分组在多组字符组合中的占比,n表示杂乱组合的字符组合的数量,m表示多组字符组合的组数。
4.根据权利要求1所述的方法,其特征在于,所述如果所述目标传输标识对应的请求内容和响应内容不相同,基于所述目标传输标识确定隐蔽信道通信行为,包括:
将所述请求内容和响应内容不同的目标传输标识传输的ICMP流量报文确定为存在隐蔽信道。
5.根据权利要求1所述的方法,其特征在于,所述如果所述目标传输标识对应的请求内容和响应内容不相同,基于所述目标传输标识确定隐蔽信道通信行为,包括:
判断在预设时间段内统计的所述目标传输标识对应的请求内容和响应内容的统计数据是否满足预设阈值条件;所述统计数据包括以下的至少一种:请求内容和响应内容的长度为不相同的次数、请求内容和响应内容的传输次数;其中将请求内容的一次发送和响应内容的一次反馈记作传输次数的一次;
如果在预设时间段内统计的所述目标传输标识对应的请求内容和响应内容的统计数据满足预设阈值条件,则确定所述目标传输标识存在基于ICMP协议进行隐蔽信道通信行为。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
基于所述目标传输标识生成告警信息,并对所述告警信息进行存储。
7.一种基于ICMP协议进行隐蔽信道通信的检测装置,其特征在于,包括:
流量解析模块,用于对获取的ICMP流量报文进行解析得到传输标识和传输内容;
第一判断模块,用于判断所述传输内容是否为杂乱;
第二判断模块,用于如果所述传输内容为杂乱,判断目标传输标识对应的请求内容和响应内容是否相同;
信道确定模块,用于如果所述目标传输标识对应的请求内容和响应内容不相同,基于所述目标传输标识确定隐蔽信道通信行为。
8.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述权利要求1至6任一项所述的方法的步骤。
9.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器运行时执行上述权利要求1至6任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910720720.8A CN110324210B (zh) | 2019-08-06 | 2019-08-06 | 基于icmp协议进行隐蔽信道通信的检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910720720.8A CN110324210B (zh) | 2019-08-06 | 2019-08-06 | 基于icmp协议进行隐蔽信道通信的检测方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110324210A CN110324210A (zh) | 2019-10-11 |
CN110324210B true CN110324210B (zh) | 2020-12-25 |
Family
ID=68125434
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910720720.8A Active CN110324210B (zh) | 2019-08-06 | 2019-08-06 | 基于icmp协议进行隐蔽信道通信的检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110324210B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111371740B (zh) * | 2020-02-17 | 2022-06-07 | 华云数据有限公司 | 一种报文流量监控方法、系统及电子设备 |
CN111464497A (zh) * | 2020-03-05 | 2020-07-28 | 北京安码科技有限公司 | 基于icmp的靶场隐蔽通道建立方法、系统、电子设备及存储介质 |
CN113497797B (zh) * | 2020-04-08 | 2023-04-28 | 中国移动通信集团广东有限公司 | 一种icmp隧道传输数据的异常检测方法及装置 |
CN111478920A (zh) * | 2020-04-27 | 2020-07-31 | 深信服科技股份有限公司 | 一种隐蔽信道通信检测方法、装置及设备 |
CN111585993B (zh) * | 2020-04-27 | 2022-08-09 | 深信服科技股份有限公司 | 一种隐蔽信道通信检测方法、装置及设备 |
CN111586075B (zh) * | 2020-05-26 | 2022-06-14 | 国家计算机网络与信息安全管理中心 | 基于多尺度流分析技术的隐蔽信道检测方法 |
CN112565229B (zh) * | 2020-11-27 | 2023-05-05 | 北京天融信网络安全技术有限公司 | 隐蔽通道检测方法及装置 |
CN112491662A (zh) * | 2020-12-14 | 2021-03-12 | 北京亚鸿世纪科技发展有限公司 | 一种icmp隐蔽隧道检测方法及装置 |
CN112688957B (zh) * | 2020-12-29 | 2023-03-24 | 北京天融信网络安全技术有限公司 | Icmp报文的处理方法、装置、计算机设备和介质 |
CN113179278B (zh) * | 2021-05-20 | 2023-04-18 | 北京天融信网络安全技术有限公司 | 异常数据包的检测方法及电子设备 |
CN113364793A (zh) * | 2021-06-17 | 2021-09-07 | 北京天融信网络安全技术有限公司 | 一种icmp隐蔽隧道检测方法、装置及存储介质 |
CN113923047B (zh) * | 2021-11-04 | 2024-07-16 | 杭州安恒信息安全技术有限公司 | 一种隐蔽通信方法、装置、系统、计算机和可读存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106453225A (zh) * | 2016-07-18 | 2017-02-22 | 北龙中网(北京)科技有限责任公司 | 实现隐秘通信的方法及客户端、服务器 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104104675A (zh) * | 2014-06-24 | 2014-10-15 | 赖洪昌 | Internet控制报文协议伪装捕获与分析技术 |
RU2631141C2 (ru) * | 2015-12-16 | 2017-09-19 | федеральное государственное казенное военное образовательное учреждение высшего образования "Краснодарское высшее военное училище имени генерала армии С.М. Штеменко" Министерства обороны Российской Федерации | Устройство выявления скрытых каналов на основе идентификации ошибок в тестируемых узлах автоматизированных систем |
CN109547443B (zh) * | 2018-11-28 | 2023-04-25 | 甘肃农业大学 | 一种网络存储型隐信道的检测方法 |
-
2019
- 2019-08-06 CN CN201910720720.8A patent/CN110324210B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106453225A (zh) * | 2016-07-18 | 2017-02-22 | 北龙中网(北京)科技有限责任公司 | 实现隐秘通信的方法及客户端、服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN110324210A (zh) | 2019-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110324210B (zh) | 基于icmp协议进行隐蔽信道通信的检测方法及装置 | |
CN106416171A (zh) | 一种特征信息分析方法及装置 | |
US10084713B2 (en) | Protocol type identification method and apparatus | |
CN107624233B (zh) | 一种vpn传输隧道调度方法、装置以及vpn客户端服务器 | |
CN110519290A (zh) | 异常流量检测方法、装置及电子设备 | |
US11711389B2 (en) | Scanner probe detection | |
CN110808994B (zh) | 暴力破解操作的检测方法、装置及服务器 | |
CN104580216B (zh) | 一种对访问请求进行限制的系统和方法 | |
CN110535888B (zh) | 端口扫描攻击检测方法及相关装置 | |
US20200169582A1 (en) | Identifying a potential ddos attack using statistical analysis | |
CN108259426B (zh) | 一种DDoS攻击检测方法及设备 | |
CN112422554B (zh) | 一种检测异常流量外连的方法、装置、设备及存储介质 | |
CN110944016B (zh) | DDoS攻击检测方法、装置、网络设备及存储介质 | |
CN105530138A (zh) | 一种数据监控方法及装置 | |
CN110266726B (zh) | 一种识别ddos攻击数据流的方法及装置 | |
CN106790299B (zh) | 一种在无线接入点ap上应用的无线攻击防御方法和装置 | |
CN110266668A (zh) | 一种端口扫描行为的检测方法及装置 | |
CN108347359B (zh) | 一种大型网络地址转换出口判断方法及装置 | |
CN111355670B (zh) | 一种流量识别方法、装置、电子设备及存储介质 | |
CN109413022B (zh) | 一种基于用户行为检测http flood攻击的方法和装置 | |
CN105516200B (zh) | 云系统安全处理方法和装置 | |
CN107528837B (zh) | 加密视频识别方法及装置、计算机装置、可读存储介质 | |
CN112019393B (zh) | 一种确定时延的方法及装置 | |
CN110177075B (zh) | 异常访问拦截方法、装置、计算机设备及存储介质 | |
CN113810332B (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 |