CN114900370B - 一种针对应用协议进行流量过滤的方法和装置 - Google Patents

一种针对应用协议进行流量过滤的方法和装置 Download PDF

Info

Publication number
CN114900370B
CN114900370B CN202210621211.1A CN202210621211A CN114900370B CN 114900370 B CN114900370 B CN 114900370B CN 202210621211 A CN202210621211 A CN 202210621211A CN 114900370 B CN114900370 B CN 114900370B
Authority
CN
China
Prior art keywords
field
traffic
application protocol
flow
policy
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.)
Active
Application number
CN202210621211.1A
Other languages
English (en)
Other versions
CN114900370A (zh
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.)
Hefei Zhuoxin Cloud Technology Co ltd
Original Assignee
Hefei Zhuoxin Cloud 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 Hefei Zhuoxin Cloud Technology Co ltd filed Critical Hefei Zhuoxin Cloud Technology Co ltd
Priority to CN202210621211.1A priority Critical patent/CN114900370B/zh
Publication of CN114900370A publication Critical patent/CN114900370A/zh
Application granted granted Critical
Publication of CN114900370B publication Critical patent/CN114900370B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • 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/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

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)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种针对应用协议进行流量过滤的方法和装置,在Nginx流量代理的基础上,实现了基于ftp、http、smtp和pop3等标准应用协议和各种自定义非标准应用协议的数据结构检查。该方法通过修改自身配置,自研插件,实现常见应用协议的流量过滤的功能,该方法包括:功能编译,配置修改,流量过滤,且该数据结构检查规则灵活可配,软件实现能快速从大量流量中挑出恶意流量或安全流量,将安全流量予以放行,将恶意流量予以阻断并生成对应日志信息,从而极大地提高了应用系统的安全防护能力。

Description

一种针对应用协议进行流量过滤的方法和装置
技术领域
本发明涉及网络安全技术领域,尤其设计一种针对应用协议进行流量过滤的方法和装置。
背景技术
Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,其将源代码以类BSD许可证的形式发布;其特点是占有内存少,并发能力强,已经成为国内外web 网站重要选择之一。Nginx是一款轻量级的Web服务器/反向代理服务器以及电子邮件代理服务器。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好。
Nginx相较于Apache\lighttpd具有占有内存少,稳定性高等优势,并且依靠并发能力强,丰富的模块库以及友好灵活的配置而闻名。在Linux操作系统下,nginx使用epoll事件模型,得益于此,nginx在Linux操作系统下效率相当高。
Nginx (engine x) 从2019年至2021年,连续3年市场占有率均排行第一,很多公司都在使用Nginx,但Nginx本身缺乏对应用流量的数据结构检查的能力,市面上可集成到Nginx的流量过滤工具大多也具有逻辑复杂,功能单一,定制化修改难度大的缺陷。
因此,如何实现Nginx中应用协议的灵活动态配置,对http、ftp、smtp、pop3及其他常用应用协议进行流量过滤,是目前有待解决的技术问题。
发明内容
本发明公开一种针对应用协议进行流量过滤的方法,所要解决的技术问题是基于Nginx软件本身缺乏对应用流量的数据结构检查的能力,通过加载自研插件的方式,实现常见应用协议的流量过滤的功能,该方法包括:
步骤S101功能编译:执行配置指令,执行web服务器编译命令,运行web服务器;
步骤S102配置加载:修改web服务器配置,在web服务器配置中增加若干文件,文件中描述各个应用协议的过滤规则,对每个应用协议区分,每个所述应用协议包含多个策略,对所述策略进行区分,每个策略均配置有对应的字段,策略配置的字段分别对应流量的进行放行或阻断;
所述字段包括放行字段或阻断字段;
步骤S103流量过滤:检查各数据是否正确,按web服务器配置的要求实时监听流量,将与放行字段对应的流量予以放行,将与阻断字段对应的流量予以阻断。
可选的,步骤S101还包括:所述执行配置命令时,增加与过滤功能相关源码所在的目录地址的选项。
可选的,步骤S102中所述修改web服务器配置具体为,在业务代理配置中新增字段,所述字段中第二个参数为每个代理唯一的正整数,同时在目录新增若干个文件,文件中描述各个应用协议的过滤规则。
可选的,所述步骤S103中的将与放行字段对应的流量予以放行,将与阻断字段对应的流量予以阻断具体包括:
判断所述流量命中的某一所述应用协议中的阻断策略和放行策略,并根据该判断结果执行流量的阻断和放行;
若所述流量同时命中阻断策略与放行策略,则所述流量将会被阻断;
若所述流量只命中阻断策略,则所述流量将会被阻断;
若所述流量只命中放行策略,则所述流量将会被放行。
其中,所述阻断策略与放行策略的判断方法包括以下步骤:
判断所述流量命中的某一所述应用协议中策略A中的字段数量,并根据该判断结果确认是否命中所述策略;
若所述流量命中某一所述应用协议中策略A中的所有字段,则判断为命中所述策略A;
若所述流量命中某一所述应用协议中策略A中的若干字段,则判断为未命中所述策略A;
若所述流量未命中某一所述应用协议中策略A中的任何字段,则判断为未命中所述策略A;
其中,命中某一所述应用协议中策略A中字段的判断方法包括以下步骤:
每个所述字段配置若干个字符串成员;
若所述流量命中某一字段中任意一个所述字符串成员,则判断结果为命中所述字段;
若所述流量命中某一字段中所有所述字符串成员,则判断结果为命中所述字段;
若所述流量未命中某一字段中任意一个字符串成员,则判断结果为未命中所述字段;
其中,所述命中的含义,指的是被命中的策略、字段参与对放行或阻断的判断。
相应的,本发明还提供一种针对应用协议进行流量过滤的装置,其特征在于,该装置包括功能编译模块、配置加载模块、流量过滤模块:
所述功能编译模块用于执行配置指令,执行web服务器编译命令,运行web服务器;
所述配置加载模块用于修改web服务器配置,在web服务器配置中增加若干文件,文件中描述各个应用协议的过滤规则,对每个应用协议区分,每个所述应用协议包含多个策略,对所述策略进行区分,每个策略均配置有对应的字段,策略配置的字段分别对应流量的进行放行或阻断;
所述字段包括放行字段或阻断字段;
所述流量过滤模块用于检查各数据是否正确,按web服务器配置的要求实时监听流量,将与放行字段对应的流量予以放行,将与阻断字段对应的流量予以阻断。
可选的,所述功能编译模块用于执行配置指令时,增加与过滤功能相关源码所在的目录地址的选项。
可选的,所述修改web服务器配置具体为,在业务代理配置中新增字段,所述字段中第二个参数为每个代理唯一的正整数,同时在目录新增若干个文件,文件中描述各个应用协议的过滤规则。
可选的,所述流量过滤模块用于根据以下算法执行流量的阻断和放行:
判断所述流量命中的某一所述应用协议中的阻断策略和放行策略,并根据该判断结果执行流量的阻断和放行;
若所述流量命中某一所述应用协议中策略A中的所有字段,则判断为命中所述策略A;
若所述流量命中某一所述应用协议中策略A中的若干字段,则判断为未命中所述策略A;
若所述流量未命中某一所述应用协议中策略A中的任何字段,则判断为未命中所述策略A。
其中,所述流量过滤模块包括策略命中判断模块;
所述策略命中判断模块根据以下算法执行:
判断所述流量命中的某一所述应用协议中策略A中的字段数量,并根据该判断结果确认是否命中所述策略;
若所述流量命中某一所述应用协议中策略A中的所有字段,则判断为命中所述策略A;
若所述流量命中某一所述应用协议中策略A中的若干字段,则判断为未命中所述策略A;
若所述流量未命中某一所述应用协议中策略A中的任何字段,则判断为未命中所述策略A;
其中,所述策略命中判断模块包括字段命中判断模块,每个所述字段配置若干个字符串成员;
所述字段命中判断模块根据以下算法执行;
判断所述流量命中的某一所述字段中所述字符串成员的数量,并根据该判断结果确认是否命中所述字段;
若所述流量命中某一字段中任意一个所述字符串成员,则判断结果为命中所述字段;
若所述流量命中某一字段中所有所述字符串成员,则判断结果为命中所述字段;
若所述流量未命中某一字段中任意一个字符串成员,则判断结果为未命中所述字段。
由此可见,本发明通过功能编译,对web服务器配置进行修改,包括:在web服务器配置中增加若干文件,文件中描述各个应用协议的过滤规则,对每个应用协议区分,每个所述应用协议包含多个策略,对所述策略进行区分,每个策略均配置有对应的字段,策略配置的字段分别对应流量的进行放行或阻断,配置修改完成后,启动Nginx服务,Nginx自动加载配置,并按配置要求实时监听流量。从而有效的实现了Nginx应用协议的灵活动态配置,并且针对了不同的常用应用协议进行流量过滤,包括:http、ftp、smtp、pop3等应用协议,上述可见本发明具有功能丰富,逻辑简单,可定制化程度高的优点。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本发明实施例的一种针对应用协议进行流量过滤的方法的流程图;
图2示出了本发明实施例的一种针对应用协议进行流量过滤的方法的结构示意图;
图3示出了本发明实施例的一种针对应用协议进行流量过滤的装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
本发明所要解决的技术问题是基于Nginx软件本身缺乏对应用流量的数据结构检查的能力 ,如何通过灵活可配的方式,实现常见应用协议的流量过滤功能。
本发明为解决上述技术问题采用以下技术方案:
一种针对应用协议进行流量过滤的方法,具体步骤如图1所示,包括:
步骤S101功能编译:执行配置指令,执行web服务器编译命令,运行web服务器:
在功能编译时,执行configure命令时,增加--add-module=./modules/jsac选项,其中所述./modules/jsac为过滤功能相关源码所在的目录地址,所述configure命令执行成功后,执行Nginx编译命令,所述编译命令完成后,所述应用协议数据结构检查的功能将作为Nginx的一个独立模块运行。
步骤S102配置加载:修改web服务器配置,在web服务器配置中增加若干文件,文件中描述各个应用协议的过滤规则,对每个应用协议区分,每个所述应用协议包含多个策略,对所述策略进行区分,每个策略均配置有对应的字段,策略配置的字段分别对应流量的放行或阻断;
在加载配置前,修改Nginx配置,在业务代理server{}配置中新增appid <appid>;字段,所述字段中第二个参数为每个代理唯一的正整数,同时,在/etc/jsac/目录新增http.json、ftp.json、mail.json、other.json四个文件,所述文件中以json格式描述各个应用协议的过滤规则,所述每个应用协议以appid来区分,所述每个应用协议包含多个策略,每个所述策略有对应ruleid来区分,所述每个策略可以配置action字段对应流量的放行或阻断。
其中,所述字段包括放行字段或阻断字段;
其中,所述每个策略可以根据应用协议配置特定的字段进行流量过滤,具体为:
(1)若所述应用协议为http时,可以根据所述策略中配置的Method、Uri、Parameter和Content-type等相关字段进行流量过滤;
(2)若所述当应用协议为ftp时,可以根据所述策略中配置的Cmd、Account、UploadExt、DownloadExt等相关字段进行流量过滤;
(3)若所述应用协议为smtp/pop3时,可以根据所述策略中配置的Account、Address、Subject、AttachmentExt等相关字段进行流量过滤;
(4)若所述应用协议为其他应用协议时,可以根据所述策略中配置的若干个关键字内容、关键字偏移、关键字编码等相关字段进行流量过滤。
步骤S103流量过滤:检查各数据是否正确,按web服务器配置的要求实时监听流量,将与放行字段对应的流量予以放行,将与阻断字段对应的流量予以阻断。
包括restart或reload Nginx服务,启动成功后,应用协议数据结构检查模块将自动加载配置,并按配置要求实时监听流量,对于符合放行条件的流量予以放行,不符合放行条件的流量予以阻断,并将阻断的流量以日志的形式写入日志文件中。
其中,所述对于符合放行条件的流量予以放行,不符合放行条件的流量予以阻断具体为:
判断所述流量命中的某一所述应用协议中的阻断策略和放行策略,并根据该判断结果执行流量的阻断和放行;
若所述流量同时命中阻断策略与放行策略,则所述流量将会被阻断;
若所述流量只命中阻断策略,则所述流量将会被阻断;
若所述流量只命中放行策略,则所述流量将会被放行。
判断所述流量命中的某一所述应用协议中策略A中的字段数量,并根据该判断结果确认是否命中所述策略;
若所述流量命中某一所述应用协议中策略A中的所有字段,则判断为命中所述策略A;
若所述流量命中某一所述应用协议中策略A中的若干字段,则判断为未命中所述策略A;
若所述流量未命中某一所述应用协议中策略A中的任何字段,则判断为未命中所述策略A;
其中,命中某一所述应用协议中策略A中字段的判断方法包括以下步骤:
每个所述字段配置若干个字符串成员;
若所述流量命中某一字段中任意一个所述字符串成员,则判断结果为命中所述字段;
若所述流量命中某一字段中所有所述字符串成员,则判断结果为命中所述字段;
若所述流量未命中某一字段中任意一个字符串成员,则判断结果为未命中所述字段;
其中,所述命中的含义,指的是被命中的策略、字段参与对放行或阻断的判断。
可选的,所述将与放行字段对应的流量为安全流量,所述与阻断字段对应的流量为恶意流量。
由此可见,上述技术方案具有以下优点:
本发明提供了一种针对应用协议进行流量过滤的方法,主要基于Nginx本身,对自身配置进行修改,配置方式灵活易懂,可以针对不同应用场景做定制化的配置调整,匹配命中逻辑简单高效,不会产生过多性能上的额外开销,而且,本发明可扩展性强,基于当前系统架构,可以灵活扩展其他应用协议的专属字段的过滤功能。
为了让本发明更加直观,现将结合另一个实施例对本发明进行进一步说明,本实施例具体包括以下步骤:
S1:执行configure命令时,增加--add-module=./modules/jsac选项,其中./modules/jsac为过滤功能相关源码所在的目录地址,configure命令执行成功后,执行并完成nginx编译命令,完成后应用协议数据结构检查的功能将作为nginx的一个独立模块运行;
S2:修改Nginx配置,在业务代理server{}配置中新增appid <appid>;字段,所述字段中第二个参数为每个代理唯一的正整数,其中proxy_service字段用于指定该代理属于哪个应用协议,本实施例中所述proxy_service字段为应用协议smtp,具体如表1所示:
表1:
在/etc/jsac/目录新增http.json、ftp.json、mail.json、other.json四个文件,所述文件中以json格式描述所述每个应用协议的过滤规则,所述每个应用协议以appid来区分,所述每个应用协议包含多个策略,所述每个策略有对应的ruleid来区分,所述每个策略可以配置action字段,表示流量命中所述策略后放行或阻断,每个所述策略可以根据应用协议配置特定字段。
例如:所述http应用协议,可配Method、Uri、Parameter和Content-type等字段;
所述ftp应用协议,可配Cmd、Account、UploadExt、DownloadExt等字段;
诉述smtp/pop3应用协议,可配Account、Address、Subject、AttachmentExt等字段;
所述其他应用协议,可配若干个关键字内容、关键字偏移、关键字编码等字段。
本实施例中所述应用协议为smtp/pop3,可以根据所述策略中配置的Account、Address、Subject、AttachmentExt等相关字段进行流量过滤;如表2所示配置了针对两个邮件地址的放行策略和针对两个标题内容的阻断策略,具体为:
表2:
S3:restart或reload nginx服务,启动成功后,应用协议数据结构检查模块将自动加载配置,并按配置要求实时监听流量。
实时流量过滤功能的具体算法为:
每个业务代理中的若干个策略的命中结果,以阻断优先,例如同时命中若干个需要阻断的策略和若干个需要放行的策略,则该流量会阻断;
每个策略中针对应用协议配置的多个字段之间是与的关系,即该策略下所有字段都命中,才算命中该策略;
每个策略字段可以配置若干个字符串成员,同一字段下所有字符串成员之间是或的关系,即命中任何一个字符串成员,即算命中该字段。
最终软件对于符合放行条件的流量予以放行,不符合放行条件的流量予以阻断,并将阻断的流量以日志的形式写入日志文件中。
其中,在另一个实施例中,如图2所示:
应用协议检查模块自动加载配置,对客户端发送的流量按配置要求进行实时监听过滤,所述配置要求包括对各个应用协议的过滤规则,对于符合放行条件的流量予以放行,并发送给服务端,不符合放行条件的流量予以阻断,并将阻断的流量以日志的形式写入日志文件中;
相应的,当所述应用协议数据检查模块接收到服务端发送的流量数据时,同样将所述流量按配置要求进行流量过滤,对于符合放行条件的流量予以放行返回给客户端,不符合放行条件的流量予以阻断,并将阻断的流量记录在日志文件中,从而对客户端和服务端会形成双向检测,以保证流量检测的有效性。
其中,所述将与放行字段对应的流量为安全流量,所述与阻断字段对应的流量为恶意流量。
相应的,本申请实施例还提出了一种针对应用协议进行流量过滤的装置,如图3所述,所述装置包括:
功能编译模块310,用于执行配置指令,执行web服务器编译命令,运行web服务器;
配置加载模块320,用于修改web服务器配置,在web服务器配置中增加若干文件,文件中描述各个应用协议的过滤规则,对每个应用协议区分,每个所述应用协议包含多个策略,对所述策略进行区分,每个策略均配置有对应的字段,策略配置的字段分别对应流量的放行或阻断;
所述字段包括放行字段或阻断字段;
流量过滤模块330,用于检查各数据是否正确,按web服务器配置的要求实时监听流量,将与放行字段对应的流量予以放行,将与阻断字段对应的流量予以阻断。
在具体的应用场景中,所述功能编译模块还用于:
执行配置指令时,增加与过滤功能相关源码所在的目录地址的选项。
在具体的应用场景中,所述配置加载模块还用于:
在业务代理配置中新增字段,所述字段中第二个参数为每个代理唯一的正整数,同时在目录新增若干个文件,文件中描述各个应用协议的过滤规则。
在具体的应用场景中,所述流量过滤模块还具体用于:
根据以下算法执行流量的阻断和放行:
判断所述流量命中的某一所述应用协议中的阻断策略和放行策略,并根据该判断结果执行流量的阻断和放行;
若所述流量命中某一所述应用协议中策略A中的所有字段,则判断为命中所述策略A;
若所述流量命中某一所述应用协议中策略A中的若干字段,则判断为未命中所述策略A;
若所述流量未命中某一所述应用协议中策略A中的任何字段,则判断为未命中所述策略A。
在具体的应用场景中,所述流量过滤模块还包括策略命中判断模块:
所述策略命中判断模块根据以下算法执行:
判断所述流量命中的某一所述应用协议中策略A中的字段数量,并根据该判断结果确认是否命中所述策略;
若所述流量命中某一所述应用协议中策略A中的所有字段,则判断为命中所述策略A;
若所述流量命中某一所述应用协议中策略A中的若干字段,则判断为未命中所述策略A;
若所述流量未命中某一所述应用协议中策略A中的任何字段,则判断为未命中所述策略A;
其中,所述策略命中判断模块包括字段命中模块,每个所述字段配置若干个字符串成员;
所述字段命中判断模块根据以下算法执行;
判断所述流量命中的某一所述字段中所述字符串成员的数量,并根据该判断结果确认是否命中所述字段;
若所述流量命中某一字段中任意一个所述字符串成员,则判断结果为命中所述字段;
若所述流量命中某一字段中所有所述字符串成员,则判断结果为命中所述字段;
若所述流量未命中某一字段中任意一个字符串成员,则判断结果为未命中所述字段。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明序号仅仅为了描述,不代表实施场景的优劣。
以上公开的仅为本发明的几个具体实施场景,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。

Claims (6)

1.一种针对应用协议进行流量过滤的方法,其特征在于,该方法包括:
步骤S101功能编译:执行配置指令,执行web服务器编译命令,运行web服务器;
步骤S102配置加载:修改web服务器配置,在web服务器配置中增加若干文件,文件中描述各个应用协议的过滤规则,对每个应用协议区分,每个所述应用协议包含多个策略,对所述策略进行区分,每个策略均配置有对应的字段,策略配置的字段分别对应流量的放行或阻断;
所述字段包括放行字段或阻断字段;
步骤S103流量过滤:检查各数据是否正确,按web服务器配置的要求实时监听流量,将与放行字段对应的流量予以放行,将与阻断字段对应的流量予以阻断;
步骤S101所述执行配置指令时,增加与过滤功能相关源码所在的目录地址的选项;
步骤S102中所述修改web服务器配置具体为,在业务代理配置中新增字段,所述新增字段中第二个参数为每个代理唯一的正整数,同时在目录新增若干个文件,文件中描述各个应用协议的过滤规则;
其中,所述选项为--add-module=./modules/j sac选项,其中./modules/jsac为过滤功能相关源码所在的目录地址,所述配置指令执行成功后,执行Nginx编译命令,编译命令完成后,应用协议数据结构检查的功能将作为Nginx的一个独立模块运行,所述文件为在/etc/jsac/目录新增的http.j son、ftp.j son、mail.json、other.j son四个文件,所述文件中以j son格式描述各个应用协议的过滤规则,所述每个应用协议以appid来区分,所述每个应用协议包含多个策略,每个所述策略有对应ruleid来区分,所述每个策略配置action字段对应流量的放行或阻断;
其中,所述每个策略根据应用协议配置特定的字段进行流量过滤,具体为:
(1)若所述应用协议为http时,根据所述策略中配置的Method、Uri、Parameter和Content-type字段进行流量过滤;
(2)若所述应用协议为ftp时,根据所述策略中配置的Cmd、Account、UploadExt、DownloadExt字段进行流量过滤;
(3)若所述应用协议为smtp/pop3时,根据所述策略中配置的Account、Address、Subject、AttachmentExt字段进行流量过滤;
(4)若所述应用协议为其他应用协议时,根据所述策略中配置的若干个关键字内容、关键字偏移、关键字编码字段进行流量过滤。
2.如权利要求1所述的方法,其特征在于,所述步骤S103中的将与放行字段对应的流量予以放行,将与阻断字段对应的流量予以阻断具体包括:
判断所述流量命中的某一所述应用协议中的阻断策略和放行策略,并根据判断结果执行流量的阻断和放行;
若所述流量同时命中阻断策略与放行策略,则所述流量将会被阻断;
若所述流量只命中阻断策略,则所述流量将会被阻断;
若所述流量只命中放行策略,则所述流量将会被放行。
3.如权利要求2所述的方法,其特征在于,命中阻断策略与放行策略的判断方法包括以下步骤:
判断所述流量命中的某一所述应用协议中策略A中的字段数量,并根据该判断结果确认是否命中所述策略;
若所述流量命中某一所述应用协议中策略A中的所有字段,则判断为命中所述策略A;
若所述流量命中某一所述应用协议中策略A中的若干字段,则判断为未命中所述策略A;
若所述流量未命中某一所述应用协议中策略A中的任何字段,则判断为未命中所述策略A;
其中,命中某一所述应用协议中策略A中字段的判断方法包括以下步骤:
每个所述字段配置若干个字符串成员;
若所述流量命中某一字段中任意一个所述字符串成员,则判断结果为命中所述字段;
若所述流量命中某一字段中所有所述字符串成员,则判断结果为命中所述字段;
若所述流量未命中某一字段中任意一个字符串成员,则判断结果为未命中所述字段。
4.一种针对应用协议进行流量过滤的装置,其特征在于,该装置包括功能编译模块、配置加载模块、流量过滤模块:
所述功能编译模块用于执行配置指令,执行web服务器编译命令,运行web服务器;
所述配置加载模块用于修改web服务器配置,在web服务器配置中增加若干文件,文件中描述各个应用协议的过滤规则,对每个应用协议区分,每个所述应用协议包含多个策略,对所述策略进行区分,每个策略均配置有对应的字段,策略配置的字段分别对应流量的放行或阻断;
所述字段包括放行字段或阻断字段;
所述流量过滤模块用于检查各数据是否正确,按web服务器配置的要求实时监听流量,将与放行字段对应的流量予以放行,将与阻断字段对应的流量予以阻断;
所述功能编译模块用于执行配置指令时,增加与过滤功能相关源码所在的目录地址的选项;
所述修改web服务器配置具体为,在业务代理配置中新增字段,所述新增字段中第二个参数为每个代理唯一的正整数,同时在目录新增若干个文件,文件中描述各个应用协议的过滤规则;
其中,所述选项为--add-module=./modules/j sac选项,其中./modules/jsac为过滤功能相关源码所在的目录地址,所述配置指令执行成功后,执行Nginx编译命令,编译命令完成后,应用协议数据结构检查的功能将作为Nginx的一个独立模块运行,所述文件为在/etc/jsac/目录新增的http.j son、ftp.j son、mail.json、other.j son四个文件,所述文件中以j son格式描述各个应用协议的过滤规则,所述每个应用协议以appid来区分,所述每个应用协议包含多个策略,每个所述策略有对应ruleid来区分,所述每个策略配置action字段对应流量的放行或阻断;
其中,所述每个策略根据应用协议配置特定的字段进行流量过滤,具体为:
(1)若所述应用协议为http时,根据所述策略中配置的Method、Uri、Parameter和Content-type字段进行流量过滤;
(2)若所述应用协议为ftp时,根据所述策略中配置的Cmd、Account、UploadExt、DownloadExt字段进行流量过滤;
(3)若所述应用协议为smtp/pop3时,根据所述策略中配置的Account、Address、Subject、AttachmentExt字段进行流量过滤;
(4)若所述应用协议为其他应用协议时,根据所述策略中配置的若干个关键字内容、关键字偏移、关键字编码字段进行流量过滤。
5.如权利要求4所述的装置,其特征在于,所述流量过滤模块用于根据以下算法执行流量的阻断和放行:
判断所述流量命中的某一所述应用协议中的阻断策略和放行策略,并根据判断结果执行流量的阻断和放行;
若所述流量命中某一所述应用协议中策略A中的所有字段,则判断为命中所述策略A;
若所述流量命中某一所述应用协议中策略A中的若干字段,则判断为未命中所述策略A;
若所述流量未命中某一所述应用协议中策略A中的任何字段,则判断为未命中所述策略A。
6.如权利要求5所述的装置,其特征在于,流量过滤模块包括策略命中判断模块:
所述策略命中判断模块根据以下算法执行:
判断所述流量命中的某一所述应用协议中策略A中的字段数量,并根据该判断结果确认是否命中所述策略;
若所述流量命中某一所述应用协议中策略A中的所有字段,则判断为命中所述策略A;
若所述流量命中某一所述应用协议中策略A中的若干字段,则判断为未命中所述策略A;
若所述流量未命中某一所述应用协议中策略A中的任何字段,则判断为未命中所述策略A;
其中,所述策略命中判断模块包括字段命中判断模块,每个所述字段配置若干个字符串成员;
所述字段命中判断模块根据以下算法执行;
判断所述流量命中的某一所述字段中所述字符串成员的数量,并根据该判断结果确认是否命中所述字段;
若所述流量命中某一字段中任意一个所述字符串成员,则判断结果为命中所述字段;
若所述流量命中某一字段中所有所述字符串成员,则判断结果为命中所述字段;
若所述流量未命中某一字段中任意一个字符串成员,则判断结果为未命中所述字段。
CN202210621211.1A 2022-06-02 2022-06-02 一种针对应用协议进行流量过滤的方法和装置 Active CN114900370B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210621211.1A CN114900370B (zh) 2022-06-02 2022-06-02 一种针对应用协议进行流量过滤的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210621211.1A CN114900370B (zh) 2022-06-02 2022-06-02 一种针对应用协议进行流量过滤的方法和装置

Publications (2)

Publication Number Publication Date
CN114900370A CN114900370A (zh) 2022-08-12
CN114900370B true CN114900370B (zh) 2024-04-26

Family

ID=82725970

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210621211.1A Active CN114900370B (zh) 2022-06-02 2022-06-02 一种针对应用协议进行流量过滤的方法和装置

Country Status (1)

Country Link
CN (1) CN114900370B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109698831A (zh) * 2018-12-28 2019-04-30 中电智能科技有限公司 数据防护方法和装置
CN111526121A (zh) * 2020-03-24 2020-08-11 杭州迪普科技股份有限公司 入侵防御方法、装置、电子设备及计算机可读介质
US11159576B1 (en) * 2021-01-30 2021-10-26 Netskope, Inc. Unified policy enforcement management in the cloud
CN114465796A (zh) * 2022-01-30 2022-05-10 杭州立思辰安科科技有限公司 一种应用于车载防火墙的安全防护方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009146178A1 (en) * 2008-04-15 2009-12-03 President And Fellows Of Harvard College Angiogenin and amyotrophic lateral sclerosis
US8583781B2 (en) * 2009-01-28 2013-11-12 Headwater Partners I Llc Simplified service network architecture

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109698831A (zh) * 2018-12-28 2019-04-30 中电智能科技有限公司 数据防护方法和装置
CN111526121A (zh) * 2020-03-24 2020-08-11 杭州迪普科技股份有限公司 入侵防御方法、装置、电子设备及计算机可读介质
US11159576B1 (en) * 2021-01-30 2021-10-26 Netskope, Inc. Unified policy enforcement management in the cloud
CN114465796A (zh) * 2022-01-30 2022-05-10 杭州立思辰安科科技有限公司 一种应用于车载防火墙的安全防护方法

Also Published As

Publication number Publication date
CN114900370A (zh) 2022-08-12

Similar Documents

Publication Publication Date Title
US8544099B2 (en) Method and device for questioning a plurality of computerized devices
CA2138058C (en) Method for controlling computer network security
US20100232290A1 (en) Methods And Systems For Managing Network Traffic Within A Virtual Network System
CN103959712B (zh) 大型防火墙集群中的定时管理
CN111935061B (zh) 一种工控主机的网络安全防护实现方法及工控主机
EP3192226B1 (de) Vorrichtung und verfahren zur steuerung eines kommunikationsnetzwerks
CN109672553A (zh) 网关动态配置方法、系统、计算机设备及存储介质
CN103858383B (zh) 防火墙群集中的验证共享
CN107623731A (zh) 一种任务调度方法、客户端、服务集群及系统
CN106993000A (zh) 解决反序列化漏洞的方法、反向代理服务器及系统
CN110620777A (zh) 在区块链上的物联网的烟雾监测数据上链方法及系统
CN114900370B (zh) 一种针对应用协议进行流量过滤的方法和装置
CN112702311B (zh) 一种基于端口的报文过滤方法和装置
CN102546522A (zh) 一种内网安全系统及其实现方法
CN110191097A (zh) 登录页面安全性的检测方法、系统、设备及存储介质
Shrobe Computational vulnerability analysis for information survivability
US8443359B2 (en) Method and system for providing a filter for a router
US10298445B2 (en) Method for dynamic adjustment of a level of verbosity of a component of a communications network
Veríssimo et al. CRUTIAL: The blueprint of a reference critical information infrastructure architecture
Li et al. A defense model study based on IDS and firewall linkage
CN101662368A (zh) 一种可对抗木马程式的网络数据过滤装置和相应方法
US20210092149A1 (en) Centralized security package and security threat management system
DE102015107071B3 (de) Vorrichtung und Verfahren zur Steuerung eines Kommunikationsnetzwerks
CN106060068A (zh) 一种信息过滤方法和装置
WO2021243197A1 (en) Threat mitigation system and method

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
GR01 Patent grant
GR01 Patent grant