基于HMM模型的账号异常登录检测方法与流程

文档序号:11930556阅读:1410来源:国知局
基于HMM模型的账号异常登录检测方法与流程

本发明涉及计算机网络安全领域的用户异常登录检测方法,尤其涉及一种基于HMM隐马尔可夫链的定时检测方法。



背景技术:

随着网络应用的兴起与发展,越来越多的人开始使用网络账号来管理相关的信息与数据。尤其在当今网络消费、商务电子化、在线办公等功能普及,通过个人账号来使用相关服务已经成为人们工作、生活的重要部分。个人账号成为了人们获取网络服务的窗口。然而,账号的安全问题也日趋严重。个人账号被盗取、盗用,账号中的相关信息被泄露、篡改、破坏等事件频发,这将导致用户无法正常使用相关服务,给工作生活带来了极大的影响。一些与财产关联的个人账号更是安全问题的重灾区,给用户带来了经济损失。这类个人账号(如:消费网站的账号、有充值功能的账号等等)。账号安全成为了维持相关网络服务正常运行的重点。

目前,网络账号的安全防范主要有两个方向:1)事前防范:提高用户账号口令、密码的强度;要求用户使用更多的安全验证信息;依靠相关验证工具来登陆账号;基于声纹识别与语音识别的安全登录等;2)实时检测:及时检测每次账号登陆的合法性,对疑似异常的登陆请求进行另外的验证、甚至直接驳回。

本发明所应用的隐马尔可夫模型HMM,HMM模型中的状态是隐藏的,不能够通过观察得到,但HMM模型有可直接观测到序列,可通过直接观测的序列以及转移概率分布,统计得出状态分布,也即状态就隐藏于观察序列之中,所以是隐马尔可夫模型。HMM有两个随机过程,一个是随机的状态转移,另一个则是相对应的可直接观测得到的序列。前一个随机过程就是标准的马尔可夫模型。在隐马尔可夫模型中,状态是不能被直接观测到的,所拥有的数据只有直接观测到的结果,因此只能从结果序列推测出状态的情况。

本发明进一步通过解析用户登陆IP地址和访问功能等信息,建立隐马尔可夫模型,从可直接得到的结果序列,推断出是否发生用户异常登录,从而达到检测的效果。这里的HMM模型一般分为训练与检测两个部分,入侵检测的过程包括:1)用正常的操作程序执行的系统调用作为观测序列训练HMM模型,调整HMM模型的参数,这是训练过程;2)将未知程序执行的系统调用作观测序列,输入给HMM进行分类,这是检测过程。当计算出的前向概率差值小于阈值时,就认为此程序的调用不符合正常操作,从而判断入侵的发生。就国内的研究结果来看,陶龙明等运用HMM检测隐蔽性强、持续时间长并且分布完成的网络攻击。通过关联分析不同网络监视器的报警事件,产生HMM模型训练和检测的报警的序列。实验结果表面,HMM对这复杂的网络攻击能进行较好的检测与分类。

然而,这种HMM模型的检测方法已受到用户行为偏离既定模式的影响,用户行为的波动会干扰对异常事件的检测。为此,可能出现较多的异常漏报,或者较多的正常误报。为了改进这一问题,本发明提出对HMM模型下检测过程的一个改进策略,用对历史记录的分组检测代替实时检测,使行为模式带来的波动影响降低,从而保证异常检测的效果。



技术实现要素:

有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是如何排除用户行为的干扰。本发明在实时监测的基础上加入定时检测,对某一周期内的连续的观察符序列进行分析和判断,实现无用户行为扰动的高准确率的检测系统。

为实现上述目的,本发明提供了一种基于HMM模型的账号异常登录检测方法,包括数据收集步骤、数据预处理步骤、HMM训练及应用步骤,其中,所述数据收集步骤还包括定时检测一段时间t内的登录数据。

进一步地,所述数据收集步骤,收集的数据包括用户IP地址和用户登录后使用的功能。

进一步地,所述数据预处理步骤,包括以下步骤:

步骤2.1、对用户IP地址进行分类确定观察符数量;

步骤2.2、由用户使用的功能假定用户的实际事务作为隐状态;

步骤2.3、根据分层效果和筛选效果确定分组长度。

进一步地,所述HMM训练及应用步骤包括:

步骤3.1、将实际生活中的事务进行分类确定隐藏状态数;

步骤3.2、确定观察符数量;

步骤3.3、用已有的用户登陆数据对HMM模型进行训练,得到HMM模型参数;

步骤3.4、利用HMM模型参数结合最大似然估计来检测是否发生异常登录。

进一步地,所述隐藏状态数为五个。

进一步地,所述观察符数量为三个。

进一步地,所述分组长度设置为8-10。

进一步地,所述定时检测的具体步骤为:

步骤4.1、将时间周期t内产生的登陆数据转换为观察符流;

步骤4.2、以m个观察符为一组,将观察符流分成若干段观察符序列;

步骤4.3、依次计算每段序列在HMM模型中的接受概率,并形成概率序列;

步骤4.4、设定阈值β以区分正常模式与异常模式的概率,对于概率值低于阈值β的点或区域,提示存在登陆异常。

进一步地,所述HMM模型建立步骤为:

步骤3.3.1、设置观察值数目和隐藏状态数目;

步骤3.3.2、给出初始状态概率矩阵,隐藏状态转移概率矩阵,以及观测状态转移概率矩阵;

步骤3.3.3:根据已有的观察数据和三个矩阵,用Baum-Welch算法对其进行多次迭代计算,得到三个新的矩阵,以及对数极大似然估计值。

进一步地,所述HMM模型是双重随机系统的模型,用五元组γ=[ΩQ,ΩO,A,B,π]表示;其中Markov链由π、A描述,状态到观测符的随机映射由B描述。

本发明提供了一种基于HMM模型的账号异常登录检测系统,能够抗用户行为扰动的高准确率的检测出异常登录。本发明提出的检测方法,是基于这样的观察结论:需要先对所有登陆系统的用户IP地址和访问功能进行监控。将未知程序执行的系统调用作观测序列,输入给HMM进行分类,这是检测过程。当计算出的前向概率差值小于阈值时,就认为此程序的调用不符合正常操作,从而判断入侵的发生。

为了实现上述目的,本发明采取如下技术方案:1)数据收集:我们监控大量稳定时间内的登录用户的IP地址和访问功能。2)数据预处理:获取用户的IP地址的分类作为HMM模型的可直接观测序列,分类为常见IP和不常见IP。根据用户访问功能假定用户实际事务,拟定隐状态数为5.再将获得的总的观测符以一定时间长度m划分为不同的段,每一段就是我们用来检测的观测序列。3)HMM隐马尔可夫链的训练及检测:HMM模型可以看作拥有五个元素的五元组,因此我们需要得到这五个元素,才能建立起HMM模型。

建立起HMM模型主要步骤为:

步骤一:设置观察值数目和隐藏状态数目,即设置O和Q的值;

步骤二:给出三个矩阵,分别是初始状态概率矩阵,隐藏状态转移概率矩阵,以及观测状态转移概率矩阵;

步骤三:根据已有的观察数据和三个矩阵,用Baum-Welch算法对其进行多次迭代计算,得到三个新的矩阵,以及对数极大似然估计值。

本发明的有益效果是:

1)提出了基于HMM的框架来检测用户异常登录。

2)分析了算法中的关键参数的选取效果,用于指导实践

3)设计了实际检测系统,在实际流量检测中,取得了效果。

4)避免了用户行为波动对检测效果的影响。

以下将结合附图对本发明的构思、具体结构及产生的技术效果作进一步说明,以充分地了解本发明的目的、特征和效果。

附图说明

图1是本发明的一个较佳实施例的基于HMM模型的账号异常登陆陆检测流程图;

图2是本发明的一个较佳实施例的HMM模型结构图。

具体实施方式

如图所示,

为使本发明的设计方案更加清楚,下面将结合附图对本发明作进一步描述。

本发明实例提供了一种基于HMM模型的账号异常登录检测系统,在实时检测的基础上加入定时检测的策略,规避了用户行为的扰动影响。如图1所示。系统将用户登录信息存储至本地,并对该数据进行预处理来确定HMM模型的训练参数,最后通过HMM模型的训练来调整训练参数,并最终应用于实际检测输出检测结果。

其中每个部分的具体实施步骤如下:

1)数据收集部分:

步骤一:以某系统用户登陆信息为数据源,解析出IP地址和访问功能。

2)数据预处理部分:

步骤一:将获得的用户IP地址分为常用定点IP地址,系统内部无线路由IP地址与有线IP地址和系统外部IP地址三类。

步骤二:先根据数据量大小确定分组长度m,以m将观察序列划分为相同长度的段落和序列。

步骤三:根据数据量选定时间周期t。

3)HMM隐马尔可夫链的训练与应用:

主要步骤为:

步骤一:设置观察值数目和隐藏状态数目,即设置M和N的值;

步骤二:给出三个矩阵,分别是初始状态概率矩阵,隐藏状态转移概率矩阵,以及观测状态转移概率矩阵;

步骤三:根据已有的观察数据和三个矩阵,用Baum-Welch算法对其进行多次迭代计算,得到三个新的矩阵,以及对数极大似然估计值。

以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。

本发明实施例中的HMM模型结构如图2所示,HMM模型的具体组成:

1)HMM模型是描述随机系统的模型,可用五元组γ=[ΩQO,A,B,π]表示;

2)ΩQ是含有N个状态变量qi(i=1,2,…,N)的状态集。这N个状态之间可相互转换,但它们都是不可见的;

3)ΩO是模型的观测符集,含有M个互异的符号Oi(i=1,2,…,M)。在每个状态下,系统都会对外输出可见的观测符,这是对系统特征的有效描述和模拟;

4)状态之间的转换概率用状态转换概率矩阵A=[aij]描述,aij=P(qt+1=Sj|qt=Si)。通常,从任意给定的状态S可以转换到其他的任意状态(包括其自身),而且从任意一个状态转出的所有概率之和为1,即

5)系统在某一状态输出某一观测符的概率用观测符概率矩阵B=[bij]描述,bij=P(Vj|Si)。在同一状态得到各观测符的概率总和为1,即

6)系统在初始时刻处于每个状态的概率分布,用初态概率向量π=[πi]描述,πi=P(q1=Si),且这些概率之总和为1,即

7)系统在不同时刻输出的观测符构成观测符序列O=O1O2…OL,L是观测符序列的长度。

上面所述HMM模型的三个关键元素实际可以分成两部分,其一为Markov链,由π、A描述,另一部分是一个状态到观测符的随机映射,由B描述。它们将HMM模型表示为一个双重随机过程。

以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。

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