CN101572711B - 一种基于网络的反弹端口型木马的检测方法 - Google Patents
一种基于网络的反弹端口型木马的检测方法 Download PDFInfo
- Publication number
- CN101572711B CN101572711B CN200910086193A CN200910086193A CN101572711B CN 101572711 B CN101572711 B CN 101572711B CN 200910086193 A CN200910086193 A CN 200910086193A CN 200910086193 A CN200910086193 A CN 200910086193A CN 101572711 B CN101572711 B CN 101572711B
- Authority
- CN
- China
- Prior art keywords
- oippkt
- iippkt
- address
- ohpkt
- trojan horse
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种基于网络的反弹端口型木马的检测方法,属于网络信息安全技术领域。本发明通过捕获网络数据包,并利用这些数据进行时间特征、应用层协议以及数据内容的分析,判断对应主机是否中反弹端口型木马。本发明能够在一定程度上有效检测出采用进程隐藏、文件隐藏、服务隐藏等技术的反弹端口型木马,并且不需要在主机上安装任何代理软件或模块,因此完全适用于对主机上安装木马查杀工具有限制的情况。
Description
技术领域
本发明涉及一种基于网络的反弹端口型木马的检测方法,属于网络信息安全技术领域。
背景技术
木马包含服务端和客户端两部分,客户端与服务端建立通信以完成主机控制、文件盗取、系统破坏等功能。服务端和客户端互相配合,两者缺一不可。服务端安装在被控制的主机上(就是我们通常所说的中了木马的机器),也称为被控制端;客户端安装在控制主机上,也称为控制端。
在没有利用防火墙将内外网隔离之前,位于外网的客户端可以直接向内网的服务端建立通信连接,有了防火墙之后,由于防火墙通过端口筛选、应用程序筛选、协议筛选、IP过滤等设置,将外网连入内网的包进行过滤,丢弃不符合设置参数的数据包,造成外网的客户端很难与内网的服务端建立通信。但是,目前大多数防火墙仅对从外网向内网连入的数据包进行过滤,而不对从内网向外网连出的数据包过滤,反弹端口型木马的设计正是利用这一特性,其服务端反过来从内网向外网的客户端建立连接,绕过防火墙的限制,因此而被称为端口反弹。
基于以上设计思路,反弹端口型木马的服务端需要事先知道客户端的IP地址和端口号。解决这一问题的方法是利用存在漏洞的第三方主机(也就是我们通常所说的“肉鸡”)作为跳板,该第三方主机具有公网IP,反弹端口型木马的客户端和服务端都对其具有正当的访问权限。反弹端口型木马的客户端事先将自己的IP地址和相应的端口号告知第三方主机,服务端采用一定的策略主动去询问该第三方主机关于客户端的IP地址和相应的端口号,一旦获得了客户端的IP地址和端口号之后随即与客户端建立通信连接。
反弹端口型木马的工作过程如下:
第①步:生成木马的服务端
生成服务端的目的主要是要定制服务端将来要访问的肉鸡的IP地址以及访问的策略,如访问的文件名称、访问的时间周期和访问使用的协议等。通常情况下,服务端是一个.exe可执行文件。
第②步:施种木马的服务端
采取一定的途径将木马的服务端施种到想要攻击的主机(被攻击主机),服务端运行后自动安装到指定的路径。通常情况下,为了防止杀毒软件和反木马软件的查杀,木马的服务端具有文件隐藏、进程隐藏、服务隐藏、隐蔽启动等功能。
第③步:客户端告知肉鸡自己IP地址和相应的端口
客户端将一个写有IP地址和相应端口号的文件通过肉鸡公开的服务上传到肉鸡,客户端成功上传该文件后,立即启动对该端口的监听。
第④步:服务端询问肉鸡关于文件的内容
在第①步中服务端知道了要访问肉鸡的IP地址,并以定制的访问策略访问该肉鸡,获得第③步中客户端上传文件的内容,从而获得客户端的IP地址和相应的端口号。
第⑤步:服务端连接客户端
服务端得到客户端的IP地址和端口号后,主动与客户端建立TCP协议连接。至此,整个通信过程建立。
目前,对反弹端口型木马的检测和清除主要采用基于主机的木马查杀工具,包括杀毒软件(如KV2004等)和木马专杀工具(如金山毒霸木马专杀等)。基于主机的木马查杀工具首先要安装在主机上,然后运行程序针对木马服务端的主机特征进行检测和清除。通常情况下,基于主机的木马查杀工具存在以下问题:
①基于主机的木马查杀工具都是针对特定木马的具体特征项进行设计,如果木马服务端对自身技术进行改进,如采用进程隐藏、服务隐藏、文件隐藏等技术,则可逃避杀毒软件和专杀工具的查杀;
②在一些特殊的环境下,不允许在主机上安装杀毒软件和木马专杀工具,现有的杀毒软件和木马专杀工具则不能发挥作用。
发明内容
本发明的目的在于针对基于主机的端口反弹型木马查杀工具存在的不足,提出一种基于网络的反弹端口型木马的检测方法。本发明通过捕获网络数据包,并利用这些数据进行时间特征、应用层协议以及数据内容的分析,判断出对应主机是否中反弹端口型木马。
本发明是通过以下技术方案实现的。
首先,分析反弹端口型木马的行为特征。从反弹端口型木马的工作过程分析可知,反弹端口型木马常具有以下行为特征:
1.时间特征:木马服务端访问肉鸡具有时间周期性;
2.协议特征:服务端访问肉鸡时使用固定的协议和访问命令;
3.数据内容特征:肉鸡回传给服务端的文件内容固定不变。
根据以上特征,本发明的一种基于网络的反弹端口型木马的检测方法的执行过程流程图如图1所示。具体步骤如下:
步骤一、获取IP报文
设网段内某主机为Host,对所有目的IP地址和源IP地址为Host的IP数据报文进行抓包,设抓包的时间周期为T,即每间隔T时间,判断一次该主机是否中木马,T值可根据实验情况择优选择。
步骤二、对IP报文分组
在步骤一的基础上,针对源IP地址为Host且TCP包头标志位SYN=0、PSH=1的数据报文,按照目的IP地址(设为DIPAdd)和目的端口(设为DPort)进行分组,将具有相同DIPAdd和DPort的数据报文放在一组,设为OIPPkt。针对目的IP地址为Host且TCP包头标志位SYN=0、PSH=1的数据报文,按照源IP地址和源端口进行分组,将具有相同源IP地址和源端口且源IP地址和源端口也等于DIPAdd和DPort的数据报文放在一组,设为IIPPkt。OIPPkt和IIPPkt组成一个向量,设为(OIPPkt,IIPPkt)。
IP报文中存在不同的DIPAdd和DPort,可得到多组(OIPPkt,IIPPkt),将所有的(OIPPkt,IIPPkt)放在一起,组成一个集合,设为{(OIPPkt,IIPPkt)i}。
步骤三、对分组数据进行统计计算
在步骤二的基础上,对(OIPPkt,IIPPkt)i进行处理。若不存在未处理的(OIPPkt,IIPPkt)i,则该周期的检测终止;否则,对(OIPPkt,IIPPkt)i进行统计计算,得到针对OIPPkt和IIPPkt的时间序列,分别设为{OHPkti}和{IHPktj},统计参数表示如下:
OHPkti=(ti,Command)和IHPktj=(ip_txt)
其中,ti表示捕获到该报文的相对时间;
Command表示该报文中应用层协议使用的命令;
ip_txt表示报文的数据段内容。
步骤四、分析时间周期特征
在步骤三的基础上,对时间序列{OHPkti}进行时间周期特征分析,具体步骤如下:
第1步:通过式(1),得到序列{Δtj}:
Δtj=|(tj+2-tj+1)-(tj+1-tj)| (1)
第2步:设定一个很小的常数T0,T0根据实验结果择优选取,通过式(2)对{Δtj}进行如下统计计算:
RΔt=N(Δtj≤T0)/∑j (2)
其中,N(Δtj≤T0)表示{Δtj}中小于或等于T0的Δt的数量,∑j为{Δtj}中元素的个数。
步骤五、分析命令使用特征
在步骤三的基础上,对每一个出现过的应用层协议命令的使用频率通过式(3)进行统计得到协议命令使用频率集合{R_CMDk}。
R_CMDk=N(Command)/∑j (3)
其中,R_CMDk表示某一应用层协议命令CMDk在{OHPkti}中出现的频率,N(Command)表示CMDk在{OHPkti}中出现的总次数,∑j表示{OHPkti}中元素的个数。
步骤六、分析数据段内容特征
在步骤三的基础上,对出现IP地址的ip_txt的频率通过式(4)进行统计:
RIP=N(IP)/∑j (4)
其中,N(IP)表示{IHPktj}中出现IP地址的ip_txt的总数,∑j表示{IHPktj}中元素的个数。
步骤七、判断结果
在步骤四、五、六的基础上,根据如下规则判断是否中了反弹端口型木马:
若RΔt>m1且对任意的k,存在R_CMDk>m2并且RIP>m3(m1,m2,m3根据实验结果择优选取)则判断主机Host中了反弹端口型木马,并将结果报告给用户,转到步骤三;否则,直接转到步骤三。
有益效果
1.本方法通过对木马的网络行为特征进行统计分析,在一定程度上能够有效检测出采用进程隐藏、文件隐藏、服务隐藏等技术的反弹端口型木马,而这一类木马采用基于主机的检测很难被发现;
2.基于网络的反弹端口型木马检测方法是对网络数据包进行统计分析,不需要在主机上安装任何代理软件或模块,因此完全适用于对主机上安装有限制的情况。
附图说明
图1是本发明的执行过程流程图;
图2是本发明实施例的主机Host的数据报文显示图。
具体实施方式
根据上述技术方案,下面结合附图和实施例对本发明进行详细说明。
以国内一种比较流行的反弹端口型木马——灰鸽子木马为例,说明采用本发明对该木马的检测过程。本例中采样时间周期T=30分钟,参数T0=0.1,m1=m2=m3=0.9。
通过分析,发现灰鸽子木马的服务端具有以下网络行为特征:
(1)时间特征:灰鸽子木马的服务端访问肉鸡的时间周期为10秒;
(2)协议特征:灰鸽子木马的服务端使用http协议的GET命令访问肉鸡,端口为80端口;
(3)数据内容特征:肉鸡回给服务端的文件内容保持固定不变,为一个很小的文本文件,其内容仅包含一个IP地址和端口。
步骤一、获取IP报文
针对网段内某主机Host(该主机Host的IP地址为10.1.113.211),对所有目的地址和源地址为Host的IP数据报文进行抓包,抓包工具为Sniffer软件,共抓到1352个数据报文,抓到的数据报文如图2所示。
步骤二、对IP报文分组
针对源地址为Host且TCP包头标志位SYN=0、PSH=1的数据报文,根据目的IP和目的端口进行分组,将所有目的IP为10.1.113.76和目的端口为80的数据报文放在一组,设为OIPPkt。针对目的IP地址为Host且TCP包头标志位SYN=0、PSH=1的数据报文,根据源IP地址和源端口进行分组,将所有源IP为10.1.113.76和源端口为80的数据报文放在一组,设为IIPPkt。OIPPkt和IIPPkt组成一个向量,设为(OIPPkt,IIPPkt)。
由于所捕获的数据包中符合条件的(OIPPkt,IIPPkt)只有一组,因此集合{(OIPPkt,IIPPkt)i}只有一个元素。
步骤三、对分组数据进行统计计算
对(OIPPkt,IIPPkt)进行统计计算,得到针对OIPPkt和IIPPkt的时间序列,分别设为{OHPkti}和{IHPktj},统计数据如表1和表2所示。
表1时间序列{OHPkti}
序号 | ti | Command |
OHPkt1 | 0:0:00.008 | http:GET/ip.txt HTTP/1.0 |
OHPkt2 | 0:0:10.136 | http:GET/ip.txt HTTP/1.0 |
OHPkt3 | 0:0:20.256 | http:GET/ip.txt HTTP/1.0 |
OHPkt4 | 0:0:30.344 | http:GET/ip.txt HTTP/1.0 |
OHPkt5 | 0:0:30.390 | http:GET/ip.txt HTTP/1.0 |
OHPkt6 | 0:0:40.514 | http:GET/ip.txt HTTP/1.0 |
OHPkt7 | 0:0:50.636 | http:GET/ip.txt HTTP/1.0 |
OHPkt8 | 0:1:00.801 | http:GET/ip.txt HTTP/1.0 |
... | ... |
表2时间序列{IHPktj}
序号 | ip_txt |
IHPkt1 | NULL |
IHPkt2 | NULL |
IHPkt3 | http://10.1.113.202:9000/remote.asp |
IHPkt4 | http://10.1.113.202:9000/remote.asp |
IHPkt5 | http://10.1.113.202:9000/remote.asp |
IHPkt6 | http://10.1.113.144:9000/remote.asp |
IHPkt7 | http://10.1.113.144:9000/remote.asp |
IHPkt8 | http://10.1.113.144:9000/remote.asp |
... |
步骤四、分析时间周期特征
在步骤三的基础上,通过式(1),得到序列{Δtj},如表3所示;通过式(2)计算得到RΔt=0.98。
表3时间序列{Δtj}
序号 | Δt |
Δt1 | 0.008 |
Δt2 | 0.032 |
Δt3 | 10.042 |
Δt4 | 10.078 |
Δt5 | 0.002 |
Δt6 | 0.043 |
Δt7 | 0.033 |
... |
步骤五、分析命令使用特征
在步骤三的基础上,使用的协议命令为http:GET/ip.txt HTTP/1.0,通过式(3)计算得到R_GET=0.99。
步骤六、分析数据段内容特征
在步骤三的基础上,通过式(4)计算得到出现IP地址的ip_txt的频率RIP=0.96。
步骤七、检测结果判断
根据步骤四、五、六的计算结果,因为RΔt>m1且R_GET>m2且RIP>m3,所以判断主机Host:10.1.113.211中了反弹端口型木马。
由于{(OIPPkt,IIPPkt)i}中只有一个元素,检测完毕。
需要说明的是,对于本领域技术人员来说,在不脱离本发明原理的前提下,本发明还可以做出若干改进,这些也应视为属于本发明的保护范围。
Claims (1)
1.一种基于网络的反弹端口型木马检测方法,其特征在于通过捕获网络数据包,并利用数据包进行时间特征、应用层协议以及数据内容的分析,判断出对应主机是否中反弹端口型木马;具体实现步骤如下:
步骤一、获取IP报文
设网段内某主机为Host,对所有目的IP地址和源IP地址为Host的IP数据报文进行抓包,设抓包的时间周期为T,即每间隔T时间,判断一次该主机是否中木马;
步骤二、对IP报文分组
在步骤一的基础上,针对源IP地址为Host且TCP包头标志位SYN=0、PSH=1的数据报文,按照目的IP地址和目的端口,分别设为DIPAdd和DPort,进行分组,将具有相同DIPAdd和DPort的数据报文放在一组,设为OIPPkt;针对目的IP地址为Host且TCP包头标志位SYN=0、PSH=1的数据报文,按照源IP地址和源端口进行分组,将具有相同源IP地址和源端口且源IP地址和源端口也等于DIPAdd和DPort的数据报文放在一组,设为IIPPkt;OIPPkt和IIPPkt组成一个向量,设为(OIPPkt,IIPPkt);IP报文中存在不同的DIPAdd和DPort,可得到多组(OIPPkt,IIPPkt),将所有的(OIPPkt,IIPPkt)放在一起,组成一个集合,设为{(OIPPkt,IIPPkt)i};
步骤三、对分组数据进行统计计算
在步骤二的基础上,对(OIPPkt,IIPPkt)i进行处理;若不存在未处理的(OIPPkt,IIPPkt)i,则该周期的检测终止;否则,对(OIPPkt,IIPPkt)i进行统计计算,得到针对OIPPkt和IIPPkt的时间序列,分别设为{OHPkti}和{IHPktj},统计参数表示如下:
OHPkti=(ti,Command)和IHPktj=(ip_txt)
其中,ti表示捕获到该报文的相对时间;
Command表示该报文中应用层协议使用的命令;
ip_txt表示报文的数据段内容;
步骤四、分析时间周期特征
在步骤三的基础上,对时间序列{OHPkti}进行时间周期特征分析,具体步骤如下:
第1步:通过式(1),得到序列{Δtj}:
Δtj=|(tj+2-tj+1)-(tj+1-tj)| (1)
第2步:设定一个很小的常数T0,T0根据实验结果择优选取,通过式(2)对{Δtj}进行如下统计计算:
RΔt=N(Δtj≤T0)/∑j (2)
其中,N(Δtj≤T0)表示{Δtj}中小于或等于T0的Δt的数量,∑j为{Δtj}中元素的个数;
步骤五、分析命令使用特征
在步骤三的基础上,对每一个出现过的应用层协议命令的使用频率通过式(3)进行统计得到协议命令使用频率集合{R_CMDk};
R_CMDk=N(Command)/∑j (3)
其中,R_CMDk表示某一应用层协议命令CMDk在{OHPkti}中出现的频率,N(Command)表示CMDk在{OHPkti}中出现的总次数,∑j表示{OHPkti}中元素的个数;
步骤六、分析数据段内容特征
在步骤三的基础上,对出现IP地址的ip_txt的频率通过式(4)进行统计:
RIP=N(IP)/∑j (4)
其中,N(IP)表示{IHPktj}中出现IP地址的ip_txt的总数,∑j表示{IHPktj}中元素的个数;
步骤七、判断结果
在步骤四、五、六的基础上,根据如下规则判断是否中了反弹端口型木马:
若RΔt>m1且对任意的k,存在R_CMDk>m2并且RIP>m3,其中m1,m2,m3根据实验结果择优选取,则判断主机Host中了反弹端口型木马,并将结果报告给用户,转到步骤三;否则,直接转到步骤三。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910086193A CN101572711B (zh) | 2009-06-08 | 2009-06-08 | 一种基于网络的反弹端口型木马的检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910086193A CN101572711B (zh) | 2009-06-08 | 2009-06-08 | 一种基于网络的反弹端口型木马的检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101572711A CN101572711A (zh) | 2009-11-04 |
CN101572711B true CN101572711B (zh) | 2012-10-10 |
Family
ID=41231948
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910086193A Expired - Fee Related CN101572711B (zh) | 2009-06-08 | 2009-06-08 | 一种基于网络的反弹端口型木马的检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101572711B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101827092B (zh) * | 2010-03-30 | 2012-10-03 | 北京理工大学 | 一种针对网络数据流中周期性子序列的检测方法 |
CN101854275A (zh) * | 2010-05-25 | 2010-10-06 | 军工思波信息科技产业有限公司 | 一种通过分析网络行为检测木马程序的方法及装置 |
CN103179105B (zh) * | 2012-10-25 | 2016-03-30 | 四川省电力公司信息通信公司 | 一种基于网络流量中行为特征的智能木马检测装置及其方法 |
CN104796405B (zh) * | 2015-03-18 | 2019-04-12 | 深信服网络科技(深圳)有限公司 | 反弹连接检测方法和装置 |
CN104753955A (zh) * | 2015-04-13 | 2015-07-01 | 成都双奥阳科技有限公司 | 基于反弹端口木马的互联审计方法 |
CN105119938B (zh) * | 2015-09-14 | 2018-05-18 | 电子科技大学 | 一种针对内网端口反弹型木马的防范方法 |
CN108540430B (zh) * | 2017-03-03 | 2019-06-11 | 华为技术有限公司 | 一种威胁检测方法及装置 |
CN110381009A (zh) * | 2018-04-16 | 2019-10-25 | 北京升鑫网络科技有限公司 | 一种基于行为检测的反弹shell的检测方法 |
CN109379341B (zh) * | 2018-09-21 | 2022-02-01 | 国网湖南省电力有限公司 | 一种基于行为分析的反弹型远控木马网络流量检测方法 |
CN113839937A (zh) * | 2021-09-15 | 2021-12-24 | 神州网云(北京)信息技术有限公司 | 基于网络流量的使用跨会话技术检测未知木马的方法及系统 |
-
2009
- 2009-06-08 CN CN200910086193A patent/CN101572711B/zh not_active Expired - Fee Related
Non-Patent Citations (1)
Title |
---|
阮宁君.端口反弹型木马通信技术研究及防范措施.《信息安全与通信保密》.2007,(第12期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN101572711A (zh) | 2009-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101572711B (zh) | 一种基于网络的反弹端口型木马的检测方法 | |
CN112738128B (zh) | 一种新型蜜罐组网方法及蜜罐系统 | |
Freiling et al. | Botnet tracking: Exploring a root-cause methodology to prevent distributed denial-of-service attacks | |
CN102045214B (zh) | 僵尸网络检测方法、装置和系统 | |
Prasad et al. | An efficient detection of flooding attacks to Internet Threat Monitors (ITM) using entropy variations under low traffic | |
John et al. | Studying spamming botnets using botlab. | |
KR101070614B1 (ko) | 봇넷 정보를 이용한 악성 트래픽 격리 시스템과 봇넷 정보를 이용한 악성 트래픽 격리 방법 | |
EP3108401B1 (en) | System and method for detection of malicious hypertext transfer protocol chains | |
CN107070929A (zh) | 一种工控网络蜜罐系统 | |
CN104363240A (zh) | 基于信息流行为合法性检测的未知威胁的综合检测方法 | |
RU2679219C1 (ru) | СПОСОБ ЗАЩИТЫ СЕРВЕРА УСЛУГ ОТ DDoS АТАК | |
Lin et al. | Implementation of an SDN-based security defense mechanism against DDoS attacks | |
Karthikeyan et al. | Honeypots for network security | |
Huang et al. | An authentication scheme to defend against UDP DrDoS attacks in 5G networks | |
CN110753014B (zh) | 基于流量转发的威胁感知方法、设备、装置及存储介质 | |
Prasad et al. | IP traceback for flooding attacks on Internet threat monitors (ITM) using Honeypots | |
Bijalwan et al. | Survey and research challenges of botnet forensics | |
CN201789524U (zh) | 一种通过分析网络行为检测木马程序的装置 | |
Abt et al. | Towards Efficient and Privacy-Preserving Network-Based Botnet Detection Using Netflow Data. | |
Massi et al. | Botnet detection and mitigation | |
Liu et al. | Detect the reflection amplification attack based on UDP protocol | |
Wang et al. | Construction of large-scale honeynet Based on Honeyd | |
Gallopeni et al. | Botnet command-and-control traffic analysis | |
Fanfara et al. | Autonomous hybrid honeypot as the future of distributed computer systems security | |
Ragupathy et al. | Detecting Denial of Service Attacks by Analysing Network Traffic in Wireless Networks |
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 | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20121010 Termination date: 20130608 |