当前位置: 首页 > 专利查询>浙江大学专利>正文

一种基于网络数据流的木马探测方法技术

技术编号:15058742 阅读:103 留言:0更新日期:2017-04-06 04:48
本发明专利技术公开了一种基于网络数据流的木马探测方法,本发明专利技术首次采用会话长度,上传下载比,传输中的长度小于Size(Size=200)的包占比和命令包占比等四个特征进行分类处理,筛选出木马数据。首先利用现有网络数据包采集工具进行数据包获取,然后通过本方法进行木马分类识别,最后通过HOOK网络发包API和栈回溯的方法定位出木马文件位置。本发明专利技术采用从网络行为到本地行为的联合分析顺序,优于传统的网络行为或者本地行为独立分析的方法。

【技术实现步骤摘要】

本专利技术涉及木马检测
,尤其涉及一种基于网络数据流的木马探测方法
技术介绍
随着现代社会电子化和信息化的发展,木马程序随之在技术上也快速更新,严重影响互联网安全,威胁互联网用户的安全。我国每年都会发生大量的网络盗窃案件,其中许多案件涉及政府和军队等要害单位的信息,这些案件大多通过木马手段进行攻击,因此研究木马检测技术有着至关重要的意义。而随着木马隐藏技术的不断提升,木马在系统中变得越来越难以发现,很多常规手段都难以发现其踪迹。因此,木马检测技术正面临着一个瓶颈,需要有一系列技术来解决这些问题。传统的木马检测技术都是特征码或者本地行为分析,并不对网络行为做太多的监控,而针对网络行为的入侵检测系统却只检测网络行为,并不能够定位到本地木马的具体位置,入侵检测系统如果发现了网络数据异常,往往需要大费周章来进行系统扫描。
技术实现思路
本专利技术的目的在于针对现有技术的不足,提供一种基于网络数据流行为和本地行为联合分析的木马探测方法。本专利技术的目的是通过以下技术方案来实现的:一种基于网络数据流的木马探测方法,该方法包括以下步骤:(1)、网络数据的筛选分类,该步骤通过以下子步骤来实现(时间的单位为秒):(1.1)、抓取两个IP之间一段互相通信的网络数据D,并且记D的截止时间为T0,开始时间为T1,D的源IP和目的IP之间的IP地址对IPpair=(IPsrc,IPdst),式中,IPsrc为D的源IP,>IPdst为D的目的IP;(1.2)、计算t秒内Dt的总发包数PacketDt,其中Dt为D中离T0最近的t秒数据;(1.3)、计算t秒内Dt的上传下载比RateDt=UpDt/DownDt,其中UpDt为Dt中的上传数据量,DownDt为Dt中的下载数据量;(1.4)、计算t秒内Dt的长度小于200的数据包占比TinyDt=TinyCountDt/TotalCountDt,其中TinyCountDt为Dt中长度小于200的数据包的总数,TotalCountDt为Dt中的数据包总数;(1.5)、计算t秒内Dt的命令数量CommandDt,其中命令包的定义为:X为D中一个下载的包,X的发包时刻记作TX,在时间区间[TX-30,TX-0.5]中没有收发任何数据包,在时间区间[TX-0.5,TX]中发送1个或者没有发送数据包,并且没有接受任何数据包,在时间区间[TX,TX+0.5]中至少发送1个数据包,则称X为命令包;(1.6)、计算T0时,D的会话长度TimeD,计算方法为:对数据D从T0时刻往回溯,直到时刻T2(T2>T1),使在一定时间区间中,没有收发任何数据包,则TimeD=T0-T2;若T2-30>T1,所述时间区间为[T2-30,T2],若T2-30<T1,则所述时间区间为[T1,T2];(1.7)、以PacketDt,RateD,TinyDt,CommandDt,TimeD五个计算结果为特征,通过C5.0决策树算法来对数据D进行判定,判定其是否为木马数据;(2)、若D被判定为木马数据,则对操作系统中木马文件进行定位,该步骤通过以下子步骤来实现;(2.1)、通过编写底层驱动的方法得到步骤1中木马数据D的发包程序X;(2.2)、将程序X中的所有网络发包API函数进行HOOK处理,监视程序X的所有发包情况,直到地址为IPpair的包P再次被发送;(2.3)、通过已被HOOK处理的API函数中的堆栈情况,回溯出发出数据包P的API函数的调用者:文件T;所述T即为所需的木马文件。本专利技术的有益效果是,本专利技术的方法基于网络数据行为,通过筛选分类,并反向追踪本地木马文件。本专利技术根据木马程序的网络行为选出的五个特征作为机器学习算法的输入,可以有效地筛选出木马数据,进而通过本地行为回溯的方法找出木马本体的正确位置。本专利技术在发现网络数据异常的时候就直接进行本地的行为分析,大大提升了木马的探测率。附图说明图1是本专利技术的方法流程图。具体实施方式如图1所示,本专利技术提供一种基于网络数据行为,通过筛选分类,并反向追踪本地木马文件位置的方法。木马检测技术主要用于泄密检测,服务器防护,个人电脑安全等,是计算机安全领域的一个重要内容。具体的实施过程包括两个大的步骤,分别是网络数据的筛选分类、操作系统中木马文件的定位。1、网络数据的筛选分类,该步骤通过以下子步骤来实现(时间的单位为秒):1.1、抓取两个IP之间一段互相通信的网络数据D,并且记D的截止时间为T0,开始时间为T1,D的源IP和目的IP之间的IP地址对IPpair=(IPsrc,IPdst),式中,IPsrc为D的源IP,IPdst为D的目的IP。1.2、计算t秒内Dt的总发包数PacketDt,其中Dt为D中离T0最近的t秒数据。1.3、计算t秒内Dt的上传下载比RateDt=UpDt/DownDt,其中UpDt为Dt中的上传数据量,DownDt为Dt中的下载数据量。1.4、计算t秒内Dt的长度小于200的数据包占比TinyDt=TinyCountDt/TotalCountDt,其中TinyCountDt为Dt中长度小于200的数据包的总数,TotalCountDt为Dt中的数据包总数。1.5、计算t秒内Dt的命令数量CommandDt,其中命令包的定义为:X为D中一个下载的包,X的发包时刻记作TX,在时间区间[TX-30,TX-0.5]中没有收发任何数据包,在时间区间[TX-0.5,TX]中发送1个或者没有发送数据包,并且没有接受任何数据包,在时间区间[TX,TX+0.5]中至少发送1个数据包,则称X为命令包。1.6、计算T0时,D的会话长度TimeD,计算方法为:对数据D从T0时刻往回溯,直到时刻T2(T2>T1),使在一定时间区间中,没有收发任何数据包,则TimeD=T0-T2;若T2-30>T1,所述时间区间为[T2-30,T2],若T2-30<T1,则所述时间区间为[T1,T2]。1.7、以PacketDt,RateD,TinyDt,CommandDt,TimeD五个计算结果为特征,通过C5.0决策树算法来对数据D进行判定,判定其是否为木马数据。2、若D被判定为木马数据,则对操作系统中木马文件进行定位,该步骤通过以下子步骤来实现。2.1、通过编写底层驱动的方法得到步骤1中木马数据D的发包程序X。2.2、将程序X中的所有网络发包API函数进行HOOK处理,监视程序X的所有发包情况,直到地址为IPpair的包P再次被发本文档来自技高网...

【技术保护点】
一种基于网络数据流的木马探测方法,其特征在于,该方法包括以下步骤:(1)、网络数据的筛选分类,该步骤通过以下子步骤来实现(时间的单位为秒):(1.1)、抓取两个IP之间一段互相通信的网络数据D,并且记D的截止时间为T0,开始时间为T1,D的源IP和目的IP之间的IP地址对IPpair=(IPsrc,IPdst),式中,IPsrc为D的源IP,IPdst为D的目的IP。(1.2)、计算t秒内Dt的总发包数PacketDt,其中Dt为D中离T0最近的t秒数据。(1.3)、计算t秒内Dt的上传下载比RateDt=UpDt/DownDt,其中UpDt为Dt中的上传数据量,DownDt为Dt中的下载数据量。(1.4)、计算t秒内Dt的长度小于200的数据包占比TinyDt=TinyCountDt/TotalCountDt,其中TinyCountDt为Dt中长度小于200的数据包的总数,TotalCountDt为Dt中的数据包总数。(1.5)、计算t秒内Dt的命令数量CommandDt,其中命令包的定义为:X为D中一个下载的包,X的发包时刻记作TX,在时间区间[TX‑30,TX‑0.5]中没有收发任何数据包,在时间区间[TX‑0.5,TX]中发送1个或者没有发送数据包,并且没有接受任何数据包,在时间区间[TX,TX+0.5]中至少发送1个数据包,则称X为命令包。(1.6)、计算T0时,D的会话长度TimeD,计算方法为:对数据D从T0时刻往回溯,直到时刻T2(T2>T1),使在一定时间区间中,没有收发任何数据包,则TimeD=T0‑T2;若T2‑30>T1,所述时间区间为[T2‑30,T2],若T2‑30<T1,则所述时间区间为[T1,T2]。(1.7)、以PacketDt,RateD,TinyDt,CommandDt,TimeD五个计算结果为特征,通过C5.0决策树算法来对数据D进行判定,判定其是否为木马数据。(2)、若D被判定为木马数据,则对操作系统中木马文件进行定位,该步骤通过以下子步骤来实现。(2.1)、通过编写底层驱动的方法得到步骤1中木马数据D的发包程序X。(2.2)、将程序X中的所有网络发包API函数进行HOOK处理,监视程序X的所有发包情况,直到地址为IPpair的包P再次被发送。(2.3)、通过已被HOOK处理的API函数中的堆栈情况,回溯出发出数据包P的API函数的调用者:文件T;所述T即为所需的木马文件。...

【技术特征摘要】
1.一种基于网络数据流的木马探测方法,其特征在于,该方法包括以下步骤:
(1)、网络数据的筛选分类,该步骤通过以下子步骤来实现(时间的单位为秒):
(1.1)、抓取两个IP之间一段互相通信的网络数据D,并且记D的截止时间为T0,开始时间
为T1,D的源IP和目的IP之间的IP地址对IPpair=(IPsrc,IPdst),式中,IPsrc为D的源IP,
IPdst为D的目的IP。
(1.2)、计算t秒内Dt的总发包数PacketDt,其中Dt为D中离T0最近的t秒数据。
(1.3)、计算t秒内Dt的上传下载比RateDt=UpDt/DownDt,其中UpDt为Dt中的上传数据量,
DownDt为Dt中的下载数据量。
(1.4)、计算t秒内Dt的长度小于200的数据包占比TinyDt=TinyCountDt/TotalCountDt,其中
TinyCountDt为Dt中长度小于200的数据包的总数,TotalCountDt为Dt中的数据包总数。
(1.5)、计算t秒内Dt的命令数量CommandDt,其中命令包的定义为:X为D中一个下载的
包,X的发包时刻记作TX,在时间区间[TX-30,TX-0.5]中没有收发任何数据包,在时间区间
[TX-0.5,...

【专利技术属性】
技术研发人员:吴春明陈双喜蔡扬
申请(专利权)人:浙江大学
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1