System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及计算机网络与网络空间安全,尤其是一种针对加密代理和隧道技术的网站指纹识别方法。
技术介绍
1、随着web应用的蓬勃发展,给人们的生活工作带来极大的方便的同时,也使得私人信息大量暴露于网络。互联网越来越关注于隐私的保护,包括更新加密通信协议和开发自由开源的隐私增强技术,如加密代理和隧道技术。加密代理是通过在用户和对应的web站点之间部署中继节点,转发加密流量数据,难以定位用户实际访问的网络服务。隧道技术是指将真实数据包封装在其他网络协议数据包中,向外提供的一种安全通道服务。这些技术能够通过在网络传输层面阻止信息泄露,载荷分析和域名分析,防止通信关系被暴露,具有其出色的抗检测能力,被广泛用于规避网络流量审查,甚至会有不法分子滥用以遮盖其违法行为。如何有效地检测加密代理和隧道技术下的相关流量,判别用户所访问的网站,对实现网络监管,保护网络安全具有重要意义。
2、网站指纹识别是一种唯一识别一个网站的技术,本质上一种加密流量分类问题。攻击者通过被动地监控网络流量,获取报文方向、大小、间隔的流量序列,提取网站的相关指纹达到识别的目的。因为网站流量是由多条子流组合而成的一条混合流,经过加密代理和隧道技术后,网站流量混合成为一条流。随着隐私增强技术的发展,提高加密代理或隧道技术下的监管水平的需求也日益增加。传统的基于负载和基于行为的加密流量检测方法,面对无法获取明文有效负载和无法基于五元组进行流量切割的复杂网络环境,难以取得很好的效果,且因为可以获得的统计流量特征较少,难以提取出有效的特征。
>技术实现思路
1、为解决传统的加密流量检测方法检测效果差、难以提取出有效的特征的问题,本专利技术的目的在于提供一种有效利用网站访问过程中的相关行为特征,充分利用序列挖掘方法进行混合流的流量切割,提高网站指纹识别准确率的针对加密代理和隧道技术的网站指纹识别方法。
2、为实现上述目的,本专利技术采用了以下技术方案:一种针对加密代理和隧道技术的网站指纹识别方法,该方法包括以下顺序的步骤:
3、(1)进行流量预处理:对不同的服务器和网络节点生成的大量网络数据包进行预处理,从数据包大小和数据包方向提取特征,进行包长过滤;
4、(2)进行流量表征:对过滤后得到的数据包进行进一步筛选,通过序列模板对挖掘、子流序列生成,对数据包进行关联,构建一系列有因果关联的子流序列即因果关系链;
5、(3)进行指纹识别:构建指纹识别模型,输入一系列有因果关联的子流序列至指纹识别模型,指纹识别模型输出子流序列对应的目标网站类别标签。
6、所述步骤(1)具体是指:进行包长过滤,以表示所有可能的方向数据包包长组成的集合,|si|表示第i个方向数据包的长度即包长,si表示包长为|si|的数据包;sign(si)表示方向,正号代表出站流量,负号代表入站流量;设p=[p1,p2,…,pn],pj∈s,p表示一条流量轨迹;
7、判断网站a是否被访问,首先对p进行包大小过滤,使得过滤后的子序列p'与网站a高度相关;构造一个特定于网站a的过滤列表如果流量轨迹p的定向包长不在sa中,在此基础上进行过滤,得到过滤后的子序列p';
8、以两个关键指标用作定向包长集合中的包长筛选,分别是频率fre和置信度con:
9、
10、
11、其中,为网站a的训练流量轨迹中含si的数据包的数目,count(samplea)为网站a的训练流量轨迹的数目,为网站a的训练流量轨迹包含si的轨迹数;
12、高表明si经常出现在网站a中,低表明网站a只有少量轨迹包含si,只保留频率低、置信度高的数据包包长,并将其添加到过滤列表sa中;
13、最终得到特定长度的数据包包长,用于下一步处理。
14、所述步骤(2)具体包括以下顺序的步骤:
15、(2a)进行序列模板对挖掘,判断两个数据包是否有因果关联,并构建出有因果关系对模板集合:定义一个关联窗口w,包含w个连续的数据包;如果大小为sj的数据包经常出现在si的关联窗口w中,认为sj和si具有关联关系,假定一个2元组(si,sj)表示关联对,利用平均因果效应ace来衡量sj与si之间的相关性,其计算公式如下:
16、ace(si,sj)=p(sj|si)-p(sk|si)
17、式中,ace(si,sj)表示网站a中关联对(si,sj)的关联程度,p(sj|si)为sj的发生是由si引起的概率,p(sk|si)为si的发生未导致sj发生的概率,k≠j,用以下等式表示来估计它们:
18、
19、
20、其中,是网站a中训练流量轨迹中关联对(si,sj)的数量,是网站a中训练流量轨迹中关联对(si,sk)的数量,设定θ为用于筛选强关联对的预定义阈值,ace(si,sj)越大,表明数据包长si和sj在网站a中的关联程度越强,即出现si时sj在窗口内出现的可能性越高;当ace(si,sj)超过设定的阈值θ时,认为si和sj两者之间存在显著的因果关联关系,它们属于同一网站的概率很大;
21、构建出一个由强关联对组成的因果关系对模板集合ta={(si,sj),si,sj∈sa,ace(si,sj)>θ},其中,对于ta中的所有模板,如果si仅作为原因而不是结果,则si被视为根本原因;
22、(2b)进行子流序列生成,利用步骤(2a)生成的因果关系对模板集合ta,对步骤(1)得到的过滤后序列处理,得到一系列有因果关联的子流序列即因果关系链:
23、当用户通过web浏览器访问网站时,浏览器会发出多个超文本传输协议http请求来获取构建网页所需的不同资源,每个资源通常通过单独的传输层控制协议tcp连接获取,并且每个请求-响应对形成了一个因果关系链;给定一个因果关系对模板集合ta,将过滤后的子序列p'解耦为一系列因果关系链用于网站识别,这些因果关系链是用户请求某个资源和接收到该资源的响应在定向数据包长的反映,具体包括:
24、(2b1)对于ta中的每个根本原因s,找到过滤后的子序列p'中大小为s的数据包,这些数据包的集合定义为u;
25、(2b2)对于每个数据包p∈u,找到数据包p在ta中的关联结果s';
26、(2b3)如果大小与s'相同的数据包p'出现在p的关联窗口内,则将p'加入到因果关系链中,如p→p';
27、(2b4)令p=p',并重复步骤(2b2)到步骤(2b4),直至找不到新的数据包p',因果关系链构建结束。
28、在步骤(3)中,所述指纹识别模型包括子流序列向量化模块、标签向量嵌入模块、位置向量嵌入模块和transformer编码器;
29、子流序列向量化模块:对子流序列进行统一长度和数目的向量化处理,使处理后的子流序列能作为transformer编码器的输入,对c(p')的长度和数目按照统一长度和统一数目进行处理,固定本文档来自技高网...
【技术保护点】
1.一种针对加密代理和隧道技术的网站指纹识别方法,其特征在于:该方法包括下列顺序的步骤:
2.根据权利要求1所述的针对加密代理和隧道技术的网站指纹识别方法,其特征在于:所述步骤(1)具体是指:进行包长过滤,以表示所有可能的方向数据包包长组成的集合,|si|表示第i个方向数据包的长度即包长,si表示包长为|si|的数据包;sign(si)表示方向,正号代表出站流量,负号代表入站流量;设P=[p1,p2,…,pn],pj∈S,P表示一条流量轨迹;
3.根据权利要求1所述的针对加密代理和隧道技术的网站指纹识别方法,其特征在于:所述步骤(2)具体包括以下顺序的步骤:
4.根据权利要求1所述的针对加密代理和隧道技术的网站指纹识别方法,其特征在于:在步骤(3)中,所述指纹识别模型包括子流序列向量化模块、标签向量嵌入模块、位置向量嵌入模块和Transformer编码器;
【技术特征摘要】
1.一种针对加密代理和隧道技术的网站指纹识别方法,其特征在于:该方法包括下列顺序的步骤:
2.根据权利要求1所述的针对加密代理和隧道技术的网站指纹识别方法,其特征在于:所述步骤(1)具体是指:进行包长过滤,以表示所有可能的方向数据包包长组成的集合,|si|表示第i个方向数据包的长度即包长,si表示包长为|si|的数据包;sign(si)表示方向,正号代表出站流量,负号代表入站流量;设p=...
【专利技术属性】
技术研发人员:谢飞,丁正,刘宇,李晓洁,孙奇,
申请(专利权)人:合肥城市云数据中心股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。