← 返回列表

网络微隔离方法、系统及虚拟化云主机

申请号: CN202311825580.3
申请人: 苏州元脑智能科技有限公司
申请日期: 2023/12/28

摘要文本

本发明涉及计算机技术领域,尤其涉及一种网络微隔离方法、系统及虚拟化云主机。方法包括:通过kprobe探针或kretprobe探针,在虚拟化云主机的内核函数挂载eBPF程序,在检测到目标事件的情况下,自动触发eBPF程序,以得到虚拟化云主机的网络连接的五元组信息,目标事件指虚拟化云主机创建网络连接或接受网络连接;基于全部五元组信息,得到网络连接拓扑,网络连接拓扑为创建网络防护策略的依据;基于创建的网络防护策略,进行网络访问拦截,以完成网络微隔离。本方法能够在获取虚拟化云主机的网络连接关系,即网络连接拓扑的同时,降低性能消耗,快速理清繁琐复杂的虚拟化云主机的网络连接关系,便于进行网络防护策略创建。

专利详细信息

项目 内容
专利名称 网络微隔离方法、系统及虚拟化云主机
专利类型 发明授权
申请号 CN202311825580.3
申请日 2023/12/28
公告号 CN117478438B
公开日 2024/3/22
IPC主分类号 H04L9/40
权利人 苏州元脑智能科技有限公司
发明人 甄鹏; 唐超; 徐飞
地址 江苏省苏州市吴中经济开发区郭巷街道官浦路1号9幢

专利主权项内容

1.一种网络微隔离方法,其特征在于,包括:通过kprobe探针或kretprobe探针,在虚拟化云主机的内核函数挂载eBPF程序,在检测到目标事件的情况下,自动触发所述eBPF程序,以得到所述虚拟化云主机的网络连接的五元组信息,所述目标事件指所述虚拟化云主机创建网络连接或接受网络连接;基于全部所述五元组信息,得到网络连接拓扑,所述网络连接拓扑为创建网络防护策略的依据;基于创建的所述网络防护策略,进行网络访问拦截,以完成网络微隔离;通过kprobe探针或kretprobe探针,在虚拟化云主机的内核函数挂载eBPF程序的步骤包括:通过kretprobe探针,在所述虚拟化云主机的socket系统调用函数的出口处挂载eBPF程序,以得到所述socket系统调用函数的第一返回值;基于所述第一返回值,得到当前网络连接的初始套接字描述符;通过kprobe探针,在所述虚拟化云主机的bind系统调用函数的入口处挂载eBPF程序,以得到进入所述bind系统调用函数的第一目标参数,所述第一目标参数包括:第一目标套接字描述符、以及所述第一目标套接字描述符绑定的所述虚拟化云主机的IP地址与IP端口号;通过kprobe探针,在所述虚拟化云主机的connect系统调用函数的入口处挂载eBPF程序,以得到进入所述connect系统调用函数的第二目标参数,所述第二目标参数包括:第二目标套接字描述符、以及与所述第二目标套接字描述符相关联的网络连接目的IP地址与网络连接目的端口号;通过kprobe探针,在所述虚拟化云主机的accept系统调用函数的入口处挂载eBPF程序,以得到进入所述accept系统调用函数的第三目标参数,所述第三目标参数包括:第三目标套接字描述符、以及与所述第三目标套接字描述符相关联的网络连接源IP地址和网络连接源端口号;通过kretprobe探针,在所述虚拟化云主机的listen系统调用函数的出口处挂载eBPF程序,以得到listen系统调用函数的返回结果,所述返回结果包括:第四目标套接字描述符、以及与所述第四目标套接字描述符相关联的第二返回值,所述第二返回值用于确定listen系统调用成功或失败;基于全部所述五元组信息,得到网络连接拓扑的步骤包括:对所述五元组信息增加时间戳与云主机标识信息,得到网络连接数据,所述网络连接数据包括:所述时间戳、所述云主机标识信息、所述网络连接源IP地址、所述网络连接源端口号、所述网络连接目的IP地址、所述网络连接目的端口号、通信协议以及五元组哈希值;基于全部所述网络连接数据,得到所述网络连接拓扑;对所述五元组信息增加时间戳与云主机标识信息,得到网络连接数据的步骤之后,还包括:基于所述网络连接数据中的云主机标识信息与五元组哈希值,查询目标数据库中是否存储有当前所述网络连接数据;在确定所述目标数据库中存储有当前所述网络连接数据的情况下,基于当前所述网络连接数据中的时间戳,对所述目标数据库中存储的对应网络连接数据的时间戳进行更新;在确定所述目标数据库中缺少当前所述网络连接数据的情况下,将当前所述网络连接数据写入所述目标数据库;基于全部所述网络连接数据,得到所述网络连接拓扑的步骤包括:获取网络连接拓扑获取需求;基于所述网络连接拓扑获取需求中的所述云主机标识信息,向所述目标数据库查询并获取对应的所述虚拟化云主机的全部所述网络连接数据;基于所述虚拟化云主机的全部所述网络连接数据,得到所述虚拟化云主机的所述网络连接拓扑;基于创建的所述网络防护策略,进行网络访问拦截,以完成网络微隔离的步骤包括:接收服务端下发的所述网络防护策略,所述网络防护策略为所述服务端基于eBPF map下发的,所述eBPF map的键为云主机标识信息,所述eBPF map的值为所述云主机标识信息对应的所述网络防护策略;基于所述网络防护策略,进行网络访问拦截,以完成所述网络微隔离。