一种基于eBPF的内核级网络流量实时异常检测方法与流程

摘要: 本发明涉及物联网入侵检测领域,具体为一种基于ebpf的内核级网络流量实时异常检测方法。背景技术:1、随着物联网技术的发展,网络入侵检测方法逐渐应用于工业控制网络...
一种基于eBPF的内核级网络流量实时异常检测方法与流程

本发明涉及物联网入侵检测领域,具体为一种基于ebpf的内核级网络流量实时异常检测方法。

背景技术:

1、随着物联网技术的发展,网络入侵检测方法逐渐应用于工业控制网络、智能制造终端以及边缘物联网节点等场景。现有检测方法通常根据网络连接数量、数据包频率以及访问行为变化进行异常判断,但在工业物联网设备周期性状态上报场景中,设备通常按照固定时间间隔发送少量状态数据,攻击者利用通信规律,通过控制恶意程序嵌入正常上报周期内发送异常请求,使攻击流量与正常业务流量在数据包大小、发送频率等方面高度相似,导致传统流量检测方法难以区分正常状态波动与隐蔽攻击行为。同时,在多设备协同运行的智能制造产线网络场景中,不同传感终端之间存在任务触发、状态反馈以及设备联动通信关系,某一节点受到攻击后,其异常行为可能仅表现为关联设备之间通信顺序变化、访问方向改变或短时连接关系异常,而不会立即形成明显流量突变,现有基于单设备流量特征分析的方法难以及时发现此类渐进式入侵。在基于ebpf的内核流量采集场景中,由于检测程序通常关注单个数据包或单条连接状态,难以结合设备长期通信习惯对内核侧实时采集的细粒度流量变化进行动态判断,容易出现对低幅度、持续性异常行为响应不足的问题。

2、因此,设计一种提高渐进式入侵行为检测准确性的基于ebpf的内核级网络流量实时异常检测方法是很有必要的。

技术实现思路

1、针对现有技术的不足,本发明提供了一种基于ebpf的内核级网络流量实时异常检测方法,具备提高渐进式入侵行为检测准确性的优点,解决了上述背景技术中的问题。

2、为实现上述提高渐进式入侵行为检测准确性的目的,本发明提供如下技术方案:一种基于ebpf的内核级网络流量实时异常检测方法,包括以下步骤:

3、在物联网节点内核网络处理路径中部署ebpf检测程序,捕获数据包经过协议栈不同处理阶段产生的信息,按照设备身份、业务功能以及通信目的端划分原始流量来源,提取正常运行状态下具有重复性的通信触发条件、资源调用顺序及交互范围,建立设备专属通信行为;

4、根据实时采集的内核事件信息,对当前设备通信过程中的访问路径变化进行分析,识别未改变数据传输规模但存在访问对象迁移、调用关系扩展以及通信边界突破的异常行为,将偏离设备原有通信范围的操作标记为潜在风险节点,并形成异常传播路径;

5、针对潜在风险节点之间的关联关系,解析攻击过程中由单节点控制向多节点扩散产生的权限访问变化、连接方向变化以及服务调用变化,构建设备间通信依赖关系,利用基于稀疏约束的关联推断算法分离业务联动产生的正常访问关系与攻击引起的异常扩散关系,确定隐藏入侵起始位置;

6、根据确定的隐藏入侵起始位置,回溯ebpf采集的内核调用轨迹,提取攻击行为在不同网络层、进程调用层以及设备交互层产生的异常耦合特征,建立攻击行为与设备通信状态变化之间的对应关系,通过增量式异常判别模型计算当前入侵行为的发展程度,输出风险等级;

7、依据风险等级动态调整ebpf程序的监测范围及采集策略,对高风险设备增加内核事件捕获类型,对低风险设备保留基础检测状态。

8、优选的,按照设备身份、业务功能以及通信目的端划分原始流量来源的过程为:

9、在物联网节点的linux内核网络协议栈中确定数据包进入、转发以及离开过程对应的处理位置,将ebpf检测程序分别加载至网络接收入口、套接字状态变化函数以及数据发送处理接口,通过内核探针获取数据包经过各处理阶段时产生的源地址、目标地址、源端口、目标端口、协议类型、socket标识、进程标识以及连接状态变化信息;

10、根据socket标识与进程标识之间的对应关系,将网络连接记录与产生该连接的业务进程进行绑定,并按照设备身份信息对不同通信来源进行归属划分;

11、获取各设备对应的业务功能标识、通信接口类型以及目标服务端信息,将具有相同业务功能且面向相同通信目的端的数据包记录划分至同一原始流量来源区域,形成包含设备属性、网络连接以及业务访问关系的初始流量记录。

12、优选的,建立设备专属通信行为的过程为:

13、读取初始流量记录中设备正常运行周期内产生的历史通信数据,按照时间发生顺序提取设备主动发起连接、接收控制请求以及反馈运行状态过程中对应的触发事件;

14、统计各触发事件对应的目标地址、服务端口、调用进程以及连接建立条件,记录不同业务状态下资源访问顺序及通信对象变化关系;

15、根据同一设备在多个运行周期内重复出现的通信触发事件,筛选出现次数超过预设重复阈值的访问对象、调用路径以及交互范围,将访问对象、调用路径及交互范围写入设备通信行为表;

16、依据设备通信行为表中不同业务功能对应的访问边界、调用关系及连接方式,形成与设备身份对应的专属通信行为描述。

17、优选的,识别未改变数据传输规模但存在访问对象迁移、调用关系扩展以及通信边界突破的异常行为的过程为:

18、获取实时ebpf检测程序产生的网络连接事件、套接字变化事件以及进程调用事件,将当前通信记录中的目标地址、目标端口以及调用进程信息与设备通信行为表中的对应记录进行匹配;

19、当检测到当前通信数据量、数据包长度以及传输频率未发生明显变化,但目标访问对象由原有设备范围向未记录对象扩展时,提取新增访问目标对应的连接建立记录;

20、分析新增访问目标对应的进程调用关系以及套接字关联信息,判断当前访问是否产生新的调用链路或跨业务功能访问关系,并将满足访问对象迁移、调用关系增加或通信范围扩展条件的通信记录作为异常行为记录。

21、优选的,形成异常传播路径的过程为:

22、提取异常行为记录中的设备标识、访问目标地址、进程标识以及连接建立方向,将产生新增访问关系的设备节点和访问节点分别作为通信节点;

23、统计不同通信节点之间的连接建立次数、访问方向变化以及关联进程数量,构建设备节点与访问目标节点之间的连接关系表;

24、根据连接关系表中新增节点与已有通信节点之间的关联程度,筛选首次出现且持续产生访问行为的节点作为潜在风险节点;

25、按照潜在风险节点之间的连接先后关系以及数据传输方向进行排序,将存在连续访问关系的节点进行连接,形成由初始访问节点向后续访问节点扩展的异常传播路径。

26、优选的,构建设备间通信依赖关系的过程为:

27、获取潜在风险节点对应的进程权限信息、网络连接方向以及服务调用记录,将同一设备内产生权限变化的进程调用关系与跨设备产生的访问关系进行关联;

28、分别记录风险节点之间的控制请求方向、数据反馈方向以及服务调用方向,形成包含访问主体、访问对象以及调用服务的设备交互记录;

29、依据设备交互记录中的重复调用关系、连接方向一致性以及服务依赖关系,建立设备节点之间的通信依赖表;

30、根据通信依赖表中节点之间的直接访问关系和间接访问关系,确定异常访问扩散过程中涉及的设备关联范围。

31、优选的,确定隐藏入侵起始位置的过程为:

32、将通信依赖表中的设备节点访问关系转换为关联矩阵,并提取节点之间的访问频次、调用方向以及权限变化信息作为关联特征;

33、利用稀疏约束方式压缩长期存在且具有稳定业务关系的设备关联项,保留短时间内新增且连接变化明显的异常关联项;

34、根据保留后的异常关联项对应的节点入度变化、访问来源数量以及权限变化情况,对不同风险节点进行排序;

35、将首次产生异常关联扩展且能够向多个设备节点产生访问影响的节点确定为隐藏入侵起始位置。

36、优选的,建立攻击行为与设备通信状态变化之间的对应关系的过程为:

37、根据隐藏入侵起始位置对应的设备标识,读取ebpf程序缓存的网络连接记录、套接字状态记录以及进程调用记录;

38、按照网络连接建立时间、进程调用顺序以及设备访问方向对所述记录进行关联排列,形成内核调用轨迹;

39、分别提取网络层中的连接目标变化、进程调用层中的权限访问变化以及设备交互层中的跨节点访问变化,并按照同一攻击过程中的共同发生关系进行组合;

40、依据不同攻击阶段对应的网络变化、进程变化以及设备访问变化之间的对应关系,生成攻击行为关联特征。

41、优选的,输出风险等级的过程为:

42、获取历史检测过程中形成的攻击行为关联特征,将不同攻击阶段对应的网络连接变化量、权限变化量以及设备扩散数量作为判别参数;

43、在实时检测过程中,将当前攻击行为关联特征与历史判别参数进行增量比对,记录新增攻击阶段数量、异常访问范围变化量以及关联设备增长数量;

44、根据各判别参数在连续检测周期内的变化结果,生成入侵行为发展评价值;

45、按照入侵行为发展评价值与预设等级区间之间的对应关系,确定当前设备对应的风险等级。

46、优选的,依据风险等级动态调整ebpf程序的监测范围及采集策略的过程为:

47、读取风险等级对应设备的异常访问记录,获取当前设备涉及的网络接口、进程标识、通信目标以及异常传播路径;

48、根据风险等级与监测对象之间的对应关系,修改ebpf程序中的事件采集配置表;

49、对高风险设备增加套接字变化事件、进程调用事件以及跨设备访问事件的采集类型,对低风险设备,仅保留数据包五元组信息以及连接状态变化信息的基础采集字段;

50、在后续通信检测过程中,将新增采集结果写入设备通信行为表,并依据更新后的通信行为变化重新调整对应设备的事件采集范围。

51、与现有技术相比,本发明提供一种基于ebpf的内核级网络流量实时异常检测方法,具备以下有益效果:

52、本发明通过在物联网节点内核网络处理路径中部署ebpf检测程序,实现对网络协议栈、套接字状态以及进程调用行为的细粒度采集,避免传统网络流量检测方法仅依赖外部镜像流量而无法感知设备内部调用变化的问题;通过按照设备身份、业务功能以及通信目的端划分原始流量来源,并建立设备专属通信行为,使检测过程能够结合物联网设备自身业务特征识别隐蔽异常访问,降低因设备类型差异导致的误报率;通过分析访问对象迁移、调用关系扩展以及通信边界突破等渐进式变化特征,能够在攻击流量规模未明显变化的情况下发现潜在入侵行为,提高针对低频、小流量以及长期潜伏攻击的检测能力;通过构建设备间通信依赖关系,并利用基于稀疏约束的关联推断算法分离正常业务联动关系与异常扩散关系,准确定位隐藏入侵起始位置,避免传统方法仅根据异常节点表象进行判断造成攻击源定位偏差;结合ebpf内核调用轨迹提取网络层、进程层以及设备交互层的多层异常耦合特征,并通过增量式异常判别方式评估入侵发展程度,实现对攻击扩散过程的连续跟踪;根据风险等级动态调整ebpf事件采集范围,使高风险设备获得更丰富的内核行为监测能力,低风险设备保持轻量化检测状态,在保证异常检测准确性的同时降低内核资源占用,提高物联网边缘节点在大规模设备接入环境下的实时安全防护能力。