CN102523223B - 一种木马检测的方法及装置 - Google Patents
一种木马检测的方法及装置 Download PDFInfo
- Publication number
- CN102523223B CN102523223B CN201110430821.5A CN201110430821A CN102523223B CN 102523223 B CN102523223 B CN 102523223B CN 201110430821 A CN201110430821 A CN 201110430821A CN 102523223 B CN102523223 B CN 102523223B
- Authority
- CN
- China
- Prior art keywords
- message
- session
- wooden horse
- heartbeat detection
- feature
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
Abstract
本发明公开了一种木马检测的方法及装置,用以解决现有技术不能有效的对网络中存在的木马进行检测的问题。该方法当检测到会话中存在木马心跳检测时,根据木马心跳检测的频率是否固定,将记录的会话权值增加相应的权值并记录,并针对控制端向被控制端发送的每个报文,检测该报文是否符合木马控制命令报文的特征,若符合,则将记录的会话权值增加第三权值并记录,在会话权值达到告警阈值时发出告警,以通知该会话为木马发起的会话。由于本发明实施例通过对会话中的报文进行检测实现木马检测,因此可以检测到网络中存在的木马,并且对会话中的报文进行检测时,并不只是简单的字符串匹配,因此降低了误报率,可以有效的对网络中存在的木马进行检测。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种木马检测的方法及装置。
背景技术
随着互联网技术的不断普及,网络安全问题日益凸显,特别是木马程序的泛滥,直接导致了各种重要信息的非法窃取和破坏。目前,木马程序已成为网络攻击者实施攻击的常用工具,攻击者通过木马程序获取目标主机的控制权限,窃取用户账户、密码等重要信息。因此,如何对木马进行检测,并加以拦截和防护成为一个亟待解决的问题。
在现有技术中,木马检测的方法为:将某个程序生成的本地文件的特征,如特征串、大小、所在目录等,与木马程序生成的本地文件的特征进行匹配,并监控该程序在本地的一些常规操作行为,如注册表修改、文件自启动项设置、修改系统文件配置行为等,以实现对木马程序的检测。
但是,这种方法只局限于检测本地存在的木马,对于网络中存在的木马,则无法检测并加以防护。而且,木马素以“善变”而著称,仅以静态文件分析的木马检测方法也难以对木马的不同变种进行有效的检测。
现有技术的另一种木马检测方法为:提取木马通信数据流中常见的字符串,建立一个常见字符串库,并将网络通信数据流中的字符串与该常见字符串库中的字符串进行匹配,若匹配成功,则认为存在木马通信。
但是,网络中存在各种各样的通信协议和通信数据,因此该方法只进行简单的字符串匹配,必然会存在很大的误报率。
因此,现有技术中的木马检测方法不能有效的对网络中存在的木马进行检测。
发明内容
本发明实施例提供一种木马检测的方法及装置,用以解决现有技术不能有效的对网络中存在的木马进行检测的问题。
本发明实施例提供的一种木马检测的方法,包括:
根据控制端向被控制端发送的每个报文,检测所述控制端与所述被控制端之间的会话中是否存在木马心跳检测;
当未检测到存在木马心跳检测时,继续检测所述会话中是否存在木马心跳检测;
当检测到存在木马心跳检测时,判断所述会话中存在的木马心跳检测的频率是否固定,若固定,则将记录的会话权值增加第一权值并记录,否则将记录的会话权值增加第二权值并记录;并
针对所述控制端向所述被控制端发送的每个报文,检测该报文的特征是否符合木马控制命令报文的特征;
若符合,则将记录的会话权值增加第三权值并记录,否则,继续检测下一个报文的特征是否符合木马控制命令报文的特征;
在记录的会话权值达到告警阈值时发出告警,以通知所述会话为木马发起的会话。
本发明实施例提供的一种木马检测的装置,包括:
心跳检测模块,用于根据控制端向被控制端发送的每个报文,检测所述控制端与所述被控制端之间的会话中是否存在木马心跳检测,当未检测到存在木马心跳检测时,继续检测所述会话中是否存在木马心跳检测;
频率检测模块,用于当所述心跳检测模块检测到存在木马心跳检测时,判断所述会话中存在的木马心跳检测的频率是否固定;
控制命令检测模块,用于当所述心跳检测模块检测到存在木马心跳检测时,针对所述控制端向所述被控制端发送的每个报文,检测该报文的特征是否符合木马控制命令报文的特征,若不符合,继续检测下一个报文的特征是否符合木马控制命令报文的特征;
权值记录模块,用于当所述频率检测模块确定所述会话中存在的木马心跳检测的频率固定时,将记录的会话权值增加第一权值并记录,当所述频率检测模块确定所述会话中存在的木马心跳检测的频率不固定时,将记录的会话权值增加第二权值并记录,并当所述控制命令检测模块确定该报文的特征符合木马控制命令报文的特征时,将记录的会话权值增加第三权值并记录;
告警模块,用于在所述权值记录模块记录的会话权值达到告警阈值时发出告警,以通知所述会话为木马发起的会话。
本发明实施例提供一种木马检测的方法及装置,该方法针对控制端向被控制端发起的某个会话,当检测到该会话中存在木马心跳检测时,根据存在的该木马心跳检测的频率是否固定,将记录的会话权值增加相应的权值并记录,并针对控制端向被控制端发送的每个报文,检测该报文的特征是否符合木马控制命令报文的特征,若符合,则将记录的会话权值增加第三权值并记录,在记录的会话权值达到告警阈值时发出告警,以通知该会话为木马发起的会话。由于本发明实施例通过对会话中的报文进行检测实现木马检测,因此可以检测到网络中存在的木马,并且对会话中的报文进行检测时,并不只是简单的字符串匹配,因此降低了误报率,可以有效的对网络中存在的木马进行检测。
附图说明
图1为本发明实施例提供的木马检测的过程;
图2为本发明实施例提供的木马检测的详细过程;
图3为本发明实施例提供的木马检测的装置结构示意图。
具体实施方式
由于几乎在所有的木马发起的会话中都存在木马心跳检测,因此可以通过检测一个会话中是否存在木马心跳检测,来检测该会话是否为木马发起的会话。并且,由于在木马发起的会话中,控制端向被控制端发送的作为木马控制命令的报文也具有一些特殊的特征,因此可以通过检测一个会话中的报文是否符合木马控制命令报文的特征,来检测该会话是否为木马发起的会话。本发明实施例中结合木马心跳检测和木马控制命令对木马进行检测,可以检测网络中存在的木马,并且降低了误报率,因此可以有效的对网络中存在的木马进行检测。
下面结合说明书附图,对本发明实施例进行详细描述。
图1为本发明实施例提供的木马检测的过程,具体包括以下步骤:
S101:根据控制端向被控制端发送的每个报文,检测控制端与被控制端之间的会话中是否存在木马心跳检测,若存在,则进行步骤S102,否则返回步骤S101。
在本发明实施例中,将会话的发起端作为控制端,将会话的接受端作为被控制端,可以通过控制端向被控制端发送的每个报文,来检测该会话中是否存在心跳检测,具体可以根据控制端向被控制端发送的每个报文的特征,检测该会话中是否存在木马心跳检测。如果检测到存在木马心跳检测,则说明该会话可能是木马发起的会话,进行后续检测控制命令报文的步骤。如果未检测到存在木马心跳检测,则继续检测该会话中是否存在木马心跳检测,即返回步骤S101。
S102:判断该会话中存在的木马心跳检测的频率是否固定,若固定,则进行步骤S103,否则进行步骤S104。
由于一般木马心跳检测的频率是固定不变的,而普通会话的心跳检测的频率是变化的。因此检测到该会话中存在木马心跳检测之后,还可以进一步判断存在的该木马心跳检测的频率是否固定。
在本发明实施例中,检测该会话是否为木马发起的会话时,预先保存了该会话对应的会话权值,该会话权值的初始值为0。该会话权值表征了该会话为木马发起的会话的可疑程度,记录的会话权值越大,说明该会话为木马发起的会话的可能性越高。因此,为了进一步提高对木马检测的准确性,在确定存在木马心跳检测时,可以根据该木马心跳检测的频率是否固定,在会话权值上累加相应的权值。如果存在木马心跳检测,且频率固定,则说明该会话为木马发起的会话的可疑程度较高,还需要在记录的会话权值上累加一个较大的权值。相反的,如果存在木马心跳检测,而频率不固定,则说明该会话为木马发起的会话的可疑程度相对要低一些,但毕竟木马心跳检测还是存在的,因此需要在记录的会话权值上累加一个较小的权值。
S103:将记录的会话权值增加第一权值并记录,进行步骤S105。
S104:将记录的会话权值增加第二权值并记录,进行步骤S105。
其中,第一权值大于第二权值。
S105:针对控制端向被控制端发送的每个报文,检测该报文的特征是否符合木马控制命令报文的特征,若符合,则进行步骤S106,否则返回步骤S105。
在本发明实施例中,在确定该会话中存在木马心跳检测时,进一步检测该会话中的每个报文的特征是否符合木马控制命令报文的特征,以进一步检测该会话是否为木马发起的会话。并且,针对每个报文,若确定该报文的特征不符合木马控制命令报文的特征,则继续检测下一个报文的特征是否符合木马控制命令报文的特征,即返回步骤S105。
S106:将记录的会话权值增加第三权值并记录。
由于该会话权值表征了该会话为木马发起的会话的可疑程度,记录的会话权值越大,说明该会话为木马发起的会话的可能性越高,因此,在本发明实施例中,当确定该会话存在木马心跳检测之后,每检测到一个符合木马控制命令报文的特征的报文,就说明该会话为木马发起的会话的可能性又高了一些,将当前记录的该会话权值增加第三权值并记录。
S107:在记录的会话权值达到告警阈值时发出告警,以通知该会话为木马发起的会话。
由于每检测到一个符合木马控制命令报文的特征的报文,就将记录的会话权值累加一次该第三权值,因此如果记录的会话权值达到预先设定的告警阈值时,则确定该会话为木马发起的会话,进而发出告警。其中,该告警阈值可以根据需要进行设定。
在上述过程中,针对控制端向被控制端发起的会话,当检测到该会话中存在木马心跳检测时,根据存在的该木马心跳检测的频率是否固定,将记录的会话权值增加相应的权值并记录,并针对控制端向被控制端发送的每个报文,检测该报文的特征是否符合木马控制命令报文的特征,若符合,则将记录的会话权值增加第三权值并记录,在记录的会话权值达到告警阈值时发出告警,以通知该会话为木马发起的会话。由于本发明实施例通过对会话中的报文进行检测实现木马检测,因此可以检测到网络中存在的木马,并且对会话中的报文进行检测时,并不只是简单的字符串匹配,因此降低了误报率,可以有效的对网络中存在的木马进行检测。
在图1所示的步骤S101中,检测控制端与被控制端之间的会话中是否存在木马心跳检测时,可以根据控制端向被控制端发送的每个符合木马心跳检测报文特征的报文的数量进行检测。具体的,针对控制端向被控制端发送的每个报文,根据保存的木马心跳检测报文特征,判断该报文的特征是否符合该木马心跳检测报文特征,若符合,则将当前记录的木马心跳检测报文的数量加1,否则继续判断下一个报文的特征是否符合木马心跳检测报文特征;当记录的木马心跳检测报文的数量达到设定数量时,确定检测到该会话中存在木马心跳检测,当记录的木马心跳检测报文的数量未达到设定数量时,确定未检测到该会话中存在木马心跳检测。也即,每检测到一个控制端向被控制端发送的符合木马心跳检测报文特征的报文时,就将当前记录的木马心跳检测报文的数量累加1,其中,木马心跳检测报文的数量的初始值为0。当符合木马心跳检测报文特征的报文的数量达到设定数量时,即当记录的该数量达到设定数量时,则确定检测到该会话中存在木马心跳检测,并进行后续检测频率和控制命令报文的步骤。
其中,该木马心跳检测报文特征可以为:预先汇总的木马会话中存在的心跳检测报文的特征。具体的,该木马心跳检测报文的特征可以包括以下几种特征:
木马发起的会话一般会采用高端口收发报文,也即该会话中的报文对应的源端口号和目的端口号是大于设定数值的,该设定数值可以根据实际情况确定。例如目前高端口一般是指端口号大于1024的端口,因此木马发起的会话中的报文对应的源端口号和目的端口号一般大于1024。
木马发起的会话中存在的心跳检测报文的载荷长度一般也会在某一个范围内,并且每个心跳检测报文的载荷长度是固定不变的,该范围也可以根据实际情况确定。例如目前木马发起的会话中的心跳检测报文的载荷长度一般在100字节以下,因此木马心跳检测报文的载荷长度为不大于100字节,且载荷长度固定不变。
木马发起的会话中存在的心跳检测报文的载荷内容一般是固定不变的,而对于一个木马的不同变种木马来说,变种木马发起的会话中存在的心跳检测报文的载荷内容也可能是固定不变的,还可能是按照某种规律变化的。
因此,基于上述汇总的木马心跳检测报文特征,本发明实施例中针对控制端向被控制端发送的每个报文,确定该报文的特征符合木马心跳检测报文特征的方法具体为,当该报文的特征符合下述特征中的一种或几种时,确定该报文的特征符合木马心跳检测报文的特征:
该报文对应的源端口号和目的端口号均大于设定数值,该设定数值可以为1024;以及
该报文的载荷长度在第一设定范围内,该第一设定范围可以为100字节以下;以及
该报文的载荷长度与之前每个报文的载荷长度相同,也即每个报文的载荷长度固定不变;以及
该报文的载荷内容与之前每个报文的载荷内容相比,载荷内容相同或者载荷内容规律变化,也即每个报文的载荷内容相同或者载荷内容规律变化。
为了进一步提高对木马检测的准确性,判断该报文的特征是否符合木马心跳检测报文特征时,还可以当确定该报文的特征符合上述所有特征时,确定该报文的特征符合木马心跳检测报文特征,当该报文的特征不符合至少一个上述特征时,确定该报文的特征不符合木马心跳检测报文特征。
另外,在图1所示的步骤S102中,判断该会话中存在的木马心跳检测的频率是否固定的方法可以为:按照确定的每个符合木马心跳检测报文特征的报文中携带的报文发送时间的先后顺序,将确定的每个符合木马心跳检测报文特征的报文进行排序,在排序后的报文中,分别确定每两个相邻的报文的报文发送时间之间的时间间隔,判断分别确定的每个时间间隔之间的差值是否在第二设定范围内,若是,则确定该会话中存在的木马心跳检测的频率固定,否则确定该会话中存在的木马心跳检测的频率不固定。其中,该第二设定范围可以根据需要进行设定,例如1秒以下。
在图1所示的步骤S105中,针对控制端向被控制端发送的每个报文,检测该报文的特征是否符合木马控制命令报文的特征时,该木马控制命令报文的特征也可以为预先汇总的木马会话中存在的控制命令报文的特征。具体的,木马发起的会话中存在的控制命令报文的特征可以包括以下几种:
木马发起的会话中的控制命令报文的载荷长度也在一定的范围内,该范围可以根据实际情况确定。例如目前木马发起的会话中的控制命令报文的载荷长度一般在100字节以下。
木马发起的会话中的控制命令报文的字段结构存在一定的结构特征,例如载荷的前4个字节指定后面载荷的长度。可以预先保存木马特征库,用于存储汇总的木马发起的会话中的控制命令报文的字段结构。
木马发起的会话中的每个控制命令报文的编码是规律变化的,例如按照发送顺序编码。
木马发起的会话中一般通过多个控制命令报文,来控制被控制端进行多个操作行为,这多个操作行为的组合往往具有一定的特征。例如先搜索某个文件夹,然后打开这个文件夹,再将这个文件夹里某种类型的文件上传。同样的,可以在木马特征库中保存汇总的木马控制被控制端进行的多个操作行为组合。
因此,基于上述汇总的木马控制命令报文的特征,本发明实施例中针对控制端向被控制端发送的每个报文,确定该报文的特征符合木马控制命令报文的特征的方法具体为,当该报文的特征符合下述特征中的一种或几种时,确定该报文的特征符合木马控制命令报文的特征:
该报文的载荷长度在第三设定范围内,该第三设定范围可以为100字节以下;以及
该报文的字段结构与保存的至少一个木马控制命令报文的字段结构相同;以及
该报文的编码与之前每个报文的编码相比,编码规律变化;以及
按照控制端发送每个报文的发送顺序,将该报文对应的操作行为,以及之前每个报文对应的操作行为进行组合,得到该会话的操作行为组合,得到的该操作行为组合与保存的至少一个木马操作行为组合相同。
为了进一步提高对木马检测的准确性,判断该报文的特征是否符合木马控制命令报文的特征时,还可以当确定该报文的特征符合上述所有特征时,确定该报文的特征符合木马控制命令报文的特征,当该报文的特征不符合至少一个上述特征时,确定该报文的特征不符合木马控制命令报文的特征。
由于普通会话在会话建立之后,一般会马上进行载荷较大的报文的传输,而木马发起的会话在会话建立之后,则会在一段时间之后才进行载荷较大的报文的传输。因此,本发明实施例为了进一步提高对木马检测的准确性,还可以根据会话建立的时间与出现较大载荷的报文的时间的时间间隔,检测该会话是否为木马发起的会话。若会话建立之后在短时间内就出现了载荷较大的报文,则说明该会话为木马发起的会话的可疑程度较低,不增加记录的会话权值,若会话建立之后的很长时间才出现载荷较大的报文,则说明该会话为木马发起的会话的可疑程度较高,需要将记录的会话权值累加一定的权值。
具体的,确定控制端发送该会话的会话建立报文的发送时间,确定在该会话的过程中第一次出现载荷长度大于设定长度的报文的出现时间,并确定该发送时间到出现时间的时间间隔,当确定的时间间隔大于设定的时间间隔时,将记录的会话权值增加第四权值并记录。其中,该设定长度可以根据需要进行设定,例如1200字节。第四权值也可以根据需要进行设定。
另外,由于在木马建立的会话中,被控制端向控制端上传的数据流量会远大于被控制端接收到的控制端发送的数据流量,也即被控制端的上行数据流量远大于下行数据流量,而普通会话中的数据流量则不会有这样的特征。因此,本发明实施例为了进一步提高对木马检测的准确性,还可以根据会话中被控制端的上行数据流量和下行数据流量的比值,检测该会话是否为木马发起的会话。并且,可以设定不同的比值范围,每个比值范围对应一个权值,将当前记录的会话权值累加该比值所属的比值范围对应的权值。例如,上行数据流量与下行数据流量的比值在1~50倍的比值范围内时,对应权值A,在50~100倍时,对应权值B,在100倍以上时,对应权值C,其中,每个比值范围的平均值越大,其对应的权值也越大,即C大于B大于A,也即上行数据流量与下行数据流量的比值越大,说明该会话为木马发起的会话的可疑程度越高。
较佳的,为了提高检测木马的效率,上述根据被控制端的上行数据流量和下行数据流向的比值进行检测的步骤,可以在当前记录的会话权值达到设定阈值时再进行,其中,该设定阈值小于告警阈值。具体的,在记录的会话权值达到设定阈值时,确定当前该会话中被控制端的上行数据流量和下行数据流量,并确定上行数据流量与下行数据流量的比值,确定该比值所属的比值范围,根据预先设定的每个比值范围对应的权值,将记录的会话权值增加确定的该比值所属的比值范围对应的权值并记录。也即,在记录的会话权值达到设定阈值时,确定该会话从会话建立到当前时刻的过程中,被控制端的上行数据流量和下行数据流量,并确定二者的比值,根据比值累加当前记录的会话权值。
图2为本发明实施例提供的木马检测的详细过程,具体包括以下步骤:
S201:针对控制端向被控制端发送的每个报文,根据保存的木马心跳检测报文特征,判断该报文的特征是否符合木马心跳检测报文特征,若符合,则进行步骤S202,否则返回步骤S201。
S202:将当前记录的木马心跳检测报文的数量加1。
S203:判断记录的木马心跳检测报文的数量是否达到设定数量,若是,则进行步骤S204,否则返回步骤S201。
S204:按照确定的每个符合木马心跳检测报文特征的报文中携带的报文发送时间的先后顺序,将确定的每个符合木马心跳检测报文特征的报文进行排序,在排序后的报文中,分别确定每两个相邻的报文的发送时间之间的时间间隔。
S205:判断分别确定的每个时间间隔之间的差值是否在第二设定范围内,若是,则进行步骤S206,否则进行步骤S207。
S206:将记录的会话权值增加第一权值并记录,进行步骤S208。
S207:将记录的会话权值增加第二权值并记录,进行步骤S208。
其中,会话权值的初始值为0,第一权值大于第二权值。
S208:确定控制端发送该会话的会话建立报文的发送时间,确定在该会话的过程中第一次出现载荷长度大于设定长度的报文的出现时间,确定发送时间到出现时间的时间间隔。
S209:判断该时间间隔是否大于设定的时间间隔,若是,则进行步骤S210,否则进行步骤S211。
S210:将记录的会话权值增加第四权值并记录,进行步骤S211。
S211:针对控制端向被控制端发送的每个报文,检测该报文的特征是否符合木马控制命令报文的特征,若是,则进行步骤S212,否则返回步骤S211。
S212:将记录的会话权值增加第三权值并记录。
S213:判断记录的会话权值是否达到设定阈值,若是,则进行步骤S214,否则返回步骤S211。
其中,设定阈值小于告警阈值。
S214:判断当前记录的会话权值中是否已经增加过某个比值范围对应的权值,若是,则进行步骤S216,否则进行步骤S215。
也即,判断该检测过程中是否已经进行了根据被控制端的上下行数据流量的比值增加相应权值的步骤,即步骤S215。
S215:确定当前该会话中被控制端的上行数据流量和下行数据流量的比值,根据预先设定的每个比值范围对应的权值,将记录的会话权值增加确定的该比值所属的比值范围对应的权值并记录,进行步骤S216。
S216:判断当前记录的会话权值是否达到告警阈值,若是,则进行步骤S217,否则返回步骤S211。
S217:发出告警,以通知该会话为木马发起的会话。
并且,上述过程可以在该会话建立时开始执行,并在该会话结束时结束,如果在该会话结束时,当前记录的会话权值仍未达到告警阈值,则说明该会话不是木马发起的会话。
图3为本发明实施例提供的木马检测的装置结构示意图,具体包括:
心跳检测模块301,用于根据控制端向被控制端发送的每个报文,检测所述控制端与所述被控制端之间的会话中是否存在木马心跳检测,当未检测到存在木马心跳检测时,继续检测所述会话中是否存在木马心跳检测;
频率检测模块302,用于当所述心跳检测模块301检测到存在木马心跳检测时,判断所述会话中存在的木马心跳检测的频率是否固定;
控制命令检测模块303,用于当所述心跳检测模块301检测到存在木马心跳检测时,针对所述控制端向所述被控制端发送的每个报文,检测该报文的特征是否符合木马控制命令报文的特征,若不符合,继续检测下一个报文的特征是否符合木马控制命令报文的特征;
权值记录模块304,用于当所述频率检测模块302确定所述会话中存在的木马心跳检测的频率固定时,将记录的会话权值增加第一权值并记录,当所述频率检测模块302确定所述会话中存在的木马心跳检测的频率不固定时,将记录的会话权值增加第二权值并记录,并当所述控制命令检测模块303确定该报文的特征符合木马控制命令报文的特征时,将记录的会话权值增加第三权值并记录;
告警模块305,用于在所述权值记录模块304记录的会话权值达到告警阈值时发出告警,以通知所述会话为木马发起的会话。
所述心跳检测模块301具体用于,针对所述控制端向所述被控制端发送的每个报文,根据保存的木马心跳检测报文特征,判断该报文的特征是否符合所述木马心跳检测报文特征;若符合,则将当前记录的木马心跳检测报文的数量加1,否则继续判断下一个报文的特征是否符合所述木马心跳检测报文特征;当记录的木马心跳检测报文的数量达到设定数量时,确定检测到所述会话中存在木马心跳检测;当记录的木马心跳检测报文的数量未达到设定数量时,确定未检测到所述会话中存在木马心跳检测。
所述心跳检测模块301具体用于,当该报文的特征符合下述特征中的一种或几种时,确定该报文的特征符合所述木马心跳检测报文特征:该报文对应的源端口号和目的端口号均大于设定数值,以及,该报文的载荷长度在第一设定范围内,以及,该报文的载荷长度与之前每个报文的载荷长度相同,以及,该报文的载荷内容与之前每个报文的载荷内容相比,载荷内容相同或者载荷内容规律变化。
所述频率检测模块302具体用于,按照确定的每个符合所述木马心跳检测报文特征的报文中携带的报文发送时间的先后顺序,将确定的每个符合所述木马心跳检测报文特征的报文进行排序,在排序后的报文中,分别确定每两个相邻的报文的报文发送时间之间的时间间隔,判断分别确定的每个时间间隔之间的差值是否在第二设定范围内,若是,则确定所述会话中存在的木马心跳检测的频率固定,否则确定所述会话中存在的木马心跳检测的频率不固定。
所述控制命令检测模块303具体用于,当该报文的特征符合下述特征中的一种或几种时,确定该报文的特征符合木马控制命令报文的特征:该报文的载荷长度在第三设定范围内,以及,该报文的字段结构与保存的至少一个木马控制命令报文的字段结构相同,以及,该报文的编码与之前每个报文的编码相比,编码规律变化,以及,按照所述控制端发送每个报文的发送顺序,将该报文对应的操作行为,以及之前每个报文对应的操作行为进行组合,得到所述会话的操作行为组合,得到的所述操作行为组合与保存的至少一个木马操作行为组合相同。
所述装置还包括:
时间检测模块306,用于确定所述控制端发送所述会话的会话建立报文的发送时间,确定在所述会话的过程中第一次出现载荷长度大于设定长度的报文的出现时间,确定所述发送时间到所述出现时间的时间间隔;
所述权值记录模块304还用于,当确定的所述时间间隔大于设定的时间间隔时,将记录的会话权值增加第四权值并记录。
所述装置还包括:
流量统计模块307,用于在记录的会话权值达到设定阈值时,确定当前所述会话中所述被控制端的上行数据流量和下行数据流量,确定上行数据流量与下行数据流量的比值,并确定所述比值所属的比值范围,其中,所述设定阈值小于所述告警阈值;
所述权值记录模块304还用于,根据预先设定的每个比值范围对应的权值,将记录的会话权值增加确定的所述比值所属的比值范围对应的权值并记录。
本发明实施例提供一种木马检测的方法及装置,该方法针对控制端向被控制端发起的某个会话,当检测到该会话中存在木马心跳检测时,根据存在的该木马心跳检测的频率是否固定,将记录的会话权值增加相应的权值并记录,并针对控制端向被控制端发送的每个报文,检测该报文的特征是否符合木马控制命令报文的特征,若符合,则将记录的会话权值增加第三权值并记录,在记录的会话权值达到告警阈值时发出告警,以通知该会话为木马发起的会话。由于本发明实施例通过对会话中的报文进行检测实现木马检测,因此可以检测到网络中存在的木马,并且对会话中的报文进行检测时,并不只是简单的字符串匹配,因此降低了误报率,可以有效的对网络中存在的木马进行检测。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (12)
1.一种木马检测的方法,其特征在于,包括:
根据控制端向被控制端发送的每个报文,检测所述控制端与所述被控制端之间的会话中是否存在木马心跳检测;
当未检测到存在木马心跳检测时,继续检测所述会话中是否存在木马心跳检测;
当检测到存在木马心跳检测时,判断所述会话中存在的木马心跳检测的频率是否固定,若固定,则将记录的会话权值增加第一权值并记录,否则将记录的会话权值增加第二权值并记录;并
针对所述控制端向所述被控制端发送的每个报文,检测该报文的特征是否符合木马控制命令报文的特征;
若符合,则将记录的会话权值增加第三权值并记录,否则,继续检测下一个报文的特征是否符合木马控制命令报文的特征;
在记录的会话权值达到告警阈值时发出告警,以通知所述会话为木马发起的会话;
其中,还包括:
在记录的会话权值达到设定阈值时,确定当前所述会话中所述被控制端的上行数据流量和下行数据流量,其中,所述设定阈值小于所述告警阈值;
确定上行数据流量与下行数据流量的比值,并确定所述比值所属的比值范围;
根据预先设定的每个比值范围对应的权值,将记录的会话权值增加确定的所述比值所属的比值范围对应的权值并记录。
2.如权利要求1所述的方法,其特征在于,根据控制端向被控制端发送的每个报文,检测所述控制端与所述被控制端之间的会话中是否存在木马心跳检测,具体包括:
针对所述控制端向所述被控制端发送的每个报文,根据保存的木马心跳检测报文特征,判断该报文的特征是否符合所述木马心跳检测报文特征;
若符合,则将当前记录的木马心跳检测报文的数量加1,否则继续判断下一个报文的特征是否符合所述木马心跳检测报文特征;
当记录的木马心跳检测报文的数量达到设定数量时,确定检测到所述会话中存在木马心跳检测;
当记录的木马心跳检测报文的数量未达到设定数量时,确定未检测到所述会话中存在木马心跳检测。
3.如权利要求2所述的方法,其特征在于,该报文的特征符合所述木马心跳检测报文特征,具体包括:
该报文的特征符合下述特征中的一种或几种:
该报文对应的源端口号和目的端口号均大于设定数值;以及
该报文的载荷长度在第一设定范围内;以及
该报文的载荷长度与之前每个报文的载荷长度相同;以及
该报文的载荷内容与之前每个报文的载荷内容相比,载荷内容相同或者载荷内容规律变化。
4.如权利要求2所述的方法,其特征在于,判断所述会话中存在的木马心跳检测的频率是否固定,具体包括:
按照确定的每个符合所述木马心跳检测报文特征的报文中携带的报文发送时间的先后顺序,将确定的每个符合所述木马心跳检测报文特征的报文进行排序;
在排序后的报文中,分别确定每两个相邻的报文的报文发送时间之间的时间间隔;
判断分别确定的每个时间间隔之间的差值是否在第二设定范围内,若是,则确定所述会话中存在的木马心跳检测的频率固定,否则确定所述会话中存在的木马心跳检测的频率不固定。
5.如权利要求1所述的方法,其特征在于,该报文的特征符合木马控制命令报文的特征,具体包括:
该报文的特征符合下述特征中的一种或几种:
该报文的载荷长度在第三设定范围内;以及
该报文的字段结构与保存的至少一个木马控制命令报文的字段结构相同;
该报文的编码与之前每个报文的编码相比,编码规律变化;
按照所述控制端发送每个报文的发送顺序,将该报文对应的操作行为,以及之前每个报文对应的操作行为进行组合,得到所述会话的操作行为组合,得到的所述操作行为组合与保存的至少一个木马操作行为组合相同。
6.如权利要求1所述的方法,其特征在于,所述方法还包括:
确定所述控制端发送所述会话的会话建立报文的发送时间;
确定在所述会话的过程中第一次出现载荷长度大于设定长度的报文的出现时间;
确定所述发送时间到所述出现时间的时间间隔;
当确定的所述时间间隔大于设定的时间间隔时,将记录的会话权值增加第四权值并记录。
7.一种木马检测的装置,其特征在于,包括:
心跳检测模块,用于根据控制端向被控制端发送的每个报文,检测所述控制端与所述被控制端之间的会话中是否存在木马心跳检测,当未检测到存在木马心跳检测时,继续检测所述会话中是否存在木马心跳检测;
频率检测模块,用于当所述心跳检测模块检测到存在木马心跳检测时,判断所述会话中存在的木马心跳检测的频率是否固定;
控制命令检测模块,用于当所述心跳检测模块检测到存在木马心跳检测时,针对所述控制端向所述被控制端发送的每个报文,检测该报文的特征是否符合木马控制命令报文的特征,若不符合,继续检测下一个报文的特征是否符合木马控制命令报文的特征;
权值记录模块,用于当所述频率检测模块确定所述会话中存在的木马心跳检测的频率固定时,将记录的会话权值增加第一权值并记录,当所述频率检测模块确定所述会话中存在的木马心跳检测的频率不固定时,将记录的会话权值增加第二权值并记录,并当所述控制命令检测模块确定该报文的特征符合木马控制命令报文的特征时,将记录的会话权值增加第三权值并记录;
告警模块,用于在所述权值记录模块记录的会话权值达到告警阈值时发出告警,以通知所述会话为木马发起的会话;
还包括:
流量统计模块,用于在记录的会话权值达到设定阈值时,确定当前所述会话中所述被控制端的上行数据流量和下行数据流量,确定上行数据流量与下行数据流量的比值,并确定所述比值所属的比值范围,其中,所述设定阈值小于所述告警阈值;
所述权值记录模块还用于,根据预先设定的每个比值范围对应的权值,将记录的会话权值增加确定的所述比值所属的比值范围对应的权值并记录。
8.如权利要求7所述的装置,其特征在于,所述心跳检测模块具体用于,针对所述控制端向所述被控制端发送的每个报文,根据保存的木马心跳检测报文特征,判断该报文的特征是否符合所述木马心跳检测报文特征;若符合,则将当前记录的木马心跳检测报文的数量加1,否则继续判断下一个报文的特征是否符合所述木马心跳检测报文特征;当记录的木马心跳检测报文的数量达到设定数量时,确定检测到所述会话中存在木马心跳检测;当记录的木马心跳检测报文的数量未达到设定数量时,确定未检测到所述会话中存在木马心跳检测。
9.如权利要求8所述的装置,其特征在于,所述心跳检测模块具体用于,当该报文的特征符合下述特征中的一种或几种时,确定该报文的特征符合所述木马心跳检测报文特征:该报文对应的源端口号和目的端口号均大于设定数值,以及,该报文的载荷长度在第一设定范围内,以及,该报文的载荷长度与之前每个报文的载荷长度相同,以及,该报文的载荷内容与之前每个报文的载荷内容相比,载荷内容相同或者载荷内容规律变化。
10.如权利要求8所述的装置,其特征在于,所述频率检测模块具体用于,按照确定的每个符合所述木马心跳检测报文特征的报文中携带的报文发送时间的先后顺序,将确定的每个符合所述木马心跳检测报文特征的报文进行排序,在排序后的报文中,分别确定每两个相邻的报文的报文发送时间之间的时间间隔,判断分别确定的每个时间间隔之间的差值是否在第二设定范围内,若是,则确定所述会话中存在的木马心跳检测的频率固定,否则确定所述会话中存在的木马心跳检测的频率不固定。
11.如权利要求7所述的装置,其特征在于,所述控制命令检测模块具体用于,当该报文的特征符合下述特征中的一种或几种时,确定该报文的特征符合木马控制命令报文的特征:该报文的载荷长度在第三设定范围内,以及,该报文的字段结构与保存的至少一个木马控制命令报文的字段结构相同,以及,该报文的编码与之前每个报文的编码相比,编码规律变化,以及,按照所述控制端发送每个报文的发送顺序,将该报文对应的操作行为,以及之前每个报文对应的操作行为进行组合,得到所述会话的操作行为组合,得到的所述操作行为组合与保存的至少一个木马操作行为组合相同。
12.如权利要求7所述的装置,其特征在于,所述装置还包括:
时间检测模块,用于确定所述控制端发送所述会话的会话建立报文的发送时间,确定在所述会话的过程中第一次出现载荷长度大于设定长度的报文的出现时间,确定所述发送时间到所述出现时间的时间间隔;
所述权值记录模块还用于,当确定的所述时间间隔大于设定的时间间隔时,将记录的会话权值增加第四权值并记录。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110430821.5A CN102523223B (zh) | 2011-12-20 | 2011-12-20 | 一种木马检测的方法及装置 |
PCT/CN2012/086871 WO2013091534A1 (zh) | 2011-12-20 | 2012-12-18 | 一种木马检测的方法及装置 |
JP2014547697A JP5865511B2 (ja) | 2011-12-20 | 2012-12-18 | トロイの木馬検出方法及び装置 |
US14/366,665 US9596248B2 (en) | 2011-12-20 | 2012-12-18 | Trojan detection method and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110430821.5A CN102523223B (zh) | 2011-12-20 | 2011-12-20 | 一种木马检测的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102523223A CN102523223A (zh) | 2012-06-27 |
CN102523223B true CN102523223B (zh) | 2014-08-27 |
Family
ID=46294015
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110430821.5A Active CN102523223B (zh) | 2011-12-20 | 2011-12-20 | 一种木马检测的方法及装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9596248B2 (zh) |
JP (1) | JP5865511B2 (zh) |
CN (1) | CN102523223B (zh) |
WO (1) | WO2013091534A1 (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102523223B (zh) | 2011-12-20 | 2014-08-27 | 北京神州绿盟信息安全科技股份有限公司 | 一种木马检测的方法及装置 |
CN103491107B (zh) * | 2013-10-14 | 2017-01-04 | 刘胜利 | 基于网络数据流簇聚类的木马通信特征快速提取方法 |
CN103873463A (zh) * | 2014-02-26 | 2014-06-18 | 北京优炫软件股份有限公司 | 多级过滤防火墙系统及多级过滤方法 |
EP3215945B1 (en) * | 2014-11-03 | 2018-09-19 | Vectra Networks, Inc. | A system for detecting threats using scenario-based tracking of internal and external network traffic |
CN104540161B (zh) * | 2014-12-12 | 2018-01-26 | 大唐移动通信设备有限公司 | 一种节点状态检测方法和装置 |
US9646158B1 (en) * | 2015-06-22 | 2017-05-09 | Symantec Corporation | Systems and methods for detecting malicious files |
CN108540430B (zh) * | 2017-03-03 | 2019-06-11 | 华为技术有限公司 | 一种威胁检测方法及装置 |
CN109861952B (zh) * | 2017-11-30 | 2021-11-12 | 北京京穗蓝盾信息安全技术有限公司 | 一种基于统计学的网络木马行为识别系统 |
CN112787881A (zh) * | 2019-11-11 | 2021-05-11 | 中兴通讯股份有限公司 | 通信链路检测方法、通信装置、存储介质 |
CN110912927B (zh) * | 2019-12-09 | 2022-04-12 | 绿盟科技集团股份有限公司 | 工业控制系统中控制报文的检测方法及装置 |
CN114024770B (zh) * | 2021-12-10 | 2024-02-13 | 天融信雄安网络安全技术有限公司 | 木马入侵的检测方法及装置、电子设备、存储介质 |
CN115037698B (zh) * | 2022-05-30 | 2024-01-02 | 天翼云科技有限公司 | 一种数据识别方法、装置及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101587527A (zh) * | 2009-07-08 | 2009-11-25 | 北京东方微点信息技术有限责任公司 | 病毒程序扫描方法及装置 |
CN102111400A (zh) * | 2010-12-07 | 2011-06-29 | 成都市华为赛门铁克科技有限公司 | 一种木马检测方法、装置及系统 |
CN102202064A (zh) * | 2011-06-13 | 2011-09-28 | 刘胜利 | 基于网络数据流分析的木马通信行为特征提取方法 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7832011B2 (en) * | 2002-08-30 | 2010-11-09 | Symantec Corporation | Method and apparatus for detecting malicious code in an information handling system |
US7392543B2 (en) * | 2003-06-30 | 2008-06-24 | Symantec Corporation | Signature extraction system and method |
US7076393B2 (en) * | 2003-10-03 | 2006-07-11 | Verizon Services Corp. | Methods and apparatus for testing dynamic network firewalls |
WO2005050369A2 (en) * | 2003-11-12 | 2005-06-02 | The Trustees Of Columbia University In The City Ofnew York | Apparatus method and medium for detecting payload anomaly using n-gram distribution of normal data |
US8397284B2 (en) * | 2006-01-17 | 2013-03-12 | University Of Maryland | Detection of distributed denial of service attacks in autonomous system domains |
JP5298293B2 (ja) * | 2007-03-30 | 2013-09-25 | 国立大学法人九州大学 | 検出装置、検出方法、通信制御方法、履歴空間データ生産方法、及びこれらの方法をコンピュータに実行させることが可能なプログラム |
US20090077663A1 (en) * | 2007-09-17 | 2009-03-19 | Alcatel Lucent | Score-based intrusion prevention system |
WO2009083022A1 (en) * | 2007-12-31 | 2009-07-09 | Telecom Italia S.P.A. | Method of detecting anomalies in a communication system using numerical packet features |
US8904520B1 (en) * | 2009-03-19 | 2014-12-02 | Symantec Corporation | Communication-based reputation system |
CN101686239B (zh) * | 2009-05-26 | 2013-06-19 | 中山大学 | 一种木马发现系统 |
EP2299650A1 (de) * | 2009-09-21 | 2011-03-23 | Siemens Aktiengesellschaft | Verfahren zur Anomalie-Erkennung in einem Kontrollnetzwerk |
JP5518594B2 (ja) * | 2010-06-30 | 2014-06-11 | 三菱電機株式会社 | 内部ネットワーク管理システム及び内部ネットワーク管理方法及びプログラム |
US8402543B1 (en) * | 2011-03-25 | 2013-03-19 | Narus, Inc. | Machine learning based botnet detection with dynamic adaptation |
US8578493B1 (en) * | 2011-05-10 | 2013-11-05 | Narus, Inc. | Botnet beacon detection |
CN102201937B (zh) * | 2011-06-13 | 2013-10-23 | 刘胜利 | 基于心跳行为分析的快速木马检测方法 |
CN102523223B (zh) * | 2011-12-20 | 2014-08-27 | 北京神州绿盟信息安全科技股份有限公司 | 一种木马检测的方法及装置 |
-
2011
- 2011-12-20 CN CN201110430821.5A patent/CN102523223B/zh active Active
-
2012
- 2012-12-18 US US14/366,665 patent/US9596248B2/en active Active
- 2012-12-18 JP JP2014547697A patent/JP5865511B2/ja active Active
- 2012-12-18 WO PCT/CN2012/086871 patent/WO2013091534A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101587527A (zh) * | 2009-07-08 | 2009-11-25 | 北京东方微点信息技术有限责任公司 | 病毒程序扫描方法及装置 |
CN102111400A (zh) * | 2010-12-07 | 2011-06-29 | 成都市华为赛门铁克科技有限公司 | 一种木马检测方法、装置及系统 |
CN102202064A (zh) * | 2011-06-13 | 2011-09-28 | 刘胜利 | 基于网络数据流分析的木马通信行为特征提取方法 |
Non-Patent Citations (4)
Title |
---|
一种基于网络行为分析的反弹式木马检测方法;赵天福等;《信息网络安全》;20110930;第80-81页左栏 * |
基于行为分析的木马检测系统;颜会娟等;《网络安全技术与应用》;20100831;第9-11页 * |
赵天福等.一种基于网络行为分析的反弹式木马检测方法.《信息网络安全》.2011, |
颜会娟等.基于行为分析的木马检测系统.《网络安全技术与应用》.2010, |
Also Published As
Publication number | Publication date |
---|---|
JP5865511B2 (ja) | 2016-02-17 |
CN102523223A (zh) | 2012-06-27 |
US20140344935A1 (en) | 2014-11-20 |
JP2015507259A (ja) | 2015-03-05 |
WO2013091534A1 (zh) | 2013-06-27 |
US9596248B2 (en) | 2017-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102523223B (zh) | 一种木马检测的方法及装置 | |
CN109951500B (zh) | 网络攻击检测方法及装置 | |
US9462009B1 (en) | Detecting risky domains | |
CN110519150B (zh) | 邮件检测方法、装置、设备、系统及计算机可读存储介质 | |
CN106790313A (zh) | 入侵防御方法及装置 | |
CN112953971B (zh) | 一种网络安全流量入侵检测方法和系统 | |
CN103379099A (zh) | 恶意攻击识别方法及系统 | |
CN111147489B (zh) | 一种面向链接伪装的鱼叉攻击邮件发现方法及装置 | |
CN104901971A (zh) | 对网络行为进行安全分析的方法和装置 | |
JP6174520B2 (ja) | 悪性通信パターン検知装置、悪性通信パターン検知方法、および、悪性通信パターン検知プログラム | |
CN105376210A (zh) | 一种账户威胁识别和防御方法及系统 | |
CN104361097A (zh) | 一种基于多模匹配的电力敏感邮件实时检测方法 | |
CN103297433A (zh) | 基于网络数据流的http僵尸网络检测方法及系统 | |
CN105959290A (zh) | 攻击报文的检测方法及装置 | |
CN101150586A (zh) | Cc攻击防范方法及装置 | |
CN105337993A (zh) | 一种基于动静结合的邮件安全检测装置及方法 | |
CN107122657B (zh) | 一种防御sql注入攻击的数据库代理装置 | |
CN109474510B (zh) | 一种邮箱安全交叉审计方法、系统及存储介质 | |
CN102111400B (zh) | 一种木马检测方法、装置及系统 | |
KR20170083494A (ko) | 악성 전자 메시지의 검출 기술 | |
CN103595731A (zh) | 用于保护账户安全的系统和方法 | |
CN111859374A (zh) | 社会工程学攻击事件的检测方法、装置以及系统 | |
CN104978523A (zh) | 一种基于网络热词识别的恶意样本捕获方法及系统 | |
CN105991509A (zh) | 会话处理方法及装置 | |
US10237287B1 (en) | System and method for detecting a malicious activity in a computing environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder |
Address after: 100089 Beijing city Haidian District Road No. 4 North wa Yitai three storey building Patentee after: NSFOCUS Technologies Group Co.,Ltd. Address before: 100089 Beijing city Haidian District Road No. 4 North wa Yitai three storey building Patentee before: NSFOCUS INFORMATION TECHNOLOGY Co.,Ltd. |
|
CP01 | Change in the name or title of a patent holder |