[go: up one dir, main page]

CN116827646A - 一种基于eBPF的终端流量代理及访问控制方法 - Google Patents

一种基于eBPF的终端流量代理及访问控制方法 Download PDF

Info

Publication number
CN116827646A
CN116827646A CN202310817603.XA CN202310817603A CN116827646A CN 116827646 A CN116827646 A CN 116827646A CN 202310817603 A CN202310817603 A CN 202310817603A CN 116827646 A CN116827646 A CN 116827646A
Authority
CN
China
Prior art keywords
data packet
ebpf
access control
user
access
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.)
Pending
Application number
CN202310817603.XA
Other languages
English (en)
Inventor
张晓东
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jiangsu Yianlian Network Technology Co ltd
Original Assignee
Jiangsu Yianlian Network Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Jiangsu Yianlian Network Technology Co ltd filed Critical Jiangsu Yianlian Network Technology Co ltd
Priority to CN202310817603.XA priority Critical patent/CN116827646A/zh
Publication of CN116827646A publication Critical patent/CN116827646A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0245Filtering by information in the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0263Rule management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0281Proxies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/029Firewall traversal, e.g. tunnelling or, creating pinholes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • H04L63/205Network architectures or network communication protocols for network security for managing network security; network security policies in general involving negotiation or determination of the one or more network security mechanisms to be used, e.g. by negotiation between the client and the server or between peers or by selection according to the capabilities of the entities involved
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于eBPF的终端流量代理及访问控制方法,步骤如下:(1)用户请求访问内部资源:当用户远程访问企业内部资源时,首先发起请求,如果请求合法则进入步骤(2),如果请求非法则拒绝访问;(2)引流和过滤:eBPF基于规则对数据包进行引流和过滤操作;(3)处理后的业务数据包经过客户端Agent发往安全网关:(4)用户收到目标资源响应:如果数据包通过eBPF的处理,并成功转发到目标资源,用户将收到响应,并访问所需的内部资源。本发明利用eBPF技术在终端引流、传输、代理、应用识别和精细化管控方面的应用,使得终端引流和过滤更高效,传输方式更灵活,应用识别更准确,以及精细化管控更精确。

Description

一种基于eBPF的终端流量代理及访问控制方法
技术领域
本发明属于网络安全技术领域,特别涉及一种基于eBPF的终端流量代理及访问控制方法。
背景技术
随着全球化的发展和灵活的工作模式,企业出差员工和居家办公员工,需要在外地远程办公,并期望能够通过Internet随时随地的远程访问企业内部资源。同时,企业为了保证内网资源的安全性,希望能对移动办公用户进行多种形式的身份认证,并对移动办公用户可访问内网资源的权限做精细化控制。
当前远程办公场景下主流方案使用网络安全领域中的访问控制类产品,如SSLVPN、零信任SDP等系统,但两者均在终端无法实现精细化流量管控,终端兼容性较差,传输效率较低,用户感知较差等问题,同时在大规模用户接入访问场景下无法高效、快速处理大并发的业务请求问题。
传统SSL VPN架构基于虚拟网卡的引流方式是将用户设备上的流量通过虚拟网卡进行拦截和转发,再通过SSL协议进行加密和隧道传输。其工作流程如图1所示:
步骤一:用户设备向目标服务器发送网络请求;
步骤二:SSL VPN客户端在用户设备上拦截流量,并将其发送到虚拟网卡;
步骤三:虚拟网卡将流量转发到SSL VPN服务器;
步骤四:SSL VPN服务器对流量进行解密,并将请求转发到目标服务器;
步骤五:目标服务器返回响应给SSL VPN服务器;
步骤六:SSL VPN服务器对响应进行加密,并将其转发给用户设备;
步骤七:SSL VPN客户端在用户设备上解密响应,完成请求响应流程。
由此可知,传统SSL VPN存在以下不足之处:
性能瓶颈:传统SSL VPN基于虚拟网卡的引流方式导致性能瓶颈。由于SSL VPN客户端需要在用户设备上拦截和处理流量,并将其发送到虚拟网卡,这涉及到用户空间和内核空间之间的频繁切换,最终导致性能下降。
设备兼容性:传统SSL VPN客户端通常需要在用户设备上安装额外的软件,这将导致设备兼容性问题。不同操作系统和设备需要不同版本或不同配置的SSL VPN客户端,给部署和管理带来一定的复杂性。
局限性:传统SSL VPN的引流方式通常只能基于网络层或传输层进行引流,如IP地址和端口。这在某些场景下不够灵活,无法满足对应用层或更高级别的流量控制需求。
安全性风险:由于传统SSL VPN客户端需要在用户设备上运行,并进行流量拦截和处理,存在一定的安全风险。恶意软件或攻击者可能利用SSL VPN客户端的漏洞或不安全配置来进行攻击,威胁用户设备和网络安全。
配置和管理复杂性:传统SSL VPN的配置和管理通常需要针对每个用户设备进行独立的设置,包括安装和配置SSL VPN客户端、管理用户凭据等。这对于大规模部署和管理来说比较繁琐和复杂。
隧道技术是在传输层面实现安全控制,主要包括3个关键内容:引流、传输和代理。引流是精准“抓”取业务访问 流量,传输是指以加密后传输给隧道代理网关,代理是由网关代理客户端完成业务访问。
另外一种主流的方式是零信任SDP架构有两种终端引流和管控方式,其一是与传统SSL VPN一样的虚拟网卡方式,不再赘述,另一种方案采用基于Packet Filtering的引流方案,在该方案中利用WFP框架过滤驱动获取用户流量,在过滤驱动层实现一套规则引擎,可以实现IP粒度、端口粒度、进程粒度拆流其工作流程如图2所示:
步骤一:用户发起连接:用户通过终端设备发起连接请求,例如访问企业内部资源或远程办公应用程序。
步骤二:流量捕获:在终端设备上,WFP过滤驱动位于网络协议栈中的合适位置,它负责捕获和处理网络流量。当用户发起连接时,WFP过滤驱动会截获该流量。
步骤三:安全策略检查:WFP过滤驱动根据预先定义的安全策略,对截获的流量进行检查。这些安全策略可以包括源IP地址、目标IP地址、端口号、应用程序标识等多个因素。
步骤四:授权验证:在安全策略检查通过后,WFP过滤驱动会将流量传递给授权验证模块。该模块根据用户的身份认证信息,如用户名、密码、证书等,对用户进行身份验证。
步骤五:访问控制:一旦用户通过身份验证,WFP过滤驱动将根据用户的授权级别和权限,决定是否允许流量继续流入内部网络。这种访问控制可以基于多个因素,例如用户组、角色、资源类型等。
步骤六:流量引流:经过访问控制的流量将被引流到企业内部资源,即被允许访问的目标服务器或应用程序。这样,用户就能够远程访问企业内部资源,并进行工作或使用所需的应用程序。
由此可知,基于Packet Filtering的零信任SDP方案存在如下不足:
有限的精细化控制能力:尽管Packet Filtering可以实现基于IP、端口和协议的粗粒度访问控制,但在细粒度的访问控制方面存在一定的局限性。其无法对具体应用程序、用户身份、数据内容等因素进行细致的控制和策略定义。
缺乏深度应用识别:Packet Filtering主要基于网络层和传输层的信息进行过滤和访问控制,对于应用层的深度识别和控制能力较弱。这意味着其无法准确识别和处理应用层协议、应用程序特征和行为,将导致无法满足对特定应用的安全需求。
灵活性和可扩展性限制:Packet Filtering通常依赖于特定的过滤驱动程序或框架,其规则定义和配置相对固定,难以灵活地应对复杂的网络环境和安全需求。在需要动态更新和扩展规则时,需要额外的开发和配置工作,增加了管理和维护的复杂性。
性能开销:Packet Filtering在数据包处理和过滤过程中需要进行深度检查和匹配,这将引入一定的性能开销。特别是在高流量和高并发的网络环境下,将会对系统的处理能力和网络延迟产生一定影响。
因此结合上述当前主流的访问控制类安全产品SSL VPN、零信任SDP等系统可知,均存在性能不足、无法实现精细化访问控制、安全性不足等问题。
发明内容
发明目的:针对现有技术中存在的问题,本发明提供一种基于eBPF的终端流量代理及访问控制方法,不仅可以减少数据包的大小和数量,提高网络性能,创建轻量且高效的访问通道,还可以实现更加灵活的访问控制和安全策略。
技术方案:为解决上述技术问题,本发明提供一种基于eBPF的终端流量代理及访问控制方法,包括如下步骤:
步骤1:用户请求访问内部资源:当用户远程访问企业内部资源时,首先发起请求,如果请求合法则进入步骤2,如果请求非法则拒绝访问;
步骤2:引流和过滤:eBPF基于规则对数据包进行引流和过滤操作;
步骤2.1:对数据包进行引流操作;
步骤2.2:对数据包进行过滤操作;
步骤3:处理后的业务数据包经过客户端Agent发往安全网关:用户的业务请求数据包经过内核层过滤命中对应安全规则后被引流至安全网关;并通过eBPF进行应用层识别和精细化访问控制;
步骤4:用户收到目标资源响应:如果数据包通过eBPF的处理,并成功转发到目标资源,用户将收到响应,并访问所需的内部资源。
进一步的,所述步骤1中用户请求访问内部资源的具体步骤如下:
步骤1.1:客户端Agent建立访问隧道,将用户的认证、鉴权请求发送至控制中心;
步骤1.2:控制中心对用户身份、权限及终端安全状态进行验证和判断,确认是否是合法请求,如果是合法请求则进入步骤1.3,如果是非法请求则拒绝访问;
步骤1.3:控制中心判断是合法请求,则会反馈消息至零信任客户端,允许客户端进行业务流量转发。
进一步的,所述步骤2.1中对数据包进行引流操作的具体步骤如下:
步骤2.1.1:配置引流规则:需要定义引流操作的规则,这些规则可以基于不同的条件,如源IP地址、目标IP地址、端口号、协议等来进行匹配;
步骤2.1.2:引流匹配:当网络数据包到达系统时,eBPF模块会检查数据包是否与引流规则匹配。这里是通过eBPF模块中定义的过滤器来实现,如果数据包与规则匹配,则会被eBPF模块进行引流;
步骤2.1.3:数据包捕获:一旦数据包被确定为需要引流的,eBPF模块会将其捕获并转发至用户空间程序中;
步骤2.1.4:数据包转发:先对引流的数据包进行过滤操作,将符合过滤条件后的数据包将进行转发。
进一步的,所述步骤2.2中对数据包进行过滤操作的具体步骤如下:
步骤2.2.1:定义过滤规则:确定需要过滤的特定数据包的条件,例如源IP地址、目标IP地址、端口号、协议等,以及需要流量满足的安全规则,比如终端合规、上下文环境规则等;
步骤2.2.2:过滤数据包:当数据包满足过滤规则时,eBPF程序对数据包进行处理,包括丢弃、修改或转发;
步骤2.2.3:数据包转发:针对匹配过滤规则的数据包则会将流量进一步转发至零信任安全网关。
进一步的,所述步骤3中处理后的业务数据包经过客户端Agent发往安全网关:用户的业务请求数据包经过内核层过滤命中对应安全规则后被引流至安全网关;并通过eBPF进行应用层识别和精细化访问控制的具体步骤如下:
步骤3.1:数据包传输至安全网关,安全网关执行访问控制策略,判断用户是否与访问控制策略匹配,策略主要包含终端安全类策略、访问行为类策略、身份安全策略、应用安全策略等,例如PC终端软件黑白名单检测、终端杀毒软件检测、补丁检测、异常时间登录检测、黑客攻击运行检测等策略,如果安全策略均检测通过,则进入步骤3.2,如果未通过策略检测则结束;
步骤3.2:符合条件的流量继续通过客户端Agent建立的访问隧道发往安全网关;
步骤3.3:通过eBPF进行应用层识别:eBPF对数据包进行应用识别,通过分析数据包中的特征或协议信息,确定用户正在访问的应用或服务;
步骤3.4:通过eBPF进行精细化访问控制;
步骤3.5:数据包转发:根据eBPF的处理结果,数据包通过接受、丢弃或重定向传递到特定的目的地。
进一步的,所述步骤3.3中通过eBPF进行应用层识别的具体步骤如下:
步骤3.3.1:数据包解析:eBPF程序对捕获的数据包进行解析,提取关键的网络协议头部信息,如源IP地址、目标IP地址、协议类型、端口号等;
步骤3.3.2:应用层过滤:通过eBPF模块中的过滤规则,对解析后的数据包进行过滤,分析应用层特征,重点在于对协议的分析,如HTTP、HTTPS、SSH、Telnet等;
步骤3.3.3:应用层识别:对过滤后的数据包进行进一步的应用层识别。这可以通过eBPF程序中的应用层解析逻辑实现,解析数据包的有效负载,提取关键的应用层特征,如HTTP头部、TLS握手数据等。
进一步的,所述步骤3.4中通过eBPF进行精细化访问控制的具体步骤如下:
步骤3.4.1:eBPF程序加载与初始化:
步骤3.4.1.1:在操作系统中加载和初始化eBPF程序,该程序负责对数据包进行解析和处理;
步骤3.4.1.2:配置eBPF程序的访问控制策略,包括IP地址范围、端口号范围和进程标识;
步骤3.4.2:数据包解析;
步骤3.4.3:访问控制策略匹配;
步骤3.4.4:数据包处理。
进一步的,所述步骤3.4.2中数据包解析的具体步骤如下:
步骤3.4.2.1:当数据包到达操作系统的网络层时,eBPF程序会截获并解析数据包的头部信息;
步骤3.4.2.2:从数据包中提取源IP地址、目标IP地址、源端口号和目标端口号,以及相关的进程标识信息;
进一步的,所述步骤3.4.3中访问控制策略匹配的具体步骤如下:
步骤3.4.3.1:将解析得到的IP地址与IP访问控制列表进行匹配,确定是否允许该IP地址的数据包通过;
步骤3.4.3.2:将解析得到的端口号与端口访问控制策略进行匹配,确定是否允许该端口号的数据包通过;
步骤3.4.3.3:将解析得到的进程标识与进程访问控制策略进行匹配,确定是否允许该进程的数据包通过;
进一步的,所述步骤3.4.4中数据包处理的具体步骤如下:
步骤3.4.4.1:如果数据包与访问控制策略匹配成功,允许数据包通过,继续传输到目标地址;
步骤3.4.4.2:如果数据包与访问控制策略匹配失败,阻止数据包传输,并选择丢弃或采取其他处理措施。
与现有技术相比,本发明的优点在于:
本发明在零信任SDP架构采用了基于eBPF技术的新型引流、传输和代理方式,将网络层面的隧道技术转化为应用层面的数据包过滤技术。通过在应用层面对数据包进行过滤和处理,不仅可以减少数据包的大小和数量,提高网络性能,创建轻量且高效的访问通道,还可以实现更加灵活的访问控制和安全策略。
本发明采用了终端引流和安全代理:eBPF在终端设备上实现了引流和安全代理功能。它能够在内核层面捕获和处理网络数据包,实时监控和分析流量。通过识别恶意流量、应用层协议和安全威胁,eBPF提供了更细粒度的安全控制和防护。
本发明采用了网络传输和加密:eBPF与网络传输层协议集成,实现了数据包的加密和解密。它确保数据在传输过程中的机密性和完整性。通过在内核层面进行高效的加密和解密操作,eBPF降低了传输延迟,并提供了更强大的数据安全保障。
本发明采用了应用层识别和访问控制:eBPF能够深入分析数据包的应用层内容,实现了应用层协议的识别和分类。这使得eBPF可以根据应用层特征对访问进行细粒度的控制和管理,包括动态调整特定应用或服务的访问权限、流量限制和QoS策略等。
本发明采用了精细化流量管理和质量控制:eBPF在内核层面实现了流量管理和质量控制,包括带宽控制、流量整形和排队调度等功能。通过实时处理和决策数据包,eBPF提供了更灵活、智能的流量管理机制,保证重要业务的优先处理,提升了网络性能和用户体验。
本发明采用了安全策略执行和审计:eBPF可用于执行安全策略,并提供审计和日志功能。它在内核层面监测和拦截网络活动,实时监测和记录安全策略的执行情况。通过提供丰富的审计信息和日志数据,eBPF帮助安全团队进行威胁检测、安全事件响应和风险评估等工作。
本发明相对于传统解决方案还具有以下优点:
优化的性能:eBPF利用内核级别的数据包处理和安全策略执行,避免了用户态和内核态之间的频繁切换,提供了更快速和高效的数据包处理能力。因此,基于eBPF的零信任SDP在处理网络流量和执行安全策略时具有更低的延迟和更高的吞吐量。
强大的应用层分析:eBPF能够进行深度的应用层分析,识别和分类各种应用层协议。基于这种能力,零信任SDP可以对不同应用进行个性化的访问控制和流量管理。通过对应用层特征的识别,企业可以更好地保护关键业务和敏感数据,并精确控制访问权限。
实时的安全监测和响应:eBPF可以实时监测网络活动,并在内核级别拦截和处理恶意流量和安全威胁。这使得零信任SDP能够快速检测和响应安全事件,减少潜在的威胁对网络和系统的影响。通过及时的安全监测和响应,企业可以提高安全性,并降低安全事件对业务的影响。
细粒度的网络流量控制:eBPF可以对网络数据包进行实时监控和分析,并根据预先定义的规则和策略对流量进行精细化控制。企业可以基于用户、应用程序、协议、端口等多个维度来定义访问策略,实现对特定流量的限制、允许或拒绝。
动态的访问权限调整:eBPF允许根据实时情况动态调整访问权限。通过对流量进行实时监测和分析,eBPF可以自动识别和响应安全威胁或异常活动,并即时更新访问策略。这种动态的权限调整能够快速阻止未经授权的访问,提高系统的安全性和灵活性。
附图说明
图1为现有技术中传统SSL VPN的流程图;
图2为现有技术中基于WFP的零信任SDP的流程图;
图3为本发明的流程图。
具体实施方式
下面结合附图和具体实施方式,进一步阐明本发明。
如图3所示,本发明提供一种基于eBPF的终端流量代理及访问控制方法,具体步骤如下:
步骤1:用户请求访问内部资源:当用户远程访问企业内部资源时,首先发起请求,如果请求合法则进入步骤2,如果请求非法则拒绝访问;
步骤1.1:客户端Agent建立访问隧道,将用户的认证、鉴权请求发送至控制中心;
步骤1.2:控制中心对用户身份、权限及终端安全状态进行验证和判断,确认是否是合法请求,如果是合法请求则进入步骤1.3,如果是非法请求则拒绝访问;
步骤1.3:控制中心判断是合法请求,则会反馈消息至零信任客户端,允许客户端进行业务流量转发。
步骤2:引流和过滤:eBPF基于规则对数据包进行引流和过滤操作;
步骤2.1:对数据包进行引流操作;
步骤2.1.1:配置引流规则:需要定义引流操作的规则,这些规则可以基于不同的条件,如源IP地址、目标IP地址、端口号、协议等来进行匹配;
步骤2.1.2:引流匹配:当网络数据包到达系统时,eBPF模块会检查数据包是否与引流规则匹配。这里是通过eBPF模块中定义的过滤器来实现,如果数据包与规则匹配,则会被eBPF模块进行引流;
步骤2.1.3:数据包捕获:一旦数据包被确定为需要引流的,eBPF模块会将其捕获并转发至用户空间程序中;
步骤2.1.4:数据包转发:先对引流的数据包进行过滤操作,将符合过滤条件后的数据包将进行转发。
步骤2.2:对数据包进行过滤操作;
步骤2.2.1:定义过滤规则:确定需要过滤的特定数据包的条件,例如源IP地址、目标IP地址、端口号、协议等,以及需要流量满足的安全规则,比如终端合规、上下文环境规则等;
步骤2.2.2:过滤数据包:当数据包满足过滤规则时,eBPF程序对数据包进行处理,包括丢弃、修改或转发;
步骤2.2.3:数据包转发:针对匹配过滤规则的数据包则会将流量进一步转发至零信任安全网关。
步骤3:处理后的业务数据包经过客户端Agent发往安全网关:用户的业务请求数据包经过内核层过滤命中对应安全规则后被引流至安全网关;并通过eBPF进行应用层识别和精细化访问控制;
步骤3.1:数据包传输至安全网关,安全网关执行访问控制策略,判断用户是否与访问控制策略匹配,策略主要包含终端安全类策略、访问行为类策略、身份安全策略、应用安全策略等,例如PC终端软件黑白名单检测、终端杀毒软件检测、补丁检测、异常时间登录检测、黑客攻击运行检测等策略,如果安全策略均检测通过,则进入步骤3.2,如果未通过策略检测则结束;
步骤3.2:符合条件的流量继续通过客户端Agent建立的访问隧道发往安全网关;
步骤3.3:通过eBPF进行应用层识别:eBPF对数据包进行应用识别,通过分析数据包中的特征或协议信息,确定用户正在访问的应用或服务;
步骤3.3.1:数据包解析:eBPF程序对捕获的数据包进行解析,提取关键的网络协议头部信息,如源IP地址、目标IP地址、协议类型、端口号等;
步骤3.3.2:应用层过滤:通过eBPF模块中的过滤规则,对解析后的数据包进行过滤,分析应用层特征,重点在于对协议的分析,如HTTP、HTTPS、SSH、Telnet等;
步骤3.3.3:应用层识别:对过滤后的数据包进行进一步的应用层识别。这可以通过eBPF程序中的应用层解析逻辑实现,解析数据包的有效负载,提取关键的应用层特征,如HTTP头部、TLS握手数据等。
步骤3.4:通过eBPF进行精细化访问控制;
步骤3.4.1:eBPF程序加载与初始化:
步骤3.4.1.1:在操作系统中加载和初始化eBPF程序,该程序负责对数据包进行解析和处理;
步骤3.4.1.2:配置eBPF程序的访问控制策略,包括IP地址范围、端口号范围和进程标识;
步骤3.4.2:数据包解析;
步骤3.4.2.1:当数据包到达操作系统的网络层时,eBPF程序会截获并解析数据包的头部信息;
步骤3.4.2.2:从数据包中提取源IP地址、目标IP地址、源端口号和目标端口号,以及相关的进程标识信息;
步骤3.4.3:访问控制策略匹配;
步骤3.4.3.1:将解析得到的IP地址与IP访问控制列表进行匹配,确定是否允许该IP地址的数据包通过;
步骤3.4.3.2:将解析得到的端口号与端口访问控制策略进行匹配,确定是否允许该端口号的数据包通过;
步骤3.4.3.3:将解析得到的进程标识与进程访问控制策略进行匹配,确定是否允许该进程的数据包通过;
步骤3.4.4:数据包处理。
步骤3.4.4.1:如果数据包与访问控制策略匹配成功,允许数据包通过,继续传输到目标地址;
步骤3.4.4.2:如果数据包与访问控制策略匹配失败,阻止数据包传输,并选择丢弃或采取其他处理措施。
步骤3.5:数据包转发:根据eBPF的处理结果,数据包通过接受、丢弃或重定向传递到特定的目的地。
步骤4:用户收到目标资源响应:如果数据包通过eBPF的处理,并成功转发到目标资源,用户将收到响应,并访问所需的内部资源。
在本发明中,eBPF通过对数据包进行解析和匹配访问控制策略,根据匹配结果确定数据包的处理过程。如果数据包通过访问控制策略的检测,它会被接受并继续传递到目标地址。如果数据包不满足访问控制策略的检测,则会被安全网关丢弃,即不继续传递。另外,对于特定的数据包,eBPF还可以根据需要将其重定向到特定的目的地进行进一步处理,如当前用户当前的终端环境风险较高,缺少关键补丁或杀毒引擎库版本过低,则会被重定向至补丁服务器或防病毒服务器进行版本和特征的更新,也可能是用户触发了异地登录、异常时间登录、口令爆破等安全策略,则会被重定向至强制二次认证进行身份核验,这类的处理往往是进一步对终端风险和身份风险进行验证,以确保数据包的发起账号及设备是可信的。这样,通过eBPF的精细化访问控制和数据包转发能力,可以实现对网络流量的准确控制和定向管理。
接受(Accept):
当数据包满足访问控制策略的条件时,eBPF可以将数据包接受并继续传递到目标地址。
接受的数据包会按照正常的网络流程继续转发,从源地址到达目标地址。
丢弃(Drop):
当数据包不满足访问控制策略的条件时,eBPF可以选择丢弃数据包,即不继续传递。
丢弃的数据包将被直接丢弃,不会被传递到目标地址,从而防止未经授权的数据流通过网络。
重定向(Redirect):
当数据包满足访问控制策略的条件,但需要进行特定处理时,eBPF可以将数据包重定向到特定的目的地。
重定向通常用于将数据包发送到特定的处理程序、应用程序或网络设备进行进一步的分析、处理或操作。
本发明的具体实施例如下:
实施例一:
假设ABC公司是一家拥有敏感业务的企业,为了确保数据的安全性,他们采用了基于eBPF的精细化访问控制方案。下面是一个用户请求访问内部资源的案例,其中涵盖了终端安全策略、访问行为策略和应用安全策略。
步骤1:用户请求访问内部资源
用户A远程访问ABC公司的内部资源。
用户A的请求首先经过安全网关进行检查。
步骤2:引流和过滤
eBPF程序加载和初始化,配置访问控制策略。
安全网关将用户A的数据包传递给eBPF程序进行引流和过滤。
步骤2.1:数据包引流操作
配置引流规则,例如,根据源IP地址、目标IP地址和端口号进行匹配。
eBPF程序检查数据包是否与引流规则匹配。
数据包匹配成功,eBPF程序捕获并转发数据包至用户空间程序。
步骤2.2:数据包过滤操作
定义过滤规则,例如,基于终端安全、访问行为和应用安全等条件进行匹配。
eBPF程序根据过滤规则检查数据包是否符合安全策略要求。
数据包匹配成功,继续下一步骤;匹配失败,选择丢弃或采取其他处理措施。
步骤3:处理后的业务数据包经过客户端Agent发往安全网关
客户端Agent将符合安全策略的数据包发送至安全网关。
数据包再次经过eBPF程序进行应用层识别和精细化访问控制。
步骤4:用户收到目标资源响应
如果数据包通过eBPF的处理,并成功转发到目标资源,用户将收到响应,并访问所需的内部资源。
如果数据包未通过安全策略检测,用户将无法访问目标资源,安全网关可以阻止数据包传输或采取其他适当的措施。
这个案例中,eBPF程序在终端流量代理和访问控制过程中发挥重要作用。通过加载和初始化eBPF程序,并配置细粒度的访问控制策略,数据包经过引流和过滤操作,符合安全策略的数据包才能继续传输和访问内部资源。同时,通过用户空间程序和客户端Agent的配合,进一步实现应用层识别和精细化访问控制。这种方案能够确保企业内部资源的安全性,防止未经授权的访问和潜在的安全威胁。
实施例二:
假设ABC医院是一家重要的医疗机构,为了保护患者的隐私和医疗数据的安全,他们采用了基于eBPF的精细化访问控制方案。下面是一个用户远程访问医院系统的案例,其中涵盖了终端安全策略、访问行为策略和身份安全策略。
步骤1:用户请求远程访问医院系统
用户A通过医院提供的远程访问平台请求访问医院系统。
用户A的请求首先经过安全网关进行检查。
步骤2:引流和过滤
eBPF程序加载和初始化,配置访问控制策略。
安全网关将用户A的数据包传递给eBPF程序进行引流和过滤。
步骤2.1:数据包引流操作
配置引流规则,例如,根据源IP地址、目标IP地址和端口号进行匹配。
eBPF程序检查数据包是否与引流规则匹配。
数据包匹配成功,eBPF程序捕获并转发数据包至用户空间程序。
步骤2.2:数据包过滤操作
定义过滤规则,例如,基于终端安全、访问行为和身份安全等条件进行匹配。
eBPF程序根据过滤规则检查数据包是否符合安全策略要求。
数据包匹配成功,继续下一步骤;匹配失败,选择丢弃或采取其他处理措施。
步骤3:处理后的业务数据包经过客户端Agent发往安全网关
客户端Agent将符合安全策略的数据包发送至安全网关。
数据包再次经过eBPF程序进行应用层识别和精细化访问控制。
步骤4:用户收到医院系统响应
如果数据包通过eBPF的处理,并成功转发到医院系统,用户将收到响应,并访问所需的医疗服务。
如果数据包未通过安全策略检测,用户将无法访问医院系统,安全网关可以阻止数据包传输或采取其他适当的措施。
在这个案例中,eBPF程序在终端流量代理和访问控制过程中起到了关键作用。通过加载和初始化eBPF程序,并配置细粒度的访问控制策略,可以实现对用户请求的精确过滤和控制。根据不同的策略要求,数据包可以被接受、丢弃或重定向,从而实现了精细化的访问控制。该方案能够有效保护医院系统和患者数据的安全性,防止未经授权的访问和潜在的威胁。
以上所述仅为本发明的实施例子而已,并不用于限制本发明。凡在本发明的原则之内,所作的等同替换,均应包含在本发明的保护范围之内。本发明未作详细阐述的内容属于本专业领域技术人员公知的已有技术。

Claims (10)

1.一种基于eBPF的终端流量代理及访问控制方法,其特征在于,包括如下步骤:
步骤1:用户请求访问内部资源:当用户远程访问企业内部资源时,首先发起请求,如果请求合法则进入步骤2,如果请求非法则拒绝访问;
步骤2:引流和过滤:eBPF基于规则对数据包进行引流和过滤操作;
步骤2.1:对数据包进行引流操作;
步骤2.2:对数据包进行过滤操作;
步骤3:处理后的业务数据包经过客户端Agent发往安全网关:用户的业务请求数据包经过内核层过滤命中对应安全规则后被引流至安全网关;并通过eBPF进行应用层识别和精细化访问控制;
步骤4:用户收到目标资源响应:如果数据包通过eBPF的处理,并成功转发到目标资源,用户将收到响应,并访问所需的内部资源。
2.根据权利要求1所述的一种基于eBPF的终端流量代理及访问控制方法,其特征在于,所述步骤1中用户请求访问内部资源的具体步骤如下:
步骤1.1:客户端Agent建立访问隧道,将用户的认证、鉴权请求发送至控制中心;
步骤1.2:控制中心对用户身份、权限及终端安全状态进行验证和判断,确认是否是合法请求,如果是合法请求则进入步骤1.3,如果是非法请求则拒绝访问;
步骤1.3:控制中心判断是合法请求,则会反馈消息至零信任客户端,允许客户端进行业务流量转发。
3.根据权利要求1所述的一种基于eBPF的终端流量代理及访问控制方法,其特征在于,所述步骤2.1中对数据包进行引流操作的具体步骤如下:
步骤2.1.1:配置引流规则;
步骤2.1.2:引流匹配:当网络数据包到达系统时,eBPF模块会检查数据包是否与引流规则匹配;
步骤2.1.3:数据包捕获:一旦数据包被确定为需要引流的,eBPF模块会将其捕获并转发至用户空间程序中;
步骤2.1.4:数据包转发:先对引流的数据包进行过滤操作,将符合过滤条件后的数据包将进行转发。
4.根据权利要求1所述的一种基于eBPF的终端流量代理及访问控制方法,其特征在于,所述步骤2.2中对数据包进行过滤操作的具体步骤如下:
步骤2.2.1:定义过滤规则:确定需要过滤的特定数据包的条件;
步骤2.2.2:过滤数据包:当数据包满足过滤规则时,eBPF程序对数据包进行处理,包括丢弃、修改或转发;
步骤2.2.3:数据包转发:针对匹配过滤规则的数据包则会将流量进一步转发至零信任安全网关。
5.根据权利要求1所述的一种基于eBPF的终端流量代理及访问控制方法,其特征在于,所述步骤3中处理后的业务数据包经过客户端Agent发往安全网关:用户的业务请求数据包经过内核层过滤命中对应安全规则后被引流至安全网关;并通过eBPF进行应用层识别和精细化访问控制的具体步骤如下:
步骤3.1:数据包传输至安全网关,安全网关执行访问控制策略,判断用户是否与访问控制策略匹配,策略主要包含终端安全类策略、访问行为类策略、身份安全策略、应用安全策略等,例如PC终端软件黑白名单检测、终端杀毒软件检测、补丁检测、异常时间登录检测、黑客攻击运行检测等策略,如果安全策略均检测通过,则进入步骤3.2,如果未通过策略检测则结束;
步骤3.2:符合条件的流量继续通过客户端Agent建立的访问隧道发往安全网关;
步骤3.3:通过eBPF进行应用层识别:eBPF对数据包进行应用识别,通过分析数据包中的特征或协议信息,确定用户正在访问的应用或服务;
步骤3.4:通过eBPF进行精细化访问控制;
步骤3.5:数据包转发:根据eBPF的处理结果,数据包通过接受、丢弃或重定向传递到特定的目的地。
6.根据权利要求1所述的一种基于eBPF的终端流量代理及访问控制方法,其特征在于,所述步骤3.3中通过eBPF进行应用层识别的具体步骤如下:
步骤3.3.1:数据包解析:eBPF程序对捕获的数据包进行解析,提取关键的网络协议头部信息;
步骤3.3.2:应用层过滤:通过eBPF模块中的过滤规则,对解析后的数据包进行过滤,分析应用层特征,重点在于对协议的分析;
步骤3.3.3:应用层识别:对过滤后的数据包进行进一步的应用层识别。
7.根据权利要求1所述的一种基于eBPF的终端流量代理及访问控制方法,其特征在于,所述步骤3.4中通过eBPF进行精细化访问控制的具体步骤如下:
步骤3.4.1:eBPF程序加载与初始化:
步骤3.4.1.1:在操作系统中加载和初始化eBPF程序,该程序负责对数据包进行解析和处理;
步骤3.4.1.2:配置eBPF程序的访问控制策略,包括IP地址范围、端口号范围和进程标识;
步骤3.4.2:数据包解析;
步骤3.4.3:访问控制策略匹配;
步骤3.4.4:数据包处理。
8.根据权利要求1所述的一种基于eBPF的终端流量代理及访问控制方法,其特征在于,所述步骤3.4.2中数据包解析的具体步骤如下:
步骤3.4.2.1:当数据包到达操作系统的网络层时,eBPF程序会截获并解析数据包的头部信息;
步骤3.4.2.2:从数据包中提取源IP地址、目标IP地址、源端口号和目标端口号,以及相关的进程标识信息。
9.根据权利要求1所述的一种基于eBPF的终端流量代理及访问控制方法,其特征在于,所述步骤3.4.3中访问控制策略匹配的具体步骤如下:
步骤3.4.3.1:将解析得到的IP地址与IP访问控制列表进行匹配,确定是否允许该IP地址的数据包通过;
步骤3.4.3.2:将解析得到的端口号与端口访问控制策略进行匹配,确定是否允许该端口号的数据包通过;
步骤3.4.3.3:将解析得到的进程标识与进程访问控制策略进行匹配,确定是否允许该进程的数据包通过。
10.根据权利要求1所述的一种基于eBPF的终端流量代理及访问控制方法,其特征在于,所述步骤3.4.4中数据包处理的具体步骤如下:
步骤3.4.4.1:如果数据包与访问控制策略匹配成功,允许数据包通过,继续传输到目标地址;
步骤3.4.4.2:如果数据包与访问控制策略匹配失败,阻止数据包传输,并选择丢弃或采取其他处理措施。
CN202310817603.XA 2023-07-05 2023-07-05 一种基于eBPF的终端流量代理及访问控制方法 Pending CN116827646A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310817603.XA CN116827646A (zh) 2023-07-05 2023-07-05 一种基于eBPF的终端流量代理及访问控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310817603.XA CN116827646A (zh) 2023-07-05 2023-07-05 一种基于eBPF的终端流量代理及访问控制方法

Publications (1)

Publication Number Publication Date
CN116827646A true CN116827646A (zh) 2023-09-29

Family

ID=88123875

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310817603.XA Pending CN116827646A (zh) 2023-07-05 2023-07-05 一种基于eBPF的终端流量代理及访问控制方法

Country Status (1)

Country Link
CN (1) CN116827646A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117395058A (zh) * 2023-11-02 2024-01-12 江苏润和软件股份有限公司 一种基于eBPF技术的动态终端系统网络防护的方法
CN120956668A (zh) * 2025-10-16 2025-11-14 浙江农商数字科技有限责任公司 一种分布式系统精细化限流方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117395058A (zh) * 2023-11-02 2024-01-12 江苏润和软件股份有限公司 一种基于eBPF技术的动态终端系统网络防护的方法
CN120956668A (zh) * 2025-10-16 2025-11-14 浙江农商数字科技有限责任公司 一种分布式系统精细化限流方法

Similar Documents

Publication Publication Date Title
US10003616B2 (en) Destination domain extraction for secure protocols
US7313618B2 (en) Network architecture using firewalls
US11539695B2 (en) Secure controlled access to protected resources
US8060927B2 (en) Security state aware firewall
US7610375B2 (en) Intrusion detection in a data center environment
US20180352004A1 (en) Policy enforcement using host information profile
EP4236206B1 (en) Actively monitoring encrypted traffic by inspecting logs
US20060026680A1 (en) System and method of characterizing and managing electronic traffic
JP2006506853A (ja) 能動的ネットワーク防衛システム及び方法
CA2506418C (en) Systems and apparatuses using identification data in network communication
CN116827646A (zh) 一种基于eBPF的终端流量代理及访问控制方法
CN118449742A (zh) 一种基于零信任的网络安全控制方法、系统及装置
CN118300899B (zh) 授权通信方法、装置、计算机设备及存储介质
US20250220001A1 (en) Zero-trust network access (ztna) secure traffic forwarding
CN116319028A (zh) 一种反弹shell攻击拦截方法和装置
CN108494731A (zh) 一种基于双向身份认证的抗网络扫描方法
RU2695983C1 (ru) Способ фильтрации защищенных сетевых соединений в цифровой сети передачи данных
Sulaman An Analysis and Comparison of The Security Features of Firewalls and IDSs
Ibitola et al. Analysis of Network-Based Intrusion Detection and Prevention System in an Enterprise Network Using Snort Freeware
MARTINI Managing Security of Computer Network Applications using Encryption Techniques

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