一种客户端访问行为识别方法、系统及装置

文档序号:68560 发布日期:2021-10-01 浏览:19次 >En<

阅读说明:本技术 一种客户端访问行为识别方法、系统及装置 (Method, system and device for identifying client access behavior ) 是由 沈忱 姜科 刘伟旭 林建庭 曾竹 于 2021-06-07 设计创作,主要内容包括:本发明公开了一种客户端访问行为识别方法、系统及装置,该系统包括水平分类模型和层次分类模型;客户端访问行为的数据输入水平分类模型,得到大类特征向量,水平分类模型用于根据大类特征向量识别客户端访问行为的大类;多数类样本大类的大类特征向量输入层次分类模型,得到小类特征向量,层次分类模型用于根据小类特征向量识别客户端访问行为的小类;大类包括多数类样本大类和少数类样本大类,类型包括小类和少数类样本大类。本发明融合了多种机器学习方法,能在节省人工构建、更新和维护规则库的成本的前提下,实现较好的客户端访问行为的识别。(The invention discloses a method, a system and a device for identifying client access behaviors, wherein the system comprises a horizontal classification model and a hierarchical classification model; inputting data of the client access behaviors into a horizontal classification model to obtain large class feature vectors, wherein the horizontal classification model is used for identifying the large class of the client access behaviors according to the large class feature vectors; inputting major characteristic vectors of major classes of a plurality of classes of samples into a hierarchical classification model to obtain minor class characteristic vectors, wherein the hierarchical classification model is used for identifying minor classes of client access behaviors according to the minor class characteristic vectors; the major class includes a majority class sample major class and a minority class sample major class, and the type includes a minor class and a minority class sample major class. The invention integrates various machine learning methods, and can realize better identification of the client access behavior on the premise of saving the cost of manually constructing, updating and maintaining the rule base.)

一种客户端访问行为识别方法、系统及装置

技术领域

本发明涉及数据安全

技术领域

,特别是一种客户端访问行为识别方法、系统及装置。

背景技术

防火墙是信息安全的第一道防线。随着网络技术的快速更新,新的黑客技术也层出不穷,给传统规则防火墙带来了挑战。传统入侵检测技术通过维护规则集对入侵访问进行拦截,存在技术上的不足:一方面,硬规则容易被绕过,并且基于以往知识的规则集难以应对0day攻击;另一方面,攻防对抗水涨船高,防守方规则的构造和维护的门槛高、成本大。

基于机器学习技术的新一代web入侵检测技术有望弥补传统规则集方法的不足,为web对抗的防守端带来新的发展和突破。然而,机器学习应用于web入侵检测也存在挑战,其中最大的困难就是标签数据的缺乏。尽管有大量的正常访问流量数据,但web入侵样本稀少,且变化多样,对模型的学习和训练造成困难。因此,目前大多数web入侵检测都是基于无监督的方法,针对大量正常日志建立模型,而与正常流量不符的则被识别为异常

发明内容

本发明为解决上述问题,提供了一种客户端访问行为识别方法、系统及装置,融合了多种机器学习方法,能在节省人工构建、更新和维护规则库的成本的前提下,实现较好的客户端访问行为的识别。

为实现上述目的,本发明采用的技术方案为:

一种客户端访问行为识别系统,包括水平分类模型和层次分类模型;客户端访问行为的数据输入所述水平分类模型,得到大类特征向量,所述水平分类模型用于根据所述大类特征向量识别所述客户端访问行为的大类;多数类样本大类的所述大类特征向量输入所述层次分类模型,得到小类特征向量,所述层次分类模型用于根据所述小类特征向量识别所述多数类样本大类的客户端访问行为的小类;所述大类包括所述多数类样本大类和少数类样本大类,所述类型包括所述小类和所述少数类样本大类。

优选的,所述系统还包括新类型识别模型,所述小类特征向量或所述少数类样本大类的所述大类特征向量输入所述新类型识别模型,所述新类型识别模型用于检测所述客户端访问行为的类型是否异常。

优选的,所述水平分类模型为XGboost模型或lightGBM模型,所述层次分类模型为XGboost模型或lightGBM模型,所述新类型识别模型为One Class SVM模型或孤立森林模型。

优选的,所述系统的构建方法包括以下步骤:收集客户端访问行为的数据,对所述客户端访问行为的数据标注标签,得到训练数据,所述标签包括所述大类的标签和所述小类的标签;使用所述训练数据分别优化所述水平分类模型、所述层次分类模型和所述新类型识别模型的模型参数。

优选的,采用网格搜索交叉验证方法优化所述水平分类模型的模型参数。

优选的,采用准确率、宏查准率和宏查全率作为所述水平分类模型的评估指标。

优选的,所述层次分类模型的构建采用代价敏感学习方法优化所述层次分类模型的模型参数。

优选的,所述新类型识别模型与所述类型一一对应,所述新类型识别模型的构建使用对应的所述类型之外的所述训练数据作为训练集,对应的所述类型的所述训练数据作为测试集。

基于同样的发明构思,本发明还提供了一种客户端访问行为识别方法,包括以下步骤:根据客户端访问行为的数据识别所述客户端访问行为的大类,所述大类包括多数类样本大类和少数类样本大类;根据所述多数类样本大类的客户端访问行为的数据识别所述多数类样本大类的客户端访问行为的小类;输出所述客户端访问行为的类型,所述类型包括所述小类和所述少数类样本大类。

基于同样的发明构思,本发明还提供了一种客户端访问行为识别装置,包括:数据收集模块,用于收集客户端访问行为的数据;识别模块,加载有上述的系统,所述识别模块用于对所述客户端访问行为的数据进行识别,并输出识别结果。

本发明的有益效果是:

1.水平分类模型将客户端访问行为分为几个大类,层次分类模型在每个大类中细分小类,能方便快速地实现开集分类,区分出已知的客户端访问类型;

2.新类型识别模型能识别出不属于已知类型的新型攻击行为;

3.在错分损失较大的小类之间进行代价敏感加权,能减少高风险类被错分为低风险类的概率;

4.针对每个已知的类型分别建立一个新类型识别模型,使用对应的类型之外的训练数据作为训练集,该类型的训练数据作为测试集,可以提高模型识别新型攻击行为的效果。

附图说明

图1为客户端访问行为的分类方法的流程示意图;

图2为客户端访问行为的类型的示意图;

图3为新类型识别模型的示意图。

具体实施方式

为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合具体实施例对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

实施例一

为了解决传统网络安全防护中基于硬规则匹配进行网络攻击识别效率低下、面对高级威胁可能漏报、规则库的更新维护门槛高、成本大等问题,本发明提出了一种基于多种机器学习算法融合的客户端访问行为识别技术。与传统的“广筑高墙”的安全思路不同,本发明将重点放在网络攻击行为的识别上,相比攻陷防火墙,模仿用户的在线行为模式进行攻击对黑客来说要难得多。本发明通过从大量的原始数据中提取访客的行为特征,对模型进行训练和优化,建立的系统可以根据安全日志数据判断用户访问行为的风险性,即是否存在网络攻击威胁,并及时发出告警,提示安全管理员注意相关攻击行为,针对性地采取防护手段。这种新的访问行为识别方式不需要用户花费更多时间或精力进行短信或者图形验证,也不会产生操作体验上的不快,用户需要做的就是“表现正常”。本发明的目的在于在尽可能节省成本和提升用户体验的前提下,实现高效的客户端访问行为识别,对攻击行为自动进行告警。

根据不同的业务需求,本发明分别构建了水平分类模型以达到最高的分类准确率,以及代价敏感的层次分类模型来降低高风险类被错分为低风险类的概率。

此外,客户端访问行为可能存在很多种类型,无法被原始数据的样本中标记的有限种类型覆盖到,此时,一个不属于已知标签中的任意一个的访问行为经过上述两种模型识别后,会根据相似度被划分到其中的一种类型中去。本发明希望能把这些客户端访问行为识别出来,作为新型攻击行为进行应对,所以还提出了一种新类型识别模型。

实施例一

本实施例提供一种客户端访问行为识别系统,用于识别客户端访问行为的类型,包括水平分类模型、层次分类模型和新类型识别模型。

本实施例所述的系统的构建包括以下步骤:

1)获取训练数据集。首先通过收集用户访问日志、渗透测试访问日志、自行模拟等方式获取可靠来源的数据,并对数据打标签,标记对应的客户端访问行为所属的类型,作为训练数据。

本发明提供的标签包含层次结构关系,参照附图1,第一层划分为四个大类,包括机器访问(robot)、用户访问(normal)、网银助手(assistant)和公网监控机(monitor)。其中,训练数据集在大类的划分上存在数据不均衡的问题,机器访问行为和用户访问行为的数据为多数类样本,对应的大类为多数类样本大类,网银助手(assistant)和公网监控机(monitor)为少数类大类。第二层进一步对多数类样本大类细分不同的小类,不同的小类对应不同的风险程度。

参照附图2,本实施例所述的系统划分的类型包括小类和少数类大类,共9个。

然后统计每条数据中单个ip在一小时内的访问行为特征,如请求次数、url种类数量、请求方法种类数量、http响应状态码种类数量等。

2)训练水平分类模型。在本实施例中,构建水平分类模型和层次分类模型时,按3:1的比例将训练数据集划分为训练集和测试集,使用训练集训练模型,测试集验证模型的分类准确率。这样即可以保证有充分的样本加入训练,同时用于验证的样本也可以输出较为准确的结果。

参照附图1,水平分类模型不考虑类别之间的层次关系,只用一个单独的分类器预测叶节点类别。本实施例比较了logistic、SVM、随机森林、XGboost、lightGBM等多个分类器,最后选用lightGBM训练一个多分类模型。lightGBM采用boosting集成方法,和XGboost一样是对GBDT的高效实现框架,主要思想都是利用弱分类器(决策树)迭代训练以得到最优模型。lightGBM支持高效率的并行训练,相比GBDT具有更快的训练速度、更低的内存消耗、更好的准确率、可以快速处理海量数据等优点,在很多方面的表现会比XGboost更优秀。

本实施例所述的水平分类模型采用网格搜索交叉验证方法寻找最优的参数。网格搜索交叉验证方法是结合了网格搜索法和交叉验证法的方法。网格搜索法是一种通过遍历给定的参数组合来优化模型表现的方法。在网格搜索法中,将原始数据划分为3份,分别为:训练集、验证集和测试集。其中,训练集用来模型训练,验证集用来调整参数,测试集用来衡量模型表现的好坏。因此,最终模型的表现好坏与原始数据的划分结果有很大的关系,为了处理这种情况,采用交叉验证法来减少偶然性。

3)训练层次分类模型。参照附图1,层次分类模型考虑类别之间的层次关系。本实施例所述的层次分类模型同样采用lightGBM分类器,在用户访问和机器访问两个大类中分别细分小类。由于机器访问行为中的高风险访问(attack)有较多情况被错分为低风险访问(bot),在用于机器访问大类分类的层次分类模型的训练阶段引入代价敏感矩阵进行加权,对高风险访问被错分为低风险访问给予更大的错分代价,并迭代训练至整体的错分损失趋近最小,从而减少构建的模型将高风险访问错分为低风险访问的概率,具体的矩阵参数如表1所示。用于用户访问大类分类的层次分类模型可以无需使用代价敏感矩阵进行训练。

表1机器访问大类的代价敏感矩阵

4)训练新类型识别模型。参照附图3,针对训练数据集中的每个已知的类型分别建立一个新类型识别模型。在本实施例中,新类型识别模型选用One class SVM或孤立森林。One class SVM是一种针对单类样本建模的支持向量机模型,其假设原点是唯一异常点,寻求一个超平面将目标类样本和原点之间以最大间隔分开。孤立森林是基于树模型的异常检测方法,通过随机构建一颗颗决策树,利用样本落在所有树的深度的平均值来构建统计量,进行异常判断。

由于模型的分类准确率通过预测结果与标注的标签进行比较得到,对于每个类型的新类型识别模型,使用该类型之外的训练数据作为训练集,该类型的训练数据作为测试集,即在训练时将该类型作为未知类型,不放入该类型的训练数据进行训练,在测试时将该类型的训练数据作为新型攻击,来验证模型的异常检测效果。比较One class SVM和孤立森林的异常检测效果,每个类型分别选用更优的一种作为新类型识别模型。

如果一个样本被lightGBM分类器划分到某个类型,但是被该类型的新类型识别模型检测为异常,则判定该样本为一个未知的新类型,否则该样本属于该类型。

5)模型评估。取50次模型的验证结果的平均值作为模型的评估结果。

对于水平分类模型,选用准确率、宏查准率和宏查全率作为评估指标。在二分类情况下,查准率衡量的是正常用户被“误杀”的情况,查全率衡量的是攻击行为被“漏杀”的情况。宏查准率和宏查全率则是在多分类问题上考虑了每个类别来衡量平均的查准率与查全率。本实施例所述的水平分类模型的准确率达到93.06%,宏查准率和宏查全率分别达到93.04%和91.05%,基本不逊色于人工分类的效果。

对于代价敏感的层次分类模型,采用错分损失进行评估。其中,层次分类模型的准确率为76.51%,整体的错分损失由218.845(不加权)降低到202.225。

对于每个类型的新类型识别模型,在测试时使用该类型的训练数据作为未知的类型,来验证模型识别新型攻击行为的效果,评估结果如表2所示。

表2新类型识别模型评估结果

5)线上运行。使用上述构建的三种模型建立本实施例所述的系统,部署在线上模块进行实时的客户端访问行为识别。

本实施例所述的系统围绕三个功能展开:水平分类、层次分类和新类型的识别。水平分类能以很高的准确率识别多种入侵访问行为,代价敏感的层次分类利用代价敏感矩阵进行加权得到最小的错分损失,能够减少高风险类被错分为低风险类的概率。目前的大多数分类模型只能实现闭集分类,区分出训练集中已经确定的类别,而不能识别出训练集中没有的未知类别。本实施例所述的系统结合lightGBM多分类模型和OneclassSVM、孤立森林异常检测模型,可以方便快速地实现开集分类,不仅能很好地区分出已在训练数据集中标记的客户端访问行为的类型,而且能够识别出不属于这些已知类型的新型攻击行为。

本实施例所述的系统可以应用在银行系统中,用于客户端访问行为的识别。

目前的大多数web入侵检测技术都是基于无监督的方法,根据大量正常日志构建模型,而与正常流量不符的则被识别为异常。本实施例所述的系统利用由原始日志统计出客户端访问行为特征数据,融合多种有监督和无监督的学习方法,进行自动化学习和训练,达到识别客户端访问行为的目的。

相较于传统的安全防护策略通过维护规则集对入侵访问进行拦截的做法,本实施例所述的系统不仅省去了构造和维护防守规则库的成本,还解决了传统的硬规则容易被灵活的黑客绕过的问题,具有更高的识别入侵行为的能力,能够适应不同的业务需求。

实施例二

本实施例提供一种实施例一所述的系统使用的客户端访问行为识别方法,包括以下步骤:

S1.将客户端访问行为的数据输入水平分类模型,得到大类特征向量,水平分类模型根据大类特征向量识别客户端访问行为的大类。其中,大类包括多数类样本大类和少数类样本大类。

S2.将多数类样本大类的大类特征向量输入层次分类模型进行小类的细分,得到小类特征向量,层次分类模型根据小类特征向量识别多数类样本大类的客户端访问行为的小类。小类和少数类样本大类构成客户端访问行为的类型。

S3.将小类特征向量输入新类型识别模型,检测客户端访问行为的类型是否异常。如果类型为正常,则输出该类型,如果类型为异常,输出客户端访问行为为新型攻击行为,并发出告警。

本领域技术人员可以理解,实现上述数据识别方法实施例中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

实施例三

本实施例提供一种客户端访问行为识别装置,包括:

数据收集模块,用于收集客户端访问行为的数据,并传输到识别模块进行客户端访问行为的类型的识别。

识别模块,加载有实施例一所述的系统,识别模块采用实施例二所述的方法对客户端访问行为的数据进行识别,并输出识别结果。

上述说明示出并描述了本发明的优选实施例,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。

10页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:完全策略隐藏的数据访问控制方法及其相关设备

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类