CN113645286B - 一种面向数据泄露的Web安全事件取证方法及系统 - Google Patents
一种面向数据泄露的Web安全事件取证方法及系统 Download PDFInfo
- Publication number
- CN113645286B CN113645286B CN202110879142.XA CN202110879142A CN113645286B CN 113645286 B CN113645286 B CN 113645286B CN 202110879142 A CN202110879142 A CN 202110879142A CN 113645286 B CN113645286 B CN 113645286B
- Authority
- CN
- China
- Prior art keywords
- data
- web
- abnormal
- communication
- host
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computing Systems (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Hardware Design (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明涉及一种面向数据泄露的Web安全事件取证方法及系统。该方法包括:首先,经过数据预处理之后,将多源日志划分为前端Web流量、Web有效载荷和后端Web数据库访问三个层次,分别基于iForest、BLSTM‑CNN和Canopy‑kmeans三种方法进行异常识别。然后对Web前后端各个层次的异常检测结果进行决策融合,为攻击建模阶段锁定Web数据泄露事件的主要时间段、参与的异常主机以及对应的异常类型。再构建能够反映时间序列和异常事件因果关系的攻击网格图,完成攻击场景建模。最后审计攻击网格图中的相关日志数据,从而完成数据泄露场景的取证还原。
Description
技术领域
本发明涉及网络安全技术领域,特别是一种面向数据泄露的Web安全事件取证方法及系统。
背景技术
随着互联网技术的飞速发展,Web及其相关技术得到日益广泛的普及和应用。具有开放性和易用性等特点的Web应用正在逐渐替代很多传统互联网业务,更多业务可在Web应用上处理,大量Web应用广泛布置于政府机构和企业组织。这使得Web应用会涉及到更多的敏感信息,大量的网络攻击目标聚集在Web平台,大部分的网络攻击事件与Web应用有关,由此造成的信息泄露给人们工作生活带来的损失日益增加,Web环境下的数据泄露事件引起了更多的关注和研究。
然而,Web数据泄露事件是一个综合的网络安全事件,网络威胁行为的多样化和复杂化使得对数据泄露等安全事件的取证分析成为一项具有挑战性的任务。
发明内容
本发明的目的在于提供一种面向数据泄露的Web安全事件取证方法及系统,能够有效地识别Web应用相关的多源日志中的异常事件并关联融合,并通过攻击建模实现对数据泄露事件的分析还原,能为实际网络环境中Web安全防护提供有力的技术支撑。
为实现上述目的,本发明的技术方案是:一种面向数据泄露的Web安全事件取证方法,包括以下步骤:
步骤S1、对多源日志进行预处理;
步骤S2、将预处理后的多源日志划分为Web前端流量数据、Web有效载荷数据和Web后端数据库访问数据三个层次数据,并进行特征提取;
步骤S3、根据得到的三个层次数据,基于iForest算法模型、BLSTM-CNN混合神经网络模型和Canopy-kmeans聚类模型分别对三个层次数据进行异常检测;
步骤S4、根据各层次的异常检测结果,进行决策融合,得到与数据泄露相关的异常时间段和异常主机;
步骤S5、根据决策融合结果,以异常时间和异常主机作为横纵坐标,构建攻击网格图,将不同攻击阶段的异常联系和数据泄露事件的基本过程呈现在攻击网格图中;
步骤S6、根据攻击网格图的建模结果,初步描绘出数据泄露事件的场景,再进一步审计攻击网格图中最终构成完整攻击场景的主机及对应时间段的相关日志数据,对数据泄露场景进行更详细的描绘,实现数据泄露事件的取证重构。
在本发明一实施例中,步骤S2中,划分出Web前端流量数据并进行特征提取,具体包括以下步骤:
步骤S2A2、以一选定时间单位,提取该单位时间内每个主机IP的Web前端流量特征:总通信次数、不同的通信对象数、不同的通信协议数、不同的通信端口数、总流量大小;总通信次数与不同的通信对象数、通信协议数、端口数、总流量大小之间的比例;单位时间内与平均通信次数、平均通信对象数、平均通信协议数、平均通信端口数、平均通信流量之间的差值;
步骤S2A3、经过步骤S2A2,得到特征提取后的Web前端流量数据集,记为DF={df1,...dfi,...,dfn},其中变量dfi表示第i个Web前端流量数据样本;
划分出Web有效载荷数据并进行特征提取,具体包括以下步骤:
步骤S2B2、以一选定时间单位,提取该单位时间内每对通信主机双方之间的Web前端有效载荷特征:不重复的通信请求方法、请求内容及次数;
步骤S2B3、经过步骤S2B2,得到特征提取后的Web前端有效载荷数据集,记为DH={dh1,...dhi,...,dhn},其中变量dhi表示第i个Web前端有效载荷数据样本;
划分出Web后端数据库访问数据并进行特征提取,具体包括以下步骤:
步骤S2C2、以每对通信双方主机为单位,提取每对主机之间的Web后端数据库访问特征:通信次数、不同的通信天数、不同的通信小时数、不同的通信访问密码数、不同的通信访问信息数、不同的通信访问用户数;
步骤S2C3、经过步骤S2C2,得到特征提取后的Web后端数据库访问数据集,记为DS={ds1,...dsi,...,dsn},其中变量dsi表示第i个Web后端数据库访问数据样本。
在本发明一实施例中,步骤S3中,基于iForest算法模型对Web前端流量数据进行异常检测,具体包括以下步骤:
步骤S3A1、从Web前端流量数据集DF中随机抽取k个数据样本,构造一颗孤立二叉树iTree;重复t次,得到一个孤立森林iForest={Te1,...Tei,...,Tet},其中Tei是第i次构造的iTree;
步骤S3A2、计算每颗iTree中每个数据样本dfi的路径长度h(dfi),然后计算该样本的异常分数s(dfi,k),将其加入到一个优先队列,记为Q;
步骤S3A3、选择异常得分较大的一定比例的数据集作为异常流量特征样本集DNF。
在本发明一实施例中,步骤S3A2中,对样本dfi的异常分数做以下计算:
式中,变量E(h(dfi))是iForest集合里所有iTree中h(dfi)的平均路径长度,变量c(k)是含有k个样本的二叉搜索树的平均路径长度,其具体计算如下:
c(k)=2H(k-1)-(2(k-1)/k)
式中,变量H(k-1)称为谐波数,H(k-1)=ln(k-1)+欧拉常数。
在本发明一实施例中,步骤S3中,基于BLSTM-CNN混合神经网络模型对Web有效载荷数据进行异常检测,具体包括以下步骤:
步骤S3B1、从Web有效载荷数据集DH中提取通信载荷内容字段,记为DHU;利用正常和异常的载荷内容拼接成词典,记为dt;
步骤S3B2、通过Keras工具库中的Tokenizer函数对dt和DHU进行分词、向量化处理;通过pad_sequences函数将向量化后的序列长度对齐,分别得到训练集Train和待检测集Test;
步骤S3B3、通过Keras构建BLSTM-CNN混合模型,对Train训练,之后对Test进行预测,得到预测标签为负的样本集即为含有异常有效载荷的样本集DNH。
在本发明一实施例中,步骤S3中,基于Canopy-kmeans聚类模型对Web后端数据库访问数据进行异常检测,具体包括以下步骤:
步骤S3C1、将Web后端数据库访问数据集DS转化为列表,对其执行Canopy聚类,得到K个Canopy集合G={G1,...,GK}和K个集合中心g={g1,...,gK};
步骤S3C2、计算DS中的每个样本dsi到其所属的每个Canopy集合中心点的最近距离,加入到该中心点形成的簇中并重新计算簇的中心,重复计算过程直至聚类簇中心不再变化;
步骤S3C3、将数据样本量最少的簇作为Web后端异常样本集DNS。
在本发明一实施例中,步骤S4具体包括以下步骤:
步骤S41、提取各个层次的异常时间段并用drop_duplicates函数进行去重,取各个层次异常时间段的交集,记为T;
步骤S42、在异常时间段交集T内,取各个层次异常主机的并集并去重,记为Nip;
步骤S43、根据Web前端流量数据集Web前端有效载荷数据集和Web后端数据库访问数据集从Nip中找出在各层次数据集中存在相互通信的异常主机,保留在Nip中,其余的删除;最终得到数据泄露事件的异常时间段T和异常主机集合Nip即决策融合的结果。
在本发明一实施例中,步骤S5具体包括以下步骤:
步骤S51、对决策融合结果中得到的异常时间段T扩展前后f个小时,扩大对数据泄露事件的取证范围;
步骤S52、构建基本的攻击网格图:按照预定规则排列时间节点为横坐标,记为{t1,t2,…ti,…,tn,ti∈T±f},排列主机IP为纵坐标,记为{h1,h2,…hp,…,hm,hp∈Nip};添加若干条边,记为{[ti,tj,hp,hq,e]},其中,i,j∈[1,n];p,q∈[1,m];e是异常事件类型;在横坐标上排列节点的规则为:在横坐标上按时间顺序递增从左至右地排列时间节点;在纵坐标上排列节点的规则如下:
步骤S52B1、由下至上排列发生异常流量的主机、异常载荷的主机、异常数据库访问的主机;
步骤S52B2、一组异常通信主机中,将源主机排列在较低的网格节点;
步骤S52B3、若其中一组异常通信主机不与其他任意组的通信异常主机构成联系,则排列在网格图较低的网格节点中;
步骤S53、构建完基本的攻击网格图之后,若两个有向边[ti1,tj1,hp1,hq1,er1]与[ti2,tj2,hp2,hq2,er2]满足一定规则,则用虚线将其连接;两个有向边[ti1,tj1,hp1,hq1,er1]与[ti2,tj2,hp2,hq2,er2]连接规则如下:
hq1=hp2;ti1<ti2;ti2-tj1<λ;
式中,λ为阈值参数,表示两个可串联的异常事件之间容许的时间间隔范围。
在本发明一实施例中,步骤S6具体包括以下步骤:
步骤S61、根据攻击网格图的建模结果,与数据泄露事件关系程度较小的异常通信群组将会分布在网格图下层;然后往上依次是一次Web数据泄露事件的主要步骤:Web前端对主机的探测、端口的扫描层次;Web前端获取网络信息或主机控制权的漏洞扫描或注入攻击异常层次;Web后端访问关键网络资产并读取或写入数据造成数据泄露的异常层次;
步骤S62、根据攻击网格图描绘的数据泄露攻击的初步模型,审计数据泄露时间段内的异常主机日志数据,得到实际网络环境中主机的资产类型及异常发生的具体时间,由此绘制数据泄露场景还原重构的拓扑图。
本发明还提供了一种面向数据泄露的Web安全事件取证系统,包括存储器、处理器以及存储于存储器上并能够被处理器运行的计算机程序指令,当处理器运行该计算机程序指令时,能够实现如上述所述的方法步骤。
较佳的,本发明的系统还可以包括以下功能模块:Web前后端异常检测模块、异常检测结果决策融合模块、数据泄露攻击建模模块、数据泄露场景重构模块。
其中,Web前后端异常检测模块,用于对多源日志进行格式转换、数据清洗、特征提取等预处理工作,将多源日志划分为Web前端的流量特征、有效载荷和Web后端的数据库访问数据,分别基于iForest、BLSTM-CNN和Canopy-kmeans进行异常识别;异常检测结果决策融合模块,用于统计各个层次异常检测结果的时间属性,关联出相同的异常时间段,在该时间段内分析出相互通信的异常主机集群,为攻击建模和数据泄露场景重建锁定Web数据泄露事件的主要时间段、参与的异常主机以及对应的异常类型,实现对前后端乃至多个层次异常检测结果进行决策融合;数据泄露攻击建模模块,用于将决策融合后的异常时间和异常主机作为网格图的横纵坐标,从时间序列和异常事件因果关系的角度出发,将不同攻击阶段的异常联系和数据泄露事件的基本过程呈现在网格图中,以实现Web数据泄露事件的攻击场景建模;数据泄露场景重构模块,用于根据攻击网格图的攻击建模结果,初步描绘出数据泄露事件的场景,并审计攻击网格图中最终构成完整攻击场景的主机及对应时间段的相关日志数据,对数据泄露场景进行更详细的描绘,实现数据泄露事件的重构。
本发明基于Web安全取证思想及数据泄露事件的攻击链模型,面向数据泄露的Web安全事件进行异常检测、异常事件关联融合、攻击场景建模,并最终实现数据泄露场景重构,能够帮助安全管理人员快速地定位到数据泄露事件的攻击者、参与的网络内部主机、存在漏洞的服务器以及发生数据泄露的重要资产,从而更好地修复漏洞、保护重要资产、减小损失。
相较于现有技术,本发明具有以下有益效果:本发明采用Web安全取证及攻击链路还原思想,构造了一种面向数据泄露的Web安全事件取证方法。本发明的系统和方法能够合理有效地在数据泄露事件取证阶段,迅速找到复杂数据泄露事件的攻击者、涉及到的漏洞主机及重要资产,给安全管理员提供参考。
附图说明
图1为本发明实施例的原理示意图。
图2为本发明实施例的应用场景示意图。
具体实施方式
下面结合附图,对本发明的技术方案进行具体说明。
应该指出,以下详细说明都是示例性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本申请所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
如图1以及图2所示,本实施例提供了一种面向数据泄露的Web安全事件取证方法,具体包括以下步骤:
步骤S1、对多源日志进行格式转化、数据清洗等预处理工作;
步骤S2、将预处理后的多源日志划分为前端的Web流量、Web有效载荷和后端的Web数据库访问数据三个层次数据,并进行特征提取;
步骤S3、根据得到的各个层次数据,分别基于iForest算法模型、BLSTM-CNN混合神经网络模型和Canopy-kmeans聚类模型对三个层次数据进行异常检测;
步骤S4、根据各层次的异常检测结果,进行决策融合,得到与数据泄露相关的主要异常时间段和异常主机;
步骤S5、根据决策融合结果,以异常时间和异常主机作为横纵坐标,构建攻击网格图,将不同攻击阶段的异常联系和数据泄露事件的基本过程呈现在攻击网格图中;
步骤S6、根据攻击网格图的建模结果,初步描绘出数据泄露事件的场景,再进一步审计攻击网格图中最终构成完整攻击场景的主机及对应时间段的相关日志数据,对数据泄露场景进行更详细的描绘,实现数据泄露事件的取证重构。
在本实施例中,步骤S1具体包括以下步骤:
步骤S11、将原始多源日志数据转换为便于进行数据分析的统一格式,如CSV格式、Json格式;
步骤S12、利用规则库过滤掉包含不完整、错误、重复的无用数据,防止数据泛滥,提高后续数据分析的效能。
在本实施例中,步骤S2中,划分出Web前端流量数据集并进行特征提取具体包括以下步骤:
步骤S2A2、以一选定时间单位,提取该单位时间内每个主机IP的Web前端流量特征:总通信次数、不同的通信对象数、不同的通信协议数、不同的通信端口数、总流量大小;总通信次数与不同的通信对象数、通信协议数、端口数、总流量大小之间的比例;单位时间内与平均通信次数、平均通信对象数、平均通信协议数、平均通信端口数、平均通信流量之间的差值。较佳的,在本实施例中,选定时间单位为1小时;
步骤S2A3、经过上述处理,得到特征提取后的Web前端流量数据集,记为DF={df1,...dfi,...,dfn},其中变量dfi表示第i个Web前端流量样本。
在本实施例中,步骤S2中,划分出Web前端有效载荷数据集并进行特征提取具体包括以下步骤:
步骤S2B2、以一选定时间单位,提取该单位时间内每对通信主机双方之间的Web前端有效载荷特征:不重复的通信请求方法、请求内容及次数。较佳的,在本实施例中,选定时间单位为1小时;
步骤S2B3、经过上述处理,得到特征提取后的Web前端有效载荷数据集,记为DH={dh1,...dhi,...,dhn},其中变量dhi表示第i个Web前端有效载荷样本。
在本实施例中,步骤S2中,划分出Web后端数据库访问数据集并进行特征提取具体包括以下步骤:
步骤S2C2、以每对通信双方主机为单位,提取每对主机之间的Web后端数据库访问特征:通信次数、不同的通信天数、不同的通信小时数、不同的通信访问密码数、不同的通信访问信息数、不同的通信访问用户数;
步骤S2C3、经过上述处理,得到特征提取后的Web后端数据库访问数据集,记为DS={ds1,...dsi,...,dsn},其中变量dsi表示第i个Web后端数据库访问样本。
在本实施例中,步骤S3中,基于iForest算法模型对Web前端流量数据集进行异常检测具体包括以下步骤:
步骤S3A1、从数据集DF中随机抽取k个数据样本,构造一颗孤立二叉树iTree。重复t次,得到一个孤立森林iForest={Te1,...Tei,...,Tet},其中Tei是第i次构造的iTree;
步骤S3A2、计算每颗iTree中每个数据样本dfi的路径长度h(dfi),然后计算该样本的异常分数s(dfi,k),将其加入到一个优先队列,记为Q;
步骤S3A3、选择异常得分较大的一定比例的数据集作为异常流量特征样本集DNF。
在本实施例中,步骤S3A2中,对样本dfi的异常分数做以下计算:
式中,变量E(h(dfi))是iForest集合里所有iTree中h(dfi)的平均路径长度,变量c(k)是含有k个样本的二叉搜索树的平均路径长度,其具体计算如下:
c(k)=2H(k-1)-(2(k-1)/k);
较佳的,在本实施例中,步骤S3A3中,在给定Web前端流量数据集DF的异常比例pro之后,DNF通过如下计算得到:
DNF=Q.top(n*pro);
式中,函数top是优先队列Q的出队操作,变量n为DF中样本数量。
在本实施例中,步骤S3中,基于BLSTM-CNN混合神经网络模型对Web前端有效载荷数据集进行异常检测具体包括以下步骤:
步骤S3B1、从数据集DH中提取通信载荷内容字段,记为DHU。利用正常和异常的载荷内容拼接成词典,记为dt;
步骤S3B2、通过Keras工具库中的Tokenizer函数对dt和DHU进行分词、向量化处理;通过pad_sequences函数将向量化后的序列长度对齐,分别得到训练集Train和待检测集Test;
步骤S3B3、通过Keras构建BLSTM-CNN混合模型,对Train训练,之后对Test进行预测,得到预测标签为负的样本集即为含有异常有效载荷的样本集DNH。
在本实施例中,步骤S3中,基于Canopy-kmeans聚类模型对Web后端数据库访问数据集进行异常检测具体包括以下步骤:
步骤S3C1、将数据集DS转化为列表,对其执行Canopy聚类,得到K个Canopy集合G={G1,...,GK}和K个集合中心g={g1,...,gK}。
步骤S3C2、计算DS中的每个样本dsi到其所属的每个Canopy集合中心点的最近距离,加入到该中心点形成的簇中并重新计算簇的中心,重复计算过程直至聚类簇中心不再变化。
步骤S3C3、将数据样本量最少的簇作为Web后端异常样本集DNS。
较佳的,在本实施例中,步骤S3C2中,最近距离通过以下方式计算:
min||dsi-gj||;
其中,dsi∈Gj;||dsi-gj||表示dsi和gj之间的欧式距离。
在本实施例中,步骤S4具体包括以下步骤:
步骤S41、提取各个层次的异常时间段并用drop_duplicates函数进行去重,取各个层次异常时间段的交集,记为T;
步骤S42、在异常时间段交集T内,取各个层次异常主机的并集并去重,记为Nip;
在本实施例中,步骤S5具体包括以下步骤:
步骤S51、对决策融合结果中得到的异常时间段T扩展前后f个小时,扩大对数据泄露事件的取证范围。较佳的,在本实施例中,f标准化为2;
步骤S52、构建基本的攻击网格图:按照一定规则排列时间节点为横坐标,记为{t1,t2,…ti,…,tn,ti∈T±f},排列主机IP为纵坐标,记为{h1,h2,…hp,…,hm,hp∈Nip};添加若干条边,记为{[ti,tj,hp,hq,e]},其中,i,j∈[1,n];p,q∈[1,m];e是异常事件类型。
步骤S53、构建完基本的攻击网格图之后,若两个有向边[ti1,tj1,hp1,hq1,er1]与[ti2,tj2,hp2,hq2,er2]满足一定规则,则用虚线将其连接。
在本实施例中,步骤S52中,在横坐标上排列节点的规则如下:
步骤S52A1、在横坐标上按时间顺序递增从左至右地排列时间节点。较佳的,在本实施例中,一个网格的跨度标准化一个小时。
在本实施例中,步骤S52中,在纵坐标上排列节点的规则如下:
步骤S52B1、由下至上排列发生异常流量的主机、异常载荷的主机、异常数据库访问的主机;
步骤S52B2、一组异常通信主机中,将源主机排列在较低的网格节点;
步骤S52B3、若某组异常通信主机不与其他任意组的通信异常主机构成联系,则排列在网格图较低的网格节点中。
在本实施例中,步骤S53中,两个有向边[ti1,tj1,hp1,hq1,er1]与[ti2,tj2,hp2,hq2,er2]连接规则如下:
hq1=hp2;ti1<ti2;ti2-tj1<λ;
式中,λ为阈值参数,表示两个可串联的异常事件之间容许的时间间隔范围。较佳的,在本实施例中,λ标准化为[-1,2]。
在本实施例中,步骤S6具体包括以下步骤:
步骤S61、根据攻击网格图的建模结果,与数据泄露事件关系程度较小的异常通信群组将会分布在网格图下层;然后往上依次是一次Web数据泄露事件的主要步骤:Web前端对主机的探测、端口的扫描层次;Web前端获取网络信息或主机控制权的漏洞扫描或注入攻击异常层次;Web后端访问关键网络资产并读取或写入数据造成数据泄露的异常层次。
步骤S62、根据攻击网格图描绘的数据泄露攻击的初步模型,审计数据泄露时间段内的异常主机日志数据,得到实际网络环境中主机的资产类型及异常发生的具体时间,由此绘制数据泄露场景还原重构的拓扑图。
本实施例还提供了一种基于上文所述的一种面向数据泄露的Web安全事件取证方法的系统,包括存储器与处理器,所述存储器中存储有步骤S1至步骤S6的方法指令,所述处理器在运行时执行存储器中存储的方法指令。
较佳的,本实施例的系统还可以包括以下功能模块:Web前后端异常检测模块、异常检测结果决策融合模块、数据泄露攻击建模模块、数据泄露场景重构模块。
其中,Web前后端异常检测模块,用于对多源日志进行格式转换、数据清洗、特征提取等预处理工作,将多源日志划分为Web前端的流量特征、有效载荷和Web后端的数据库访问数据,分别基于iForest、BLSTM-CNN和Canopy-kmeans进行异常识别;异常检测结果决策融合模块,用于统计各个层次异常检测结果的时间属性,关联出相同的异常时间段,在该时间段内分析出相互通信的异常主机集群,为攻击建模和数据泄露场景重建锁定Web数据泄露事件的主要时间段、参与的异常主机以及对应的异常类型,实现对前后端乃至多个层次异常检测结果进行决策融合;数据泄露攻击建模模块,用于将决策融合后的异常时间和异常主机作为网格图的横纵坐标,从时间序列和异常事件因果关系的角度出发,将不同攻击阶段的异常联系和数据泄露事件的基本过程呈现在网格图中,以实现Web数据泄露事件的攻击场景建模;数据泄露场景重构模块,用于根据攻击网格图的攻击建模结果,初步描绘出数据泄露事件的场景,并审计攻击网格图中最终构成完整攻击场景的主机及对应时间段的相关日志数据,对数据泄露场景进行更详细的描绘,实现数据泄露事件的重构。
本实施例基于Web安全取证思想及数据泄露事件的攻击链模型,面向数据泄露的Web安全事件进行异常检测、异常事件关联融合、攻击场景建模,并最终实现数据泄露场景重构,能够帮助安全管理人员快速地定位到数据泄露事件的攻击者、参与的网络内部主机、存在漏洞的服务器以及发生数据泄露的重要资产,从而更好地修复漏洞、保护重要资产、减小损失。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅是本发明的较佳实施例而已,并非是对本发明作其它形式的限制,任何熟悉本专业的技术人员可能利用上述揭示的技术内容加以变更或改型为等同变化的等效实施例。但是凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与改型,仍属于本发明技术方案的保护范围。
Claims (9)
1.一种面向数据泄露的Web安全事件取证方法,其特征在于,包括以下步骤:
步骤S1、对多源日志进行预处理;
步骤S2、将预处理后的多源日志划分为Web前端流量数据、Web有效载荷数据和Web后端数据库访问数据三个层次数据,并进行特征提取;
步骤S3、根据得到的三个层次数据,基于iForest算法模型、BLSTM-CNN混合神经网络模型和Canopy-kmeans聚类模型分别对三个层次数据进行异常检测;
步骤S4、根据各层次的异常检测结果,进行决策融合,得到与数据泄露相关的异常时间段和异常主机;
步骤S5、根据决策融合结果,以异常时间和异常主机作为横纵坐标,构建攻击网格图,将不同攻击阶段的异常联系和数据泄露事件的基本过程呈现在攻击网格图中;
步骤S6、根据攻击网格图的建模结果,初步描绘出数据泄露事件的场景,再进一步审计攻击网格图中最终构成完整攻击场景的主机及对应时间段的相关日志数据,对数据泄露场景进行更详细的描绘,实现数据泄露事件的取证重构;
步骤S6具体包括以下步骤:
步骤S61、根据攻击网格图的建模结果,与数据泄露事件关系程度较小的异常通信群组将会分布在网格图下层;然后往上依次是一次Web数据泄露事件的主要步骤:Web前端对主机的探测、端口的扫描层次;Web前端获取网络信息或主机控制权的漏洞扫描或注入攻击异常层次;Web后端访问关键网络资产并读取或写入数据造成数据泄露的异常层次;
步骤S62、根据攻击网格图描绘的数据泄露攻击的初步模型,审计数据泄露时间段内的异常主机日志数据,得到实际网络环境中主机的资产类型及异常发生的具体时间,由此绘制数据泄露场景还原重构的拓扑图。
2.根据权利要求1所述的一种面向数据泄露的Web安全事件取证方法,其特征在于,步骤S2中,划分出Web前端流量数据并进行特征提取,具体包括以下步骤:
步骤S2A1、将含有通信时间、通信源-目的主机及端口、通信协议、通信流量大小的数据日志划分为Web前端流量数据集DF;
步骤S2A2、以一选定时间单位,提取单位时间内每个主机IP的Web前端流量特征:总通信次数、不同的通信对象数、不同的通信协议数、不同的通信端口数、总流量大小;总通信次数与不同的通信对象数、通信协议数、端口数、总流量大小之间的比例;单位时间内通信次数与平均通信次数之间的差值、单位时间内通信对象数与平均通信对象数之间的差值、单位时间内通信协议数与平均通信协议数之间的差值、单位时间内通信端口数与平均通信端口数之间的差值、单位时间内通信流量与平均通信流量之间的差值;
步骤S2A3、经过步骤S2A2,得到特征提取后的Web前端流量数据集,记为DF={df1,...dfi,...,dfn},其中变量dfi表示第i个Web前端流量数据样本;
将划分出的Web有效载荷数据并进行特征提取,具体包括以下步骤:
步骤S2B1、将含有通信时间、通信源-目的主机及端口、通信请求方法、通信请求内容且通信协议为http的日志数据划分为Web前端有效载荷数据集DH;
步骤S2B2、以一选定时间单位,提取单位时间内每对通信主机双方之间的Web前端有效载荷特征:不重复的通信请求方法、请求内容及次数;
步骤S2B3、经过步骤S2B2,得到特征提取后的Web前端有效载荷数据集,记为DH={dh1,...dhi,...,dhn},其中变量dhi表示第i个Web前端有效载荷数据样本;
将划分出的Web后端数据库访问数据并进行特征提取,具体包括以下步骤:
步骤S2C1、将含有通信时间、通信源-目的主机及端口、通信访问密码、通信访问信息、通信访问用户且通信协议为mysql的日志数据划分为Web后端数据库访问数据集DS;
步骤S2C2、以每对通信双方主机为单位,提取每对主机之间的Web后端数据库访问特征:通信次数、不同的通信天数、不同的通信小时数、不同的通信访问密码数、不同的通信访问信息数、不同的通信访问用户数;
步骤S2C3、经过步骤S2C2,得到特征提取后的Web后端数据库访问数据集,记为DS={ds1,...dsi,...,dsn},其中变量dsi表示第i个Web后端数据库访问数据样本。
3.根据权利要求2所述的一种面向数据泄露的Web安全事件取证方法,其特征在于,步骤S3中,基于iForest算法模型对Web前端流量数据进行异常检测,具体包括以下步骤:
步骤S3A1、从Web前端流量数据集DF中随机抽取k个数据样本,构造一颗孤立二叉树iTree;重复t次,得到一个孤立森林iForest={Te1,...Tei,...,Tet},其中Tei是第i次构造的iTree;
步骤S3A2、计算每颗iTree中每个数据样本dfi的路径长度h(dfi),然后计算该样本的异常分数s(dfi,k),将其加入到一个优先队列,记为Q;
步骤S3A3、选择异常得分较大的预定比例的数据集作为异常流量特征样本集DNF。
5.根据权利要求2所述的一种面向数据泄露的Web安全事件取证方法,其特征在于,步骤S3中,基于BLSTM-CNN混合神经网络模型对Web有效载荷数据进行异常检测,具体包括以下步骤:
步骤S3B1、从Web有效载荷数据集DH中提取通信载荷内容字段,记为DHU;利用正常和异常的载荷内容拼接成词典,记为dt;
步骤S3B2、通过Keras工具库中的Tokenizer函数对dt和DHU进行分词、向量化处理;通过pad_sequences函数将向量化后的序列长度对齐,分别得到训练集Train和待检测集Test;
步骤S3B3、通过Keras构建BLSTM-CNN混合模型,对Train训练,之后对Test进行预测,得到预测标签为负的样本集即为含有异常有效载荷的样本集DNH。
6.根据权利要求2所述的一种面向数据泄露的Web安全事件取证方法,其特征在于,步骤S3中,基于Canopy-kmeans聚类模型对Web后端数据库访问数据进行异常检测,具体包括以下步骤:
步骤S3C1、将Web后端数据库访问数据集DS转化为列表,对其执行Canopy聚类,得到K个Canopy集合G={G1,...,GK}和K个集合中心g={g1,...,gK};
步骤S3C2、计算DS中的每个样本dsi到其所属的每个Canopy集合中心点的最近距离,加入到该中心点形成的簇中并重新计算簇的中心,重复计算过程直至聚类簇中心不再变化;
步骤S3C3、将数据样本量最少的簇作为Web后端异常样本集DNS。
8.根据权利要求7所述的一种面向数据泄露的Web安全事件取证方法,其特征在于,步骤S5具体包括以下步骤:
步骤S51、对决策融合结果中得到的异常时间段T扩展前后f个小时,扩大对数据泄露事件的取证范围;
步骤S52、构建基本的攻击网格图:按照预定规则排列时间节点为横坐标,记为{t1,t2,...ti,...,tn,ti∈T±f},排列主机IP为纵坐标,记为{h1,h2,...hp,...,hm,hp∈Nip};添加若干条边,记为{[ti,tj,hp,hq,e]},其中,i,j∈[1,n];p,q∈[1,m];e是异常事件类型;在横坐标上排列节点的规则为:在横坐标上按时间顺序递增从左至右地排列时间节点;在纵坐标上排列节点的规则如下:
步骤S52B1、由下至上排列发生异常流量的主机、异常载荷的主机、异常数据库访问的主机;
步骤S52B2、一组异常通信主机中,将源主机排列在较低的网格节点;
步骤S52B3、若其中一组异常通信主机不与其他任意组的通信异常主机构成联系,则排列在网格图较低的网格节点中;
步骤S53、构建完基本的攻击网格图之后,若两个有向边[ti1,tj1,hp1,hq1,er1]与[ti2,tj2,hp2,hq2,er2]满足预定规则,则用虚线将其连接;两个有向边[ti1,tj1,hp1,hq1,er1]与[ti2,tj2,hp2,hq2,er2]连接规则如下:
hq1=hp2;ti1<ti2;ti2-tj1<λ;
式中,λ为阈值参数,表示两个可串联的异常事件之间容许的时间间隔范围。
9.一种面向数据泄露的Web安全事件取证系统,其特征在于,包括存储器、处理器以及存储于存储器上并能够被处理器运行的计算机程序指令,当处理器运行该计算机程序指令时,能够实现如权利要求1-8任一项所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110879142.XA CN113645286B (zh) | 2021-08-02 | 2021-08-02 | 一种面向数据泄露的Web安全事件取证方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110879142.XA CN113645286B (zh) | 2021-08-02 | 2021-08-02 | 一种面向数据泄露的Web安全事件取证方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113645286A CN113645286A (zh) | 2021-11-12 |
CN113645286B true CN113645286B (zh) | 2022-08-05 |
Family
ID=78419247
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110879142.XA Active CN113645286B (zh) | 2021-08-02 | 2021-08-02 | 一种面向数据泄露的Web安全事件取证方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113645286B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114844666B (zh) * | 2022-03-16 | 2023-06-06 | 西安交通大学 | 网络流量分析与重构方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109787979A (zh) * | 2019-01-22 | 2019-05-21 | 电子科技大学 | 一种电力网络事件和入侵的检测方法 |
CN111343205A (zh) * | 2020-05-19 | 2020-06-26 | 中国航空油料集团有限公司 | 工控网络安全检测方法、装置、电子设备以及存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10785238B2 (en) * | 2018-06-12 | 2020-09-22 | Secureworks Corp. | Systems and methods for threat discovery across distinct organizations |
US11373106B2 (en) * | 2019-11-21 | 2022-06-28 | Fractal Analytics Private Limited | System and method for detecting friction in websites |
-
2021
- 2021-08-02 CN CN202110879142.XA patent/CN113645286B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109787979A (zh) * | 2019-01-22 | 2019-05-21 | 电子科技大学 | 一种电力网络事件和入侵的检测方法 |
CN111343205A (zh) * | 2020-05-19 | 2020-06-26 | 中国航空油料集团有限公司 | 工控网络安全检测方法、装置、电子设备以及存储介质 |
Non-Patent Citations (1)
Title |
---|
A Hybrid Intrusion Detection System Based on Scalable K-Means+ Random Forest and Deep Learning;CHAO LIU等;《IEEE ACCESS》;20210527;第9卷;第75729-75739页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113645286A (zh) | 2021-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11087329B2 (en) | Method and apparatus of identifying a transaction risk | |
US20210019674A1 (en) | Risk profiling and rating of extended relationships using ontological databases | |
US10554674B2 (en) | Incident triage scoring engine | |
CN111565205B (zh) | 网络攻击识别方法、装置、计算机设备和存储介质 | |
Cinar et al. | Cloud computing forensics; challenges and future perspectives: A review | |
CN114143020A (zh) | 一种基于规则的网络安全事件关联分析方法和系统 | |
CN111917793B (zh) | 一种攻击链情报分析方法、系统及存储介质 | |
WO2014084849A1 (en) | Distributed pattern discovery | |
CN113645286B (zh) | 一种面向数据泄露的Web安全事件取证方法及系统 | |
CN115766258A (zh) | 一种基于因果关系图的多阶段攻击趋势预测方法、设备及存储介质 | |
US20200004905A1 (en) | System and methods for complex it process annotation, tracing, analysis, and simulation | |
CN117061254B (zh) | 异常流量检测方法、装置和计算机设备 | |
CN111709021B (zh) | 一种基于海量告警的攻击事件识别方法及电子装置 | |
WO2020167539A1 (en) | System and method for complex it process annotation, tracing, analysis, and simulation | |
CN112287340A (zh) | 用于终端攻击的取证溯源方法、装置、计算机设备 | |
CN114726634B (zh) | 一种基于知识图谱的黑客攻击场景构建方法和设备 | |
CN113704624B (zh) | 基于用户分流的策略推荐方法、装置、设备及介质 | |
CN114915485A (zh) | 基于ueba的异常行为分析方法及装置 | |
CN115470489A (zh) | 检测模型训练方法、检测方法、设备以及计算机可读介质 | |
CN114912628A (zh) | 特征选择方法、装置、电子设备及计算机可读存储介质 | |
Barrionuevo et al. | Secure computer network: Strategies and challengers in big data era | |
Naukudkar et al. | Enhancing performance of security log analysis using correlation-prediction technique | |
Zhang | A novel data preprocessing solution for large scale digital forensics investigation on big data | |
CN115098602B (zh) | 基于大数据平台的数据处理方法、装置、设备及存储介质 | |
KR102592624B1 (ko) | 사회이슈형 사이버 표적공격의 대응을 위한 인공지능 기법을 이용한 위협 헌팅 시스템 및 그 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |