CN110166435B - 采用负载均衡进行动态调度的拟态Web网关系统及方法 - Google Patents

采用负载均衡进行动态调度的拟态Web网关系统及方法 Download PDF

Info

Publication number
CN110166435B
CN110166435B CN201910313112.5A CN201910313112A CN110166435B CN 110166435 B CN110166435 B CN 110166435B CN 201910313112 A CN201910313112 A CN 201910313112A CN 110166435 B CN110166435 B CN 110166435B
Authority
CN
China
Prior art keywords
cookie
http
http request
response
safe
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
CN201910313112.5A
Other languages
English (en)
Other versions
CN110166435A (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.)
Hangzhou Dianzi University
Original Assignee
Hangzhou Dianzi University
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 Hangzhou Dianzi University filed Critical Hangzhou Dianzi University
Priority to CN201910313112.5A priority Critical patent/CN110166435B/zh
Publication of CN110166435A publication Critical patent/CN110166435A/zh
Application granted granted Critical
Publication of CN110166435B publication Critical patent/CN110166435B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
    • 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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1017Server selection for load balancing based on a round robin mechanism
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • 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)
  • Computer And Data Communications (AREA)

Abstract

本发明公开采用负载均衡进行动态调度的拟态Web网关系统及方法。本发明通过对服务器进行异构集成,利用负载均衡技术实现执行体组动态切换,通过cookie组合实现一种拟态Web网关系统。该系统能够有效提高网站的防护能力。

Description

采用负载均衡进行动态调度的拟态Web网关系统及方法
技术领域
本发明属于计算机技术领域,特别涉及一种采用负载均衡进行动态调度的拟态Web网关系统及方法。
背景技术
Web应用服务器系统作为重要的服务承载和提供平台,面临的安全问题日益严重。已有的防御技术主要基于已知攻击方法或漏洞信息进行防御,导致难以很好地应对未知攻击的威胁,从而难以全面防护Web应用服务器系统的安全,阻挡当前日益繁多的网络攻击类型。
网络攻击虽然类型繁多、手段各异,但通常依赖于具体系统的特定属性。不同的系统设计或实现往往使具有类似功能的系统具有完全不同的特性,如不同的Web应用服务软件在稳定性、安全性、静态文件处理等方面各有千秋;不同的操作系统,具有不同的优势和缺陷,如系统权限提升漏洞CVE-2014-6324仅存在于Windows系统上,而Linux系统根本不存在该漏洞。异构系统的这种差异性,也为安全防御提供了可能,如果使用不同的系统提供同一功能,并进行响应比较和动态切换,则原本存在的漏洞所引发的异常就会在比较中被纠正,某段时间存在的漏洞在系统切换后则将消失。如果对这种方法进行多层次组合,则可以进一步降低被攻击的概率。
动态异构冗余(dynamic heterogeneous redundancy,简称DHR)结构是邬江兴院士提出的拟态防御技术的一个重要防御模型。计算机系统的功能可以概括为“输入-处理-输出”,即结构化设计中的IPO(input-process-output)。动态异构冗余结构在“处理”环节使用异构执行体集进行处理,将同一输入通过输入代理复制为n份,并分发给执行体集中的n个异构执行体进行处理,将处理结果收集至表决器进行表决,得到唯一的相对正确的输出。异构元素组成异构构件,由动态选择算法选择异构构件组成在线的执行体集。根据运行时的反馈信息,动态选择算法会产生新的执行体集以替换当前集合。
虽然拟态防御的动态异构冗余模型已被理论推导证明比现有系统具有更好的安全防御能力,但是在Web网关方面如何应用动态异构冗余模型构建Web防御系统仍然需要面对多个技术难题,例如如何在不同运行周期对系统的当前执行体组(Web服务器)进行动态切换,如何在执行体组中各Web服务器返回不同的会话Cookie时保证各执行体都能从用户的Web请求中得到各自对应的会话Cookie。
针对上述技术难题,本专利通过对服务器进行异构集成,利用负载均衡技术实现执行体组动态切换,通过Cookie组合实现一种拟态Web网关系统。该系统能够有效提高网站的防护能力。
术语定义
1、Cookie:Cookie是由Web服务器保存在用户浏览器上的小文本文件,包含有关用户的信息。Cookie是在HTTP协议下,服务器或脚本可以维护客户工作站上信息的一种方式,是由Web服务器保存在用户浏览器(客户端)上的小文本文件,它可以包含有关用户的信息。
2、异构冗余:系统中存在同时工作的功能等价但实现不同的构件。
3、负载均衡调度算法:按照一定的规则将来自客户端的请求转发到服务器上,例如:普通哈希算法(根据访问URL的hash结果来分配请求,让每个URL定向到同一个后端服务器),轮询(将请求按顺序轮流地分配到后端服务器上)及加权轮询(将请求顺序且按照权重分配到后端服务器上)等。
4、特定安全标识:一个事先设定好的安全标识符,用于分割或生成Cookie,例如:标识符&。
5、安全Cookie:根据异构服务器返回响应中的指定Cookie名的Cookie值和安全配置策略中的特定安全标识生成的一个安全Cookie,例如:7C7C20660_2&u68EE&u6797u51B0&7C130。
6、HTTP请求体:当HTTP请求方法为POST,存放请求正文,包含表单信息等。
7、HTTP请求头:包含HTTP请求的方法、URI、协议版本、以及包含HTTP请求修饰符、客户信息和内容的类似于MIME的消息结构,向服务器端传递HTTP请求的附加信息以及客户端自身的信息。
发明内容
本发明的目的是针对Web防护安全,提出了一种采用负载均衡进行动态调度的拟态Web网关系统。该系统在保持网站系统正常工作的同时,能有效提高网站系统安全防御能力。该系统主要包括多模分发模块、多模判决模块、安全Cookie生成模块、安全Cookie解码模块、异构服务器池组(服务器池构建)、后台服务器动态调度和切换模块组、数据库同步模块、安全Cookie数据库组、安全配置策略。其中:
多模分发模块:接收用户HTTP请求,解析判断用户HTTP请求类型,提取用户HTTP请求中的URL地址及携带的安全Cookie,生成发送到各个异构服务器池的HTTP子请求,并用安全Cookie解码模块分割处理后得到的Cookie值更新各HTTP子请求的Cookie值,再发送到后台服务器动态调度和切换模块。
多模判决模块:接收异构服务器返回的响应,对响应主体部分进行比较,判断其差异度是否超过设定阈值来进行返回响应到客户端或拦截处理;用安全Cookie生成模块按照特定安全标识生成得到的安全Cookie更新请求响应中的Cookie值,发送到客户端。
安全Cookie生成模块:根据安全配置策略中指定Cookie名,提取异构服务器返回的响应中安全配置策略指定Cookie名对应的Cookie值,然后调用安全配置策略中的特定安全标识生成一个安全Cookie,并将其存储在安全Cookie数据库中。
安全Cookie解码模块:根据用户HTTP请求中的安全Cookie,调用安全配置策略中的特定安全标识进行分割还原,得到与不同异构服务器池对应的Cookie。
异构服务器池:异构服务器池由多个异构服务器构建组成,不同的异构服务器实现不同,如采用不同的操作系统、不同的Web服务器、不同的硬件设备、不同的编程语言和不同的安装配置等。
后台服务器动态调度和切换模块:根据负载均衡调度算法(例如:哈希算法,轮询及加权轮询等),从异构服务器池中选择一个异构服务器执行请求;接收到多模判决模块的“发现问题异构服务器”消息,进而选择完成对问题异构服务器下线清洗以及清洗完成后的异构服务器动态上线。
数据库同步模块:将受影响的异构服务器池的数据库与其他异构服务器池的数据库进行数据同步。
安全Cookie数据库组:由多个安全Cookie数据库构建组成,每个安全Cookie数据库对应各自的异构服务器。
安全Cookie数据库:存放安全Cookie,以便后续用于检测安全Cookie是否安全合法。
安全配置策略:包含各种参数的统一配置管理文件,包括安全Cookie标记;HTTP请求头生成相关参数;HTTP请求响应头生成相关参数;指定Cookie名;特定安全标识等。
上述指定Cookie名为人为设定的Cookie名,用于判断该Cookie是否为与用户会话相关的Cookie。
安全Cookie标记可用于识别用户HTTP请求是否包含安全Cookie;
采用负载均衡进行动态调度的拟态Web网关系统实现方法,包括多模分发、多模判决两个流程,其中:
多模分发流程包含如下步骤:
步骤1:用户访问Web服务器,向Web网关发送用户HTTP请求;
步骤2:Web网关中的多模分发模块接收用户HTTP请求,解析判断用户HTTP请求类型,提取用户HTTP请求中的URL地址及携带的安全Cookie。若用户HTTP请求不包含安全Cookie,则将不包含安全Cookie的用户HTTP请求的安全Cookie标记设为假,跳转到步骤3;否则,将包含安全Cookie的用户HTTP请求的安全Cookie标记设为真,并通过安全Cookie解码模块查询安全Cookie数据库,检索并判别该安全Cookie是否安全合法,若合法,则跳转到步骤5;否则直接阻断,同时进行记录并告警;
上述安全Cookie安全合法判断准则为安全Cookie数据库中是否存在与用户HTTP请求携带的安全Cookie一致的Cookie。
上述安全Cookie标记同时保存在安全配置策略。
步骤3:若HTTP请求类型为POST,多模分发模块启动HTTP请求体的异步接收。当HTTP请求体异步接收完毕后,根据HTTP请求体中的信息、HTTP请求头包含的信息和安全配置策略(HTTP请求头生成相关参数)生成多个HTTP子请求,跳转到步骤4;若HTTP请求类型不为POST,则根据HTTP请求头中包含的信息和安全配置策略(HTTP请求头生成相关参数)生成多个HTTP子请求,跳转到步骤4;
步骤4:根据HTTP子请求的地址将HTTP子请求发送至对应的后台服务器动态调度和切换模块,每个后台服务器动态调度和切换模块根据设定的负载均衡调度算法(例如:哈希算法,轮询及加权轮询等),从对应的异构服务器池中选择一台异构服务器执行该HTTP子请求,然后进入多模判决流程。
步骤5:若HTTP请求类型为POST,多模分发模块启动HTTP请求体的异步接收。当HTTP请求体异步接收完毕后,根据HTTP请求体中的信息、HTTP请求头包含的信息和安全配置策略(HTTP请求头生成相关参数)生成多个HTTP子请求,跳转到步骤6;若HTTP请求类型不为POST,则根据HTTP请求头中包含的信息和安全配置策略(HTTP请求头生成相关参数)生成多个HTTP子请求,跳转到步骤6;
步骤6:安全Cookie解码模块通过调用安全配置策略的特定安全标识将用户HTTP请求中携带的安全Cookie进行分割,还原得到与不同异构服务器池对应的Cookie,并更新多模分发模块中对应HTTP子请求的安全Cookie,跳转到步骤7;
步骤7:根据HTTP子请求的地址将更新后的HTTP子请求发送至对应的后台服务器动态调度和切换模块,每个后台服务器动态调度和切换模块根据设定的负载均衡调度算法(例如:哈希算法,轮询及加权轮询等),从对应的异构服务器池中选择一台异构服务器执行该HTTP子请求,然后进入多模判决流程。
多模判决流程包含如下步骤:
步骤1:多模判决模块接收到从各个后台服务器动态调度和切换模块返回的异构服务器HTTP响应,判断所有HTTP子请求的响应是否已全部接收到或已到达设定的超时阈值,当满足其中一个条件后,跳转到步骤2;否则重新接收异构服务器HTTP响应信息并判断;
步骤2:若到达设定的超时阈值,且没有或只有一个HTTP响应返回,多模判决模块则阻断请求,返回错误网页信息到客户端,结束;若到达设定的超时阈值,且接收到多个HTTP响应返回,多模判决模块则对各HTTP响应的响应体内容进行比对;若各HTTP响应体内容全部相同或HTTP响应体内容字节的差异值在设置的阈值范围内,跳转到步骤3,否则跳转到步骤5;若全部接收所有HTTP子请求返回的响应,多模判决模块对各HTTP响应的响应体内容进行比对,若各HTTP响应体内容全部相同或HTTP响应体内容字节的差异值在设置的阈值范围内,则跳转到步骤3,否则跳转到步骤5;
步骤3:多模判决模块调用安全配置策略(HTTP请求响应头生成相关参数)生成新的HTTP响应头,并随机选择其中1个HTTP响应体进行组合,生成HTTP请求响应;调用安全配置策略,若该响应体对应的用户HTTP请求的安全Cookie标记为真,则直接将HTTP请求响应发送到客户端,结束;若该HTTP响应体对应的用户HTTP请求的安全Cookie标记为假,则检测用户HTTP请求是否存在安全配置策略中指定Cookie名对应的Cookie值,若存在,跳转到步骤4,否则直接将HTTP请求响应发送到客户端;
步骤4:安全Cookie生成模块分别提取不同异构服务器返回的HTTP响应中安全配置策略中指定Cookie名对应的Cookie值,调用安全配置策略中特定安全标识生成一个安全Cookie,将该安全Cookie记录到该异构服务器对应的安全Cookie数据库中,并将HTTP请求响应中安全配置策略中指定Cookie名对应的Cookie值用所生成的安全Cookie替换,然后将替换后的HTTP请求响应发送到客户端,结束。
步骤5:多模判决模块对各HTTP请求响应的响应体内容比对,若HTTP请求响应的响应体内容字节的差异值超出设置的阈值范围,则阻断该HTTP请求响应,并根据各HTTP请求响应的响应体内容比对信息确定问题异构服务器,然后发送消息到后台服务器动态调度和切换模块,跳转到步骤6;
步骤6:后台服务器动态调度和切换模块将该异构服务器活动状态设为“离线”,然后将异构服务器下线和异构服务器系统重置;完成清洗后,后台服务器动态调度和切换模块将该清洗后的异构服务器活动状态设为“在线”,同时调用数据库同步模块将受影响的异构服务器池的数据库与其他异构服务器池的数据库进行数据同步。
本发明有益效果如下:
本发明实现了基于动态异构冗余的Web网关,其利用动态调度和异构冗余技术,动态切换后台执行体,降低了网站系统被攻破的风险和损失,而且能更加准确地判断攻击行为,及时做出应对措施。除了解决上述问题外,该方案带来的有益效果还有:(1)实现了对攻击所依赖的单一环境的动态性改变,使系统在不同的时间段表现出不一样的特征,对攻击者呈现出不确定性,即使当前执行体集被攻破,系统也会及时作出替换执行体集等措施,使攻击者无法对系统进行持续有效攻击,增大攻击难度;(2)对异构服务器池进行多层次异构,能够防御更多漏洞。
附图说明
图1为本发明系统总体架构图;
图2为部署各功能模块后用户访问网站的业务流程图;
图3为Web网关多模分发流程图;
图4为Web网关多模判决流程图。
具体实施方式
下面结合附图和具体实施方式对本发明的具体实施方案作进一步详细描述和说明。系统对用户的网页请求和Web服务器的网页响应处理如图3、图4所示。本发明流程如图1-图4所示,具体如下:
步骤1:用户访问Web服务器,向Web网关发送用户HTTP请求,到步骤2;
步骤2:Web网关中的多模分发模块接收用户HTTP请求,解析判断用户HTTP请求类型,提取用户HTTP请求中的URL地址及携带的安全Cookie。若用户HTTP请求不包含安全Cookie值,则将不包含安全Cookie的用户HTTP请求的安全Cookie标记设为假,跳转到步骤3;否则,将包含安全Cookie的用户HTTP请求的安全Cookie标记设为真,并通过安全Cookie解码模块查询安全Cookie数据库,检索并判别该安全Cookie是否安全合法,若合法,则跳转到步骤5;否则直接阻断,同时进行记录并告警;
步骤3:若HTTP请求类型为POST,多模分发模块启动HTTP请求体的异步接收。当HTTP请求体异步接收完毕后,根据HTTP请求体中的信息、HTTP请求头包含的信息和安全配置策略(HTTP请求头生成相关参数)生成多个HTTP子请求,跳转到步骤4;若HTTP请求类型不为POST,则根据HTTP请求头中包含的信息和安全配置策略(HTTP请求头生成相关参数)生成多个HTTP子请求,跳转到步骤4;
步骤4:根据HTTP子请求的地址将HTTP子请求发送至对应的后台服务器动态调度和切换模块,每个后台服务器动态调度和切换模块根据设定的负载均衡调度算法(例如:哈希算法,轮询及加权轮询等),从对应的异构服务器池中选择一台异构服务器执行该HTTP子请求,到步骤8;
步骤5:若HTTP请求类型为POST,多模分发模块启动HTTP请求体的异步接收。当HTTP请求体异步接收完毕后,根据HTTP请求体中的信息、HTTP请求头包含的信息和安全配置策略(HTTP请求头生成相关参数)生成多个HTTP子请求,跳转到步骤6;若HTTP请求类型不为POST,则根据HTTP请求头中包含的信息和安全配置策略(HTTP请求头生成相关参数)生成多个HTTP子请求,跳转到步骤6;
步骤6:安全Cookie解码模块通过调用安全配置策略的特定安全标识将用户HTTP请求中携带的安全Cookie进行分割,还原得到与不同异构服务器池对应的Cookie,并更新多模分发模块中对应HTTP子请求的安全Cookie,跳转到步骤7;
步骤7:根据HTTP子请求的地址将更新后的HTTP子请求发送至对应的后台服务器动态调度和切换模块,每个后台服务器动态调度和切换模块根据设定的负载均衡调度算法(例如:哈希算法,轮询及加权轮询等),从对应的异构服务器池中选择一台异构服务器执行该HTTP子请求,到步骤8;
步骤8:异构服务器接收HTTP子请求,返回响应信息至后台服务器动态调度和切换模块,到步骤9;
步骤9:多模判决模块接收到从各个后台服务器动态调度和切换模块返回的异构服务器HTTP响应,判断所有HTTP子请求的响应是否已全部接收到或已到达设定的超时阈值,当满足其中一个条件后,跳转到步骤10;否则重新接收异构服务器HTTP响应信息并判断;
步骤10:若到达设定的超时阈值,且没有或只有一个HTTP响应返回,多模判决模块则阻断请求,返回错误网页信息到客户端,结束。若到达设定的超时阈值,且接收到多个HTTP响应返回,多模判决模块则对各HTTP响应的响应体内容进行比对,若全部相同或响应体内容之间的差异值在设置的阈值范围内,跳转到步骤11,否则跳转到步骤13;若全部接受所有HTTP子请求返回的响应,多模判决模块对各HTTP响应的响应体内容进行比对,若各HTTP响应体内容全部相同或HTTP响应体内容字节的差异值在设置的阈值范围内,则跳转到到步骤11,否则跳转到步骤13;
步骤11:多模判决模块调用安全配置策略(HTTP请求响应头生成相关参数)生成新的HTTP响应头,并随机选择其中1个HTTP响应体进行组合,生成请求响应;调用安全配置策略,若该响应体对应的用户HTTP请求的安全Cookie标记为真,则直接将HTTP请求响应发送到客户端,结束;若该HTTP响应体对应的用户HTTP请求的安全Cookie标记为假,则检测用户HTTP请求是否存在安全配置策略中指定Cookie名对应的Cookie值,若存在,跳转到步骤12,否则直接将HTTP请求响应发送到客户端;
步骤12:安全Cookie生成模块分别提取不同异构服务器返回的HTTP响应中安全配置策略中指定Cookie名对应的Cookie值,调用安全配置策略中特定安全标识生成一个安全Cookie,将该安全Cookie记录到该异构服务器对应的安全Cookie数据库中,并将HTTP请求响应中安全配置策略中指定Cookie名对应的Cookie值用所生成的安全Cookie替换,然后用替换后的HTTP请求响应发送到客户端,结束。
步骤13:多模判决模块对各HTTP请求响应的响应体内容比对,若HTTP请求响应的响应体内容之间的差异值超出设置的阈值范围,则阻断该HTTP请求响应,并根据各HTTP请求响应的响应体内容比对信息确定问题异构服务器,然后发送消息到后台服务器动态调度和切换模块,跳转到步骤14;
步骤14:后台服务器动态调度和切换模块将该异构服务器活动状态设为“离线”,然后将异构服务器下线和异构服务器系统重置;完成清洗后后台服务器动态调度和切换模块将该清洗后的异构服务器活动状态设为“在线”,同时调用数据库同步模块将受影响的异构服务器池的数据库与其他异构服务器池的数据库进行数据同步。
实施例1、用户HTTP请求生成HTTP子请求(用户HTTP请求包含安全Cookie)
客户端向Web网关发送用户HTTP请求,请求内容如下:
GET/test HTTP/1.1
Host:acm.hdu.edu.cn
Upgrade-Insecure-Requests:1
......
Cookie:UID=xcbe41273w&6zp1maitle&1rdnaj7pfb
Web网关中的多模分发模块接收用户HTTP请求,解析判断用户HTTP请求类型,提取用户HTTP请求中的URL地址及携带的安全Cookie。由于存在安全Cookie,则将用户HTTP请求包含安全Cookie标记设为真,并在安全Cookie数据库中检索并判别该安全Cookie是否安全合法。若合法,则判断请求类型是否为POST,由于用户HTTP请求类型为GET,则根据HTTP请求头中包含的信息和安全配置策略(HTTP请求头生成相关参数)生成多个HTTP子请求。调用安全Cookie解码模块将用户HTTP请求的安全Cookie按照预先设定好的特定安全标识“&”进行分割,得到对应异构服务器池的Cookie,并对HTTP子请求中Cookie进行更新,则HTTP子请求内容如下:
HTTP子请求1:
GET/test1HTTP/1.1
Host:srv1.hdu.edu.cn
Upgrade-Insecure-Requests:1
......
Cookie:UID=xcbe41273w
HTTP子请求2:
GET/test2HTTP/1.1
Host:srv2.hdu.edu.cn
Upgrade-Insecure-Requests:1
......
Cookie:UID=6zp1maitle
HTTP子请求3:
GET/test3HTTP/1.1
Host:srv3.hdu.edu.cn
Upgrade-Insecure-Requests:1
......
Cookie:UID=1rdnaj7pfb
根据HTTP子请求的地址将更新后的HTTP子请求发送至对应的后台服务器动态调度和切换模块。后台服务器动态调度和切换模块通过负载均衡调度算法,例如加权轮询,优先选择高权值的异构服务器执行HTTP子请求。由于用户HTTP请求包含安全Cookie的标记为真,则多模判决模块在接收完异构服务器返回的响应信息并对响应体内容进行比对后,若各HTTP响应体内容全部相同或HTTP响应体内容字节的差异值在容忍的阈值范围内,则直接将按照安全配置策略(HTTP请求响应头生成相关参数)生成的HTTP请求响应发送至客户端,结束。HTTP请求响应内容如下:
HTTP/1.1 200 OK
Date:Mon,31Dec200104:25:57GMT
Server:Apache/1.3.14(Unix)
......
实施例2、用户HTTP请求生成HTTP子请求(用户HTTP请求不包含安全Cookie)
客户端向Web网关发送用户HTTP请求,请求内容如下:
GET/test HTTP/1.1
Host:acm.hdu.edu.cn
Upgrade-Insecure-Requests:1
......
Web网关中的多模分发模块接收用户HTTP请求,解析判断用户HTTP请求类型,提取用户HTTP请求中的URL地址及携带的安全Cookie,由于不存在安全Cookie,则将用户HTTP请求包含安全Cookie的标记设为假。判断请求类型是否为POST,由于用户HTTP请求类型为GET,则根据HTTP请求头中包含的信息和安全配置策略(HTTP请求头生成相关参数)生成多个HTTP子请求,则HTTP子请求内容如下:
HTTP子请求1:
GET/test1HTTP/1.1
Host:srv1.hdu.edu.cn
Upgrade-Insecure-Requests:1
......
HTTP子请求2:
GET/test2HTTP/1.1
Host:srv2.hdu.edu.cn
Upgrade-Insecure-Requests:1
......
HTTP子请求3:
GET/test3HTTP/1.1
Host:srv3.hdu.edu.cn
Upgrade-Insecure-Requests:1
......
根据HTTP子请求的地址将更新后的HTTP子请求发送至对应的后台服务器动态调度和切换模块。后台服务器动态调度和切换模块通过负载均衡调度算法,例如加权轮询,优先选择高权值的异构服务器执行HTTP子请求。多模判决模块在接收完异构服务器返回的响应信息并对响应体内容进行比对后,若各HTTP响应体内容全部相同或HTTP响应体内容字节的差异值在容忍的阈值范围内,则按照安全配置策略(HTTP请求响应头生成相关参数)生成HTTP请求响应。由于用户HTTP请求包含安全Cookie的标记为假,且用户HTTP请求存在安全配置策略中指定Cookie名的Cookie值(例如UID),则调用安全Cookie生成模块,提取异构服务器返回的响应中的指定Cookie名的Cookie:设
HTTP子请求1的响应头为:
......
Set-Cookie:UID=ipqo265de8
......
HTTP子请求2的响应头为:
......
Set-Cookie:UID=1qo265de8t
......
HTTP子请求3的响应头为:
......
Set-Cookie:UID=vqo265de8t
......
根据特定安全标识生成一个安全Cookie,并将按照安全配置策略(HTTP请求响应头生成相关参数)生成的HTTP请求响应中的Cookie值进行更新,发送至客户端,HTTP请求响应内容如下:
HTTP/1.1 200 OK
......
Set-Cookie:UID=ipqo265de8&1qo265de8t&vqo265de8t
......
本发明并不局限于上述具体实施方式,本领域技术人员还可据此做出多种变化,但任何与本发明等同或者类似的变化都应涵盖在本发明权利要求的范围内。

Claims (5)

1.采用负载均衡进行动态调度的拟态Web网关系统,其特征在于包括多模分发模块、多模判决模块、安全Cookie生成模块、安全Cookie解码模块、异构服务器池组、后台服务器动态调度和切换模块组、数据库同步模块、安全Cookie数据库组、安全配置策略;其中:
多模分发模块,用于接收用户HTTP请求,解析判断用户HTTP请求类型,提取用户HTTP请求中的URL地址及携带的安全Cookie,生成发送到各个异构服务器池的HTTP子请求,并用安全Cookie解码模块分割处理后得到的Cookie值更新各HTTP子请求的Cookie值,再发送到后台服务器动态调度和切换模块;
多模判决模块,用于接收异构服务器返回的响应,对响应主体部分进行比较,判断其差异度是否超过设定阈值来进行返回响应到客户端或拦截处理;用安全Cookie生成模块按照特定安全标识生成得到的安全Cookie更新请求响应中的Cookie值,发送到客户端;
安全Cookie生成模块,用于根据安全配置策略中指定Cookie名,提取异构服务器返回的响应中安全配置策略指定Cookie名对应的Cookie值,然后调用安全配置策略中的特定安全标识生成一个安全Cookie,并将其存储在安全Cookie数据库中;
安全Cookie解码模块,用于根据用户HTTP请求中的安全Cookie,调用安全配置策略中的特定安全标识进行分割还原,得到与不同异构服务器池对应的Cookie;
后台服务器动态调度和切换模块,用于根据负载均衡调度算法,从异构服务器池中选择一个异构服务器执行请求;接收到多模判决模块的“发现问题异构服务器”消息,进而选择完成对问题异构服务器下线清洗以及清洗完成后的异构服务器动态上线;
安全配置策略,用于包含各种参数的统一配置管理文件,包括安全Cookie标记,HTTP请求头生成相关参数,HTTP请求响应头生成相关参数,指定Cookie名,特定安全标识。
2.如权利要求1所述的采用负载均衡进行动态调度的拟态Web网关系统,其特征在于指定Cookie名为人为设定的Cookie名,用于判断该Cookie是否为与用户会话相关的Cookie。
3.如权利要求1所述的采用负载均衡进行动态调度的拟态Web网关系统,其特征在于安全Cookie标记可用于识别用户HTTP请求是否包含安全Cookie。
4.采用负载均衡进行动态调度的拟态Web网关系统的实现方法,其特征在于包括多模分发、多模判决两个流程;
多模分发流程包含如下步骤:
步骤1:用户访问Web服务器,向Web网关发送用户HTTP请求;
步骤2:Web网关中的多模分发模块接收用户HTTP请求,解析判断用户HTTP请求类型,提取用户HTTP请求中的URL地址及携带的安全Cookie;若用户HTTP请求不包含安全Cookie,则将不包含安全Cookie的用户HTTP请求的安全Cookie标记设为假,跳转到步骤3;否则,将包含安全Cookie的用户HTTP请求的安全Cookie标记设为真,并通过安全Cookie解码模块查询安全Cookie数据库,检索并判别该安全Cookie是否安全合法,若合法,则跳转到步骤5;否则直接阻断,同时进行记录并告警;
步骤3:若HTTP请求类型为POST,多模分发模块启动HTTP请求体的异步接收;当HTTP请求体异步接收完毕后,根据HTTP请求体中的信息、HTTP请求头包含的信息和安全配置策略生成多个HTTP子请求,跳转到步骤4;若HTTP请求类型不为POST,则根据HTTP请求头中包含的信息和安全配置策略生成多个HTTP子请求,跳转到步骤4;
步骤4:根据HTTP子请求的地址将HTTP子请求发送至对应的后台服务器动态调度和切换模块,每个后台服务器动态调度和切换模块根据设定的负载均衡调度算法,从对应的异构服务器池中选择一台异构服务器执行该HTTP子请求,然后进入多模判决流程;
步骤5:若HTTP请求类型为POST,多模分发模块启动HTTP请求体的异步接收;当HTTP请求体异步接收完毕后,根据HTTP请求体中的信息、HTTP请求头包含的信息和安全配置策略生成多个HTTP子请求,跳转到步骤6;若HTTP请求类型不为POST,则根据HTTP请求头中包含的信息和安全配置策略生成多个HTTP子请求,跳转到步骤6;
步骤6:安全Cookie解码模块通过调用安全配置策略的特定安全标识将用户HTTP请求中携带的安全Cookie进行分割,还原得到与不同异构服务器池对应的Cookie,并更新多模分发模块中对应HTTP子请求的安全Cookie,跳转到步骤7;
步骤7:根据HTTP子请求的地址将更新后的HTTP子请求发送至对应的后台服务器动态调度和切换模块,每个后台服务器动态调度和切换模块根据设定的负载均衡调度算法,从对应的异构服务器池中选择一台异构服务器执行该HTTP子请求,然后进入多模判决流程;
多模判决流程包含如下步骤:
步骤1:多模判决模块接收到从各个后台服务器动态调度和切换模块返回的异构服务器HTTP响应,判断所有HTTP子请求的响应是否已全部接收到或已到达设定的超时阈值,当满足其中一个条件后,跳转到步骤2;否则重新接收异构服务器HTTP响应信息并判断;
步骤2:若到达设定的超时阈值,且没有或只有一个HTTP响应返回,多模判决模块则阻断请求,返回错误网页信息到客户端,结束;若到达设定的超时阈值,且接收到多个HTTP响应返回,多模判决模块则对各HTTP响应的响应体内容进行比对;若各HTTP响应体内容全部相同或HTTP响应体内容字节的差异值在设置的阈值范围内,跳转到步骤3,否则跳转到步骤5;若全部接收所有HTTP子请求返回的响应,多模判决模块对各HTTP响应的响应体内容进行比对,若各HTTP响应体内容全部相同或HTTP响应体内容字节的差异值在设置的阈值范围内,则跳转到步骤3,否则跳转到步骤5;
步骤3:多模判决模块调用安全配置策略生成新的HTTP响应头,并随机选择其中1个HTTP响应体进行组合,生成HTTP请求响应;调用安全配置策略,若该响应体对应的用户HTTP请求的安全Cookie标记为真,则直接将HTTP请求响应发送到客户端,结束;若该HTTP响应体对应的用户HTTP请求的安全Cookie标记为假,则检测用户HTTP请求是否存在安全配置策略中指定Cookie名对应的Cookie值,若存在,跳转到步骤4,否则直接将HTTP请求响应发送到客户端;
步骤4:安全Cookie生成模块分别提取不同异构服务器返回的HTTP响应中安全配置策略中指定Cookie名对应的Cookie值,调用安全配置策略中特定安全标识生成一个安全Cookie,将该安全Cookie记录到该异构服务器对应的安全Cookie数据库中,并将HTTP请求响应中安全配置策略中指定Cookie名对应的Cookie值用所生成的安全Cookie替换,然后将替换后的HTTP请求响应发送到客户端,结束;
步骤5:多模判决模块对各HTTP请求响应的响应体内容比对,若HTTP请求响应的响应体内容字节的差异值超出设置的阈值范围,则阻断该HTTP请求响应,并根据各HTTP请求响应的响应体内容比对信息确定问题异构服务器,然后发送消息到后台服务器动态调度和切换模块,跳转到步骤6;
步骤6:后台服务器动态调度和切换模块将该异构服务器活动状态设为“离线”,然后将异构服务器下线和异构服务器系统重置;完成清洗后,后台服务器动态调度和切换模块将该清洗后的异构服务器活动状态设为“在线”,同时调用数据库同步模块将受影响的异构服务器池的数据库与其他异构服务器池的数据库进行数据同步。
5.如权利要求4所述的采用负载均衡进行动态调度的拟态Web网关系统的实现方法,其特征在于多模分发流程步骤2中安全Cookie安全合法判断准则为安全Cookie数据库中是否存在与用户HTTP请求携带的安全Cookie一致的Cookie。
CN201910313112.5A 2019-04-18 2019-04-18 采用负载均衡进行动态调度的拟态Web网关系统及方法 Active CN110166435B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910313112.5A CN110166435B (zh) 2019-04-18 2019-04-18 采用负载均衡进行动态调度的拟态Web网关系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910313112.5A CN110166435B (zh) 2019-04-18 2019-04-18 采用负载均衡进行动态调度的拟态Web网关系统及方法

Publications (2)

Publication Number Publication Date
CN110166435A CN110166435A (zh) 2019-08-23
CN110166435B true CN110166435B (zh) 2021-06-22

Family

ID=67639438

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910313112.5A Active CN110166435B (zh) 2019-04-18 2019-04-18 采用负载均衡进行动态调度的拟态Web网关系统及方法

Country Status (1)

Country Link
CN (1) CN110166435B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110650020B (zh) * 2019-09-25 2022-05-10 天津市滨海新区信息技术创新中心 拟态模糊判决方法、装置及系统
CN110719281B (zh) * 2019-10-10 2020-09-15 河南信大网御科技有限公司 一种OpenWrt中拟态Web的实现方法
CN111556030B (zh) * 2020-04-13 2022-06-10 南京理工大学 一种基于多级队列的拟态防御动态调度方法
CN111628978B (zh) * 2020-05-21 2022-02-22 河南信大网御科技有限公司 一种拟态归一化裁决系统、方法及可读存储介质
CN111641625B (zh) * 2020-05-25 2022-03-25 河南信大网御科技有限公司 异构功能等价执行体归一化装置、方法、架构及存储介质
CN112187806A (zh) * 2020-09-29 2021-01-05 国网福建省电力有限公司 一种基于网页资源地址动态跳变的防御方法
CN116016040A (zh) * 2022-12-28 2023-04-25 国网智能电网研究院有限公司 面向电力物联网终端接入的拟态边缘网关及拟态处理方法
CN116405243B (zh) * 2023-02-16 2023-12-26 中国南方电网有限责任公司 一种基于拟态安全技术的异构冗余流量检测装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103701928A (zh) * 2014-01-02 2014-04-02 山东大学 应用于负载均衡器提高服务器和ssl网关运行效率的方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8448237B2 (en) * 2011-07-12 2013-05-21 Bank Of America Corporation Virtual private internet
CN104023068B (zh) * 2014-06-13 2017-12-15 北京信诺瑞得软件系统有限公司 一种负载均衡中实现被动模式弹性计算资源调度的方法
CN108337224B (zh) * 2017-12-14 2020-12-15 兆辉易安(北京)网络安全技术有限公司 三模异构冗余的工控安全网关系统及其入侵感知方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103701928A (zh) * 2014-01-02 2014-04-02 山东大学 应用于负载均衡器提高服务器和ssl网关运行效率的方法

Also Published As

Publication number Publication date
CN110166435A (zh) 2019-08-23

Similar Documents

Publication Publication Date Title
CN110166435B (zh) 采用负载均衡进行动态调度的拟态Web网关系统及方法
CN110166436B (zh) 采用随机选择进行动态调度的拟态Web网关系统及方法
CN108353079B (zh) 对针对基于云的应用的网络威胁的检测
US9361605B2 (en) System and method for filtering spam messages based on user reputation
US9027128B1 (en) Automatic identification of malicious budget codes and compromised websites that are employed in phishing attacks
US8739290B1 (en) Generating alerts in event management systems
CN107465648B (zh) 异常设备的识别方法及装置
US7506056B2 (en) System analyzing configuration fingerprints of network nodes for granting network access and detecting security threat
US10348754B2 (en) Data security incident correlation and dissemination system and method
US11606372B2 (en) Mitigating against malicious login attempts
US10587650B2 (en) Communications security
WO2015149062A1 (en) System and method for predicting impending cyber security events using multi channel behavioral analysis in a distributed computing environment
WO2011023664A2 (en) Threat detection in a data processing system
JP2018503203A (ja) 許容可能なアクティビティルールに基づく許容可能なアクティビティの決定
US10104112B2 (en) Rating threat submitter
CN102106167A (zh) 安全消息处理
CN103701793A (zh) 服务器肉鸡的识别方法和装置
Ficco et al. Intrusion tolerance in cloud applications: The mOSAIC approach
WO2015156788A1 (en) Identifying suspicious activity in a load test
CN114189383B (zh) 封禁方法、装置、电子设备、介质和计算机程序产品
CN112104625B (zh) 一种进程访问的控制方法及装置
CN109525553B (zh) 一种url请求的传输保护方法、中间设备、服务器及系统
KR102018348B1 (ko) 사용자 행동 분석 기반의 목표계정 탈취 감지 장치
US20210194930A1 (en) Systems, methods, and devices for logging activity of a security platform
Zheng et al. Performance evaluation of VM-based intrusion tolerant systems with Poisson arrivals

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