技术新讯 > 电子通信装置的制造及其应用技术 > 一种基于网络表示学习的域间路由异常检测方法  >  正文

一种基于网络表示学习的域间路由异常检测方法

  • 国知局
  • 2024-08-02 12:42:09

本技术涉及域间路由协议安全领域,尤其涉及一种基于网络表示学习的域间路由异常检测方法。

背景技术:

1、边界网关协议(border gateway protocol,bgp)是保障全球互联网域间互联的重要基础性协议,当前互联网事实上的域间路由标准便是由rfc4271等定义的bgpv4。它规范了自治系统(autonomous system,as)之间交换路由和可达性信息的行为准则,并在全球范围内得到广泛部署,是互联网得以正常运作的基础设施之一。作为一种路径向量协议,bgp允许as宣告其拥有的ip地址前缀,并通过和相邻as交换路由控制信息,结合多层次的本地策略来进行路由更新。由于相邻as之间往往存在特定的商业关系,这些商业关系反映在as的本地策略上,也会影响bgp的路由选择和出入控制。

2、bgp协议本身没有提供任何对安全性的保证,因此其安全问题呈现出多元复杂、影响范围广、威胁破坏性大的特点。当前bgp主要的安全问题包括前缀劫持和路由泄漏。其中,前缀劫持指的是,互联网中发往某一前缀的流量,由于错误的路由信息,而被转发到错误的as或者经过错误的as路径。具体来说,在实际的网络空间中,无论是恶意as还是误配置的as,都可能错误地宣告非其合法所有的ip地址前缀或与现实情况不符的as路径。由于bgp缺乏安全机制对这些异常宣告进行识别和过滤,这些错误的路由信息会不断传播,并驻留在受影响的bgp路由器的路由表中,导致互联网正常流量被转发到错误的as或者经过错误的as路径,进而形成拒绝服务、拦截、中间人等攻击现象,严重影响互联网上层应用的可用性和安全性。除此之外,另一主要的bgp安全问题是路由泄漏。路由泄漏指的是,路由宣告的传播超出了as本地策略所限定的传播范围,导致互联网流量的转发路径与其所经过的as的本地策略相悖。具体来说,在路由转发性能或商业利益的驱动下,as的本地策略往往限定了其路由宣告的传播范围,即as会根据具体的路由信息,将路由宣告传播给特定的邻居。当as由于误配置而违背了本地策略,将路由宣告传播给了不应传播的邻居,就会导致路由性能下降或其商业利益受损,进而对互联网的正常运作产生极大影响。

3、当前针对bgp的安全拓展技术主要包括基于公钥基础设施的路由源验证和路径验证,但这些技术缺少部署激励,替换开销大,推动难度大,目前在互联网中的部署比例不足,还无法完全解决bgp异常问题。此外,bgp异常检测是保障域间路由安全的重要技术手段,其相关技术包括基于控制面匹配的异常检测方法、基于数据面探测的异常检测方法,和二者结合的混合式异常检测方法。其中,基于控制面匹配的异常检测方法往往被动地收集路由信息,并通过和正常路由信息的比对,来发现异常的路由变动。其收集的路由信息主要包括拟保护地址前缀的路由路径。此类方法虽然有着易于部署和反应速度快的优点,却往往不够准确,容易产生误报。基于数据面探测的异常检测方法则会主动且持续地探测互联网中的数据传输路径,检测其中是否发生了不正常的路径变化。该类方法不仅可拓展性欠佳,探测开销高,也很难发现针对子地址前缀的路由劫持攻击。混合式异常检测方法则结合了二者的检测思路来取得更好的检测性能,但也存在可拓展性差、通用性不强、依赖大量人工配置等共性缺陷。总体而言,当前的bgp异常检测方法均无法实现对前缀劫持和路由泄漏的实时、细粒度、准确的识别,因此无法充分有效地保障互联网域间路由安全。

技术实现思路

1、本技术旨在至少在一定程度上解决相关技术中的技术问题之一。

2、为此,本技术的目的在于提出一种基于网络表示学习的域间路由异常检测方法,从bgp异常检测的角度出发,整体上实现对路由劫持和路由泄漏的实时、细粒度、准确的识别,该方法包括:

3、在离线条件下,对互联网自治系统间的商业关系进行网络表示学习;

4、实时监控多个域间路由汇聚点的路由变动,响应于接收边界网关协议更新消息,更新全局路由,在检测到路由变动时,记录所述路由变动;

5、响应于检测到路由变动,计算路由变动前后的路径差异值,当所述路径差异值大于阈值时,确定所述路由变动为异常路由变动;

6、对所述异常路由变动进行归因,将所述异常路由变动聚合为异常事件后告警。

7、可选的,所述在离线条件下,对互联网自治系统间的商业关系进行网络表示学习,包括:

8、使用自治系统商业关系数据构建有向图;

9、初始化所述有向图中自治系统节点对应的特征向量,通过所述有向图采样训练样本,对每一组训练样本优化特征向量,在所有训练样本上得到更新后的特征向量;

10、通过损失函数值下降判断训练是否收敛,若未收敛,则重复进行训练样本采样和特征向量更新的过程,直至训练收敛。

11、可选的,所述使用自治系统商业关系数据构建有向图,包括:

12、初始化有向图g=(v,e),其中,v表示有向图g的节点集合,e表示有向图g的有向边集合;

13、将所述自治系统商业关系数据中出现的所有自治系统,以其自治系统号为标识,构建节点,加入节点集合v中;

14、对于节点集合v中的任意一对节点u和v,若它们对应的自治系统间存在p2c商业关系,则添加有向边e=(u,v)到有向边集合e中;

15、对于节点集合v中的任意一对节点u和v,若它们对应的自治系统间存在p2p商业关系,则添加有向边e=(u,v)和e’=(v,u)到有向边集合e中。

16、所述初始化所述有向图中自治系统节点对应的特征向量,通过所述有向图采样训练样本,对每一组训练样本优化特征向量,在所有训练样本上得到更新后的特征向量,包括:

17、对节点集合v中的每一个节点u,随机初始化一个d维的浮点数向量xu作为其特征向量;

18、随机初始化一个d维的浮点数向量l作为权重向量,随机初始化一个d维的浮点数向量r作为方向向量;

19、对每个存在有向边的节点对(u,v),随机采样q个不存在有向边的节点对(u’,v’),将得到的每一组((u,v),(u’,v’))作为训练样本;

20、对每一组训练样本((u,v),(u’,v’)),计算s1(u,v)和s1(u’,v’),其中分值函数s1(i,j)=(xj-xi)t((xj-xi)⊙l),函数中的xi、xj分别表示节点i、j的特征向量,⊙表示向量逐元素相乘,(xj-xi)t表示(xj-xi)的转置,l为权重向量;

21、对每一组训练样本((u,v),(u’,v’)),计算s2(u,v)和s2(u’,v’),其中分值函数s2(i,j)=(xj-xi)tr,(xj-xi)t表示(xj-xi)的转置,函数中的xi、xj分别表示节点i、j的特征向量,r为方向向量;

22、使用随机梯度下降优化目标函数,在所有训练样本上得到优化后的特征向量,目标函数的表达式为:

23、-logσ(s1(u,v)+s2(u,v)-s1(u’,v’)-s2(u’,v’))

24、其中,log为对数运算,σ为sigmoid函数。

25、所述实时监控多个域间路由汇聚点的路由变动,响应于接收边界网关协议更新消息,更新全局路由,在检测到路由变动时,记录所述路由变动,包括:

26、初始化全局路由表m和路由变动数据库db;

27、从n个域间路由汇聚点实时接收边界网关协议bgp更新消息,其中n>1;

28、对于每一个接收到的bgp更新消息,提取时间戳t、ip前缀f和自治系统路径p={an,an-1,…,a1,a0},其中ai为此消息经过的自治系统号,an为接收到此路由信息的汇聚点自治系统号,a0为发出此消息的源自治系统号,0≤i≤n;

29、更新所述全局路由表并检查是否出现路由变动,当在检测到路由变动时,记录所述路由变动。

30、所述检查是否出现路由变动,当在检测到路由变动时,记录所述路由变动,包括:

31、通过全局路由表m查询存在汇聚点an路由信息的f的最长父前缀f’及对应的路由信息p’,其中,f’与f能够相同;

32、若p≠p’,则确定检测到路由变动(t,f,f’,p,p’),将所述路由变动(t,f,f’,p,p’)记录到数据库db中,更新全局路由表m中前缀f在汇聚点an下的路由信息为p。

33、所述响应于检测到路由变动,计算路由变动前后的路径差异值,当所述路径差异值大于阈值时,确定所述路由变动为异常路由变动,包括:

34、对于检测到的路由变动(t,f,f’,p,p’),其中,p={an,an-1,…,a1,a0}和p’={a’m,a’m-1,…,a’1,a’0},初始化一个(n+1)×(m+1)的浮点数矩阵dp,其中dp[0,0]的值设置为0,其他的值设为+∞;

35、依次计算dp[i,j],1≤i≤n,1≤j≤m,其中,对于每一个dp[i,j],计算方法为:

36、初始化i=1,j=1,计算diff=d(p[i],p’[j]),选择dp[i-1,j]、dp[i,j-1]和dp[i-1,j-1]中的最小值作为minvalue,将diff+minvalue作为dp[i,j]的值,其中,在迭代计算过程中,若i=n且j=m,则表示dp的值已计算完毕,否则,若j<m则先更新j=j+1,重新执行下一步迭代计算,否则更新i=i+1,j=1,重新执行下一步迭代计算;

37、将最终计算得到的dp[n,m]的值作为所述路由变动(t,f,f’,p,p’)的自治系统路径变化差异值;

38、若所述自治系统路径变化差异值大于预先设定的差异阈值,将所述路由变动(t,f,f’,p,p’)记录为异常路由变动,否则记录为正常路由变动。

39、所述对所述异常路由变动进行归因,将所述异常路由变动聚合为异常事件后告警,包括:

40、聚合前缀异常事件ev;

41、聚合路由异常事件,提取所述前缀异常事件ev的根因标识;

42、计算前缀异常事件ev的时间区间,该时间区间以前缀异常事件ev中异常路由变动的最小时间戳为起始时间点,以前缀异常事件ev中异常路由变动的最大时间戳为终止时间点;

43、查询数据库db,得到一个最大前缀异常事件集合,该集合需包含前缀异常事件ev且满足其中的每个前缀异常事件至少和该集合中的另一个前缀异常事件在时间区间和根因标识上都存在非空交集,以该最大前缀异常事件集合作为一个路由异常事件产生告警。

44、所述聚合前缀异常事件ev,包括:

45、提取新产生且未作分析的最新异常路由变动信息(t0,f0,f’0,p0,p’0),将最新异常路由变动信息(t0,f0,f’0,p0,p’0)记录为已作分析;

46、查询数据库db,得到异常路由变动集合,其中,所述异常路由变动集合中的每个异常路由变动(t,f,f’,p,p’)满足|t-t0|<t,f=f0,t为预先设定的分析窗口大小;

47、统计该异常路由变动集合中不同汇聚点自治系统号的个数,若该个数大于预先设定的个数阈值,则将该异常路由变动集合作为一个前缀异常事件ev记录到数据库db,并执行后续步骤。

48、所述聚合路由异常事件,提取所述前缀异常事件ev的根因标识,包括:

49、对于前缀异常事件中的每个异常路由变动(t,f,f’,p,p’),计算自治系统路径的对称差集pδp’;

50、计算前缀异常事件ev中所有异常路由变动的自治系统路径的对称差集的交集,在该交集中加入f和f’后,以该交集作为前缀异常事件ev的根因标识。

51、本技术的实施例提供的技术方案至少带来以下有益效果:

52、(1)不依赖人工配置:本技术仅预先使用自治系统商业关系信息构建网络表示学习模型,不需要特定的配置信息即可进行异常检测,而现有方法需要大量的“前缀-源”等配置信息;

53、(2)高可拓展性:本技术通过监控多个域间路由汇聚点的路由变动建立信息输入,可以快速增量部署,具有高可拓展性,而现有方法往往需直接部署至受保护自治系统中,或依赖主动探测设施,可拓展性低;

54、(3)实时检测:本技术实时监控多汇聚点路由变动,并通过快速计算路由变动前后的路径差异值进行异常检测,检测延时低,可达到实时检测需要,而现有方法的检测延时通常高达数分钟;

55、(4)低误报率:本技术利用网络表示学习方法精确表征自治系统的特征向量,可以避免良性多源宣告被误报为异常,达到低误报率,而现有方法往往不考虑此类情况,容易造成误报;

56、(5)具有通用性:本技术将路由异常检测转化为检测路由变动前后的显著路径差异,可同时检测前缀劫持和路由泄漏,具有通用性,而现有方法往往仅能检测特定类型异常;

57、(6)可解释:本技术通过关联前缀和自治系统,将异常路由变动聚合为异常事件后告警,使得告警具有可解释性,而现有方法往往针对单一路由变动或时间窗口进行检测和告警,告警结果缺少可解释性。

58、本技术附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本技术的实践了解到。

本文地址:https://www.jishuxx.com/zhuanli/20240802/237407.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。