CN113904872B - 一种针对匿名服务网站指纹攻击的特征提取方法及系统 - Google Patents
一种针对匿名服务网站指纹攻击的特征提取方法及系统 Download PDFInfo
- Publication number
- CN113904872B CN113904872B CN202111387115.7A CN202111387115A CN113904872B CN 113904872 B CN113904872 B CN 113904872B CN 202111387115 A CN202111387115 A CN 202111387115A CN 113904872 B CN113904872 B CN 113904872B
- Authority
- CN
- China
- Prior art keywords
- feature
- flow
- layer
- feature extraction
- shared
- 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
- 238000000605 extraction Methods 0.000 title claims abstract description 59
- 239000013598 vector Substances 0.000 claims abstract description 87
- 238000012549 training Methods 0.000 claims abstract description 20
- 230000009977 dual effect Effects 0.000 claims abstract description 15
- 230000004927 fusion Effects 0.000 claims abstract description 14
- 230000009467 reduction Effects 0.000 claims abstract description 6
- 238000004364 calculation method Methods 0.000 claims abstract description 5
- 230000007246 mechanism Effects 0.000 claims abstract description 5
- 238000000034 method Methods 0.000 claims description 28
- 239000011159 matrix material Substances 0.000 claims description 20
- 238000013135 deep learning Methods 0.000 claims description 13
- 238000013145 classification model Methods 0.000 claims description 11
- 230000008569 process Effects 0.000 claims description 10
- 238000004519 manufacturing process Methods 0.000 claims description 9
- 230000004913 activation Effects 0.000 claims description 7
- 230000003068 static effect Effects 0.000 claims description 7
- 238000003860 storage Methods 0.000 claims description 7
- 238000009826 distribution Methods 0.000 claims description 6
- 238000011156 evaluation Methods 0.000 claims description 6
- 238000007637 random forest analysis Methods 0.000 claims description 5
- 230000006870 function Effects 0.000 claims description 4
- 238000001914 filtration Methods 0.000 claims description 3
- 238000007500 overflow downdraw method Methods 0.000 claims description 3
- 238000007781 pre-processing Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 claims description 3
- 238000004458 analytical method Methods 0.000 claims description 2
- 238000010606 normalization Methods 0.000 claims description 2
- 238000000926 separation method Methods 0.000 claims description 2
- 230000009466 transformation Effects 0.000 claims description 2
- 239000000284 extract Substances 0.000 abstract description 4
- 230000007547 defect Effects 0.000 abstract description 3
- 238000004880 explosion Methods 0.000 abstract description 3
- 238000012360 testing method Methods 0.000 description 7
- 238000010801 machine learning Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000003066 decision tree Methods 0.000 description 4
- 238000013136 deep learning model Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 102100026278 Cysteine sulfinic acid decarboxylase Human genes 0.000 description 1
- BUGBHKTXTAQXES-UHFFFAOYSA-N Selenium Chemical compound [Se] BUGBHKTXTAQXES-UHFFFAOYSA-N 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005206 flow analysis Methods 0.000 description 1
- 238000011423 initialization method Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 108010064775 protein C activator peptide Proteins 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 229910052711 selenium Inorganic materials 0.000 description 1
- 239000011669 selenium Substances 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- 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/1441—Countermeasures against malicious traffic
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
- G06F18/2135—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on approximation criteria, e.g. principal component analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/24323—Tree-organised classifiers
-
- 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/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开一种针对匿名服务网站指纹攻击的特征提取方法及系统,首先从原始流量中过滤出匿名服务网页流量,通过孪生模型提取出双重高维深度特征向量,弥补现有技术依赖于使用不同模型以提取多模态特征需要高计算开销的缺点与直接使用参数共享机制易造成参数冗余与梯度爆炸的缺点,然后使用特征萃取‑融合网络从双重高维深度特征向量中分离出特定特征向量与共享特征向量,并从样本间与样本内两个层面分析调整了特征向量距离;然后使用改进的对数据进行降维,最后通过动态特征融合策略融合共享特征向量,使用该向量训练分类器并识别匿名服务网页标签。本发明实现了从原始流量中过滤出匿名服务网页流量,提取用于网站指纹攻击的融合特征,提升了鲁棒性的同时保持较高的识别率。
Description
技术领域
本发明涉及网络安全技术,具体涉及一种针对匿名服务网站指纹攻击的特征提取方法及系统。
背景技术
匿名服务是目前最受欢迎的匿名通信系统之一。它隐藏了发送方、接收方身份与通信关系,使得传统流量分析方法无法识别出用户和用户访问的网站。匿名通信系统虽然很大程度上保护了互联网用户的隐私,但同时也为不法分子进行违法犯罪提供了可乘之机。他们利用匿名通信系统提供的匿名性访问各类网站进行违法行为和交易而不被追踪,给公共安全和社会财富造成了严重的危害。
网站指纹攻击是指通过获取不法分子访问网站时产生的流量数据,利用机器学习等方法对其进行分类的过程。随着多模态技术的发展,基于单一网络的多模态特征提取技术已经得到了验证,现有匿名网页指纹攻击方案大部分使用单个模型将单个特征作为输入,忽略了特征之间的关联性与共享信息,如基于数据包大小的特征和基于数据包方向的特征各自编码了观察到的与网页相关的共享信息和与特征相关的特定信息。因此在小样本情况下可能无法提取到有效区分各种不同网站的特征,造成识别率的下降。
此外,现有方案大多对一些公开的数据集进行简单的测试验证,没有在实际应用场景中进行部署。且各种方案模型单一,不能根据不同的场景选取最适合的模型,从而将识别准确率达到最高。没有一个完整的系统能够快速部署实施以识别互联网中数量庞大、更新频繁的网站产生的匿名流量。因此,需要一个成熟且完整的系统来高效实施网站指纹攻击。
发明内容
发明目的:本发明的目的在于解决现有技术中存在的不足,提供一种针对匿名服务网站指纹攻击的特征提取方法及系统,能够在匿名网络环境下实现快速部署实施,并利用抓取到的少量样本中提取的有效特征即可识别出不法分子访问的匿名网站,对维护网络环境的安全有着良好的应用前景。
技术方案:本发明的一种针对匿名服务网站指纹攻击的特征提取方法,包括以下内容:
(1)采集网页流量文件中的原始数据包,去除其中的噪声,并根据数据包时间间隔分布确定突发间隔来分割突发,从每个不间断突发中提取出数据包大小序列与数据包方向序列,并通过孪生模型提取出双重高维深度特征向量;
(2)使用特征萃取-融合网络中的稀疏自动编码层对步骤(1)所得特征向量线性投影和非线性激活,并从中分离出特定特征向量和共享特征向量,然后通过逆向化余弦相似度来衡量特征向量之间的距离并计算样本间和样本内的距离损失与输出特征向量的稀疏性惩罚;
(3)改进L2,0.4-norm PCA,并结合不同的投影矩阵与重构矩阵对步骤(2)网络的最后一层输出进行降维,利用有标记样本训练网络,通过降低网络损失提取出满足特征距离小与参数稀疏性平衡的共享特征;
(4)通过动态特征融合策略综合评价并计算两种共享特征集中所有特征的权重,然后按照特征集的不同分别进行归一化,并将归一化后的权重之和作为整个特征集的权重,最后提取加权后的特征向量。
进一步地,所述步骤(1)提取双重高维深度特征向量时使用的孪生模型中设有部分参数共享机制,其具体过程为:
特征向量(数据包大小序列与数据包方向序列)每经过一个一维卷积层都会被输入到一个BN批量归一化层,并针对所属模态计算尺度与偏差,即其中xs和ys为输入和输出的特征向量,μs和/>是当前小批量的均值与标准差,∈为一个大于0小于1的常数,以避免被零除;激活层使用PReLu同时考虑处理正负输入,即其中α为不共享的可学习参数;γs是指对xs归一化后的值进行缩放的缩放因子,βs是指对xs归一化后的值进行移动的尺度,x是至BN层输出的特征向量中的每个特征值,即ys中的每个特征值,α是指对每个小于0的特征值进行缩放的缩放因子;
该孪生模型中除BN层和激活层之外的所有平行卷积层参数都是部分跨模态共享的,即对每层的卷积核均进行线性变换,对于任意的卷积核集F,其中每个卷积核Ft都可以表示为一系列低秩的卷积核基加权求和得到Ft;
其中/>为某一个卷积核基,Rank为卷积核基的秩,αr为系数,通过共享/>而保留特定于模态的αr的方式以此来促进多模态特征的内部交互,同时防止因卷积层参数即卷积核共享导致的参数冗余与梯度爆炸。
进一步地,所述步骤(1)所得的每一个双重高维深度特征向量(128维)对中均包含一定的相互共享信息与模态特定信息,所述步骤(2)使用“特征距离-参数稀疏性损失”来分离此双重高维深度特征,具体内容如下:
首先使用多层的稀疏自动编码器将其分割为两个不同的部分,即特定特征向量和共享特征向量/>
其中,和/>分别代表数据包大小和方向序列经过l+1层稀疏编码层提取后的特定特征向量;/>和/>分别代表数据包大小和方向序列经过l+1层稀疏编码层提取后的共享特征向量;Ws是指所有稀疏编码层共享的权重参数,用于对第l层数据包大小序列的特定特征向量线性投影;Wd是指所有稀疏编码层共享的权重参数,用于对第l层数据包方向序列的特定特征向量线性投影;/>是指分离第l层数据包大小序列特定特征向量时特定于第l层时的不共享偏置;/>是指分离第l层数据包方向序列特定特征向量时特定于第l层时的不共享偏置;/>是指分离第l层数据包大小序列共享特征向量时特定于第l层时的不共享偏置;/>是指分离第l层数据包方向序列共享特征向量时特定于第l层时的不共享偏置;
l代表层数,l∈{1,2…,n},由于使用孪生模型提取特征,样本内的特定特征之间的距离相对较小,故为了使模型在大幅共享参数的情况下保持一定的模态特定信息与识别率,样本内特定特征之间应尽可能远离,样本间共享特征之间应尽可能接近,首先使用逆向化余弦相似度来衡量两特征向量之间的距离,即
使用三元组损失来增加样本之间的辨别能力,样本内更加关注特定特征之间的距离损失,由于计算的特征包括两种类型的共享特征与特定特征(样本间共享特征与样本内特定特征),需要分别计算损失,即
其中,代表串联共享特征,i,j为同类样本、j,k为异类样本;同时使用KL散度项作为输出特征向量的稀疏度惩罚项。
进一步地,所述步骤(3)通过改进PCA为L2,0.4-norm PCA来对步骤(2)的分离数据进行降维,具体过程如下:
将稀疏自动编码层的输出缩放到相同大小,为下行融合做好准备,而传统的PCA方法采用的平方L2范数会放大异常值的影响,本阶段采用了更加鲁棒的L2,0.4范数来衡量矩阵距离,即
其中,A∈Rd×m,ap代表矩阵A任意第p行,
由于采用L2,0.4范数,最大化数据方差和最小化重构误差的过程将不再等价,故使用不同的投影矩阵与重构矩阵将二者分开考虑,详细步骤为:
假设上步得到的128维特征矩阵为X=[x1,x2,…,xn]∈R128×n,定义投影矩阵P=[p1,…,pr]∈R128×64与重构矩阵C=[c1,…,cr]∈R128×64,其中64代表降维后的维度;此处R为实数;
首先对每个特征向量中心化,接着分别创建目标函数,即最大化数据方差/>最小化数据重构损失/> 综合二者考虑即
其中λ1、λ2、P、C为超参数,P和C均初始化为矩阵X的协方差矩阵前64个最大特征值对应的特征向量组成的矩阵,最后将Ldr代入整体损失函数Loss训练至收敛。
进一步地,所述步骤(4)中两种共享特征集中所有特征的计算方法为:
由于每个样本经过降维后都会产生64维大小相关特征集和方向相关的特征集,组合起来就是128维特征集;随机抽取m个样本,使用L2,0.4范数计算样本距离,对于每个样本L,步骤(2)拉近了同类样本之间的距离,拉远了异类样本之间的距离,步骤(3)降低了异常值的影响且去除了冗余特征,故步骤(4)中的样本的分布更加稳定,可以使用样本的结构分布信息判断各个特征的权重,具体方式为:从和样本L同类的样本中寻找v个最近邻样本H,从和样本L不同类的样本中寻找v个最近邻样本M,单个特征A的权重的计算过程为:
其中
表示样本L和Hu在特征A上的差,diff(A,L,Mu(C))代表样本L与和其异类且类别为C的样本Mu(C)在特征A上的差,所有特征权重都初始化为0;得到每个特征的权重后对其进行归一化,对应特征集的特征权重相加权重即为该特征集的权重,即
S和D分别代表数据包大小和数据包方向相关特征集。
本发明还公开一种用于实现针对匿名服务网站指纹攻击的特征提取方法的系统,包括管理展示模块、流量采集模块、流量分类模块、特征提取模块、模型训练模块和网站识别模块;其中特征提取模块基于孪生模型的特征萃取-融合方法,管理展示模块负责配置管理其他模块:
所述管理展示模块中的管理模块可自主添加配置深度学习特征提取模型和分类器、采集数据集任务和识别任务等,管理展示模块中的展示模块可自动查看识别任务和识别结果等;
所述流量采集模块采集训练环境流量和生产环境流量,采集网络中各关键节点镜像流量并转发给指定的流量过滤系统,对多条路径下的流量进行集中汇总去重,并去除背景流量和混淆流量;
所述流量分类模块通过分析匿名服务的源码,并从中找出解析权威目录服务器的IP地址,通过向权威目录服务器发出请求获取共识文件consensus.z,解析共识文件即可获得匿名服务节点中的入口节点,得到所有入口节点的IP作为静态特征,采用静态特征分类匿名服务流量和非匿名服务流量;进一步地,使用在流量分类任务中分类性能最好的随机森林匿名服务流量中的网页流量;
所述特征提取模块用于根据实际需求(如应对混淆流量选择DF模型,应对实时流量分类选择已经训练好的模型)选择已训练或定义好的特征提取模型,使用特征提取方法对上一步产生的网页流量进行预处理,建立基础特征矩阵,并提取出融合特征向量;
所述模型训练模块根据实际需求选择合适的网站指纹攻击模型以对提取好的融合特征进行训练,并给出训练好的模型相关评估指标,用户可根据指标或整体运行时间动态调整不同的攻击模型与特征提取模型以找出最适合用户所处网络环境的组合;
所述网站识别模块将生产环境提取的特征集输入分类模块训练好的分类模型,最终识别出目标用户所访问的网站域名。
本发明还公开一种计算机存储介质,该计算机存储介质中存储有针对匿名服务网站指纹攻击的程序,执行该程序时实现上述针对匿名服务网站指纹攻击的特征提取方法。
有益效果:与现有技术相比,本发明具有以下优点:
(1)针对传统的单个特征单个模型结构在小样本情况下不能有效提取特征以及目前缺乏一个完整且易于部署的网站指纹攻击系统的问题,本发明从原始流量中过滤出匿名服务网页流量,通过孪生模型提取出双重高维深度特征向量,弥补了现有方法依赖于使用不同模型以提取多模态特征需要高计算开销的缺点与直接使用参数共享机制易造成参数冗余与梯度爆炸的缺点。
(2)本发明使用特征萃取-融合网络从双重高维深度特征向量中分离出特定特征向量与共享特征向量,并从样本间与样本内两个层面分析调整了特征向量距离。
(3)本发明使用改进的PCA对数据进行降维,最后通过动态特征融合策略融合共享特征向量,使用该向量训练分类器并识别匿名服务网页标签。
(4)本发明实现了从原始流量中过滤出匿名服务网页流量,提取用于网站指纹攻击的融合特征,提升了鲁棒性的同时保持较高的识别率。
附图说明
图1为本发明的整体流程示意图;
图2为实施例中的具体流程示意图;
图3为实施例的系统首页参考页面;
图4为实施例的网站域名配置参考页面;
图5为实施例的域名类型配置参考页面;
图6为实施例的任务管理参考页面;
图7为实施例的新建任务计划参考页面。
具体实施方式
下面对本发明技术方案进行详细说明,但是本发明的保护范围不局限于所述实施例。
如图1所示,本实施例的针对匿名服务网站指纹攻击的特征提取方法,包括以下内容:
(1)采集网页流量文件中的原始数据包,去除其中的噪声,并根据数据包时间间隔分布确定突发间隔来分割突发,从每个不间断突发中提取出数据包大小序列与数据包方向序列,并通过孪生模型提取出双重高维深度特征向量;
(2)使用特征萃取-融合网络中的稀疏自动编码层对步骤(1)所得特征向量线性投影和非线性激活,并从中分离出特定特征向量和共享特征向量,然后通过逆向化余弦相似度来衡量特征向量之间的距离并计算样本间和样本内的距离损失与输出特征向量的稀疏性惩罚;
(3)改进L2,0.4-norm PCA,并结合不同的投影矩阵与重构矩阵对步骤(2)网络的最后一层输出进行降维,利用有标记样本训练网络,通过降低网络损失提取出满足特征距离小与参数稀疏性平衡的共享特征;
(4)通过动态特征融合策略综合评价并计算两种共享特征集中所有特征的权重,然后按照特征集的不同分别进行归一化,并将归一化后的权重之和作为整个特征集的权重,最后提取加权后的特征向量。
由于现有的PCA使用了L2,2范式,会导致在使用原始数据的标准正交基组成的矩阵W计算最大化数据方差和最小化重构误差时会放大异常值的影响,本实施例对PCA进行改进解决该问题,可以求出合适的投影矩阵P与投影矩阵C,利用P进行降维。
实现针对匿名服务网站指纹攻击的特征提取方法的系统,包括管理展示模块、流量采集模块、流量分类模块、特征提取模块、模型训练模块和网站识别模块,其中特征提取模块使用了基于孪生模型的特征萃取-融合方法,管理展示模块负责配置管理其他模块。
本实施例的管理展示模块中的配置模块自主添加配置深度学习特征提取模型和分类器,添加数据采集任务、网站识别任务等,展示模块可以查看识别任务进度及结果。管理展示模块中的网站识别任务是指由于互联网中的网站数以亿计,且大多数网站随时间变化内容更新巨大,任何再强大的深度学习模型也不能对全部网站进行训练,或者识别出不同时间段的同一个网站。因此每个任务中的模型只能对它所受训练的一组目标网站做出识别。管理展示模块中的目标网站是指若不法分子访问过该网站时产生的流量,能够被经过训练好的深度学习模型能够识别出域名的网站。管理展示模块中目标网站列表可由数据库存储的网站总列表勾选的得到一张新表,也可为每个任务手动添加新的网站域名并存入数据库的网站总列表,亦可通过导入外部文件的方式添加新的网站并存入网站总列表以备下次任务直接勾选使用。管理展示模块中的任务结果报告指一张存入数据库的数据表,后期可重复查看。主要内容为每段流量对应的用户访问时间、流量特征集、网站指纹攻击模型预测的可能域名以及修改域名所属的类型。管理展示模块中的添加任务指此系统能够同时建立多个任务,只需预先定义好模型相关参数和流量文件存储目录,之后这些任务会自动完成,保存并给出多份独立的任务结果报告。
本实施例的流量采集模块分为两部分:测试环境流量采集、生产环境流量采集。测试环境流量采集通过在虚拟机环境中自动访问用户关注网站,采集该关注网站访问过程中的流量数据,用于训练人工智能模型。生产环境流量采集是指在本系统部署的环境下开展流量采集,将流量按照PCAP格式存储,用于流量分类任务。
流量采集模块中的自动访问目标网站是指编写脚本通过但不限于使用selenium这类web自动化测试工具访问目标网站;流量采集模块中的测试环境流量采集是指通过但不限于wireshark、pyshark这类抓包工具抓取访问目标网站时产生的数据包;流量采集模块中的生产环境流量采集是指通过但不限于交换机端口镜像方式抓取访问目标网站时产生的数据包;流量分类模块用于从采集到的流量中提取静态特征,训练机器学习分类器分类该流量,从而从匿名服务流量中筛选出网页类型流量。
本实施例的流量分类模块中的静态特征是指从匿名服务网络的入口节点IP地址,通过分析匿名服务的源码,并从中找出解析权威目录服务器的IP地址,通过向权威目录服务器发出请求获取共识文件consensus.z,解析共识文件即可获得匿名服务节点中的入口节点,得到所有入口节点的IP作为静态特征;利用流量采集模块中捕获所述匿名服务流量结合匿名服务入口节点IP特征,将其划分为匿名服务流量和非匿名服务流量文件。
本实施例的流量分类模块中的机器学习方法主要包括但不限于基于决策树的方法J48、随机森林RF、基于贝叶斯的方法朴素贝叶斯、基于规则的方法jRip、基于神经网络的方法等,考虑到方法学习的时间开销问题,使用在流量分类任务中分类性能最好的随机森林作为识别流量是否为匿名服务流量以及是否为网页流量的方法。随机森林具体过程为:从数据集中有放回随机采样出n个样本,从特征集中随机选择k个特征,并对采样的样本利用这些特征建立决策树,重复以上过程m次,即生成m颗决策树,对于流量分类的结果由所有决策树投票决定。
本实施例的特征提取模块用于根据实际需求(如应对混淆流量选择DF模型,应对实时流量分类选择已经训练好的模型)选择已训练或定义好的特征提取模型,结合特征提取方法以对流量进行第二次深层特征提取构成特征集。
本实施例的模型训练模块用于根据实际需求选择合适的网站指纹攻击模型搭配选定的特征提取模型,以对提取好的流量特征进行训练,并给出训练好的模型相关评估指标,用户可根据指标或整体运行时间动态调整不同的攻击模型与特征提取模型以找出最适合用户所处网络环境的组合;模型训练模块中的网站指纹攻击模型指一种分类模型,包括但不限于由神经网络搭建出后训练的MLP深度学习模型和机器学习分类模型SVM、KNN,其训练结果的评估指标一般为TOP-5Accuracy、Recall和FPR。
本实施例的网站识别模块用于将生产环境提取的特征集输入分类模块训练好的分类模型,最终识别出目标用户所访问的网站域名。
结合机器学习进行流量分类从而过滤出匿名服务网站流量,利用深度学习进行指纹特征提取和分类识别,建立不同的任务针对不法分子访问特定网站时产生的流量进行识别。首先针对目标网站,从数据库中勾选或通过添加导入外部文件的方式建立目标网站列表(即监控网站)。之后系统将主动访问这些并抓取产生的流量。对这些流量文件进行预处理,经流量分类进行第一次过滤,从中筛选出匿名服务网络流量,再通过采用了针对匿名服务网站指纹攻击的特征提取方法的深度学习特征提取模型进行特征提取,利用选定的深度学习分类模型进行训练,获得网站指纹攻击模型。最后利用这套模型对不法分子访问违规网站时产生的流量文件实行抓取和分类,对其中的匿名服务网站流量进行网站指纹攻击,从而获取不法分子访问的网站域名。
实施例1:
本实施例的针对匿名服务网站指纹攻击的特征提取方法,具体步骤为:
S101:在测试环境下部署上述系统,选取一组目标网站,系统自动访问并收集目标网站集合中的网站流量形成目标流量集,使用简单的匿名服务流量分类器从中提取出匿名服务流量,接着对提取到的匿名服务流量使用匿名服务网页流量分类器,从匿名服务流量中过滤出匿名服务网页流量,匿名服务网页流量将作为后续网页指纹识别模型的原始数据。
S102:将步骤S101过滤出的匿名服务网页流量文件处理成只留下数据包大小和数据包方向这两种流量特征,以矩阵Mm*2=[[66,1],[1460,-1],…]形式存储为文本文件,每一个文本代表对一个网站一次访问产生的一条完整的网络流,文件命名格式为“域名+访问次数”,如www.baidu.com_001。
S103:去除流量中的噪声(比如数据包大小非常小,即那些访问失败产出的流量文件),对预处理后得到矩阵M使用深度学习特征提取模型进行特征提取后进一步利用特征萃取-融合网络提取共享特征,并得到降维后的低维有效特征。
S104:此时,监控网站特征对应的标签为文件名中的网站域名,非监控网站特征对应的标签统一修改为www.test.com或或其他形式;再对监控网站和非监控网站的标签按顺序进行one-hot编码或embedding编码;每个网站的低维有效特征与对应的标签编码构成一个特征/标签对,随机打乱后送入选择好的分类模型开始训练,训练结束后给出深度学习分类模型评估指标。
S105:最后,在生产环境下部署本系统,新建不同任务以收集用户的目标流量,选择在测试环境下训练好的特定的深度学习特征提取模型与分类模型进行网站指纹攻击。任务全部结束后,给出结果报告,S104的评估指标可当作该报告的可信度。如若对报告质量不满意,可对同一目标流量文件新建不同任务并使用不同的深度学习特征提取模型和分类模型实行网站指纹攻击,以尽可能的获得最满意的高质量结果报告。
实施例2:
使用实施例1中的特征提取模块,用户选择使用DF作为特征提取模型,故系统后台自动搭建基于DF的特征萃取-融合网络训练特征提取模型,用于从基础特征集中提取深度特征集。
如图2所示为本实施例中基于DF的特征萃取-融合网络,该网络的输入为两个1*1000的向量,模型参数使用He初始化方法初始化。使得正向传播时,状态值的方差保持不变;反向传播时,关于激活值的梯度的方差保持不变。网络上半部分100为DF模型去除了最后的全连接层和softmax层后组成的孪生网络Neta和Netb,Neta接收1*1000的数据包大小向量,Netb接收1*1000的数据方向向量,经过多个卷积层、激活层、池化层得到两个128维的深层特征。并将其作为网络下半部分特征萃取-融合网络200的输入,再次经过多个稀疏自动编码层从中提取出特定特征向量与共享特征向量,对最后一层的两个输出的共享特征向量进行非线性降维300和特征融合400得到64维低维融合特征向量。
实施例3:
本实施例将上述系统进行实际应用,该应用的图形化界面包括:
如图3所示,系统首页参考页面,该页面划分成三个板块,分别是:“任务配置选择板块”、“待执行任务列表模块”和“当前任务进度详情模块”。“任务配置选择板块”按顺序进行每个任务的基本配置;“待执行任务列表模块”显示接下来需要完成的任务;“当前任务进度详情模块”显示当前正在执行的任务的进度情况。
所图4所示的网站域名配置参考页面,该页面主要有三种方法创建目标域名列表:一、直接通过滑动或搜索的方式在数据库已有的域名列表中勾选域名,生成目标域名列表;二、可以手动添加新的域名并同时存储到数据库的总域名列表中,以备下次新建任务使用;三、可以直接从外部导入域名列表文件并同时添加到数据库中。此外,每条记录中网站域名对应的网站类型列需存在于图4中网站类型,即满足参照完整性。
如图5所示的域名类型配置参考页面,该页面主要用于配置每个网站对应的类型,如“行政”、“教育”,该页面中的每条记录对应于图5中的每条记录的一个外键。如若当前列表中不存在图5所需类型,可以手动添加。
如图6所示的任务管理参考页面,该页面主要用于查看已经建立的任务信息,包括已完成的任务、正在执行的任务和未完成的任务。对于已完成的任务,可查看和导出任务的结果报告;对于未完成的任务,可以修改任务的相关配置。
如图7所示的新建任务计划参考页面,该页面用于创建新的任务,每个任务有以下配置选项。必填项:一、任务名称;二、目标域名列表;三、目标用户信息;四、目标域名列表中每个网站需要系统主动访问的次数(若选择通过其它机器访问并抓取目标域名列表中的网站产生的流量,可直接拷贝到此系统所在计算机,选择好相应的文件即可);五、目标流量文件存储目录。可选择配置项:一、深度学习特征提取模型,若不配置,则默认使用第一项模型;二、网站指纹存储目录,若不配置,则选择默认文件存储路径;三、深度学习分类模型:若不配置,则默认使用第一项模型。
Claims (6)
1.一种针对匿名服务网站指纹攻击的特征提取方法,其特征在于:包括以下内容:
(1)采集网页流量文件中的原始数据包,去除其中的噪声,并根据数据包的时间间隔分布来确定突发间隔以及分割突发,从每个不间断突发中提取出数据包大小序列与数据包方向序列,并通过孪生模型提取出双重高维深度特征向量;
此处提取双重高维深度特征向量时使用的孪生模型中设有部分参数共享机制,其具体过程为:
特征向量每经过一个一维卷积层都会被输入到一个BN批量归一化层,并针对所属模态计算尺度与偏差,即其中xs和ys为输入和输出的特征向量,μs和/>是当前小批量的均值与标准差,∈为一个大于0小于1的常数;激活层使用PReLu同时考虑处理正负输入,即/>其中α为不共享的可学习参数;γs是指对xs归一化后的值进行缩放的缩放因子,βs是指对xs归一化后的值进行移动的尺度,x是至BN层输出的特征向量中的每个特征值,即ys中的每个特征值,α是指对每个小于0的特征值进行缩放的缩放因子;
该孪生模型中除BN层和激活层之外的所有平行卷积层参数均是部分跨模态共享,即对每层的卷积核均进行线性变换,对于任意的卷积核集F,其中每个卷积核Ft都可以表示为一系列低秩的卷积核基加权求和得到Ft;
其中/>为某一个卷积核基,Rank为卷积核基的秩,αr为系数,此处共享/>且保留特定于模态的αr;
(2)使用特征萃取-融合网络中的稀疏自动编码层对步骤(1)所得特征向量线性投影和非线性激活,并从中分离出特定特征向量和共享特征向量,然后通过逆向化余弦相似度来衡量特征向量之间的距离并计算样本间和样本内的距离损失与输出特征向量的稀疏性惩罚;
其中,具体是使用多层的稀疏自动编码器将双重高维深度特征向量分割为两个不同的部分,即特定特征向量和共享特征向量l代表层数,l∈{1,2…,n};/>和/>分别代表数据包大小和方向序列经过l+1层稀疏编码层提取后的特定特征向量;/>和/>分别代表数据包大小和方向序列经过l+1层稀疏编码层提取后的共享特征向量;Ws是指所有稀疏编码层共享的权重参数,用于对第l层数据包大小序列的特定特征向量线性投影;Wd是指所有稀疏编码层共享的权重参数,用于对第l层数据包方向序列的特定特征向量线性投影;/>是指分离第l层数据包大小序列特定特征向量时特定于第l层时的不共享偏置;/>是指分离第l层数据包方向序列特定特征向量时特定于第l层时的不共享偏置;/>是指分离第l层数据包大小序列共享特征向量时特定于第l层时的不共享偏置;/>是指分离第l层数据包方向序列共享特征向量时特定于第l层时的不共享偏置;
(3)改进L2,0.4-normPCA,并结合不同的投影矩阵与重构矩阵对步骤(2)网络的最后一层输出进行降维,利用有标记样本训练网络,通过降低网络损失提取出满足特征距离小与参数稀疏性平衡的共享特征;
(4)通过动态特征融合策略综合评价并计算两种共享特征集中所有特征的权重,然后按照特征集的不同分别进行归一化,并将归一化后的权重之和作为整个特征集的权重,最后提取加权后的特征向量。
2.根据权利要求1所述的针对匿名服务网站指纹攻击的特征提取方法,其特征在于:所述步骤(1)所得的每一个双重高维深度特征向量对中均包含一定的相互共享信息与模态特定信息,然后步骤(2)使用“特征距离-参数稀疏性损失”来分离此双重高维深度特征,具体内容如下:
首先使用多层的稀疏自动编码器将双重高维深度特征向量分割为两个不同的部分,即特定特征向量和共享特征向量
然后,使用逆向化余弦相似度来衡量两特征向量之间的距离的方法为:
样本间共享特征与样本内特定特征的距离损失为:
其中,代表串联共享特征,i,j为同类样本、j,k为异类样本;
使用KL散度项作为输出特征向量的稀疏度惩罚项。
3.根据权利要求1所述的针对匿名服务网站指纹攻击的特征提取方法,其特征在于:所述步骤(3)通过改进PCA为L1,0.4-normPCA来对步骤(2)的分离数据进行降维,具体过程如下:
将稀疏自动编码层的输出缩放到相同大小,使用鲁棒的L2,0.4范数来衡量矩阵距离,即
其中,A∈Rd×m,ap代表矩阵A任意第p行,
使用不同的投影矩阵与重构矩阵来分别得到最大化数据方差和最小化重构误差,具体为:
假设所得128维特征矩阵为X=[x1,x2,…,xn]∈R128×n,定义投影矩阵P=[p1,…,pr]∈R128×64与重构矩阵C=[c1,…,cr]∈R128×64,其中64代表降维后的维度;此处R表示实数;
首先对每个特征向量中心化,接着分别创建目标函数,即最大化数据方差/>最小化数据重构损失/> 综合二者即:
其中,λ1、λ2、P、C为超参数,P和C均初始化为矩阵X的协方差矩阵前64个最大特征值对应的特征向量组成的矩阵,最后将Ldr代入整体损失函数Loss训练至收敛。
4.根据权利要求1所述的针对匿名服务网站指纹攻击的特征提取方法,其特征在于:所述步骤(4)中两种共享特征集中所有特征的计算方法为:
随机抽取m个样本,使用L2,0.4范数计算样本距离,对于每个样本L,使用样本的结构分布信息判断各个特征的权重,具体方式为:
从和样本L同类的样本中寻找v个最近邻样本H,从和样本L不同类的样本中寻找v个最近邻样本M,单个特征A的权重的计算过程为:
其中
表示样本L和Hu在特征A上的差,diff(A,L,Mu(C))代表样本L与和其异类且类别为C的样本Mu(C)在特征A上的差,所有特征权重都初始化为0;得到每个特征的权重后对其进行归一化,对应特征集的特征权重相加权重即为该特征集的权重,即
S和D分别代表数据包大小和数据包方向相关特征集。
5.一种用于实现如权利要求1至4任意一项所述的针对匿名服务网站指纹攻击的特征提取方法的系统,其特征在于:包括管理展示模块、流量采集模块、流量分类模块、特征提取模块、模型训练模块和网站识别模块;其中特征提取模块基于孪生模型的特征萃取-融合方法,管理展示模块负责配置管理其他模块:
所述管理展示模块中的管理模块可自主添加配置深度学习特征提取模型和分类器、采集数据集任务和识别任务,管理展示模块中的展示模块可自动查看识别任务和识别结果;
所述流量采集模块采集训练环境流量和生产环境流量,采集网络中各关键节点镜像流量并转发给指定的流量过滤系统,对多条路径下的流量进行集中汇总去重,并去除背景流量和混淆流量;
所述流量分类模块通过分析匿名服务的源码,并从中找出解析权威目录服务器的IP地址,通过向权威目录服务器发出请求获取共识文件consensus.z,解析共识文件即可获得匿名服务节点中的入口节点,得到所有入口节点的IP作为静态特征,采用静态特征分类匿名服务流量和非匿名服务流量;进一步地,使用在流量分类任务中分类性能最好的随机森林匿名服务流量中的网页流量;
所述特征提取模块用于根据实际需求选择已训练或定义好的特征提取模型,使用特征提取方法对上一步产生的网页流量进行预处理,建立基础特征矩阵,并提取出融合特征向量;
所述模型训练模块根据实际需求选择合适的网站指纹攻击模型以对提取好的融合特征进行训练,并给出训练好的模型相关评估指标,用户可根据指标或整体运行时间动态调整不同的攻击模型与特征提取模型以找出最适合用户所处网络环境的组合;
所述网站识别模块将生产环境提取的特征集输入分类模块训练好的分类模型,最终识别出目标用户所访问的网站域名。
6.一种计算机存储介质,其特征在于:该计算机存储介质中存储有针对匿名服务网站指纹攻击的程序,执行该程序时实现如权利要求1至4任意一项所述的针对匿名服务网站指纹攻击的特征提取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111387115.7A CN113904872B (zh) | 2021-11-22 | 2021-11-22 | 一种针对匿名服务网站指纹攻击的特征提取方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111387115.7A CN113904872B (zh) | 2021-11-22 | 2021-11-22 | 一种针对匿名服务网站指纹攻击的特征提取方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113904872A CN113904872A (zh) | 2022-01-07 |
CN113904872B true CN113904872B (zh) | 2024-06-04 |
Family
ID=79194817
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111387115.7A Active CN113904872B (zh) | 2021-11-22 | 2021-11-22 | 一种针对匿名服务网站指纹攻击的特征提取方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113904872B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114710310B (zh) * | 2022-01-18 | 2023-06-09 | 中国人民解放军战略支援部队信息工程大学 | 基于网络流量频域指纹的Tor用户访问网站识别方法及系统 |
CN115086030A (zh) * | 2022-06-14 | 2022-09-20 | 中国电信股份有限公司 | Https加密流量的指纹攻击防护方法、装置、电子设备和介质 |
CN115002045B (zh) * | 2022-07-19 | 2022-12-09 | 中国电子科技集团公司第三十研究所 | 一种基于孪生网络的暗网站点会话识别方法及系统 |
CN115378726A (zh) * | 2022-08-26 | 2022-11-22 | 东南大学 | 一种面向多页面的Web站点指纹攻击方法 |
CN117040871B (zh) * | 2023-08-18 | 2024-03-26 | 广州唐邦信息科技有限公司 | 一种网络安全运营服务方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111727432A (zh) * | 2018-02-20 | 2020-09-29 | 通用电气公司 | 用于无人机的网络攻击检测、定位以及中和 |
CN112953924A (zh) * | 2021-02-04 | 2021-06-11 | 西安电子科技大学 | 网络异常流量检测方法、系统、存储介质、终端及应用 |
CN113347156A (zh) * | 2021-05-11 | 2021-09-03 | 江苏大学 | 一种网站指纹防御的智能流量混淆方法、系统及计算机存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10826932B2 (en) * | 2018-08-22 | 2020-11-03 | General Electric Company | Situation awareness and dynamic ensemble forecasting of abnormal behavior in cyber-physical system |
-
2021
- 2021-11-22 CN CN202111387115.7A patent/CN113904872B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111727432A (zh) * | 2018-02-20 | 2020-09-29 | 通用电气公司 | 用于无人机的网络攻击检测、定位以及中和 |
CN112953924A (zh) * | 2021-02-04 | 2021-06-11 | 西安电子科技大学 | 网络异常流量检测方法、系统、存储介质、终端及应用 |
CN113347156A (zh) * | 2021-05-11 | 2021-09-03 | 江苏大学 | 一种网站指纹防御的智能流量混淆方法、系统及计算机存储介质 |
Non-Patent Citations (2)
Title |
---|
CPWF: Cross-Platform Website Fingerprinting Based on Multi-Similarity Loss;Shihao Wang等;IEEE;20201213;全文 * |
基于深度神经网络burst特征分析的网站指纹攻击方法;马陈城;计算机研究与发展;20200430;第57卷(第4期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113904872A (zh) | 2022-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113904872B (zh) | 一种针对匿名服务网站指纹攻击的特征提取方法及系统 | |
Wang et al. | Privacy-enhanced data collection based on deep learning for internet of vehicles | |
CA3088899C (en) | Systems and methods for preparing data for use by machine learning algorithms | |
Fontana et al. | Individual‐level trait diversity concepts and indices to comprehensively describe community change in multidimensional trait space | |
Dolédec et al. | Niche separation in community analysis: a new method | |
CN110381079B (zh) | 结合gru和svdd进行网络日志异常检测方法 | |
CN103210368A (zh) | 软件应用程序识别 | |
Cao et al. | Online outlier exploration over large datasets | |
CN111143838B (zh) | 数据库用户异常行为检测方法 | |
CN111866196B (zh) | 一种域名流量特征提取方法、装置、设备及可读存储介质 | |
CN113313170A (zh) | 基于人工智能的全时全域训练大数据平台 | |
Jha et al. | Criminal behaviour analysis and segmentation using k-means clustering | |
CN115063224A (zh) | 基于用户画像的业务审核方法、装置、设备及存储介质 | |
CN116805039B (zh) | 特征筛选方法、装置、计算机设备和数据扰动方法 | |
Bond et al. | An unsupervised machine learning approach for ground‐motion spectra clustering and selection | |
Thirumalairaj et al. | Perimeter intrusion detection with multi layer perception using quantum classifier | |
CN117591813A (zh) | 基于多维特征的复杂装备故障诊断方法及系统 | |
CN116599743A (zh) | 4a异常绕行检测方法、装置、电子设备及存储介质 | |
CN111027771A (zh) | 景区客流量预估方法、系统、装置及可存储介质 | |
CN116881687A (zh) | 一种基于特征提取的电网敏感数据识别方法及装置 | |
CN114048854B (zh) | 一种深度神经网络大数据内部数据文件的管理方法 | |
KR102405799B1 (ko) | 사이버 공간에서 실시간 공격 탐지를 위한 시간에 따른 지속적인 적응형 학습을 제공하는 방법 및 시스템 | |
CN112506930B (zh) | 一种基于机器学习技术的数据洞察系统 | |
CN115051863A (zh) | 异常流量检测的方法、装置、电子设备及可读存储介质 | |
CN111611483B (zh) | 一种对象画像构建方法、装置、设备及存储介质 |
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 |