分析恶意程序传播规律的方程组及恶意程序扩散预测方法与流程

文档序号:16579070发布日期:2019-01-14 17:48阅读:186来源:国知局
分析恶意程序传播规律的方程组及恶意程序扩散预测方法与流程

本发明涉及大数据安全技术领域,并且更具体地,涉及到一种分析恶意程序传播规律的方程组,以及基于微分方程模型的恶意程序扩散预测方法。



背景技术:

现在的网络普及程度越来越高,各种政府内部办公网络规模越来越大,比如公安专网已经形成全国联网,需要对网络内部各个终端管理的压力巨大。同时,各种恶意程序攻击事件频频出现,恶意程序攻击技术手段也在持续变化更新,网络安全防范问题也就越来越突出。所以对恶意程序进行检测和预测工作就很重要,目前,尚没有对于恶意程序进行预测的方法。



技术实现要素:

本发明针对上述问题,目的在于提供一种分析恶意程序传播规律的方程组,以及基于微分方程模型的恶意程序扩散预测方法,其能实现对恶意程序感染的设备的分析预测。

为达到上述目的,本发明采用如下技术方案:

一方面,本发明实施例公开了一种分析恶意程序传播规律的方程组

其中,

i表示自由带毒设备,p表示确诊设备,t为潜伏期,λ为每天每台染毒设备传染的设备数量,即传染率,j为每天自由带毒设备被确诊的概率,即被控制率。

进一步地,所述λ在每日感染样本的基础上,采用线性拟合的方式来确定λ的值,其中,

所述j值为j=m/n,其中,

n为需要确认的携带某种恶意程序的设备数量,

m为每天能够复核的设备数量。

另一方面,本发明实施例还公开了一种基于微分方程模型的恶意软件扩散预测方法,其包括:

数据统计:针对选定的区域,恶意程序及恶意程序类型进行数目和信息统计,得到统计数据。

数据分析,对统计数据进行计算,将当前的一段时间内统计的感染设备平均值设定为初始值,再以当前的时间点为基准往回推算,以每天统计的感染设备数和初始值做比较,当感染设备数小于初始值时,则判定那个时间点为初始潜伏时间点,所述初始潜伏时间点与所述当前的时间点之间的时间段为潜伏期(以天为单位),最后根据上述公式算得λ(感染率)和j(被控制率)。

数据求解,将所述初始值、潜伏期、感染率和被控制率代入方程组,利用龙格-库塔法求解,得到预测的感染设备数。

进一步地,根据数据求解结果,当预测的结果超过阈值时进行报警。

进一步地,阈值设定为初始值的三倍大小。

本发明的有益效果是:

本发明采用大数据技术结合常微分方程模型,对恶意程序感染的设备进行分析预测,以便了解恶意程序的扩散趋势并制定相关的策略。

附图说明

图1为本发明一实施例的现行线性回归拟合线示意图;

图2为本发明一实施例的四房式模型示意图;

图3位本发明一实施例的拟合曲线示意图;

图4位本发明一实施例的流程示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

本发明实施例公开了一种分析恶意程序传播规律的方程组,

其中,

i表示自由带毒设备,p表示确诊设备,t为潜伏期,j为每天自由带毒设备被确诊的概率,λ为每天每台染毒设备传染的设备数量。

其中,所述λ在每日感染样本的基础上,采用线性拟合的方式来确定λ的值,其中,

所述j值为j=m/n,其中,

n为需要确认的携带某种恶意程序的设备数量,

m为每天能够复核的设备数量。

本发明实施例还公开了一种基于微分方程模型的恶意软件扩散预测方法,其包括:

数据统计:针对选定的区域,恶意程序及恶意程序类型进行数目和信息统计,得到统计数据;

数据分析,对统计数据进行计算,将当前的一段时间内统计的感染设备平均值设定为初始值,再以当前的时间点为基准往回推算,以每天统计的感染设备数和初始值做比较,当感染设备数小于初始值时则判定那个时间点为初始潜伏时间点,初始潜伏时间点与当前的时间点之间的时间段为潜伏期(以天为单位),最后根据上述公式算得λ(感染率)和j(被控制率)。

数据求解,将所述初始值、潜伏期、感染率和控制率代入上述方程组,利用龙格-库塔法求解,得到预测的感染设备数。

还可以根据数据求解结果,当预测的结果超过阈值时进行报警。阈值设定为初始值的三倍大小。

实施例1方法的初步确立,如图4。

采用如图2所示的四房室模型,其中,

健康设备—用s表示健康设备

自由带毒设备(已受感染)—用i表示未被确诊具有传染性的染毒设备的数量

确诊设备(已被隔离)—用p表示已经被隔离、退出传染的系统,不会传染其它设备

修复或损坏设备(包括“被修复设备”和“损坏设备”)—用r表示其数量,不再参与恶意程序的传播扩散。说明:一般由恶意程序破坏而导致的设备损坏情况很少见,故在此方法中不考虑设备损坏的影响。

微分方程的构建过程:

1、设传染比率为λ1,表示每日与自由带毒设备接触(通信)的设备中被感染者占健康设备的比例,故

2、自由带毒设备是被感染病毒的、处于潜伏期或已经开始扩散但未被隔离的设备。它的来源是健康设备的感染,自由带毒设备的确诊、隔离会使该群体的数量减少。不同恶意程序具有不同的潜伏期,染毒设备未必会马上发作,所以这部分设备是最危险的。设t为潜伏期,即染毒设备至少在t天之后才会被确诊,设每天自由带毒设备被确诊的概率为j,所以有

说明:考虑到一般情况下染毒设备的数量相对于设备总量而言是一个小量,如果将s代入会由于设备量过大而湮没方程的一些特性,产生病态方程,所以将s合并入λ1系数记为λ,且认为s不变,λ为每天每台染毒设备传染的设备数量,所以有

3、确诊的染毒设备数为

4、常微分方程组,

实施例2系数的确认,如图4。

首先是大数据统计:根据业务的需求进行分析预测,故获取一段时间(一般指离当前时间最近的时间段)内的恶意程序感染的设备数据(以天为单位)。

然后根据实际的情况依次获取相关的参数。

1)初值函数i(t)=φ(t),t∈[-t,0]。此为带延迟的微分方程的启动函数,可以依据实际环境中的数据进行统计和拟合而获得。本方法的处理方式是根据大数据统计的感染设备平均值设定为初始函数的值,称为初始值。

2)t值,即潜伏期。在实际网络环境中,携带恶意程序的设备从其接收到恶意程序文件直到该设备被检测出某种恶意行为为止,这段时间可以被认为是此恶意程序在该设备上的潜伏期。根据实际环境中的具体情况确定恶意程序的潜伏期t值。本方法中是以当前的时间点为基准往回推算,以每天统计的感染设备数和初始值做比较,当感染设备数小于初始值时,则判定那个时间点为初始潜伏时间点,所述初始潜伏时间点与所述当前的时间点之间的时间段为潜伏期(同样以天为单位)。

3)λ值,即传染率,反映了业务人员的安全防范意识、信息系统抵抗安全威胁的能力,本方法的处理是:每日新增感染设备数占累计感染设备总数的比例可以近似看成是每日感染率的一个取样,即

依据统计规律,在每日感染率样本的基础上,采用线性拟合的方式来确定λ的值。如图1所示,其中,横坐标为时间编号,纵坐标为每日感染率样本的倒数,斜线为线性回归拟合线。

4)j值,即被控制率,1/j可以认为是恶意程序传播者在被确诊并隔离之前所能够有效活动的天数,此项和防控力度有关。恶意程序检测技术的误报率越高,恶意程序越隐蔽、需要用到的检测技术越多,j值就越小,恶意程序的传播者就越难被控制。此处,假设需要确认的携带某种恶意程序的设备数量为n,而每天能够复核的设备数量为m,则

j=m/n

实施例3方法求解,如图4。

反复调整参数λ、j、t、φ(t),使得这些参数能够符合实际数据的统计特征,使理论值与实际值达到最吻合的程度。

将以上参数值代入微分方程组。由于我们无法求出方程组的解析解,故借助数值分析中的龙格-库塔法求解方程组。

龙格库塔法的求解过程:

令初始问题表述如下

y′=f(t,y),y(t0)=y0

其中y′=f(t,y)对应由此得到的如下rk4方程:

其中

k1=f(tn,yn)

k4=f(tn+h,yn+hk3)

这样,下一个值(yn+1)由现在的值(yn)加上时间间隔(h)和一个估算的斜率的乘积所决定。该斜率是以下斜率的加权平均:

·k1是时间段开始时的斜率;

·k2是时间段中点的斜率,通过欧拉法采用斜率k1来决定y在点tn+h/2的值;

·k3也是中点的斜率,但是这次采用斜率k2决定y值;

·k4是时间段终点的斜率,其y值用k3决定。

具体计算如下:

设定λ=0.4,j=0.32、t=5、φ(t)=2000,获取的部分数据集为{2090,2000,1834,1723,1678,1589,1500,┄}

由龙格-库塔法得到的预测值为:

yn+1=2098

最终,绘出的拟合曲线大致形态如图3所示,该曲线反映出恶意程序全面扩散后增长率较大,后期随着染毒设备的增加,逐渐达到饱和,此时感染情况得到控制。

综上所述,本发明实施例公开的微分方程,可以用于对恶意程序报警数据采用大数据技术进行数据分析,在病毒扩散的前期阶段,及时有效抓取相关异常行为并予以报警预警展示,有助于快速定位病毒扩散行为进行逆向追溯处理。

以上所述仅为本发明的较佳实施例,并非用来限定本发明的实施范围;如果不脱离本发明的精神和范围,对本发明进行修改或者等同替换,均应涵盖在本发明权利要求的保护范围当中。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1