CN105915555B - 网络异常行为的检测方法及系统 - Google Patents

网络异常行为的检测方法及系统 Download PDF

Info

Publication number
CN105915555B
CN105915555B CN201610500130.0A CN201610500130A CN105915555B CN 105915555 B CN105915555 B CN 105915555B CN 201610500130 A CN201610500130 A CN 201610500130A CN 105915555 B CN105915555 B CN 105915555B
Authority
CN
China
Prior art keywords
network access
access data
parameter
piece
data
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.)
Active
Application number
CN201610500130.0A
Other languages
English (en)
Other versions
CN105915555A (zh
Inventor
李嘉伟
王占一
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Qihoo Technology Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201610500130.0A priority Critical patent/CN105915555B/zh
Publication of CN105915555A publication Critical patent/CN105915555A/zh
Application granted granted Critical
Publication of CN105915555B publication Critical patent/CN105915555B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/147Network analysis or design for predicting network behaviour
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/30Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Technology Law (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种网络异常行为的检测方法及系统。其中方法包括:从网络访问日志中获取网络访问数据集;从网络访问数据集中提取每个特定域名下的网络访问数据,计算网络访问数据中指定字段的统计特性参数;从不同维度检测网络访问数据集中各条网络访问数据的行为特性,生成各条网络访问数据对应的多维特征向量;基于训练数据集中各条训练数据的多维特征向量和各条训练数据的实际类标、以及检测数据集中各条检测数据的多维特征向量,采用机器学习中的分类算法,得到检测数据集中各条检测数据的预测类标。根据本发明提供的方案,得到的检测结果同时具有较高的准确率和召回率。

Description

网络异常行为的检测方法及系统
技术领域
本发明涉及计算机网络技术领域,具体涉及一种网络异常行为的检测方法及系统。
背景技术
随着互联网的飞速发展,Web应用越来越丰富,专门针对Web应用的入侵手段也越来越复杂多变,入侵检测技术已成为网络安全的核心研究对象。
传统的入侵检测方法根据已知的攻击行为建立规则,形成匹配规则库,对各种已知的攻击类型具有良好的检测效果。但其具有如下缺点:
(1)适应性差,类似正则表达式的判定条件相对容易被绕过,而且该方法不能有效地检测出未知的攻击类型;
(2)基于规则的检测方式很大程度上依赖安全人员的经验判断,它对研究人员的专业水平要求较高,这从本质上加大了研究门槛;
(3)匹配规则库需要专家人为的经常更新和维护,而每一次对线上系统模块的修改都会带来高昂的成本代价。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的网络异常行为的检测方法及系统。
根据本发明的一个方面,提供了一种网络异常行为的检测方法,其包括:
从网络访问日志中获取网络访问数据集,所述网络访问数据集包含训练数据集和检测数据集;
从所述网络访问数据集中提取每个特定域名下的网络访问数据,计算所述网络访问数据中指定字段的统计特性参数,构建每个特定域名的统计特性模型;
依据计算得到的统计特征参数,从不同维度检测所述网络访问数据集中各条网络访问数据的行为特性,生成各条网络访问数据对应的多维特征向量;
基于训练数据集中各条训练数据的多维特征向量和各条训练数据的实际类标、以及检测数据集中各条检测数据的多维特征向量,采用机器学习中的分类算法,得到所述检测数据集中各条检测数据的预测类标;其中类标表示网络访问数据为正常数据或异常数据。
根据本发明的另一方面,提供了一种网络异常行为的检测系统,其包括:
数据准备模块,适于从网络访问日志中获取网络访问数据集,所述网络访问数据集包含训练数据集和检测数据集;
统计特性模型构建模块,适于从所述网络访问数据集中提取每个特定域名下的网络访问数据,计算所述网络访问数据中指定字段的统计特性参数,构建每个特定域名的统计特性模型;
多维子系统,适于依据计算得到的统计特征参数,从不同维度检测所述网络访问数据集中各条网络访问数据的行为特性,生成各条网络访问数据对应的多维特征向量;
分类模块,适于基于训练数据集中各条训练数据的多维特征向量和各条训练数据的实际类标、以及检测数据集中各条检测数据的多维特征向量,采用机器学习中的分类算法,得到所述检测数据集中各条检测数据的预测类标;其中类标表示网络访问数据为正常数据或异常数据。
根据本发明提供的网络异常行为的检测方法及系统,基于网络访问日志提供的数据,构建每个特定域名的统计特性模型,从不同维度检测网络访问数据集中各条网络访问数据的行为特性,分别将各个维度的检测结果重新映射到访问记录的向量空间中,采用机器学习算法再分类,使系统的检测结果同时具有较高的准确率和召回率。本发明将基于无监督学习的特征生成技术和基于有监督学习的分类技术相结合,具有良好的适应性,能够检测出多种类型的网络入侵行为,具备一定的检测未知异常模式的能力。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的网络异常行为的检测方法的流程示意图;
图2示出了根据本发明另一个实施例的网络异常行为的检测方法的流程示意图;
图3示出了本发明提供的网络异常行为的检测方法中构造得到的有向图的示意图;
图4示出了根据本发明一个实施例的网络异常行为的检测系统的功能结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明实施例提出一种网络异常行为的检测方案,将基于无监督学习的特征生成技术和基于有监督学习的分类技术相结合,对网络访问记录的行为特性做出综合评估。本发明实施例基于同一域名下海量日志数据的统计特征,从不同维度构造出多个基于统计特性的检测子系统。然后分别将各个子系统的检测结果重新映射到访问记录的向量空间中,采用机器学习算法再分类,使系统的检测结果同时具有较高的准确率和召回率。
图1示出了根据本发明一个实施例的网络异常行为的检测方法的流程示意图。如图1所示,该方法包括如下步骤:
步骤S101,从网络访问日志中获取网络访问数据集,该网络访问数据集包含训练数据集和检测数据集。
网络访问日志记录了用户访问网络的行为数据,通过分析网络访问日志可以分析用户访问网络的行为特性。本步骤作为数据准备步骤,首先收集网络访问日志,从网络访问日志中获取网络访问数据集。网络访问数据集是由大量网络访问数据组成的集合,其中的每条网络访问数据对应一条HTTP应用层数据包,完整的一条网络访问数据包括:时间戳、源IP、源端口、目的IP、目的端口、URI(Uniform Resource Identifier,统一资源标识符)、主机域名等字段。
为了能够其中某些网络访问数据进行特性分析,本实施例从网络访问日志中获取一部分数据作为训练数据,这些训练数据包含正常数据和异常数据,通过实际类标标识网络访问数据为正常数据或异常数据。例如,实际类标为-1,表示为异常数据,实际类标为1,表示为正常数据。通过这些已知特性的训练数据组成的训练数据集,可对检测数据集内的多条待检测的网络访问数据的特性进行评估。
步骤S102,从网络访问数据集中提取每个特定域名下的网络访问数据,计算网络访问数据中指定字段的统计特性参数,构建每个特定域名的统计特性模型。
基于所获取的网络访问数据集,本发明实施例根据同一域名下海量日志数据的统计特性参数构建对应域名的统计特性模型。具体地,根据网络访问数据所包括的主机域名查找属于同一域名的网络访问数据,而后提取同一域名下的网络访问数据的指定字段,计算统计特性参数,从而构建每个域名的统计特性模型。可选地,本发明实施例可计算同一域名下的网络访问数据的URI字段的统计特性参数,构建每个域名的统计特性模型。URI用来标识Web资源的字符串的各个不同部分,一般由三部分组成:主机名、标志符和相对URI。主机名为存放资源的主机的名称,由路径表示;标志符表示URI指向资源的内部;相对URI不包含任何命名规范信息,可能包含有相对路径。按照RFC4395规范,URI的句法结构为:协议名称://域名.根域名/目录/文件名.后缀。
步骤S103,依据计算得到的统计特征参数,从不同维度检测网络访问数据集中各条网络访问数据的行为特性,生成各条网络访问数据对应的多维特征向量。
本发明实施例基于同一域名下海量日志数据的统计特征,从不同维度检测网络访问数据集中各条网络访问数据的行为特性,然后分别将各个维度的检测结果重新映射到访问记录的向量空间中,从而生成各条网络访问数据对应的多维特征向量。
步骤S104,基于训练数据集中各条训练数据的多维特征向量和各条训练数据的实际类标、以及检测数据集中各条检测数据的多维特征向量,采用机器学习中的分类算法,得到检测数据集中各条检测数据的预测类标;其中类标表示网络访问数据为正常数据或异常数据。
通过上述步骤可以得到训练数据集中各条训练数据的多维特征向量以及检测数据集中各条检测数据的多维特征向量,又由于已知训练数据的实际类标,结合这些数据采用机器学习算法再分类,得到检测数据集中各条检测数据的预测类标,从而实现对网络访问记录的行为特性的综合评估。
根据本发明实施例提供的网络异常行为的检测方法,基于网络访问日志提供的数据,构建每个特定域名的统计特性模型,从不同维度检测网络访问数据集中各条网络访问数据的行为特性,分别将各个维度的检测结果重新映射到访问记录的向量空间中,采用机器学习算法再分类,使系统的检测结果同时具有较高的准确率和召回率。本方法将基于无监督学习的特征生成技术和基于有监督学习的分类技术相结合,具有良好的适应性,能够检测出多种类型的网络入侵行为,具备一定的检测未知异常模式的能力。
图2示出了根据本发明另一个实施例的网络异常行为的检测方法的流程示意图。如图2所示,该方法包括如下步骤:
步骤S201,从网络访问日志中获取网络访问数据集,网络访问数据集包含训练数据集和检测数据集。
网络访问日志记录了用户访问网络的行为数据,通过分析网络访问日志可以分析用户访问网络的行为特性。本步骤作为数据准备步骤,首先收集网络访问日志,从网络访问日志中获取网络访问数据集。网络访问数据集是由大量网络访问数据组成的集合,其中的每条网络访问数据对应一条HTTP应用层数据包,完整的一条网络访问数据包括:时间戳、源IP、源端口、目的IP、目的端口、URI、主机域名等字段。
为了能够其中某些网络访问数据进行特性分析,本实施例从网络访问日志中获取一部分数据作为训练数据,这些训练数据包含正常数据和异常数据,通过实际类标标识网络访问数据为正常数据或异常数据。例如,实际类标为-1,表示为异常数据,实际类标为1,表示为正常数据。通过这些已知特性的训练数据组成的训练数据集,可对检测数据集内的多条待检测的网络访问数据的特性进行评估。
步骤S202,对网络访问数据集中各条网络访问数据进行预处理。
为了便于后续的统计分析,本步骤对网络访问数据集中各条网络访问数据进行预处理,使之更具规范性。具体地,预处理过程可包括:
(1)对错误数据、缺失数据以及重复数据进行处理;通过此处理步骤删除掉网络访问数据集中的无效数据,提高了后续处理的有效性。
(2)按照不同的主机域名将各条网络访问数据进行分类处理;此处理步骤是为步骤S203做准备,通过分类便于步骤S203直接对各个特定域名下的网络访问数据做处理。
步骤S203,从训练数据集中提取每个特定域名下的网络访问数据,计算网络访问数据中指定字段的统计特性参数,构建每个特定域名的统计特性模型。
本步骤具体为计算同一域名下的网络访问数据的URI字段的统计特性参数,构建每个域名的统计特性模型。可选地,本步骤构建统计特性模型是基于训练数据集中的网络访问数据,检测数据集中的网络访问数据不考虑在内。
进一步的,计算网络访问数据中URI字段的统计特性参数主要包括以下几个方面:
(1)统计得到网络访问数据的分级路径以及相邻路径的频数。
以表1所示的4条网络访问数据为例,则可以统计得到分级路径以及相邻路径之间的频数列表,如表2所示。
表1
URI 路径 添加标识
a/b?x=1 a/b HEAD/a/b/END
a/b/c?y=2 a/b/c HEAD/a/b/c/END
b/c?x=4&y=5 b/c HEAD/b/c/END
a/b/c/ a/b/c HEAD/a/b/c/END
表2
相邻路径 频数
HEAD 4
a 3
b 4
c 3
END 4
HEAD/a 3
HEAD/b 1
a/b 3
b/c 3
b/END 1
c/END 3
(2)针对同一路径下的每条网络访问数据,抽取该条网络访问数据的参数字段出现的所有参数名,形成该条网络访问数据对应的参数名子集;将该路径下各条网络访问数据对应的参数名子集汇总,生成该路径下的参数名子集池。
首先,针对同一路径下的每一条记录,抽取其参数字段出现的所有参数名(p1,p2,...,pk),形成一个参数名子集Si={{p1,p2,...,pk}}。然后将不同的参数子集汇总,生成特定路径下的一个参数名子集池,即S=S1∪S2∪...∪Sn(其中n为同一路径下的记录数)。举例如下:
假如有5条网络访问数据,如表3所示,则可抽取其对应的参数名子集:
表3
URI 参数名子集
a/b?x=1&y=2 {{x,y}}
a/b?z=2 {{z}}
a/b?x=3&y=4&z=5 {{x,y,z}}
a/b?x=2&y=1 {{x,y}}
a/b?y=3 {{y}}
该路径下的参数名子集池为:
S={{x,y}}∪{{z}}∪{{x,y,z}}∪{{x,y}}∪{{y}}
={{y},{z},{x,y},{x,y,z}}
(3)针对同一路径下的每条网络访问数据,按照顺序抽取参数名,构造有向图;遍历有向图中节点之间的所有两两组合,判断节点之间是否连通,根据判断结果更新所述有向图;根据有向图记录的连通关系,构建参数名顺序集。
首先,对于同一路径下的每一条记录,按照顺序抽取参数名,构造有向图。举例来说,假如有4条输入数据的URI如表4所示,其构造的有向边对应所示。由此可构造得到如图3所示的有向图。
然后,遍历参数名(即有向图中的节点)之间的所有两两组合,判断相应的节点之间是否连通,根据判断结果更新有向图。根据有向图记录的连通关系,构建参数名顺序集S。
表4
URI 构造的有向边
a/b?x=1&y=2 x→y
a/b?z=2
a/b?x=3&y=4&z=5 x→y,y→z
a/b?x=2&z=1 x→z
以参数名x和y为例,如果节点x能到达节点y并且节点y不能到达节点x,则说明节点x一定在节点y的前面,将边(y,x)加入S;如果节点y能到达节点x并且节点x不能到达节点y,则说明节点y一定在节点x的前面,将边(x,y)加入S;其余情况都无法说明固定的先后顺序,不对参数名顺序集S做出任何改变。上述实例得到的参数名顺序集S为:S={(y,x),(z,x),(z,y)},由此可见,参数名顺序集S记录的是不可连通的边,也就是说,如果参数名顺序集S具有这条记录(x1,x2),则参数名x1不能出现在参数名x2的前面。
(4)计算网络访问数据中参数名对应的参数值长度分布的均值和标准差。
对于参数值长度分布,本发明实施例统计同一域名下同一路径的网络访问数据中各参数名对应的参数值长度,计算参数值长度分布的均值和标准差作为统计特性参数。
举例来说,统计路径a/b下参数值的长度分布有如表5所示的统计特性。
表5
参数名 均值μ 标准差σ
x μ<sub>x</sub> σ<sub>x</sub>
y μ<sub>y</sub> σ<sub>y</sub>
(5)计算网络访问数据中参数值含有的特殊字符在特殊字符模型空间中出现的概率。
预先构建特殊字符模型空间,举例来说,假设特殊字符模型空间为:
{“~”,“`”,“!”,“@”,“#”,“$”,“%”,“^”,“&”,“*”,“(”,“)”,“_”,“-”,“+”,“=”,“{”,“}”,“[”,“]”,“\”,“|”,“:”,“;”,“’”,“<”,“>”,“/”,“?”}
计算网络访问数据中参数名对应的参数值含有的特殊字符在上述特殊字符模型空间中出现的概率作为统计特性参数。
(6)判定网络访问数据中的具有变量参数值的参数名是否为枚举型参数的参数名。
枚举型参数指的是特定参数名下的参数值均来自于一个固定的有限枚举集,比如内容标识或索引。本发明实施例引入两个辅助函数:f(x)和g(x),分别定义如下:
假设某路径下的某一特定参数名q有n个参数值(q1,q2,...,qn),其参数值均来自于n条独立的URI,则:
f(k)=k k=1,2,3...n
Figure GDA0001173546850000101
根据实际数据得到f(x)和g(x),然后计算两个函数的相关系数ρ,就可以用以下规则来判定某一具有变量参数值的参数名是否为枚举型参数的参数名:
如果ρ<0,则f(x)和g(x)负相关的,参数名q的类型为枚举型;
如果ρ>0,则f(x)和g(x)正相关的,参数名q的类型为随机型;
如果ρ≈0,则无法有效判断参数名q的类型,为了不增加误报率,将其作为随机型处理。
最后,将根据上述算法判定为枚举型参数的参数名加入到枚举型参数列表中。
(7)计算针对网络访问数据中参数值在特定字符区间内包含的字符数占参数值长度的比例的期望值。
对于参数值字符的分布,包含直接字符集分布检验和按字符类型聚合后的字符集分布检验两种情况。其中前者按照单一字符的ASCII码进行区间划分,后者按照字符集类别进行划分(类别是按照大写字母、小写字母、控制字符、数字、不可打印字符、超范围字符等来区分)。
举例来说,假设路径aa/bb下字符集分布有如表6和表7所示的统计特性。
表6.直接字符集分布检验
Figure GDA0001173546850000111
表7.按字符值类型聚合后的字符集分布检验
Figure GDA0001173546850000112
其中,xi和yi分别表示对应参数名下,特定字符区间包含的字符数占整个参数值长度的比例的期望值,则有
Figure GDA0001173546850000113
通过以上统计的网络访问数据中指定字段的统计特性参数,构建每个特定域名的统计特性模型。
步骤S204,从路径维度、参数名组合维度、参数名相对位置维度、参数值长度分布维度、特殊字符维度、枚举型参数维度、和/或参数值分布维度检测网络访问数据集中各条网络访问数据的行为特性,生成各条网络访问数据对应的多维特征向量。
本步骤从不同的维度检测每条网络访问数据的行为特性,生成新的特征向量用于最终分类。对单条网络访问数据的特定维度进行检测,独立生成该特定维度下网络访问数据的正常概率。本步骤所使用的模型参数均来源于步骤S203得到的统计特性模型。
下面分别介绍从不同维度检测网络访问数据集中各条网络访问数据的行为特性的方法。
(1)从路径维度检测网络访问数据集中各条网络访问数据的行为特性具体为:依据网络访问数据的分级路径以及相邻路径的频数,计算网络访问数据中路径部分的正常概率。
具体地,利用自然语言处理的分词算法计算URI中路径部分的正常概率,例如可采用unigram、Bigram或trigram算法,本发明对此不作限制。针对路径长度不同所带来的影响,采用相应的正则化算法进行修正。举例如下:
表8
Figure GDA0001173546850000121
其中,P(A|B)依据条件概率公式和最大似然估计,可得:
Figure GDA0001173546850000122
其中Count(A,B)表示路径B出现在路径A前面的次数,Count(B)表示路径B出现的次数,其具体数值均可在统计特性模型中的频数列表中得到。
(2)从参数名组合维度检测网络访问数据集中各条网络访问数据的行为特性具体为:判断网络访问数据中各参数名组合是否位于对应路径下的参数名子集池中,若是,则从参数名组合维度检测的行为特性为正常;若否,则从参数名组合维度检测的行为特性为异常。
对于参数名组合异常,若网络访问数据中各参数名组合不在其对应路径的参数名子集池中,则被判定为异常,输出0,否则输出1。举例如下:
假设路径a/b下参数名子集池为:S={{x,y},{x,y,z},{z}},其中,{x1,x2,...,xn}表示参数名x1,x2,...,xn可同时作为一条记录的参数名出现。假如有3条输入数据的URI如表9所示,则得到对应的输出行为特性。
表9
URI 参数名组合 异常组合 输出
a/b?x=1&y=2 {x,y} 1
a/b?x=1&z=2 {x,z} {x,z} 0
a/b?z=1&y=2&x=3 {x,y,z} 1
(3)从参数名相对位置维度检测网络访问数据集中各条网络访问数据的行为特性具体为:从网络访问数据中抽取参数名顺序,判断参数名顺序是否位于对应路径下的参数名顺序集中,若是,则从参数名相对位置维度检测的行为特性为异常;若否,则从参数名相对位置维度检测的行为特性为正常。
对于参数名相对位置异常,若参数名顺序集包含从网络访问数据中抽取的参数名顺序,则说明参数名顺序出现了异常情况,输出0,否则输出1。举例如下:
假设路径a/b下参数名顺序集为:S={(x,y),(x,z)},其中,如果参数名顺序集S具有这条记录(x1,x2),参数名x1不能出现在参数名x2的前面。
表10
URI 参数名顺序 异常组合 输出
a/b?y=1&x=2 (y,x) 1
a/b?x=1&y=2 (x,y) (x,y) 0
a/b?z=1&y=2&x=3 {(z,x),(z,y),(y,x)} 1
a/b?x=1 1
(4)从参数值长度分布维度检测网络访问数据集中各条网络访问数据的行为特性具体为:结合网络访问数据中参数名对应的参数值长度分布的均值和标准差,根据修正后的切比雪夫不等式计算网络访问数据中参数名对应的参数值长度分布正常的概率。
对于参数值长度分布异常,利用修正后的切比雪夫不等式计算参数值长度分布的正常概率。假设参数名为xi的参数值长度分布的均值为μ,标准差为σ(其中均值和标准差来源于步骤S203得到的统计特性模型)。假设某条网络访问数据中参数名xi对应的参数值长度为li,若li≤μ,则输出1;否则,根据修正后的切比雪夫不等式计算该参数名xi对应的参数值长度分布正常的概率P(xi)作为输出:
Figure GDA0001173546850000141
其中,εi=li
最后将该条网络访问数据中所有参数值长度分布正常概率的最小值作为输出。
举例来说,假设路径a/b下参数值的长度分布有如表5所示的统计特性。这条网络访问数据中参数名对应的参数值长度分布正常的概率的计算方法如表11所示:
表11
Figure GDA0001173546850000142
(5)从特殊字符维度检测网络访问数据集中各条网络访问数据的行为特性具体为:依据网络访问数据中参数值含有的特殊字符在特殊字符模型空间中出现的概率获取从特殊字符维度检测行为特定为正常的概率。
对于一条特定的网络访问数据,其包含的每一个参数名的正常概率取其对应参数值包含的特殊字符在特殊字符模型空间中出现概率的最小值,最终这条网络访问数据的正常概率取其所有参数名的正常概率的最小值,举例如下:
表12
URI a/b?x=blu#el&y=red@black!
P(x) x<sub>3</sub>
P(y) min(y<sub>1</sub>,y<sub>2</sub>)
输出 min(P(x),P(y))
其中,假设路径a/b下特殊字符的概率统计特征为:(xi和yi分别表示对应参数名下特定特殊字符出现的概率。)
表13
Figure GDA0001173546850000152
(6)从枚举型参数维度检测网络访问数据集中各条网络访问数据的行为特性具体为:若网络访问数据中的参数名被判定为枚举型参数的参数名,但参数名对应的参数值出现不属于枚举型参数集合的情况,则从枚举型参数维度检测的行为特性为异常。
对于枚举型参数异常,如果参数名被判定为枚举型参数的参数名,并且对应的参数值出现不属于枚举型参数集合的情况,则从枚举型参数维度检测的行为特性为异常,输出0,否则输出1。
举例来说,假设路径a/b下枚举类型的统计特征为:
表14
参数名 枚举值
x Small,Mid,Large
y 41,42,43
由于枚举型参数异常导致的不同输出示例如下:
表15
URI 异常参数名 输出
a/b?x=Small 1
a/b?x=Mid&y=30 y 0
a/b?z=1 1
(7)从参数值分布维度检测网络访问数据集中各条网络访问数据的行为特性具体为:结合特定字符区间出现的概率期望值,利用卡方检验的方式计算参数值字符分布正常的概率。
对于参数值字符分布异常,分别从两个维度来考量,分别为直接字符集分布检验维度和按字符类型聚合后的字符集分布检验维度。其中前者按照单一字符的ASCII码进行区间划分,后者按照字符集类别进行划分(类别是按照大写字母、小写字母、控制字符、数字、不可打印字符、超范围字符等来区分)。结合参数值在特定字符区间内包含的字符数占参数值长度的比例的期望值,利用卡方检验的方式分别计算两个维度下参数值字符分布正常的概率。
以直接字符集分布检验为例,假设URI为a/b?x=123@mm&y=nn#1#2,参数名x的参数值为123@mm,其ASCII码的频数统计为:
表16
ASCII码值 0 1 49 50 51 64 109 255
频数 0 0 1 1 1 1 2
不考虑字符值的因素,将频数按大小顺序重新排列,得到有序频数序列(2,1,1,1,1,0,0,…,0)。该序列一共256个元素,对应的索引分别为(0,1,2...,255)。然后按照表17的划分方式,将对应区间编号内的序列频数求和,得到对应的区间分布为:
表17
Figure GDA0001173546850000161
Figure GDA0001173546850000171
将区间频数与对应路径下模型的字符集分布做卡方检验(自由度为5),求得P(χx 2|5)即为参数名x所对应的字符分布正常的概率。
参数名y的计算过程与上述过程类似,最终参数值分布正常的概率为两者的最小值,即
按字符类型聚合后的字符集分布检验与直接字符集分布检验的区别在于区间划分是按照字符值类型划分的,其它过程与之类似,不再赘述。
经过以上检测过程,共得到8个维度的检测结果,最终生成各条网络访问数据的8维特征向量。举例如下:
表18
Figure GDA0001173546850000172
其中,x(1),x(4),x(5),x(7),x(8)为0到1之间的浮点数,x(2),x(3),x(6)为0或1的布尔值。参数值分布1为直接字符集分布检验结果,参数值分布2为按字符类型聚合后的字符集分布检验结果。
最终输出的8维特征向量为:
表19
URI 输出
a/b?m=1&n=2 (x<sup>(1)</sup>,x<sup>(2)</sup>,x<sup>(3)</sup>,x<sup>(4)</sup>,x<sup>(5)</sup>,x<sup>(6)</sup>,x<sup>(7)</sup>,x<sup>(8)</sup>)
步骤S205,基于训练数据集中各条训练数据的多维特征向量和各条训练数据的实际类标、以及检测数据集中各条检测数据的多维特征向量,采用机器学习中的分类算法,得到检测数据集中各条检测数据的预测类标;其中类标表示网络访问数据为正常数据或异常数据。
通过上述步骤可以得到训练数据集中各条训练数据的多维特征向量以及检测数据集中各条检测数据的多维特征向量,又由于已知训练数据的实际类标,结合这些数据采用机器学习算法再分类,得到检测数据集中各条检测数据的预测类标,从而实现对网络访问记录的行为特性的综合评估。
可选地,本实施例所采用的机器学习算法可以为决策树算法或随机森林算法,本发明对此不作限制。
具体地,将训练输入数据和检测输入数据作为输入,采用机器学习算法得到最终的检测结果。
其中训练输入数据为:
其中,m表示训练数据集的数据总数;
Figure GDA0001173546850000182
表示训练数据集的第a条网络访问数据的第b(1≤b≤8)维特征值;yk表示第k条网络访问数据的实际类标(-1代表异常数据,+1代表正常数据)。
检测输入数据为:
Figure GDA0001173546850000183
其中,n表示检测数据集的数据总数;
Figure GDA0001173546850000184
表示检测数据集的第a条网络访问数据的第b(1≤b≤8)维特征值。
检测结果为:
Figure GDA0001173546850000185
其中,n表示检测数据集的数据总数;
Figure GDA0001173546850000186
表示检测数据集的第a条网络访问数据的第b(1≤b≤8)维特征值;
Figure GDA0001173546850000191
表示第k条网络访问数据的预测类标(-1代表异常数据,+1代表正常数据)。
根据本发明实施例提供的网络异常行为的检测方法,基于网络访问日志提供的数据,构建每个特定域名的统计特性模型,从不同维度检测网络访问数据集中各条网络访问数据的行为特性,分别将各个维度的检测结果重新映射到访问记录的向量空间中,采用机器学习算法再分类,使系统的检测结果同时具有较高的准确率和召回率。本方法将基于无监督学习的特征生成技术和基于有监督学习的分类技术相结合,具有良好的适应性,能够检测出多种类型的网络入侵行为,具备一定的检测未知异常模式的能力。
图4示出了根据本发明一个实施例的网络异常行为的检测系统的功能结构示意图。如图4所示,该检测系统包括:数据准备模块41,统计特性模型构建模块42,多维子系统43,以及分类模块44。
数据准备模块41适于从网络访问日志中获取网络访问数据集,网络访问数据集包含训练数据集和检测数据集。
统计特性模型构建模块42适于从网络访问数据集中提取每个特定域名下的网络访问数据,计算网络访问数据中指定字段的统计特性参数,构建每个特定域名的统计特性模型。
多维子系统43适于依据计算得到的统计特征参数,从不同维度检测网络访问数据集中各条网络访问数据的行为特性,生成各条网络访问数据对应的多维特征向量。
分类模块44适于基于训练数据集中各条训练数据的多维特征向量和各条训练数据的实际类标、以及检测数据集中各条检测数据的多维特征向量,采用机器学习中的分类算法,得到检测数据集中各条检测数据的预测类标;其中类标表示网络访问数据为正常数据或异常数据。
数据准备模块41进一步适于:从网络访问日志中获取各条网络访问数据,其中每条网络访问数据包括:URI字段和主机域名。可选地,每条网络访问数据还包括:时间戳、源IP、源端口、目的IP和/或目的端口。上述指定字段可为URI字段。
可选地,检测系统还包括:预处理模块45,适于对错误数据、缺失数据以及重复数据进行处理;按照不同的主机域名将各条网络访问数据进行分类处理。
统计特性模型构建模块42进一步适于:从训练数据集中提取每个特定域名下的网络访问数据,计算网络访问数据中指定字段的统计特性参数,构建每个特定域名的统计特性模型。
统计特性模型构建模块42进一步适于:统计得到网络访问数据的分级路径以及相邻路径的频数。
统计特性模型构建模块42进一步适于:针对同一路径下的每条网络访问数据,抽取该条网络访问数据的参数字段出现的所有参数名,形成该条网络访问数据对应的参数名子集;将该路径下各条网络访问数据对应的参数名子集汇总,生成该路径下的参数名子集池。
统计特性模型构建模块42进一步适于:针对同一路径下的每条网络访问数据,按照顺序抽取参数名,构造有向图;遍历有向图中节点之间的所有两两组合,判断节点之间是否连通,根据判断结果更新有向图;根据有向图记录的连通关系,构建参数名顺序集。
统计特性模型构建模块42进一步适于:计算网络访问数据中参数名对应的参数值长度分布的均值和标准差。
统计特性模型构建模块42进一步适于:计算网络访问数据中参数值含有的特殊字符在特殊字符模型空间中出现的概率。
统计特性模型构建模块42进一步适于:判定网络访问数据中的具有变量参数值的参数名是否为枚举型参数的参数名。
统计特性模型构建模块42进一步适于:计算针对网络访问数据中参数值在特定字符区间内包含的字符数占参数值长度的比例的期望值。
多维子系统43进一步适于:从路径维度、参数名组合维度、参数名相对位置维度、参数值长度分布维度、特殊字符维度、枚举型参数维度、和/或参数值分布维度检测网络访问数据集中各条网络访问数据的行为特性,生成各条网络访问数据对应的多维特征向量。
具体地,多维子系统43包括以下系统中的一个或多个:路径分析子系统431,参数名组合分析子系统432,参数名相对位置分析子系统433,参数值长度分布分析子系统434,特殊字符分析子系统435,枚举型参数分析子系统436,以及参数值分布分析子系统437。
路径分析子系统431适于依据网络访问数据的分级路径以及相邻路径的频数,计算网络访问数据中路径部分的正常概率。
参数名组合分析子系统432适于判断网络访问数据中各参数名组合是否位于对应路径下的参数名子集池中,若是,则从参数名组合维度检测的行为特性为正常;若否,则从参数名组合维度检测的行为特性为异常。
参数名相对位置分析子系统433适于从网络访问数据中抽取参数名顺序,判断参数名顺序是否位于对应路径下的参数名顺序集中,若是,则从参数名相对位置维度检测的行为特性为异常;若否,则从参数名相对位置维度检测的行为特性为正常。
参数值长度分布分析子系统434适于结合网络访问数据中参数名对应的参数值长度分布的均值和标准差,根据修正后的切比雪夫不等式计算网络访问数据中参数名对应的参数值长度分布正常的概率。
特殊字符分析子系统435适于根据网络访问数据中参数值含有的特殊字符在特殊字符模型空间中出现的概率获取从特殊字符维度检测行为特定为正常的概率。
枚举型参数分析子系统436适于若网络访问数据中的参数名被判定为枚举型参数的参数名,但参数名对应的参数值出现不属于枚举型参数集合的情况,则从枚举型参数维度检测的行为特性为异常。
参数值分布分析子系统437适于结合针对网络访问数据中参数值在特定字符区域内包含的字符数占参数值长度的比例的期望值,利用卡方检验的方式计算参数值字符分布正常的概率。
分类模块44进一步适于:利用决策树算法和/或随机森林算法,得到检测数据集中各条检测数据的预测类标。
根据本发明实施例提供的网络异常行为的检测系统,基于网络访问日志提供的数据,构建每个特定域名的统计特性模型,从不同维度检测网络访问数据集中各条网络访问数据的行为特性,分别将各个维度的检测结果重新映射到访问记录的向量空间中,采用机器学习算法再分类,使系统的检测结果同时具有较高的准确率和召回率。本系统将基于无监督学习的特征生成技术和基于有监督学习的分类技术相结合,具有良好的适应性,能够检测出多种类型的网络入侵行为,具备一定的检测未知异常模式的能力。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的网络异常行为的检测系统中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

Claims (44)

1.一种网络异常行为的检测方法,其包括:
从网络访问日志中获取网络访问数据集,所述网络访问数据集包含训练数据集和检测数据集;
从所述网络访问数据集中提取每个特定域名下的网络访问数据,计算所述网络访问数据中指定字段的统计特性参数,构建每个特定域名的统计特性模型;
依据计算得到的统计特征参数,从不同维度检测所述网络访问数据集中各条网络访问数据的行为特性,生成各个维度下各条网络访问数据的正常概率,得到各条网络访问数据对应的多维特征向量;其中,从不同维度构造出基于统计特性参数的检测子系统以检测所述网络访问数据集中各条网络访问数据的行为特性;
基于训练数据集中各条训练数据的多维特征向量和各条训练数据的实际类标、以及检测数据集中各条检测数据的多维特征向量,采用机器学习中的分类算法,得到所述检测数据集中各条检测数据的预测类标;其中类标表示网络访问数据为正常数据或异常数据。
2.根据权利要求1所述的检测方法,其中,所述从网络访问日志中获取网络访问数据集进一步包括:
从网络访问日志中获取各条网络访问数据,其中每条网络访问数据包括:URI字段和主机域名。
3.根据权利要求2所述的检测方法,其中,所述每条网络访问数据还包括:时间戳、源IP、源端口、目的IP和/或目的端口。
4.根据权利要求1所述的检测方法,其中,所述从网络访问日志中获取网络访问数据集之后,所述方法还包括对所述网络访问数据集中各条网络访问数据进行预处理,所述预处理包括:
对错误数据、缺失数据以及重复数据进行处理;
按照不同的主机域名将各条网络访问数据进行分类处理。
5.根据权利要求1所述的检测方法,其中,所述从网络访问数据集中提取每个特定域名下的网络访问数据,计算所述网络访问数据中指定字段的统计特性参数,构建每个特定域名的统计特性模型进一步包括:
从所述训练数据集中提取每个特定域名下的网络访问数据,计算所述网络访问数据中指定字段的统计特性参数,构建每个特定域名的统计特性模型。
6.根据权利要求2所述的检测方法,其中,所述指定字段为URI字段。
7.根据权利要求1所述的检测方法,其中,所述计算网络访问数据中指定字段的统计特性参数进一步包括:统计得到网络访问数据的分级路径以及相邻路径的频数。
8.根据权利要求1所述的检测方法,其中,所述计算网络访问数据中指定字段的统计特性参数进一步包括:
针对同一路径下的每条网络访问数据,抽取该条网络访问数据的参数字段出现的所有参数名,形成该条网络访问数据对应的参数名子集;
将该路径下各条网络访问数据对应的参数名子集汇总,生成该路径下的参数名子集池。
9.根据权利要求1所述的检测方法,其中,所述计算网络访问数据中指定字段的统计特性参数进一步包括:
针对同一路径下的每条网络访问数据,按照顺序抽取参数名,构造有向图;
遍历有向图中节点之间的所有两两组合,判断节点之间是否连通,根据判断结果更新所述有向图;
根据有向图记录的连通关系,构建参数名顺序集。
10.根据权利要求1所述的检测方法,其中,所述计算网络访问数据中指定字段的统计特性参数进一步包括:
计算网络访问数据中参数名对应的参数值长度分布的均值和标准差。
11.根据权利要求1所述的检测方法,其中,所述计算网络访问数据中指定字段的统计特性参数进一步包括:
计算网络访问数据中参数值含有的特殊字符在特殊字符模型空间中出现的概率。
12.根据权利要求1所述的检测方法,其中,所述计算网络访问数据中指定字段的统计特性参数进一步包括:
判定网络访问数据中的具有变量参数值的参数名是否为枚举型参数的参数名。
13.根据权利要求1所述的检测方法,其中,所述计算网络访问数据中指定字段的统计特性参数进一步包括:
计算针对网络访问数据中参数值在特定字符区间内包含的字符数占参数值长度的比例的期望值。
14.根据权利要求1所述的检测方法,其中,所述依据计算得到的统计特征参数,从不同维度检测所述网络访问数据集中各条网络访问数据的行为特性,生成各个维度下各条网络访问数据的正常概率,得到各条网络访问数据对应的多维特征向量进一步包括:
从路径维度、参数名组合维度、参数名相对位置维度、参数值长度分布维度、特殊字符维度、枚举型参数维度、和/或参数值分布维度检测所述网络访问数据集中各条网络访问数据的行为特性,生成各条网络访问数据对应的多维特征向量。
15.根据权利要求14所述的检测方法,其中,从路径维度检测所述网络访问数据集中各条网络访问数据的行为特性进一步包括:
依据网络访问数据的分级路径以及相邻路径的频数,计算网络访问数据中路径部分的正常概率。
16.根据权利要求14所述的检测方法,其中,从参数名组合维度检测所述网络访问数据集中各条网络访问数据的行为特性进一步包括:
判断网络访问数据中各参数名组合是否位于对应路径下的参数名子集池中,若是,则从参数名组合维度检测的行为特性为正常;若否,则从参数名组合维度检测的行为特性为异常。
17.根据权利要求14所述的检测方法,其中,从参数名相对位置维度检测所述网络访问数据集中各条网络访问数据的行为特性进一步包括:
从网络访问数据中抽取参数名顺序,判断所述参数名顺序是否位于对应路径下的参数名顺序集中,若是,则从参数名相对位置维度检测的行为特性为异常;若否,则从参数名相对位置维度检测的行为特性为正常。
18.根据权利要求14所述的检测方法,其中,从参数值长度分布维度检测所述网络访问数据集中各条网络访问数据的行为特性进一步包括:
结合网络访问数据中参数名对应的参数值长度分布的均值和标准差,根据修正后的切比雪夫不等式计算网络访问数据中参数名对应的参数值长度分布正常的概率。
19.根据权利要求14所述的检测方法,其中,从特殊字符维度检测所述网络访问数据集中各条网络访问数据的行为特性进一步包括:
根据网络访问数据中参数值含有的特殊字符在特殊字符模型空间中出现的概率获取从特殊字符维度检测行为特定为正常的概率。
20.根据权利要求14所述的检测方法,其中,从枚举型参数维度检测所述网络访问数据集中各条网络访问数据的行为特性进一步包括:
若网络访问数据中的参数名被判定为枚举型参数的参数名,但参数名对应的参数值出现不属于枚举型参数集合的情况,则从枚举型参数维度检测的行为特性为异常。
21.根据权利要求14所述的检测方法,其中,从参数值分布维度检测所述网络访问数据集中各条网络访问数据的行为特性进一步包括:
结合针对网络访问数据中参数值在特定字符区域内包含的字符数占参数值长度的比例的期望值,利用卡方检验的方式计算参数值字符分布正常的概率。
22.根据权利要求1所述的检测方法,其中,所述机器学习中的分类算法包括决策树算法和/或随机森林算法。
23.一种网络异常行为的检测系统,其包括:
数据准备模块,适于从网络访问日志中获取网络访问数据集,所述网络访问数据集包含训练数据集和检测数据集;
统计特性模型构建模块,适于从所述网络访问数据集中提取每个特定域名下的网络访问数据,计算所述网络访问数据中指定字段的统计特性参数,构建每个特定域名的统计特性模型;
多维子系统,适于依据计算得到的统计特征参数,从不同维度检测所述网络访问数据集中各条网络访问数据的行为特性,生成各个维度下各条网络访问数据的正常概率,得到各条网络访问数据对应的多维特征向量;其中,从不同维度构造出基于统计特性参数的检测子系统以检测所述网络访问数据集中各条网络访问数据的行为特性;
分类模块,适于基于训练数据集中各条训练数据的多维特征向量和各条训练数据的实际类标、以及检测数据集中各条检测数据的多维特征向量,采用机器学习中的分类算法,得到所述检测数据集中各条检测数据的预测类标;其中类标表示网络访问数据为正常数据或异常数据。
24.根据权利要求23所述的检测系统,其中,所述数据准备模块进一步适于:从网络访问日志中获取各条网络访问数据,其中每条网络访问数据包括:URI字段和主机域名。
25.根据权利要求24所述的检测系统,其中,所述每条网络访问数据还包括:时间戳、源IP、源端口、目的IP和/或目的端口。
26.根据权利要求23所述的检测系统,其中,所述检测系统还包括:预处理模块,适于对错误数据、缺失数据以及重复数据进行处理;按照不同的主机域名将各条网络访问数据进行分类处理。
27.根据权利要求23所述的检测系统,其中,所述统计特性模型构建模块进一步适于:从所述训练数据集中提取每个特定域名下的网络访问数据,计算所述网络访问数据中指定字段的统计特性参数,构建每个特定域名的统计特性模型。
28.根据权利要求24所述的检测系统,其中,所述指定字段为URI字段。
29.根据权利要求23所述的检测系统,其中,所述统计特性模型构建模块进一步适于:统计得到网络访问数据的分级路径以及相邻路径的频数。
30.根据权利要求23所述的检测系统,其中,所述统计特性模型构建模块进一步适于:针对同一路径下的每条网络访问数据,抽取该条网络访问数据的参数字段出现的所有参数名,形成该条网络访问数据对应的参数名子集;将该路径下各条网络访问数据对应的参数名子集汇总,生成该路径下的参数名子集池。
31.根据权利要求23所述的检测系统,其中,所述统计特性模型构建模块进一步适于:
针对同一路径下的每条网络访问数据,按照顺序抽取参数名,构造有向图;
遍历有向图中节点之间的所有两两组合,判断节点之间是否连通,根据判断结果更新所述有向图;
根据有向图记录的连通关系,构建参数名顺序集。
32.根据权利要求23所述的检测系统,其中,所述统计特性模型构建模块进一步适于:计算网络访问数据中参数名对应的参数值长度分布的均值和标准差。
33.根据权利要求23所述的检测系统,其中,所述统计特性模型构建模块进一步适于:计算网络访问数据中参数值含有的特殊字符在特殊字符模型空间中出现的概率。
34.根据权利要求23所述的检测系统,其中,所述统计特性模型构建模块进一步适于:判定网络访问数据中的具有变量参数值的参数名是否为枚举型参数的参数名。
35.根据权利要求23所述的检测系统,其中,所述统计特性模型构建模块进一步适于:计算针对网络访问数据中参数值在特定字符区间内包含的字符数占参数值长度的比例的期望值。
36.根据权利要求23所述的检测系统,其中,所述多维子系统进一步适于:从路径维度、参数名组合维度、参数名相对位置维度、参数值长度分布维度、特殊字符维度、枚举型参数维度、和/或参数值分布维度检测所述网络访问数据集中各条网络访问数据的行为特性,生成各个维度下各条网络访问数据的正常概率,得到各条网络访问数据对应的多维特征向量。
37.根据权利要求23所述的检测系统,其中,所述多维子系统包括:路径分析子系统,适于依据网络访问数据的分级路径以及相邻路径的频数,计算网络访问数据中路径部分的正常概率。
38.根据权利要求23所述的检测系统,其中,所述多维子系统包括:参数名组合分析子系统,适于判断网络访问数据中各参数名组合是否位于对应路径下的参数名子集池中,若是,则从参数名组合维度检测的行为特性为正常;若否,则从参数名组合维度检测的行为特性为异常。
39.根据权利要求23所述的检测系统,其中,所述多维子系统包括:参数名相对位置分析子系统,适于从网络访问数据中抽取参数名顺序,判断所述参数名顺序是否位于对应路径下的参数名顺序集中,若是,则从参数名相对位置维度检测的行为特性为异常;若否,则从参数名相对位置维度检测的行为特性为正常。
40.根据权利要求23所述的检测系统,其中,所述多维子系统包括:参数值长度分布分析子系统,适于结合网络访问数据中参数名对应的参数值长度分布的均值和标准差,根据修正后的切比雪夫不等式计算网络访问数据中参数名对应的参数值长度分布正常的概率。
41.根据权利要求23所述的检测系统,其中,所述多维子系统包括:特殊字符分析子系统,适于根据网络访问数据中参数值含有的特殊字符在特殊字符模型空间中出现的概率获取从特殊字符维度检测行为特定为正常的概率。
42.根据权利要求23所述的检测系统,其中,所述多维子系统包括:枚举型参数分析子系统,适于若网络访问数据中的参数名被判定为枚举型参数的参数名,但参数名对应的参数值出现不属于枚举型参数集合的情况,则从枚举型参数维度检测的行为特性为异常。
43.根据权利要求23所述的检测系统,其中,所述多维子系统包括:参数值分布分析子系统,适于结合针对网络访问数据中参数值在特定字符区域内包含的字符数占参数值长度的比例的期望值,利用卡方检验的方式计算参数值字符分布正常的概率。
44.根据权利要求23所述的检测系统,其中,所述分类模块进一步适于:利用决策树算法和/或随机森林算法,得到所述检测数据集中各条检测数据的预测类标。
CN201610500130.0A 2016-06-29 2016-06-29 网络异常行为的检测方法及系统 Active CN105915555B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610500130.0A CN105915555B (zh) 2016-06-29 2016-06-29 网络异常行为的检测方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610500130.0A CN105915555B (zh) 2016-06-29 2016-06-29 网络异常行为的检测方法及系统

Publications (2)

Publication Number Publication Date
CN105915555A CN105915555A (zh) 2016-08-31
CN105915555B true CN105915555B (zh) 2020-02-18

Family

ID=56754330

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610500130.0A Active CN105915555B (zh) 2016-06-29 2016-06-29 网络异常行为的检测方法及系统

Country Status (1)

Country Link
CN (1) CN105915555B (zh)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107870832B (zh) * 2016-09-23 2021-06-18 伊姆西Ip控股有限责任公司 基于多维度健康诊断方法的多路径存储设备
US20180089581A1 (en) * 2016-09-27 2018-03-29 Futurewei Technologies, Inc. Apparatus and method for dataset model fitting using a classifying engine
CN106302534B (zh) * 2016-09-30 2019-05-28 微梦创科网络科技(中国)有限公司 一种检测和处理非法用户的方法及系统
CN106790008B (zh) * 2016-12-13 2018-08-24 浙江中都信息技术有限公司 用于在企业网络中检测异常主机的机器学习系统
CN106657073A (zh) * 2016-12-26 2017-05-10 北京五八信息技术有限公司 筛选异常登录用户的方法及系统
CN106790193B (zh) * 2016-12-30 2019-11-08 山石网科通信技术股份有限公司 基于主机网络行为的异常检测方法和装置
CN108270727A (zh) * 2016-12-30 2018-07-10 北京国双科技有限公司 异常数据分析方法和装置
CN106899586A (zh) * 2017-02-21 2017-06-27 上海交通大学 一种基于机器学习的dns服务器软件指纹识别系统和方法
US10333961B2 (en) * 2017-06-27 2019-06-25 Intel Corporation Malware detection system attack prevention
CN107241352B (zh) * 2017-07-17 2020-01-21 浙江鹏信信息科技股份有限公司 一种网络安全事件分类与预测方法及系统
CN107563194A (zh) * 2017-09-04 2018-01-09 杭州安恒信息技术有限公司 潜伏性盗取用户数据行为检测方法及装置
US20190166024A1 (en) * 2017-11-24 2019-05-30 Institute For Information Industry Network anomaly analysis apparatus, method, and non-transitory computer readable storage medium thereof
CN108229564B (zh) * 2018-01-05 2022-08-02 创新先进技术有限公司 一种数据的处理方法、装置及设备
CN109150819B (zh) * 2018-01-15 2019-06-11 北京数安鑫云信息技术有限公司 一种攻击识别方法及其识别系统
CN108040076A (zh) * 2018-02-06 2018-05-15 中国互联网络信息中心 基于Spark Streaming的DNS水刑攻击处理方法及系统
CN108446546A (zh) * 2018-03-20 2018-08-24 深信服科技股份有限公司 异常访问检测方法、装置、设备及计算机可读存储介质
CN108470071B (zh) * 2018-03-29 2022-02-18 联想(北京)有限公司 一种数据处理方法及装置
CN108829715B (zh) * 2018-05-04 2022-03-25 慧安金科(北京)科技有限公司 用于检测异常数据的方法、设备和计算机可读存储介质
CN108600270A (zh) * 2018-05-10 2018-09-28 北京邮电大学 一种基于网络日志的异常用户检测方法及系统
CN108650274B (zh) * 2018-05-21 2021-07-27 中国科学院计算机网络信息中心 一种网络入侵检测方法及系统
WO2020038353A1 (zh) * 2018-08-21 2020-02-27 瀚思安信(北京)软件技术有限公司 异常行为检测方法及系统
CN109698820A (zh) * 2018-09-03 2019-04-30 长安通信科技有限责任公司 一种域名相似性计算及分类方法和系统
CN109391620B (zh) * 2018-10-22 2021-06-25 武汉极意网络科技有限公司 异常行为判定模型的建立方法、系统、服务器及存储介质
CN109525577B (zh) * 2018-11-09 2021-08-20 四川大学 基于http行为图的恶意软件检测方法
TWI674777B (zh) * 2018-11-09 2019-10-11 財團法人資訊工業策進會 異常流量偵測裝置及其異常流量偵測方法
CN109714324B (zh) * 2018-12-18 2021-06-22 中电福富信息科技有限公司 基于机器学习算法的用户网络异常行为发现方法及系统
CN111428440B (zh) * 2018-12-24 2023-08-15 中移动信息技术有限公司 一种基于条件概率的时序日志样本自动标注方法及装置
CN111416790B (zh) * 2019-01-04 2022-08-09 北京数安鑫云信息技术有限公司 基于用户行为的网络异常访问智能识别方法、装置、存储介质及计算机设备
US11151275B2 (en) 2019-04-05 2021-10-19 International Business Machines Corporation Randomness detection in network data
CN110311909B (zh) * 2019-06-28 2021-12-24 平安科技(深圳)有限公司 终端设备网络访问的异常判定方法和装置
CN110457896A (zh) * 2019-07-02 2019-11-15 北京人人云图信息技术有限公司 在线访问的检测方法及检测装置
CN110457630B (zh) * 2019-07-30 2022-03-29 北京航空航天大学 一种开源社区异常点赞用户的识别方法及系统
CN110855502A (zh) * 2019-11-22 2020-02-28 叶晓斌 一种基于时空分析日志的故障定因方法和系统
CN111092757B (zh) * 2019-12-06 2021-11-23 网宿科技股份有限公司 一种异常数据的检测方法、系统及设备
CN110995769B (zh) * 2020-02-27 2020-06-05 上海飞旗网络技术股份有限公司 深度数据包检测方法及装置
CN111431883B (zh) * 2020-03-18 2022-11-04 上海观安信息技术股份有限公司 一种基于访问参数的web攻击检测方法及装置
CN111639277A (zh) * 2020-05-22 2020-09-08 杭州安恒信息技术股份有限公司 机器学习样本集的自动化提取方法和计算机可读存储介质
CN113949526A (zh) * 2021-09-07 2022-01-18 中云网安科技有限公司 一种访问控制方法、装置、存储介质及电子设备
CN114363061A (zh) * 2021-12-31 2022-04-15 深信服科技股份有限公司 一种异常流量检测方法、系统、存储介质和终端

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102098235A (zh) * 2011-01-18 2011-06-15 南京邮电大学 一种基于文本特征分析的钓鱼邮件检测方法
CN103297435A (zh) * 2013-06-06 2013-09-11 中国科学院信息工程研究所 一种基于web日志的异常访问行为检测方法与系统
CN104935600A (zh) * 2015-06-19 2015-09-23 中国电子科技集团公司第五十四研究所 一种基于深度学习的移动自组织网络入侵检测方法与设备
CN105516128A (zh) * 2015-12-07 2016-04-20 中国电子技术标准化研究院 一种Web攻击的检测方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE60044220D1 (de) * 1999-01-26 2010-06-02 Xerox Corp Multimodaler Informationzugriff
US7017186B2 (en) * 2002-07-30 2006-03-21 Steelcloud, Inc. Intrusion detection system using self-organizing clusters

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102098235A (zh) * 2011-01-18 2011-06-15 南京邮电大学 一种基于文本特征分析的钓鱼邮件检测方法
CN103297435A (zh) * 2013-06-06 2013-09-11 中国科学院信息工程研究所 一种基于web日志的异常访问行为检测方法与系统
CN104935600A (zh) * 2015-06-19 2015-09-23 中国电子科技集团公司第五十四研究所 一种基于深度学习的移动自组织网络入侵检测方法与设备
CN105516128A (zh) * 2015-12-07 2016-04-20 中国电子技术标准化研究院 一种Web攻击的检测方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于Web异常检测的入侵检测系统实现;申茜;《万方硕士论文》;20140522;正文第4.3.1节-4.1.4节 *

Also Published As

Publication number Publication date
CN105915555A (zh) 2016-08-31

Similar Documents

Publication Publication Date Title
CN105915555B (zh) 网络异常行为的检测方法及系统
CN110233849B (zh) 网络安全态势分析的方法及系统
CN106778241B (zh) 恶意文件的识别方法及装置
CN110351301B (zh) 一种http请求双层递进式异常检测方法
CN107204960B (zh) 网页识别方法及装置、服务器
EP4242878A1 (en) Method and apparatus for training isolation forest, and method and apparatus for recognizing web crawler
CN106649831B (zh) 一种数据过滤方法及装置
CN105224872A (zh) 一种基于神经网络聚类的用户异常行为检测方法
CN117081858B (zh) 一种基于多决策树入侵行为检测方法、系统、设备及介质
Upchurch et al. Malware provenance: code reuse detection in malicious software at scale
Kostakis Classy: fast clustering streams of call-graphs
CN111400713B (zh) 基于操作码邻接图特征的恶意软件族群分类方法
Megantara et al. Feature importance ranking for increasing performance of intrusion detection system
Li et al. Application of hidden Markov model in SQL injection detection
CN109286622B (zh) 一种基于学习规则集的网络入侵检测方法
CN114662096A (zh) 一种基于图核聚类的威胁狩猎方法
Yamany et al. Ransomware clustering and classification using similarity matrix
CN111737694B (zh) 一种基于行为树的恶意软件同源性分析方法
CN113139185A (zh) 基于异质信息网络的恶意代码检测方法及系统
KR102457003B1 (ko) 딥 러닝 및 신호 처리 기술을 사용하여 dga들(domain generation algorithms)을 검출하기 위한 시스템 및 방법
Tang et al. SeVulDet: A semantics-enhanced learnable vulnerability detector
CN116361788A (zh) 一种基于机器学习的二进制软件漏洞预测方法
CN111507368B (zh) 一种校园网入侵检测方法和系统
KR101645214B1 (ko) 악성코드 분류 장치 및 악성코드 분류 방법
CN107436895B (zh) 一种非结构化数据识别的方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant